mirror of
https://github.com/izzy2lost/2ship2harkinian-Android.git
synced 2026-06-19 01:20:08 -07:00
Merge branch 'master' into parameter
This commit is contained in:
@@ -122,8 +122,8 @@ OPTFLAGS := -O2 -g3
|
||||
ASFLAGS := -march=vr4300 -32 -Iinclude
|
||||
MIPS_VERSION := -mips2
|
||||
|
||||
# we support Microsoft extensions such as anonymous structs, which the compiler does support but warns for their usage. Surpress the warnings with -woff.
|
||||
CFLAGS += -G 0 -non_shared -fullwarn -verbose -Xcpluscomm $(IINC) -nostdinc -Wab,-r4300_mul -woff 624,649,838,712,516
|
||||
# we support Microsoft extensions such as anonymous structs, which the compiler does support but warns for their usage. Suppress the warnings with -woff.
|
||||
CFLAGS += -G 0 -non_shared -fullwarn -verbose -Xcpluscomm $(IINC) -nostdinc -Wab,-r4300_mul -woff 649,838,712,516
|
||||
|
||||
# Use relocations and abi fpr names in the dump
|
||||
OBJDUMP_FLAGS := --disassemble --reloc --disassemble-zeroes -Mreg-names=32
|
||||
|
||||
@@ -0,0 +1,38 @@
|
||||
<Root>
|
||||
<File Name="schedule_static" Segment="8">
|
||||
<Texture Name="gBombersNotebookEntryIconExclamationPointTex" OutName="bombers_notebook_entry_icon_exlamation_point" Format="ia8" Width="16" Height="16" Offset="0x0000"/>
|
||||
<Texture Name="gBombersNotebookStampTex" OutName="bombers_notebook_stamp" Format="ia8" Width="32" Height="48" Offset="0x0100"/>
|
||||
<Texture Name="gBombersNotebookArrowTex" OutName="bombers_notebook_arrow" Format="ia8" Width="24" Height="16" Offset="0x0700"/>
|
||||
<Texture Name="gBombersNotebookConnectorTex" OutName="bombers_notebook_connector" Format="ia8" Width="32" Height="14" Offset="0x0880"/>
|
||||
<Texture Name="gBombersNotebookEmptyPhotoTex" OutName="bombers_notebook_empty_photo" Format="rgba16" Width="32" Height="32" Offset="0x0A40"/>
|
||||
<Texture Name="gBombersNotebookEntryBoxEndTex" OutName="bombers_notebook_entry_end" Format="rgba16" Width="4" Height="16" Offset="0x1240"/>
|
||||
<Texture Name="gBombersNotebookEntryBoxMiddleTex" OutName="bombers_notebook_entry_middle" Format="rgba16" Width="4" Height="16" Offset="0x12C0"/>
|
||||
<Texture Name="gBombersNotebookSubColumnBoxTex" OutName="bombers_notebook_sub_column_box" Format="i4" Width="48" Height="1" Offset="0x1340"/>
|
||||
<Texture Name="gBombersNotebookCircleTex" OutName="bombers_notebook_circle" Format="i4" Width="16" Height="16" Offset="0x1358"/>
|
||||
<Texture Name="gBombersNotebookBackgroundTex" OutName="bombers_notebook_background" Format="i8" Width="32" Height="32" Offset="0x13D8"/>
|
||||
<Texture Name="gBombersNotebookHeaderBoxTex" OutName="bombers_notebook_header_box" Format="i8" Width="8" Height="24" Offset="0x17D8"/>
|
||||
<Texture Name="gBombersNotebookLineTex" OutName="bombers_notebook_line" Format="i8" Width="8" Height="1" Offset="0x1898"/>
|
||||
<Texture Name="gBombersNotebookBarTex" OutName="bombers_notebook_bar" Format="i8" Width="8" Height="4" Offset="0x18B0"/>
|
||||
<Texture Name="gBombersNotebookCursorTex" OutName="bombers_notebook_cursor" Format="ia4" Width="16" Height="16" Offset="0x18D0"/>
|
||||
<Texture Name="gBombersNoteoobkTimeOfDayBoxTex" OutName="bombers_notebook_time_of_day_box" Format="ia4" Width="64" Height="28" Offset="0x1950"/>
|
||||
<Texture Name="gBombersNotebookTimeBoxLeftTex" OutName="bombers_notebook_time_box_left" Format="ia4" Width="16" Height="28" Offset="0x1CD0"/>
|
||||
<Texture Name="gBombersNotebookTimeBoxRightTex" OutName="bombers_notebook_time_box_right" Format="ia4" Width="16" Height="28" Offset="0x1DB0"/>
|
||||
<Texture Name="gBombersNotebookTimeBoxMiddleTex" OutName="bombers_notebook_time_box_middle" Format="ia4" Width="16" Height="28" Offset="0x1E90"/>
|
||||
<Texture Name="gBombersNotebook1800Tex" OutName="bombers_notebook_1800" Format="ia4" Width="48" Height="11" Offset="0x1F70"/>
|
||||
<Texture Name="gBombersNotebookDigit0Tex" OutName="bombers_notebook_digit_0" Format="i4" Width="16" Height="17" Offset="0x2078"/>
|
||||
<Texture Name="gBombersNotebookDigit1Tex" OutName="bombers_notebook_digit_1" Format="i4" Width="16" Height="17" Offset="0x2100"/>
|
||||
<Texture Name="gBombersNotebookDigit2Tex" OutName="bombers_notebook_digit_2" Format="i4" Width="16" Height="17" Offset="0x2188"/>
|
||||
<Texture Name="gBombersNotebookDigit3Tex" OutName="bombers_notebook_digit_3" Format="i4" Width="16" Height="17" Offset="0x2210"/>
|
||||
<Texture Name="gBombersNotebookDigit4Tex" OutName="bombers_notebook_digit_4" Format="i4" Width="16" Height="17" Offset="0x2298"/>
|
||||
<Texture Name="gBombersNotebookDigit5Tex" OutName="bombers_notebook_digit_5" Format="i4" Width="16" Height="17" Offset="0x2320"/>
|
||||
<Texture Name="gBombersNotebookDigit6Tex" OutName="bombers_notebook_digit_6" Format="i4" Width="16" Height="17" Offset="0x23A8"/>
|
||||
<Texture Name="gBombersNotebookDigit7Tex" OutName="bombers_notebook_digit_7" Format="i4" Width="16" Height="17" Offset="0x2430"/>
|
||||
<Texture Name="gBombersNotebookDigit8Tex" OutName="bombers_notebook_digit_8" Format="i4" Width="16" Height="17" Offset="0x24B8"/>
|
||||
<Texture Name="gBombersNotebookDigit9Tex" OutName="bombers_notebook_digit_9" Format="i4" Width="16" Height="17" Offset="0x2540"/>
|
||||
<Texture Name="gBombersNotebookColonTex" OutName="bombers_notebook_colon" Format="i4" Width="16" Height="17" Offset="0x25C8"/>
|
||||
<Texture Name="gBombersNotebookDay1stTex" OutName="bombers_notebook_day_1st" Format="ia8" Width="48" Height="22" Offset="0x2650"/>
|
||||
<Texture Name="gBombersNotebookDay2ndTex" OutName="bombers_notebook_day_2nd" Format="ia8" Width="48" Height="22" Offset="0x2A70"/>
|
||||
<Texture Name="gBombersNotebookDayFinalTex" OutName="bombers_notebook_day_final" Format="ia8" Width="48" Height="22" Offset="0x2E90"/>
|
||||
<Texture Name="gBombersNotebookTimeOfDayTex" OutName="bombers_notebook_time_of_day" Format="i4" Width="96" Height="20" Offset="0x32B0"/>
|
||||
</File>
|
||||
</Root>
|
||||
@@ -0,0 +1,126 @@
|
||||
<Root>
|
||||
<File Name="title_static" Segment="1">
|
||||
<Texture Name="gFileSelNoFileToCopyENGTex" OutName="no_file_to_copy_eng" Format="ia8" Width="128" Height="16" Offset="0x0"/>
|
||||
<Texture Name="gFileSelNoFileToEraseENGTex" OutName="no_file_to_erase_eng" Format="ia8" Width="128" Height="16" Offset="0x800"/>
|
||||
<Texture Name="gFileSelNoEmptyFileENGTex" OutName="no_empty_file_eng" Format="ia8" Width="128" Height="16" Offset="0x1000"/>
|
||||
<Texture Name="gFileSelFileEmptyENGTex" OutName="file_empty_eng" Format="ia8" Width="128" Height="16" Offset="0x1800"/>
|
||||
<Texture Name="gFileSelFileInUseENGTex" OutName="file_in_use_eng" Format="ia8" Width="128" Height="16" Offset="0x2000"/>
|
||||
|
||||
<Texture Name="gFileSelConnectorTex" OutName="connector" Format="ia8" Width="24" Height="16" Offset="0x2800"/>
|
||||
|
||||
<Texture Name="gFileSelCopyWhichFileENGTex" OutName="copy_which_file_eng" Format="ia8" Width="128" Height="16" Offset="0x2980"/>
|
||||
<Texture Name="gFileSelCopyToWhichFileENGTex" OutName="copy_to_which_file_eng" Format="ia8" Width="128" Height="16" Offset="0x3180"/>
|
||||
<Texture Name="gFileSelAreYouSureCopyENGTex" OutName="are_you_sure_copy_eng" Format="ia8" Width="128" Height="16" Offset="0x3980"/>
|
||||
<Texture Name="gFileSelFileCopiedENGTex" OutName="file_copied_eng" Format="ia8" Width="128" Height="16" Offset="0x4180"/>
|
||||
|
||||
<Texture Name="gFileSelPleaseSelectAFileENGTex" OutName="please_select_a_file_eng" Format="ia8" Width="128" Height="16" Offset="0x4980"/>
|
||||
<Texture Name="gFileSelOpenThisFileENGTex" OutName="open_this_file_eng" Format="ia8" Width="128" Height="16" Offset="0x5180"/>
|
||||
|
||||
<Texture Name="gFileSelEraseWhichFileENGTex" OutName="erase_which_file_eng" Format="ia8" Width="128" Height="16" Offset="0x5980"/>
|
||||
<Texture Name="gFileSelAreYouSureEraseENGTex" OutName="are_you_sure_erase_eng" Format="ia8" Width="128" Height="16" Offset="0x6180"/>
|
||||
<Texture Name="gFileSelFileErasedENGTex" OutName="file_erased_eng" Format="ia8" Width="128" Height="16" Offset="0x6980"/>
|
||||
|
||||
<Texture Name="gFileSelOptionsENGTex" OutName="options_eng" Format="ia8" Width="128" Height="16" Offset="0x7180"/>
|
||||
<Texture Name="gFileSelNameENGTex" OutName="name_eng" Format="ia8" Width="56" Height="16" Offset="0x7980"/>
|
||||
<Texture Name="gFileSelSurroundENGTex" OutName="surround_eng" Format="ia8" Width="48" Height="16" Offset="0x7D00"/>
|
||||
<Texture Name="gFileSelHeadsetENGTex" OutName="headset_eng" Format="ia8" Width="48" Height="16" Offset="0x8000"/>
|
||||
<Texture Name="gFileSelMonoENGTex" OutName="mono_eng" Format="ia8" Width="48" Height="16" Offset="0x8300"/>
|
||||
<Texture Name="gFileSelSoundENGTex" OutName="sound_eng" Format="ia8" Width="64" Height="16" Offset="0x8600"/>
|
||||
<Texture Name="gFileSelStereoENGTex" OutName="stereo_eng" Format="ia8" Width="48" Height="16" Offset="0x8A00"/>
|
||||
<Texture Name="gFileSelTargetingENGTex" OutName="targeting_eng" Format="ia8" Width="64" Height="16" Offset="0x8D00"/>
|
||||
<Texture Name="gFileSelSwitchENGTex" OutName="switch_eng" Format="ia8" Width="48" Height="16" Offset="0x9100"/>
|
||||
<Texture Name="gFileSelHoldENGTex" OutName="hold_eng" Format="ia8" Width="48" Height="16" Offset="0x9400"/>
|
||||
<Texture Name="gFileSelCheckBrightnessENGTex" OutName="check_brightness_eng" Format="ia8" Width="96" Height="16" Offset="0x9700"/>
|
||||
<Texture Name="gFileSelDolbySurroundLogoENGTex" OutName="dolby_surround_logo_eng" Format="i8" Width="48" Height="17" Offset="0x9D00"/>
|
||||
|
||||
<Texture Name="gFileSelDecideCancelENGTex" OutName="decide_cancel_eng" Format="ia8" Width="144" Height="16" Offset="0xA030"/>
|
||||
<Texture Name="gFileSelDecideSaveENGTex" OutName="decide_save_eng" Format="ia8" Width="152" Height="16" Offset="0xA930"/>
|
||||
<Texture Name="gFileSelPleaseWaitENGTex" OutName="please_wait_eng" Format="ia8" Width="144" Height="16" Offset="0xB2B0"/>
|
||||
|
||||
<Texture Name="gFileSelWindow00Tex" OutName="window_00" Format="ia16" Width="64" Height="32" Offset="0xBBB0"/>
|
||||
<Texture Name="gFileSelWindow01Tex" OutName="window_01" Format="ia16" Width="64" Height="32" Offset="0xCBB0"/>
|
||||
<Texture Name="gFileSelWindow02Tex" OutName="window_02" Format="ia16" Width="64" Height="32" Offset="0xDBB0"/>
|
||||
<Texture Name="gFileSelWindow03Tex" OutName="window_03" Format="ia16" Width="48" Height="32" Offset="0xEBB0"/>
|
||||
<Texture Name="gFileSelWindow10Tex" OutName="window_10" Format="ia16" Width="64" Height="32" Offset="0xF7B0"/>
|
||||
<Texture Name="gFileSelWindow11Tex" OutName="window_11" Format="ia16" Width="64" Height="32" Offset="0x107B0"/>
|
||||
<Texture Name="gFileSelWindow12Tex" OutName="window_12" Format="ia16" Width="64" Height="32" Offset="0x117B0"/>
|
||||
<Texture Name="gFileSelWindow13Tex" OutName="window_13" Format="ia16" Width="48" Height="32" Offset="0x127B0"/>
|
||||
<Texture Name="gFileSelWindow20Tex" OutName="window_20" Format="ia16" Width="64" Height="32" Offset="0x133B0"/>
|
||||
<Texture Name="gFileSelWindow21Tex" OutName="window_21" Format="ia16" Width="64" Height="32" Offset="0x143B0"/>
|
||||
<Texture Name="gFileSelWindow22Tex" OutName="window_22" Format="ia16" Width="64" Height="32" Offset="0x153B0"/>
|
||||
<Texture Name="gFileSelWindow23Tex" OutName="window_23" Format="ia16" Width="48" Height="32" Offset="0x163B0"/>
|
||||
<Texture Name="gFileSelWindow30Tex" OutName="window_30" Format="ia16" Width="64" Height="32" Offset="0x16FB0"/>
|
||||
<Texture Name="gFileSelWindow31Tex" OutName="window_31" Format="ia16" Width="64" Height="32" Offset="0x17FB0"/>
|
||||
<Texture Name="gFileSelWindow32Tex" OutName="window_32" Format="ia16" Width="64" Height="32" Offset="0x18FB0"/>
|
||||
<Texture Name="gFileSelWindow33Tex" OutName="window_33" Format="ia16" Width="48" Height="32" Offset="0x19FB0"/>
|
||||
<Texture Name="gFileSelWindow40Tex" OutName="window_40" Format="ia16" Width="64" Height="32" Offset="0x1ABB0"/>
|
||||
<Texture Name="gFileSelWindow41Tex" OutName="window_41" Format="ia16" Width="64" Height="32" Offset="0x1BBB0"/>
|
||||
<Texture Name="gFileSelWindow42Tex" OutName="window_42" Format="ia16" Width="64" Height="32" Offset="0x1CBB0"/>
|
||||
<Texture Name="gFileSelWindow43Tex" OutName="window_43" Format="ia16" Width="48" Height="32" Offset="0x1DBB0"/>
|
||||
|
||||
<Texture Name="gFileSelCopyButtonENGTex" OutName="copy_button_eng" Format="ia16" Width="64" Height="16" Offset="0x1E7B0"/>
|
||||
|
||||
<Texture Name="gFileSelFile1ButtonENGTex" OutName="file_1_button_eng" Format="ia16" Width="64" Height="16" Offset="0x1EFB0"/>
|
||||
<Texture Name="gFileSelFile2ButtonENGTex" OutName="file_2_button_eng" Format="ia16" Width="64" Height="16" Offset="0x1F7B0"/>
|
||||
<Texture Name="gFileSelFile3ButtonENGTex" OutName="file_3_button_eng" Format="ia16" Width="64" Height="16" Offset="0x1FFB0"/>
|
||||
|
||||
<Texture Name="gFileSelYesButtonENGTex" OutName="yes_button_eng" Format="ia16" Width="64" Height="16" Offset="0x207B0"/>
|
||||
<Texture Name="gFileSelEraseButtonENGTex" OutName="erase_button_eng" Format="ia16" Width="64" Height="16" Offset="0x20FB0"/>
|
||||
<Texture Name="gFileSelENDButtonENGTex" OutName="end_button_eng" Format="ia16" Width="44" Height="16" Offset="0x217B0"/>
|
||||
<Texture Name="gFileSelBackspaceButtonTex" OutName="backspace_button" Format="ia16" Width="28" Height="16" Offset="0x21D30"/>
|
||||
|
||||
<Texture Name="gFileSelFileNameBoxTex" OutName="file_name_box" Format="ia16" Width="108" Height="16" Offset="0x220B0"/>
|
||||
|
||||
<Texture Name="gFileSelFileInfoBox0Tex" OutName="file_info_box_0" Format="ia16" Width="36" Height="56" Offset="0x22E30"/>
|
||||
<Texture Name="gFileSelFileInfoBox1Tex" OutName="file_info_box_1" Format="ia16" Width="36" Height="56" Offset="0x23DF0"/>
|
||||
<Texture Name="gFileSelFileInfoBox2Tex" OutName="file_info_box_2" Format="ia16" Width="36" Height="56" Offset="0x24DB0"/>
|
||||
<Texture Name="gFileSelFileInfoBox3Tex" OutName="file_info_box_3" Format="ia16" Width="36" Height="56" Offset="0x25D70"/>
|
||||
<Texture Name="gFileSelFileInfoBox4Tex" OutName="file_info_box_4" Format="ia16" Width="24" Height="56" Offset="0x26D30"/>
|
||||
|
||||
<Texture Name="gFileSelOptionsButtonENGTex" OutName="options_button_eng" Format="ia16" Width="64" Height="16" Offset="0x277B0"/>
|
||||
|
||||
<Texture Name="gFileSelQuitButtonENGTex" OutName="quit_button_eng" Format="ia16" Width="64" Height="16" Offset="0x27FB0"/>
|
||||
|
||||
<!-- Extension for owl save information -->
|
||||
<Texture Name="gFileSelFileExtraInfoBox0Tex" OutName="file_extra_info_box_0" Format="ia16" Width="28" Height="56" Offset="0x287B0"/>
|
||||
<Texture Name="gFileSelFileExtraInfoBox1Tex" OutName="file_extra_info_box_1" Format="ia16" Width="28" Height="56" Offset="0x293F0"/>
|
||||
|
||||
<!-- Used for closed owl save file -->
|
||||
<Texture Name="gFileSelBlankButtonTex" OutName="file_blank_button" Format="ia16" Width="52" Height="16" Offset="0x2A030"/>
|
||||
|
||||
<Texture Name="gFileSelOptionsDividerTex" OutName="options_divider" Format="ia4" Width="256" Height="2" Offset="0x2A6B0"/>
|
||||
<Texture Name="gFileSelBrightnessCheckTex" OutName="brightness_check" Format="ia4" Width="96" Height="16" Offset="0x2A7B0"/>
|
||||
|
||||
<Texture Name="gFileSelBigButtonHighlightTex" OutName="big_button_highlight" Format="i8" Width="72" Height="24" Offset="0x2AAB0"/>
|
||||
<Texture Name="gFileSelCharHighlightTex" OutName="char_highlight" Format="i8" Width="24" Height="24" Offset="0x2B170"/>
|
||||
<Texture Name="gFileSelMediumButtonHighlightTex" OutName="medium_button_highlight" Format="i8" Width="56" Height="24" Offset="0x2B3B0"/>
|
||||
<Texture Name="gFileSelSmallButtonHighlightTex" OutName="small_button_highlight" Format="i8" Width="40" Height="24" Offset="0x2B8F0"/>
|
||||
|
||||
<!-- Boss remains textures -->
|
||||
<Texture Name="gFileSelOdolwasRemainsTex" OutName="odolwas_remains" Format="rgba32" Width="32" Height="32" Offset="0x2BCB0"/>
|
||||
<Texture Name="gFileSelGohtsRemainsTex" OutName="gohts_remains" Format="rgba32" Width="32" Height="32" Offset="0x2CCB0"/>
|
||||
<Texture Name="gFileSelGyorgsRemainsTex" OutName="gyorgs_remains" Format="rgba32" Width="32" Height="32" Offset="0x2DCB0"/>
|
||||
<Texture Name="gFileSelTwinmoldsRemainsTex" OutName="twinmolds_remains" Format="rgba32" Width="32" Height="32" Offset="0x2ECB0"/>
|
||||
|
||||
<Texture Name="gFileSelOwlSaveIconTex" OutName="owl_save_icon" Format="rgba32" Width="24" Height="12" Offset="0x2FCB0"/>
|
||||
|
||||
<Texture Name="gFileSelFirstDayENGTex" OutName="first_day_eng" Format="i4" Width="48" Height="24" Offset="0x30130"/>
|
||||
<Texture Name="gFileSelSecondDayENGTex" OutName="second_day_eng" Format="i4" Width="48" Height="24" Offset="0x30370"/>
|
||||
<Texture Name="gFileSelFinalDayENGTex" OutName="final_day_eng" Format="i4" Width="48" Height="24" Offset="0x305B0"/>
|
||||
|
||||
<Texture Name="gFileSelSaveXJPNTex" OutName="save_x_jpn" Format="i4" Width="32" Height="16" Offset="0x307F0"/>
|
||||
|
||||
<Texture Name="gFileSelMASKSENGTex" OutName="masks_eng" Format="i4" Width="64" Height="16" Offset="0x308F0"/>
|
||||
|
||||
<Texture Name="gFileSel0QuarterHeartENGTex" OutName="0_quarter_heart" Format="ia8" Width="24" Height="16" Offset="0x30AF0"/>
|
||||
<Texture Name="gFileSel1QuarterHeartENGTex" OutName="1_quarter_heart" Format="ia8" Width="24" Height="16" Offset="0x30C70"/>
|
||||
<Texture Name="gFileSel2QuarterHeartENGTex" OutName="2_quarter_heart" Format="ia8" Width="24" Height="16" Offset="0x30DF0"/>
|
||||
<Texture Name="gFileSel3QuarterHeartENGTex" OutName="3_quarter_heart" Format="ia8" Width="24" Height="16" Offset="0x30F70"/>
|
||||
|
||||
<Texture Name="gFileSelRupeeTex" OutName="rupee" Format="ia8" Width="16" Height="16" Offset="0x310F0"/>
|
||||
|
||||
<DList Name="gFileSelWindow1DL" Offset="0x311F0"/>
|
||||
<DList Name="gFileSelWindow2DL" Offset="0x31408"/>
|
||||
<DList Name="gFileSelWindow3DL" Offset="0x31618"/>
|
||||
</File>
|
||||
</Root>
|
||||
@@ -1,9 +1,9 @@
|
||||
<Root>
|
||||
<File Name="object_tree" Segment="6">
|
||||
<DList Name="object_tree_DL_000680" Offset="0x680" />
|
||||
<DList Name="object_tree_DL_0007C8" Offset="0x7C8" />
|
||||
<Texture Name="object_tree_Tex_0008B8" OutName="tex_0008B8" Format="rgba16" Width="32" Height="32" Offset="0x8B8" />
|
||||
<Texture Name="object_tree_Tex_0010B8" OutName="tex_0010B8" Format="rgba16" Width="32" Height="32" Offset="0x10B8" />
|
||||
<Collision Name="object_tree_Colheader_001B2C" Offset="0x1B2C" />
|
||||
<DList Name="gTreeBodyDL" Offset="0x680" />
|
||||
<DList Name="gTreeLeavesDL" Offset="0x7C8" />
|
||||
<Texture Name="gTreeBodyTex" OutName="tree_body" Format="rgba16" Width="32" Height="32" Offset="0x8B8" />
|
||||
<Texture Name="gTreeLeavesTex" OutName="tree_leaves" Format="rgba16" Width="32" Height="32" Offset="0x10B8" />
|
||||
<Collision Name="gTreeTopCol" Offset="0x1B2C" />
|
||||
</File>
|
||||
</Root>
|
||||
|
||||
@@ -0,0 +1,19 @@
|
||||
<Root>
|
||||
<File Name="ovl_file_choose" BaseAddress="0x80804010" RangeStart="0xFDE0" RangeEnd="0x101E0">
|
||||
<Array Name="D_80813DF0" Count="20" Offset="0xFDE0" Static="Off">
|
||||
<Vtx/>
|
||||
</Array>
|
||||
<Array Name="D_80813F30" Count="32" Offset="0xFF20" Static="Off">
|
||||
<Vtx/>
|
||||
</Array>
|
||||
<Array Name="gOptionsDividerTopVtx" Count="4" Offset="0x10120" Static="Off">
|
||||
<Vtx/>
|
||||
</Array>
|
||||
<Array Name="gOptionsDividerMiddleVtx" Count="4" Offset="0x10160" Static="Off">
|
||||
<Vtx/>
|
||||
</Array>
|
||||
<Array Name="gOptionsDividerBottomVtx" Count="4" Offset="0x101A0" Static="Off">
|
||||
<Vtx/>
|
||||
</Array>
|
||||
</File>
|
||||
</Root>
|
||||
+2
-2
@@ -4699,7 +4699,7 @@ _DW({ \
|
||||
|
||||
/* like gSPTextureRectangle but accepts negative position arguments */
|
||||
#define gSPScisTextureRectangle(pkt, xl, yl, xh, yh, tile, s, t, dsdx, dtdy) \
|
||||
{ \
|
||||
_DW({ \
|
||||
Gfx *_g = (Gfx *)(pkt); \
|
||||
\
|
||||
_g->words.w0 = (_SHIFTL(G_TEXRECT, 24, 8) | \
|
||||
@@ -4723,7 +4723,7 @@ _DW({ \
|
||||
0, 16))); \
|
||||
gImmp1(pkt, G_RDPHALF_2, (_SHIFTL((dsdx), 16, 16) | \
|
||||
_SHIFTL((dtdy), 0, 16))); \
|
||||
}
|
||||
})
|
||||
|
||||
#define gsSPTextureRectangleFlip(xl, yl, xh, yh, tile, s, t, dsdx, dtdy) \
|
||||
(_SHIFTL(G_TEXRECTFLIP, 24, 8) | _SHIFTL(xh, 12, 12) | \
|
||||
|
||||
+5
-150
@@ -129,39 +129,6 @@ void MtxConv_L2F(MtxF* mtx, Mtx* mf);
|
||||
void __assert(const char* file, u32 lineNum);
|
||||
// void func_800862B4(void);
|
||||
s32 func_80086620(OSMesgQueue* param_1, PadMgr* param_2, OSContStatus* param_3);
|
||||
f32 func_80086760(f32 x);
|
||||
// void func_80086794(void);
|
||||
// void func_800867B4(void);
|
||||
// void func_800867D4(void);
|
||||
// void func_800867F4(void);
|
||||
f32 func_80086814(f32 x);
|
||||
// void func_80086834(void);
|
||||
// void func_80086880(void);
|
||||
// void func_800869A4(void);
|
||||
// void func_80086AF0(void);
|
||||
f32 func_80086B30(f32 y, f32 x);
|
||||
// void func_80086C18(void);
|
||||
f32 func_80086C48(f32 x);
|
||||
// void func_80086C70(void);
|
||||
f64 func_80086C7C(f64 param_1);
|
||||
s32 func_80086C88(f32 param_1);
|
||||
s32 func_80086C98(f64 param_1);
|
||||
// void func_80086CA8(void);
|
||||
f64 func_80086CB4(f64 param_1);
|
||||
s32 func_80086CC0(f32 param_1);
|
||||
s32 func_80086CD0(f64 param_1);
|
||||
// void func_80086CE0(void);
|
||||
f64 func_80086CEC(f64 param_1);
|
||||
s32 func_80086CF8(f32 param_1);
|
||||
s32 func_80086D08(f64 param_1);
|
||||
// void func_80086D18(void);
|
||||
f64 func_80086D24(f64);
|
||||
s32 func_80086D30(f32 param_1);
|
||||
s32 func_80086D40(f64 param_1);
|
||||
// void func_80086D50(void);
|
||||
f64 func_80086D6C(f64 param_1);
|
||||
s32 func_80086D8C(f32 param_1);
|
||||
s32 func_80086DAC(f64 param_1);
|
||||
|
||||
u32 Rand_Next(void);
|
||||
void Rand_Seed(u32 seed);
|
||||
@@ -190,7 +157,6 @@ void osStopThread(OSThread* t);
|
||||
s32 osRecvMesg(OSMesgQueue* mq, OSMesg* msg, s32 flags);
|
||||
OSIntMask osSetIntMask(OSIntMask im);
|
||||
// OSIntMask osGetIntMask(void);
|
||||
// void osVoiceSetWord(void);
|
||||
void guScale(Mtx* mtx, f32 x, f32 y, f32 z);
|
||||
f32 sinf(f32 __x);
|
||||
s16 sins(u16 x);
|
||||
@@ -219,7 +185,6 @@ void __osDispatchThread(void);
|
||||
void __osCleanupThread(void);
|
||||
void __osDequeueThread(OSThread** queue, OSThread* t);
|
||||
void osDestroyThread(OSThread* t);
|
||||
// void __osVoiceCheckResult(void);
|
||||
void bzero(void* begin, s32 length);
|
||||
|
||||
void __osSiCreateAccessQueue(void);
|
||||
@@ -232,7 +197,6 @@ void osCreateThread(OSThread* t, OSId id, void* entry, void* arg, void* sp, OSPr
|
||||
s32 osContStartReadData(OSMesgQueue* mq);
|
||||
void osContGetReadData(OSContPad* data);
|
||||
void __osPackReadData(void);
|
||||
// void osVoiceGetReadData(void);
|
||||
uintptr_t osVirtualToPhysical(void* virtualAddress);
|
||||
u32 __osGetSR(void);
|
||||
void __osSetSR(u32 value);
|
||||
@@ -291,11 +255,8 @@ void guLookAtHiliteF(float mf[4][4], LookAt* l, Hilite* h, f32 xEye, f32 yEye, f
|
||||
void guLookAtHilite(Mtx* m, LookAt* l, Hilite* h, f32 xEye, f32 yEye, f32 zEye, f32 xAt, f32 yAt, f32 zAt, f32 xUp, f32 yUp, f32 zUp, f32 xl1, f32 yl1, f32 zl1, f32 xl2, f32 yl2, f32 zl2, s32 hiliteWidth, s32 hiliteHeight);
|
||||
s32 _Printf(PrintCallback pfn, void* arg, const char* fmt, va_list ap);
|
||||
void _Putfld(_Pft* px, va_list* pap, u8 code, u8* ac);
|
||||
// void osVoiceClearDictionary(void);
|
||||
void osUnmapTLBAll(void);
|
||||
s32 osEPiStartDma(OSPiHandle* pihandle, OSIoMesg* mb, s32 direction);
|
||||
// void __osVoiceContRead2(void);
|
||||
u8 __osVoiceContDataCrc(u8* data, size_t numBytes);
|
||||
const char* strchr(const char* s, s32 c);
|
||||
size_t strlen(const char* s);
|
||||
void* memcpy(void* s1, const void* s2, size_t n);
|
||||
@@ -306,7 +267,6 @@ void __osTimerServicesInit(void);
|
||||
void __osTimerInterrupt(void);
|
||||
void __osSetTimerIntr(OSTime tim);
|
||||
OSTime __osInsertTimer(OSTimer* t);
|
||||
// void __osVoiceContRead36(void);
|
||||
s32 __osSpDeviceBusy(void);
|
||||
s32 __osSiDeviceBusy(void);
|
||||
void guMtxIdent(Mtx* mtx);
|
||||
@@ -324,12 +284,9 @@ OSTime osGetTime(void);
|
||||
void guRotateF(float m[4][4], f32 a, f32 x, f32 y, f32 z);
|
||||
void guRotate(Mtx* m, f32 a, f32 x, f32 y, f32 z);
|
||||
void __osSetGlobalIntMask(u32 mask);
|
||||
s32 osVoiceInit(OSMesgQueue* mq, OSVoiceHandle* handle, s32 channel);
|
||||
s32 __osContChannelReset(OSMesgQueue* mq, s32 channel);
|
||||
// void __osVoiceSetADConverter(void);
|
||||
s32 osAiSetFrequency(u32 frequency);
|
||||
s32 __osContRamRead(OSMesgQueue* ctrlrqueue, s32 channel, u16 addr, u8* buffer);
|
||||
// void __osVoiceContWrite20(void);
|
||||
u8 __osContAddressCrc(u16 addr);
|
||||
u8 __osContDataCrc(u8* data);
|
||||
OSThread* __osGetActiveQueue(void);
|
||||
@@ -354,12 +311,10 @@ s32 osEPiReadIo(OSPiHandle* handle, uintptr_t devAddr, u32* data);
|
||||
void osViSetSpecialFeatures(u32 func);
|
||||
s16 coss(u16 x);
|
||||
void osSetTime(OSTime ticks);
|
||||
// void osVoiceStopReadData(void);
|
||||
void osViSetEvent(OSMesgQueue* mq, OSMesg m, u32 retraceCount);
|
||||
s32 osPfsIsPlug(OSMesgQueue* mq, u8* pattern);
|
||||
// void __osPfsRequestData(void);
|
||||
// void __osPfsGetInitData(void);
|
||||
s32 __osVoiceGetStatus(OSMesgQueue* mq, s32 port, u8* status);
|
||||
OSPiHandle* osCartRomInit(void);
|
||||
// void guS2DInitBg(void);
|
||||
s32 __osPfsSelectBank(OSPfs* pfs, u8 bank);
|
||||
@@ -393,7 +348,6 @@ void osCreateViManager(OSPri pri);
|
||||
__OSViContext* __osViGetCurrentContext(void);
|
||||
void osWritebackDCacheAll(void);
|
||||
OSThread* __osGetCurrFaultedThread(void);
|
||||
// void osVoiceMaskDictionary(void);
|
||||
void guMtxF2L(float mf[4][4], Mtx* m);
|
||||
void osStartThread(OSThread* t);
|
||||
void osViSetYScale(f32 value);
|
||||
@@ -406,12 +360,8 @@ double __ll_to_d(long long s);
|
||||
float __ll_to_f(long long s);
|
||||
double __ull_to_d(unsigned long long u);
|
||||
float __ull_to_f(unsigned long long u);
|
||||
// void osVoiceCheckWord(void);
|
||||
// void osVoiceControlGain(void);
|
||||
// void osVoiceStartReadData(void);
|
||||
u32* osViGetCurrentFramebuffer(void);
|
||||
s32 __osSpSetPc(void* pc);
|
||||
// void __osVoiceContWrite4(void);
|
||||
void __osGetHWIntrRoutine(s32 idx, OSMesgQueue** outQueue, OSMesg* outMsg);
|
||||
void __osSetHWIntrRoutine(s32 idx, OSMesgQueue* queue, OSMesg msg);
|
||||
u32 __osGetWatchLo(void);
|
||||
@@ -1161,70 +1111,17 @@ void func_800FEA50(PlayState* play);
|
||||
void func_800FEAB0(void);
|
||||
// void func_800FEAC0(void);
|
||||
void func_800FEAF4(EnvironmentContext* envCtx);
|
||||
|
||||
void* Lib_MemCpy(void* dest, void* src, size_t size);
|
||||
void* Lib_MemSet(void* buffer, s32 value, size_t size);
|
||||
f32 Math_CosS(s16 angle);
|
||||
f32 Math_SinS(s16 angle);
|
||||
s32 Math_StepToIImpl(s32 start, s32 target, s32 step);
|
||||
void Math_StepToIGet(s32* pValue, s32 target, s32 step);
|
||||
s32 Math_StepToI(s32* pValue, s32 target, s32 step);
|
||||
s32 Math_ScaledStepToS(s16* pValue, s16 target, s16 step);
|
||||
s32 Math_StepToS(s16* pValue, s16 target, s16 step);
|
||||
s32 Math_StepToC(s8* pValue, s8 target, s8 step);
|
||||
s32 Math_StepToF(f32* pValue, f32 target, f32 step);
|
||||
s32 Math_StepUntilAngleS(s16* pValue, s16 target, s16 step);
|
||||
s32 Math_StepToAngleS(s16* pValue, s16 target, s16 step);
|
||||
s32 Math_AsymStepToS(s16* pValue, s16 target, s16 incrStep, s16 decrStep);
|
||||
s32 Math_StepUntilF(f32* pValue, f32 limit, f32 step);
|
||||
s32 Math_AsymStepToF(f32* pValue, f32 target, f32 incrStep, f32 decrStep);
|
||||
void func_800FF3A0(f32* distOut, s16* angleOut, Input* input);
|
||||
s16 Rand_S16Offset(s16 base, s16 range);
|
||||
s16 Rand_S16OffsetStride(s16 base, s16 stride, s16 range);
|
||||
void Math_Vec3f_Copy(Vec3f* dest, Vec3f* src);
|
||||
void Math_Vec3s_Copy(Vec3s* dest, Vec3s* src);
|
||||
void Math_Vec3s_ToVec3f(Vec3f* dest, Vec3s* src);
|
||||
void Math_Vec3f_ToVec3s(Vec3s* dest, Vec3f* src);
|
||||
void Math_Vec3f_Sum(Vec3f* l, Vec3f* r, Vec3f* dest);
|
||||
void Math_Vec3f_Diff(Vec3f* l, Vec3f* r, Vec3f* dest);
|
||||
void Math_Vec3s_DiffToVec3f(Vec3f* dest, Vec3s* l, Vec3s* r);
|
||||
void Math_Vec3f_Scale(Vec3f* vec, f32 scale);
|
||||
void Math_Vec3f_ScaleAndStore(Vec3f* vec, f32 scale, Vec3f* dest);
|
||||
void Math_Vec3f_Lerp(Vec3f* a, Vec3f* b, f32 t, Vec3f* dest);
|
||||
void Math_Vec3f_SumScaled(Vec3f* a, Vec3f* b, f32 scale, Vec3f* dest);
|
||||
void Math_Vec3f_AddRand(Vec3f* orig, f32 scale, Vec3f* dest);
|
||||
void Math_Vec3f_DistXYZAndStoreNormDiff(Vec3f* a, Vec3f* b, f32 scale, Vec3f* dest);
|
||||
f32 Math_Vec3f_DistXYZ(Vec3f* a, Vec3f* b);
|
||||
f32 Math_Vec3f_DistXYZAndStoreDiff(Vec3f* a, Vec3f* b, Vec3f* dest);
|
||||
f32 Math_Vec3f_DistXZ(Vec3f* a, Vec3f* b);
|
||||
f32 Math_Vec3f_DistXZAndStore(Vec3f* a, Vec3f* b, f32* dx, f32* dz);
|
||||
f32 Math_Vec3f_StepToXZ(Vec3f* start, Vec3f* target, f32 speed);
|
||||
f32 Math_Vec3f_DiffY(Vec3f* a, Vec3f* b);
|
||||
s16 Math_Vec3f_Yaw(Vec3f* a, Vec3f* b);
|
||||
s16 Math_Vec3f_Pitch(Vec3f* a, Vec3f* b);
|
||||
void Actor_ProcessInitChain(Actor* actor, InitChainEntry* ichain);
|
||||
// void IChain_Apply_u8(u8* actor, InitChainEntry* init);
|
||||
// void IChain_Apply_s8(u8* actor, InitChainEntry* init);
|
||||
// void IChain_Apply_u16(u8* actor, InitChainEntry* init);
|
||||
// void IChain_Apply_s16(u8* actor, InitChainEntry* init);
|
||||
// void IChain_Apply_u32(u8* actor, InitChainEntry* init);
|
||||
// void IChain_Apply_s32(u8* actor, InitChainEntry* init);
|
||||
// void IChain_Apply_f32(u8* actor, InitChainEntry* init);
|
||||
// void IChain_Apply_f32div1000(u8* actor, InitChainEntry* init);
|
||||
// void IChain_Apply_Vec3f(u8* actor, InitChainEntry* init);
|
||||
// void IChain_Apply_Vec3fdiv1000(u8* actor, InitChainEntry* init);
|
||||
// void IChain_Apply_Vec3s(u8* actor, InitChainEntry* init);
|
||||
f32 Math_SmoothStepToF(f32* pValue, f32 target, f32 fraction, f32 step, f32 minStep);
|
||||
void Math_ApproachF(f32* pValue, f32 target, f32 scale, f32 maxStep);
|
||||
void Math_ApproachZeroF(f32* pValue, f32 scale, f32 maxStep);
|
||||
s16 Math_SmoothStepToS(s16* pValue, s16 target, s16 scale, s16 step, s16 minStep);
|
||||
void Math_ApproachS(s16* pValue, s16 target, s16 scale, s16 maxStep);
|
||||
void Color_RGBA8_Copy(Color_RGBA8* dst, Color_RGBA8* src);
|
||||
void func_801000A4(u16 sfxId);
|
||||
void func_801000CC(u16 sfxId);
|
||||
void Lib_PlaySfxAtPos(Vec3f* pos, u16 sfxId);
|
||||
void Lib_Vec3f_TranslateAndRotateY(Vec3f* translation, s16 rotAngle, Vec3f* src, Vec3f* dst);
|
||||
void Lib_LerpRGB(Color_RGB8* a, Color_RGB8* b, f32 t, Color_RGB8* dst);
|
||||
f32 Math_Vec3f_StepTo(Vec3f* start, Vec3f* target, f32 speed);
|
||||
void Lib_Nop801004FC(void);
|
||||
void* Lib_SegmentedToVirtual(void* ptr);
|
||||
void* Lib_SegmentedToVirtualNull(void* ptr);
|
||||
@@ -1781,7 +1678,7 @@ void func_801514B0(PlayState* play, u16 arg1, u8 arg2);
|
||||
void Message_StartTextbox(PlayState* play, u16 textId, Actor* Actor);
|
||||
void Message_ContinueTextbox(PlayState* play, u16 textId);
|
||||
void func_80151A68(PlayState* play, u16 textId);
|
||||
void func_80151BB4(PlayState* play, u8 arg1);
|
||||
void Message_BombersNotebookQueueEvent(PlayState* play, u8 event);
|
||||
// void func_80151C9C(void);
|
||||
void func_80151DA4(PlayState* play, u16 arg2);
|
||||
void func_80152434(PlayState* play, u16 arg2);
|
||||
@@ -1911,19 +1808,6 @@ void Play_AssignPlayerCsIdsFromScene(GameState* thisx, s32 spawnCsId);
|
||||
void Play_FillScreen(GameState* thisx, s16 fillScreenOn, u8 red, u8 green, u8 blue, u8 alpha);
|
||||
void Play_Init(GameState* thisx);
|
||||
|
||||
// void func_8016AC10(UNK_TYPE1 param_1, UNK_TYPE1 param_2, UNK_TYPE1 param_3, UNK_TYPE1 param_4, UNK_TYPE4 param_5, UNK_TYPE4 param_6, UNK_TYPE4 param_7, UNK_TYPE4 param_8, UNK_TYPE4 param_9, UNK_TYPE4 param_10);
|
||||
// void func_8016AE1C(void);
|
||||
// void func_8016B278(void);
|
||||
// void func_8016B4B0(void);
|
||||
// void func_8016C344(void);
|
||||
// void func_8016CD4C(void);
|
||||
// void func_8016E40C(void);
|
||||
// void func_8016EA90(void);
|
||||
void BombersNotebook_Draw(BombersNotebook* this, GraphicsContext* gfxCtx);
|
||||
// void func_8016F4EC(void);
|
||||
void BombersNotebook_Update(PlayState* play, BombersNotebook* this, Input* input);
|
||||
void BombersNotebook_Init(BombersNotebook* this);
|
||||
void BombersNotebook_Destroy(BombersNotebook* this);
|
||||
void PreRender_SetValuesSave(PreRender* this, u32 width, u32 height, void* fbuf, void* zbuf, void* cvg);
|
||||
void PreRender_Init(PreRender* this);
|
||||
void PreRender_SetValues(PreRender* this, u32 width, u32 height, void* fbuf, void* zbuf);
|
||||
@@ -1960,25 +1844,6 @@ void AudioMgr_ThreadEntry(void* arg);
|
||||
void AudioMgr_Unlock(AudioMgr* audioMgr);
|
||||
void AudioMgr_Init(AudioMgr* audioMgr, void* stack, OSPri pri, OSId id, SchedContext* sched, IrqMgr* irqMgr);
|
||||
|
||||
void Game_UpdateFramerateVariables(s32 divisor);
|
||||
void Game_SetFramerateDivisor(GameState* gameState, s32 divisor);
|
||||
void GameState_SetFBFilter(Gfx** gfx, void* zbuffer);
|
||||
void Game_Nop80173534(GameState* gameState);
|
||||
void GameState_Draw(GameState* gameState, GraphicsContext* gfxCtx);
|
||||
void GameState_SetFrameBuffer(GraphicsContext* gfxCtx);
|
||||
void func_801736DC(GraphicsContext* gfxCtx);
|
||||
void Game_UpdateInput(GameState* gameState);
|
||||
void Game_Update(GameState* gameState);
|
||||
void Game_IncrementFrameCount(GameState* gameState);
|
||||
void GameState_InitArena(GameState* gameState, size_t size);
|
||||
void GameState_Realloc(GameState* gameState, size_t size);
|
||||
void GameState_Init(GameState* gameState, GameStateFunc init, GraphicsContext* gfxCtx);
|
||||
void GameState_Destroy(GameState* gameState);
|
||||
GameStateFunc GameState_GetInit(GameState* gameState);
|
||||
size_t GameState_GetSize(GameState* gameState);
|
||||
u32 GameState_IsRunning(GameState* gameState);
|
||||
s32 GameState_GetArenaSize(GameState* gameState);
|
||||
s32 func_80173B48(GameState* gameState);
|
||||
void GameAlloc_Log(GameAlloc* this);
|
||||
void* GameAlloc_Malloc(GameAlloc* this, size_t size);
|
||||
void GameAlloc_Free(GameAlloc* this, void* data);
|
||||
@@ -2056,13 +1921,7 @@ void CmpDma_LoadAllFiles(uintptr_t segmentVrom, void* dst, size_t size);
|
||||
// void Check_DrawRegionLockErrorMessage(void);
|
||||
void Check_ExpansionPak(void);
|
||||
void Check_RegionIsSupported(void);
|
||||
f32 func_80179300(f32 n);
|
||||
f32 func_80179400(s32 n);
|
||||
f32 pow_int(f32 base, s32 exp);
|
||||
f32 sin_rad(f32 rad);
|
||||
f32 cos_rad(f32 rad);
|
||||
f32 Rand_ZeroFloat(f32 scale);
|
||||
f32 randPlusMinusPoint5Scaled(f32 scale);
|
||||
|
||||
f32 Math3D_Normalize(Vec3f* vec);
|
||||
s32 Math3D_PlaneVsLineSegClosestPoint(f32 planeAA, f32 planeAB, f32 planeAC, f32 planeADist, f32 planeBA, f32 planeBB, f32 planeBC, f32 planeBDist, Vec3f* linePointA, Vec3f* linePointB, Vec3f* closestPoint);
|
||||
s32 func_80179798(Vec3f* param_1, Vec3f* param_2, Vec3f* param_3, Vec3f* param_4, Vec3f* param_5, Vec3f* param_6);
|
||||
@@ -2158,11 +2017,6 @@ s32 Math3D_YZInSphere(Sphere16* sphere, f32 y, f32 z);
|
||||
// void func_8017FB1C(UNK_TYPE1 param_1, UNK_TYPE1 param_2, UNK_TYPE1 param_3, UNK_TYPE1 param_4, UNK_TYPE4 param_5, UNK_TYPE4 param_6, UNK_TYPE4 param_7, UNK_TYPE4 param_8, UNK_TYPE4 param_9, UNK_TYPE4 param_10, UNK_TYPE4 param_11);
|
||||
// void func_8017FD44(void);
|
||||
|
||||
s16 Math_Atan2S(f32 y, f32 x);
|
||||
f32 Math_Atan2F(f32 y, f32 x);
|
||||
s16 Math_Atan2S_XY(f32 x, f32 y);
|
||||
f32 Math_Atan2F_XY(f32 x, f32 y);
|
||||
|
||||
u64* SysUcode_GetUCodeBoot(void);
|
||||
size_t SysUcode_GetUCodeBootSize(void);
|
||||
u64* SysUcode_GetUCode(void);
|
||||
@@ -2218,7 +2072,8 @@ s32 SysFlashrom_IsBusy(void);
|
||||
s32 SysFlashrom_AwaitResult(void);
|
||||
void SysFlashrom_WriteDataSync(void* addr, u32 pageNum, u32 pageCount);
|
||||
|
||||
s32 func_80185F90(u32 param_1);
|
||||
s32 func_80185F90(u32 arg0);
|
||||
|
||||
u32 osFlashGetAddr(u32 pageNum);
|
||||
OSPiHandle* osFlashReInit(u8 latency, u8 pulse, u8 pageSize, u8 relDuration, u32 start);
|
||||
void osFlashChange(u32 flashNum);
|
||||
|
||||
@@ -4,6 +4,8 @@
|
||||
#include "PR/ultratypes.h"
|
||||
#include "PR/pfs.h"
|
||||
|
||||
#define CHNL_ERR(format) (((format).rxsize & CHNL_ERR_MASK) >> 4)
|
||||
|
||||
#define SIAccessQueueSize 2
|
||||
#define BLOCKSIZE 32
|
||||
#define MAXCONTROLLERS 4
|
||||
|
||||
+13
-15
@@ -28,27 +28,13 @@
|
||||
|
||||
#define GET_ACTIVE_CAM(play) ((play)->cameraPtrs[(play)->activeCamId])
|
||||
|
||||
#define STOP_GAMESTATE(curState) \
|
||||
do { \
|
||||
GameState* state = curState; \
|
||||
\
|
||||
state->running = false; \
|
||||
} while(0)
|
||||
|
||||
#define SET_NEXT_GAMESTATE(curState, nextInit, nextSize) \
|
||||
do { \
|
||||
GameState* state = curState; \
|
||||
\
|
||||
(state)->init = nextInit; \
|
||||
(state)->size = nextSize; \
|
||||
} while (0)
|
||||
|
||||
#define GET_PLAYER(play) ((Player*)(play)->actorCtx.actorLists[ACTORCAT_PLAYER].first)
|
||||
|
||||
#define GET_FIRST_ENEMY(play) ((Actor*)(play)->actorCtx.actorLists[ACTORCAT_ENEMY].first)
|
||||
|
||||
#define CLOCK_TIME(hr, min) (s32)(((hr) * 60 + (min)) * 0x10000 / (24 * 60))
|
||||
#define CLOCK_TIME_MINUTE (CLOCK_TIME(0, 1))
|
||||
#define CLOCK_TIME_HOUR (CLOCK_TIME(1, 0))
|
||||
#define DAY_LENGTH (CLOCK_TIME(24, 0))
|
||||
|
||||
#define TIME_TO_HOURS_F(time) ((time) * (24.0f / 0x10000))
|
||||
@@ -59,6 +45,7 @@
|
||||
#define CLOCK_TIME_F(hr, min) (((hr) * 60.0f + (min)) * (0x10000 / (24.0f * 60.0f)))
|
||||
#define CLOCK_TIME_ALT_F(hr, min) (((hr) * 60.0f + (min)) / (24.0f * 60.0f / 0x10000))
|
||||
#define CLOCK_TIME_ALT2_F(hr, min) ((((hr) + (min) / 60.0f) * 60.0f) / (24.0f * 60.0f / 0x10000))
|
||||
#define CLOCK_TIME_HOUR_F (CLOCK_TIME_F(1, 0))
|
||||
|
||||
#define CAPACITY(upg, value) gUpgradeCapacities[upg][value]
|
||||
#define CUR_CAPACITY(upg) CAPACITY(upg, CUR_UPG_VALUE(upg))
|
||||
@@ -81,6 +68,17 @@
|
||||
#define ALIGN64(val) (((val) + 0x3F) & ~0x3F)
|
||||
#define ALIGN256(val) (((val) + 0xFF) & ~0xFF)
|
||||
|
||||
#define BIT_FLAG_TO_SHIFT(flag) \
|
||||
((flag & 0x80) ? 7 : \
|
||||
(flag & 0x40) ? 6 : \
|
||||
(flag & 0x20) ? 5 : \
|
||||
(flag & 0x10) ? 4 : \
|
||||
(flag & 0x8) ? 3 : \
|
||||
(flag & 0x4) ? 2 : \
|
||||
(flag & 0x2) ? 1 : \
|
||||
(flag & 0x1) ? 0 : \
|
||||
0)
|
||||
|
||||
/**
|
||||
* `x` vertex x
|
||||
* `y` vertex y
|
||||
|
||||
@@ -142,11 +142,4 @@ typedef struct {
|
||||
/* 0xC */ u32* text_end;
|
||||
} OSProf; // size = 0x10
|
||||
|
||||
typedef struct {
|
||||
/* 0x0 */ OSMesgQueue* mq;
|
||||
/* 0x4 */ s32 port; /* Controller port */
|
||||
/* 0x8 */ s32 mode;
|
||||
/* 0xC */ u8 status;
|
||||
} OSVoiceHandle; // size = 0x10
|
||||
|
||||
#endif
|
||||
|
||||
@@ -57,6 +57,7 @@ DECLARE_ROM_SEGMENT(icon_item_static_old)
|
||||
DECLARE_ROM_SEGMENT(icon_item_24_static_test)
|
||||
DECLARE_ROM_SEGMENT(icon_item_24_static_old)
|
||||
DECLARE_ROM_SEGMENT(schedule_dma_static_test)
|
||||
DECLARE_ROM_SEGMENT(schedule_dma_static_old)
|
||||
DECLARE_ROM_SEGMENT(schedule_static)
|
||||
DECLARE_ROM_SEGMENT(story_static)
|
||||
DECLARE_ROM_SEGMENT(do_action_static)
|
||||
|
||||
@@ -0,0 +1,48 @@
|
||||
/**
|
||||
* Bombers Notebook Event Table
|
||||
*
|
||||
* DEFINE_EVENT should be used for events in the notebook
|
||||
* - Argument 0: Enum value for the event
|
||||
* - Argument 1: Icon to use (see BombersNotebookEventIcon)
|
||||
* - Argument 2: WeekEventFlag that updates the icons color
|
||||
* - Argument 3: Message id for the description of this event
|
||||
* - Argument 4: Message id for the completion of this event
|
||||
* - Argument 5: WeekEventFlag for the completion of this event
|
||||
*
|
||||
* Note: These events are after the MET events, so will start indexing at BOMBERS_NOTEBOOK_PERSON_MAX
|
||||
*/
|
||||
/* 0x14 */ DEFINE_EVENT(BOMBERS_NOTEBOOK_EVENT_RECEIVED_ROOM_KEY, BOMBERS_NOTEBOOK_EVENT_ICON_EXCLAMATION_POINT, WEEKEVENTREG_RECEIVED_ROOM_KEY, 0x2198, 0x2152, WEEKEVENTREG_BOMBERS_NOTEBOOK_EVENT_RECEIVED_ROOM_KEY)
|
||||
/* 0x15 */ DEFINE_EVENT(BOMBERS_NOTEBOOK_EVENT_PROMISED_MIDNIGHT_MEETING, BOMBERS_NOTEBOOK_EVENT_ICON_EXCLAMATION_POINT, WEEKEVENTREG_PROMISED_MIDNIGHT_MEETING, 0x2199, 0x2153, WEEKEVENTREG_BOMBERS_NOTEBOOK_EVENT_PROMISED_MIDNIGHT_MEETING)
|
||||
/* 0x16 */ DEFINE_EVENT(BOMBERS_NOTEBOOK_EVENT_PROMISED_TO_MEET_KAFEI, BOMBERS_NOTEBOOK_EVENT_ICON_EXCLAMATION_POINT, WEEKEVENTREG_HAD_MIDNIGHT_MEETING, 0x219A, 0x2154, WEEKEVENTREG_BOMBERS_NOTEBOOK_EVENT_PROMISED_TO_MEET_KAFEI)
|
||||
/* 0x17 */ DEFINE_EVENT(BOMBERS_NOTEBOOK_EVENT_RECEIVED_LETTER_TO_KAFEI, BOMBERS_NOTEBOOK_EVENT_ICON_EXCLAMATION_POINT, WEEKEVENTREG_HAD_MIDNIGHT_MEETING, 0x219B, 0x0000, WEEKEVENTREG_BOMBERS_NOTEBOOK_EVENT_RECEIVED_LETTER_TO_KAFEI)
|
||||
/* 0x18 */ DEFINE_EVENT(BOMBERS_NOTEBOOK_EVENT_DEPOSITED_LETTER_TO_KAFEI, BOMBERS_NOTEBOOK_EVENT_ICON_EXCLAMATION_POINT, BOMBERS_NOTEBOOK_EVENT_COLOR_WEEKEVENTREG_DEPOSITED_LETTER_TO_KAFEI, 0x219C, 0x2156, WEEKEVENTREG_BOMBERS_NOTEBOOK_EVENT_DEPOSITED_LETTER_TO_KAFEI)
|
||||
/* 0x19 */ DEFINE_EVENT(BOMBERS_NOTEBOOK_EVENT_RECEIVED_PENDANT_OF_MEMORIES, BOMBERS_NOTEBOOK_EVENT_ICON_EXCLAMATION_POINT, WEEKEVENTREG_RECEIVED_PENDANT_OF_MEMORIES, 0x219D, 0x2157, WEEKEVENTREG_BOMBERS_NOTEBOOK_EVENT_RECEIVED_PENDANT_OF_MEMORIES)
|
||||
/* 0x1A */ DEFINE_EVENT(BOMBERS_NOTEBOOK_EVENT_DELIVERED_PENDANT_OF_MEMORIES, BOMBERS_NOTEBOOK_EVENT_ICON_EXCLAMATION_POINT, WEEKEVENTREG_DELIVERED_PENDANT_OF_MEMORIES, 0x219E, 0x2158, WEEKEVENTREG_BOMBERS_NOTEBOOK_EVENT_DELIVERED_PENDANT_OF_MEMORIES)
|
||||
/* 0x1B */ DEFINE_EVENT(BOMBERS_NOTEBOOK_EVENT_ESCAPED_SAKONS_HIDEOUT, BOMBERS_NOTEBOOK_EVENT_ICON_EXCLAMATION_POINT, WEEKEVENTREG_ESCAPED_SAKONS_HIDEOUT, 0x219F, 0x2159, WEEKEVENTREG_BOMBERS_NOTEBOOK_EVENT_ESCAPED_SAKONS_HIDEOUT)
|
||||
/* 0x1C */ DEFINE_EVENT(BOMBERS_NOTEBOOK_EVENT_PROMISED_TO_HELP_WITH_THEM, BOMBERS_NOTEBOOK_EVENT_ICON_EXCLAMATION_POINT, WEEKEVENTREG_PROMISED_TO_HELP_WITH_THEM, 0x21A0, 0x215A, WEEKEVENTREG_BOMBERS_NOTEBOOK_EVENT_PROMISED_TO_HELP_WITH_THEM)
|
||||
/* 0x1D */ DEFINE_EVENT(BOMBERS_NOTEBOOK_EVENT_DEFENDED_AGAINST_THEM, BOMBERS_NOTEBOOK_EVENT_ICON_EXCLAMATION_POINT, WEEKEVENTREG_DEFENDED_AGAINST_THEM, 0x21A1, 0x215B, WEEKEVENTREG_BOMBERS_NOTEBOOK_EVENT_DEFENDED_AGAINST_THEM)
|
||||
/* 0x1E */ DEFINE_EVENT(BOMBERS_NOTEBOOK_EVENT_RECEIVED_MILK_BOTTLE, BOMBERS_NOTEBOOK_EVENT_ICON_RIBBON, BOMBERS_NOTEBOOK_EVENT_COLOR_WEEKEVENTREG_NONE, 0x21A2, 0x0000, WEEKEVENTREG_BOMBERS_NOTEBOOK_EVENT_RECEIVED_MILK_BOTTLE)
|
||||
/* 0x1F */ DEFINE_EVENT(BOMBERS_NOTEBOOK_EVENT_ESCORTED_CREMIA, BOMBERS_NOTEBOOK_EVENT_ICON_EXCLAMATION_POINT, WEEKEVENTREG_ESCORTED_CREMIA, 0x21A3, 0x215D, WEEKEVENTREG_BOMBERS_NOTEBOOK_EVENT_ESCORTED_CREMIA)
|
||||
/* 0x20 */ DEFINE_EVENT(BOMBERS_NOTEBOOK_EVENT_RECEIVED_ROMANIS_MASK, BOMBERS_NOTEBOOK_EVENT_ICON_MASK, BOMBERS_NOTEBOOK_EVENT_COLOR_WEEKEVENTREG_NONE, 0x21A4, 0x0000, WEEKEVENTREG_BOMBERS_NOTEBOOK_EVENT_RECEIVED_ROMANIS_MASK)
|
||||
/* 0x21 */ DEFINE_EVENT(BOMBERS_NOTEBOOK_EVENT_RECEIVED_KEATON_MASK, BOMBERS_NOTEBOOK_EVENT_ICON_MASK, BOMBERS_NOTEBOOK_EVENT_COLOR_WEEKEVENTREG_NONE, 0x21A5, 0x215F, WEEKEVENTREG_BOMBERS_NOTEBOOK_EVENT_RECEIVED_KEATON_MASK)
|
||||
/* 0x22 */ DEFINE_EVENT(BOMBERS_NOTEBOOK_EVENT_RECEIVED_PRIORITY_MAIL, BOMBERS_NOTEBOOK_EVENT_ICON_EXCLAMATION_POINT, WEEKEVENTREG_RECEIVED_PRIORITY_MAIL, 0x21A6, 0x2160, WEEKEVENTREG_BOMBERS_NOTEBOOK_EVENT_RECEIVED_PRIORITY_MAIL)
|
||||
/* 0x23 */ DEFINE_EVENT(BOMBERS_NOTEBOOK_EVENT_DELIVERED_PRIORITY_MAIL, BOMBERS_NOTEBOOK_EVENT_ICON_RIBBON, BOMBERS_NOTEBOOK_EVENT_COLOR_WEEKEVENTREG_NONE, 0x21A7, 0x2161, WEEKEVENTREG_BOMBERS_NOTEBOOK_EVENT_DELIVERED_PRIORITY_MAIL)
|
||||
/* 0x24 */ DEFINE_EVENT(BOMBERS_NOTEBOOK_EVENT_LEARNED_SECRET_CODE, BOMBERS_NOTEBOOK_EVENT_ICON_EXCLAMATION_POINT, BOMBERS_NOTEBOOK_EVENT_COLOR_WEEKEVENTREG_NONE, 0x21A8, 0x0000, WEEKEVENTREG_BOMBERS_NOTEBOOK_EVENT_LEARNED_SECRET_CODE)
|
||||
/* 0x25 */ DEFINE_EVENT(BOMBERS_NOTEBOOK_EVENT_RECEIVED_BOMBERS_NOTEBOOK, BOMBERS_NOTEBOOK_EVENT_ICON_RIBBON, BOMBERS_NOTEBOOK_EVENT_COLOR_WEEKEVENTREG_NONE, 0x21A9, 0x2163, WEEKEVENTREG_BOMBERS_NOTEBOOK_EVENT_RECEIVED_BOMBERS_NOTEBOOK)
|
||||
/* 0x26 */ DEFINE_EVENT(BOMBERS_NOTEBOOK_EVENT_RECEIVED_MAYOR_HP, BOMBERS_NOTEBOOK_EVENT_ICON_RIBBON, BOMBERS_NOTEBOOK_EVENT_COLOR_WEEKEVENTREG_NONE, 0x21AA, 0x2164, WEEKEVENTREG_BOMBERS_NOTEBOOK_EVENT_RECEIVED_MAYOR_HP)
|
||||
/* 0x27 */ DEFINE_EVENT(BOMBERS_NOTEBOOK_EVENT_RECEIVED_ROSA_SISTERS_HP, BOMBERS_NOTEBOOK_EVENT_ICON_RIBBON, BOMBERS_NOTEBOOK_EVENT_COLOR_WEEKEVENTREG_NONE, 0x21AB, 0x2165, WEEKEVENTREG_BOMBERS_NOTEBOOK_EVENT_RECEIVED_ROSA_SISTERS_HP)
|
||||
/* 0x28 */ DEFINE_EVENT(BOMBERS_NOTEBOOK_EVENT_RECEIVED_TOILET_HAND_HP, BOMBERS_NOTEBOOK_EVENT_ICON_RIBBON, BOMBERS_NOTEBOOK_EVENT_COLOR_WEEKEVENTREG_NONE, 0x21AC, 0x2166, WEEKEVENTREG_BOMBERS_NOTEBOOK_EVENT_RECEIVED_TOILET_HAND_HP)
|
||||
/* 0x29 */ DEFINE_EVENT(BOMBERS_NOTEBOOK_EVENT_RECEIVED_GRANDMA_SHORT_STORY_HP, BOMBERS_NOTEBOOK_EVENT_ICON_RIBBON, BOMBERS_NOTEBOOK_EVENT_COLOR_WEEKEVENTREG_NONE, 0x21AD, 0x2167, WEEKEVENTREG_BOMBERS_NOTEBOOK_EVENT_RECEIVED_GRANDMA_SHORT_STORY_HP)
|
||||
/* 0x2A */ DEFINE_EVENT(BOMBERS_NOTEBOOK_EVENT_RECEIVED_GRANDMA_LONG_STORY_HP, BOMBERS_NOTEBOOK_EVENT_ICON_RIBBON, BOMBERS_NOTEBOOK_EVENT_COLOR_WEEKEVENTREG_NONE, 0x21AE, 0x2168, WEEKEVENTREG_BOMBERS_NOTEBOOK_EVENT_RECEIVED_GRANDMA_LONG_STORY_HP)
|
||||
/* 0x2B */ DEFINE_EVENT(BOMBERS_NOTEBOOK_EVENT_RECEIVED_POSTMAN_HP, BOMBERS_NOTEBOOK_EVENT_ICON_RIBBON, BOMBERS_NOTEBOOK_EVENT_COLOR_WEEKEVENTREG_NONE, 0x21AF, 0x2169, WEEKEVENTREG_BOMBERS_NOTEBOOK_EVENT_RECEIVED_POSTMAN_HP)
|
||||
/* 0x2C */ DEFINE_EVENT(BOMBERS_NOTEBOOK_EVENT_RECEIVED_KAFEIS_MASK, BOMBERS_NOTEBOOK_EVENT_ICON_MASK, BOMBERS_NOTEBOOK_EVENT_COLOR_WEEKEVENTREG_NONE, 0x21B0, 0x216A, WEEKEVENTREG_BOMBERS_NOTEBOOK_EVENT_RECEIVED_KAFEIS_MASK)
|
||||
/* 0x2D */ DEFINE_EVENT(BOMBERS_NOTEBOOK_EVENT_RECEIVED_ALL_NIGHT_MASK, BOMBERS_NOTEBOOK_EVENT_ICON_MASK, BOMBERS_NOTEBOOK_EVENT_COLOR_WEEKEVENTREG_NONE, 0x21B1, 0x216B, WEEKEVENTREG_BOMBERS_NOTEBOOK_EVENT_RECEIVED_ALL_NIGHT_MASK)
|
||||
/* 0x2E */ DEFINE_EVENT(BOMBERS_NOTEBOOK_EVENT_RECEIVED_BUNNY_HOOD, BOMBERS_NOTEBOOK_EVENT_ICON_MASK, BOMBERS_NOTEBOOK_EVENT_COLOR_WEEKEVENTREG_NONE, 0x21B2, 0x216C, WEEKEVENTREG_BOMBERS_NOTEBOOK_EVENT_RECEIVED_BUNNY_HOOD)
|
||||
/* 0x2F */ DEFINE_EVENT(BOMBERS_NOTEBOOK_EVENT_RECEIVED_GAROS_MASK, BOMBERS_NOTEBOOK_EVENT_ICON_MASK, BOMBERS_NOTEBOOK_EVENT_COLOR_WEEKEVENTREG_NONE, 0x21B3, 0x216D, WEEKEVENTREG_BOMBERS_NOTEBOOK_EVENT_RECEIVED_GAROS_MASK)
|
||||
/* 0x30 */ DEFINE_EVENT(BOMBERS_NOTEBOOK_EVENT_RECEIVED_CIRCUS_LEADERS_MASK, BOMBERS_NOTEBOOK_EVENT_ICON_MASK, BOMBERS_NOTEBOOK_EVENT_COLOR_WEEKEVENTREG_NONE, 0x21B4, 0x216E, WEEKEVENTREG_BOMBERS_NOTEBOOK_EVENT_RECEIVED_CIRCUS_LEADERS_MASK)
|
||||
/* 0x31 */ DEFINE_EVENT(BOMBERS_NOTEBOOK_EVENT_RECEIVED_POSTMANS_HAT, BOMBERS_NOTEBOOK_EVENT_ICON_MASK, BOMBERS_NOTEBOOK_EVENT_COLOR_WEEKEVENTREG_NONE, 0x21B5, 0x216F, WEEKEVENTREG_BOMBERS_NOTEBOOK_EVENT_RECEIVED_POSTMANS_HAT)
|
||||
/* 0x32 */ DEFINE_EVENT(BOMBERS_NOTEBOOK_EVENT_RECEIVED_COUPLES_MASK, BOMBERS_NOTEBOOK_EVENT_ICON_MASK, BOMBERS_NOTEBOOK_EVENT_COLOR_WEEKEVENTREG_NONE, 0x21B6, 0x2170, WEEKEVENTREG_BOMBERS_NOTEBOOK_EVENT_RECEIVED_COUPLES_MASK)
|
||||
/* 0x33 */ DEFINE_EVENT(BOMBERS_NOTEBOOK_EVENT_RECEIVED_BLAST_MASK, BOMBERS_NOTEBOOK_EVENT_ICON_MASK, BOMBERS_NOTEBOOK_EVENT_COLOR_WEEKEVENTREG_NONE, 0x21B7, 0x2171, WEEKEVENTREG_BOMBERS_NOTEBOOK_EVENT_RECEIVED_BLAST_MASK)
|
||||
/* 0x34 */ DEFINE_EVENT(BOMBERS_NOTEBOOK_EVENT_RECEIVED_KAMAROS_MASK, BOMBERS_NOTEBOOK_EVENT_ICON_MASK, BOMBERS_NOTEBOOK_EVENT_COLOR_WEEKEVENTREG_NONE, 0x21B8, 0x2172, WEEKEVENTREG_BOMBERS_NOTEBOOK_EVENT_RECEIVED_KAMAROS_MASK)
|
||||
/* 0x35 */ DEFINE_EVENT(BOMBERS_NOTEBOOK_EVENT_RECEIVED_STONE_MASK, BOMBERS_NOTEBOOK_EVENT_ICON_MASK, BOMBERS_NOTEBOOK_EVENT_COLOR_WEEKEVENTREG_NONE, 0x21B9, 0x2173, WEEKEVENTREG_BOMBERS_NOTEBOOK_EVENT_RECEIVED_STONE_MASK)
|
||||
/* 0x36 */ DEFINE_EVENT(BOMBERS_NOTEBOOK_EVENT_RECEIVED_BREMEN_MASK, BOMBERS_NOTEBOOK_EVENT_ICON_MASK, BOMBERS_NOTEBOOK_EVENT_COLOR_WEEKEVENTREG_NONE, 0x21BA, 0x2174, WEEKEVENTREG_BOMBERS_NOTEBOOK_EVENT_RECEIVED_BREMEN_MASK)
|
||||
@@ -0,0 +1,31 @@
|
||||
/**
|
||||
* Bombers Notebook Person Table
|
||||
*
|
||||
* DEFINE_PERSON should be used for people with entries in the notebook
|
||||
* - Argument 0: Enum value for this person
|
||||
* - Argument 1: Photo texture for this person
|
||||
* - Argument 2: Message id for the description of this person
|
||||
* - Argument 3: Enum value for the event meeting this person
|
||||
* - Argument 4: Message id for the event meeting this person
|
||||
* - Argument 5: WeekEventFlag for the event meeting this person
|
||||
*/
|
||||
/* 0x00 */ DEFINE_PERSON(BOMBERS_NOTEBOOK_PERSON_BOMBERS, D_07009800, 0x21DD, BOMBERS_NOTEBOOK_EVENT_MET_BOMBERS, 0x2147, WEEKEVENTREG_BOMBERS_NOTEBOOK_EVENT_MET_BOMBERS)
|
||||
/* 0x01 */ DEFINE_PERSON(BOMBERS_NOTEBOOK_PERSON_ANJU, D_07000000, 0x21CA, BOMBERS_NOTEBOOK_EVENT_MET_ANJU, 0x2134, WEEKEVENTREG_BOMBERS_NOTEBOOK_EVENT_MET_ANJU)
|
||||
/* 0x02 */ DEFINE_PERSON(BOMBERS_NOTEBOOK_PERSON_KAFEI, D_07000800, 0x21CB, BOMBERS_NOTEBOOK_EVENT_MET_KAFEI, 0x2135, WEEKEVENTREG_BOMBERS_NOTEBOOK_EVENT_MET_KAFEI)
|
||||
/* 0x03 */ DEFINE_PERSON(BOMBERS_NOTEBOOK_PERSON_CURIOSITY_SHOP_MAN, D_07001000, 0x21CC, BOMBERS_NOTEBOOK_EVENT_MET_CURIOSITY_SHOP_MAN, 0x2136, WEEKEVENTREG_BOMBERS_NOTEBOOK_EVENT_MET_CURIOSITY_SHOP_MAN)
|
||||
/* 0x04 */ DEFINE_PERSON(BOMBERS_NOTEBOOK_PERSON_BOMB_SHOP_LADY, D_07001800, 0x21CD, BOMBERS_NOTEBOOK_EVENT_MET_BOMB_SHOP_LADY, 0x2137, WEEKEVENTREG_BOMBERS_NOTEBOOK_EVENT_MET_BOMB_SHOP_LADY)
|
||||
/* 0x05 */ DEFINE_PERSON(BOMBERS_NOTEBOOK_PERSON_ROMANI, D_07002000, 0x21CE, BOMBERS_NOTEBOOK_EVENT_MET_ROMANI, 0x2138, WEEKEVENTREG_BOMBERS_NOTEBOOK_EVENT_MET_ROMANI)
|
||||
/* 0x06 */ DEFINE_PERSON(BOMBERS_NOTEBOOK_PERSON_CREMIA, D_07002800, 0x21CF, BOMBERS_NOTEBOOK_EVENT_MET_CREMIA, 0x2139, WEEKEVENTREG_BOMBERS_NOTEBOOK_EVENT_MET_CREMIA)
|
||||
/* 0x07 */ DEFINE_PERSON(BOMBERS_NOTEBOOK_PERSON_MAYOR_DOTOUR, D_07003000, 0x21D0, BOMBERS_NOTEBOOK_EVENT_MET_MAYOR_DOTOUR, 0x213A, WEEKEVENTREG_BOMBERS_NOTEBOOK_EVENT_MET_MAYOR_DOTOUR)
|
||||
/* 0x08 */ DEFINE_PERSON(BOMBERS_NOTEBOOK_PERSON_MADAME_AROMA, D_07003800, 0x21D1, BOMBERS_NOTEBOOK_EVENT_MET_MADAME_AROMA, 0x213B, WEEKEVENTREG_BOMBERS_NOTEBOOK_EVENT_MET_MADAME_AROMA)
|
||||
/* 0x09 */ DEFINE_PERSON(BOMBERS_NOTEBOOK_PERSON_TOTO, D_07004000, 0x21D2, BOMBERS_NOTEBOOK_EVENT_MET_TOTO, 0x213C, WEEKEVENTREG_BOMBERS_NOTEBOOK_EVENT_MET_TOTO)
|
||||
/* 0x0A */ DEFINE_PERSON(BOMBERS_NOTEBOOK_PERSON_GORMAN, D_07004800, 0x21D3, BOMBERS_NOTEBOOK_EVENT_MET_GORMAN, 0x213D, WEEKEVENTREG_BOMBERS_NOTEBOOK_EVENT_MET_GORMAN)
|
||||
/* 0x0B */ DEFINE_PERSON(BOMBERS_NOTEBOOK_PERSON_POSTMAN, D_07005000, 0x21D4, BOMBERS_NOTEBOOK_EVENT_MET_POSTMAN, 0x213E, WEEKEVENTREG_BOMBERS_NOTEBOOK_EVENT_MET_POSTMAN)
|
||||
/* 0x0C */ DEFINE_PERSON(BOMBERS_NOTEBOOK_PERSON_ROSA_SISTERS, D_07005800, 0x21D5, BOMBERS_NOTEBOOK_EVENT_MET_ROSA_SISTERS, 0x213F, WEEKEVENTREG_BOMBERS_NOTEBOOK_EVENT_MET_ROSA_SISTERS)
|
||||
/* 0x0D */ DEFINE_PERSON(BOMBERS_NOTEBOOK_PERSON_TOILET_HAND, D_07006000, 0x21D6, BOMBERS_NOTEBOOK_EVENT_MET_TOLIET_HAND, 0x2140, WEEKEVENTREG_BOMBERS_NOTEBOOK_EVENT_MET_TOILET_HAND)
|
||||
/* 0x0E */ DEFINE_PERSON(BOMBERS_NOTEBOOK_PERSON_ANJUS_GRANDMOTHER, D_07006800, 0x21D7, BOMBERS_NOTEBOOK_EVENT_MET_ANJUS_GRANDMOTHER, 0x2141, WEEKEVENTREG_BOMBERS_NOTEBOOK_EVENT_MET_ANJUS_GRANDMOTHER)
|
||||
/* 0x0F */ DEFINE_PERSON(BOMBERS_NOTEBOOK_PERSON_KAMARO, D_07007000, 0x21D8, BOMBERS_NOTEBOOK_EVENT_MET_KAMARO, 0x2142, WEEKEVENTREG_BOMBERS_NOTEBOOK_EVENT_MET_KAMARO)
|
||||
/* 0x10 */ DEFINE_PERSON(BOMBERS_NOTEBOOK_PERSON_GROG, D_07007800, 0x21D9, BOMBERS_NOTEBOOK_EVENT_MET_GROG, 0x2143, WEEKEVENTREG_BOMBERS_NOTEBOOK_EVENT_MET_GROG)
|
||||
/* 0x11 */ DEFINE_PERSON(BOMBERS_NOTEBOOK_PERSON_GORMAN_BROTHERS, D_07008000, 0x21DA, BOMBERS_NOTEBOOK_EVENT_MET_GORMAN_BROTHERS, 0x2144, WEEKEVENTREG_BOMBERS_NOTEBOOK_EVENT_MET_GORMAN_BROTHERS)
|
||||
/* 0x12 */ DEFINE_PERSON(BOMBERS_NOTEBOOK_PERSON_SHIRO, D_07008800, 0x21DB, BOMBERS_NOTEBOOK_EVENT_MET_SHIRO, 0x2145, WEEKEVENTREG_BOMBERS_NOTEBOOK_EVENT_MET_SHIRO)
|
||||
/* 0x13 */ DEFINE_PERSON(BOMBERS_NOTEBOOK_PERSON_GURU_GURU, D_07009000, 0x21DC, BOMBERS_NOTEBOOK_EVENT_MET_GURU_GURU, 0x2146, WEEKEVENTREG_BOMBERS_NOTEBOOK_EVENT_MET_GURU_GURU)
|
||||
@@ -6,6 +6,7 @@
|
||||
|
||||
#include "unk.h"
|
||||
|
||||
#include "ultra64/controller_voice.h"
|
||||
#include "ultra64/hardware.h"
|
||||
#include "ultra64/message.h"
|
||||
#include "ultra64/sptask.h"
|
||||
|
||||
@@ -0,0 +1,71 @@
|
||||
#ifndef CONTROLLER_VOICE_H
|
||||
#define CONTROLLER_VOICE_H
|
||||
|
||||
#include "PR/ultratypes.h"
|
||||
#include "ultra64/os_voice.h"
|
||||
#include "ultra64/message.h"
|
||||
#include "libc/stddef.h"
|
||||
|
||||
typedef struct {
|
||||
/* 0x0 */ u8 dummy;
|
||||
/* 0x1 */ u8 txsize;
|
||||
/* 0x2 */ u8 rxsize;
|
||||
/* 0x3 */ u8 cmd;
|
||||
/* 0x4 */ u8 addrh;
|
||||
/* 0x5 */ u8 addrl;
|
||||
/* 0x6 */ u8 data[2];
|
||||
/* 0x8 */ u8 datacrc;
|
||||
} __OSVoiceRead2Format; // size = 0x9
|
||||
|
||||
typedef struct {
|
||||
/* 0x00 */ u8 dummy;
|
||||
/* 0x01 */ u8 txsize;
|
||||
/* 0x02 */ u8 rxsize;
|
||||
/* 0x03 */ u8 cmd;
|
||||
/* 0x04 */ u8 addrh;
|
||||
/* 0x05 */ u8 addrl;
|
||||
/* 0x06 */ u8 data[36];
|
||||
/* 0x2A */ u8 datacrc;
|
||||
} __OSVoiceRead36Format; // size = 0x2B
|
||||
|
||||
typedef struct {
|
||||
/* 0x0 */ u8 dummy;
|
||||
/* 0x1 */ u8 txsize;
|
||||
/* 0x2 */ u8 rxsize;
|
||||
/* 0x3 */ u8 cmd;
|
||||
/* 0x4 */ u8 addrh;
|
||||
/* 0x5 */ u8 addrl;
|
||||
/* 0x6 */ u8 data[4];
|
||||
/* 0xA */ u8 datacrc;
|
||||
} __OSVoiceWrite4Format; // size = 0xB
|
||||
|
||||
typedef struct {
|
||||
/* 0x00 */ u8 dummy;
|
||||
/* 0x01 */ u8 txsize;
|
||||
/* 0x02 */ u8 rxsize;
|
||||
/* 0x03 */ u8 cmd;
|
||||
/* 0x04 */ u8 addrh;
|
||||
/* 0x05 */ u8 addrl;
|
||||
/* 0x06 */ u8 data[20];
|
||||
/* 0x1A */ u8 datacrc;
|
||||
} __OSVoiceWrite20Format; // size = 0x1B
|
||||
|
||||
typedef struct {
|
||||
/* 0x0 */ u8 txsize;
|
||||
/* 0x1 */ u8 rxsize;
|
||||
/* 0x2 */ u8 cmd;
|
||||
/* 0x3 */ u8 data;
|
||||
/* 0x4 */ u8 scrc;
|
||||
/* 0x5 */ u8 datacrc;
|
||||
} __OSVoiceSWriteFormat; // size = 0x6
|
||||
|
||||
s32 __osVoiceContRead2(OSMesgQueue* mq, s32 channel, u16 address, u8 dst[2]);
|
||||
s32 __osVoiceContRead36(OSMesgQueue* mq, s32 channel, u16 address, u8 dst[36]);
|
||||
s32 __osVoiceContWrite4(OSMesgQueue* mq, s32 channel, u16 address, u8 dst[4]);
|
||||
s32 __osVoiceContWrite20(OSMesgQueue* mq, s32 channel, u16 address, u8 dst[20]);
|
||||
s32 __osVoiceCheckResult(OSVoiceHandle* hd, u8* status);
|
||||
s32 __osVoiceGetStatus(OSMesgQueue* mq, s32 channel, u8* status);
|
||||
s32 __osVoiceSetADConverter(OSMesgQueue* mq, s32 channel, u8 data);
|
||||
u8 __osVoiceContDataCrc(u8* data, size_t numBytes);
|
||||
|
||||
#endif
|
||||
@@ -0,0 +1,42 @@
|
||||
#ifndef OS_VOICE_H
|
||||
#define OS_VOICE_H
|
||||
|
||||
#include "PR/ultratypes.h"
|
||||
#include "ultra64/message.h"
|
||||
|
||||
typedef enum OsVoiceHandleMode {
|
||||
/* 0 */ VOICE_HANDLE_MODE_0,
|
||||
/* 1 */ VOICE_HANDLE_MODE_1,
|
||||
/* 2 */ VOICE_HANDLE_MODE_2,
|
||||
/* 3 */ VOICE_HANDLE_MODE_3,
|
||||
/* 4 */ VOICE_HANDLE_MODE_4
|
||||
} OsVoiceHandleMode;
|
||||
|
||||
typedef struct {
|
||||
/* 0x0 */ OSMesgQueue* mq;
|
||||
/* 0x4 */ s32 channel; // Controller port
|
||||
/* 0x8 */ OsVoiceHandleMode mode;
|
||||
/* 0xC */ u8 status;
|
||||
} OSVoiceHandle; // size = 0x10
|
||||
|
||||
typedef struct {
|
||||
/* 0x00 */ u16 warning; // Warning
|
||||
/* 0x02 */ u16 answerNum; // Candidate number (0~5)
|
||||
/* 0x04 */ u16 voiceLevel; // Voice input level
|
||||
/* 0x06 */ u16 voiceRelLevel; // Relative voice level "voice_sn"
|
||||
/* 0x08 */ u16 voiceTime; // Voice input time
|
||||
/* 0x0A */ u16 answer[5]; // Candidate word number
|
||||
/* 0x14 */ u16 distance[5]; // Distance value
|
||||
} OSVoiceData; // size = 0x20
|
||||
|
||||
s32 osVoiceInit(OSMesgQueue* mq, OSVoiceHandle* hd, s32 channel);
|
||||
s32 osVoiceSetWord(OSVoiceHandle* hd, u8* word);
|
||||
s32 osVoiceCheckWord(u8* word);
|
||||
s32 osVoiceStartReadData(OSVoiceHandle* hd);
|
||||
s32 osVoiceStopReadData(OSVoiceHandle* hd);
|
||||
s32 osVoiceGetReadData(OSVoiceHandle* hd, OSVoiceData* result);
|
||||
s32 osVoiceClearDictionary(OSVoiceHandle* hd, u8 numWords);
|
||||
s32 osVoiceMaskDictionary(OSVoiceHandle* hd, u8* maskPattern, s32 size);
|
||||
s32 osVoiceControlGain(OSVoiceHandle* hd, s32 analog, s32 digital);
|
||||
|
||||
#endif
|
||||
+2
-63
@@ -72,11 +72,6 @@ extern UNK_TYPE4 D_80097F10;
|
||||
extern char spaces[];
|
||||
extern char zeroes[];
|
||||
extern OSTimer* __osTimerList;
|
||||
// extern UNK_TYPE4 D_80097F80;
|
||||
extern float D_80097F90;
|
||||
// extern UNK_TYPE1 D_80097FA0;
|
||||
// extern UNK_TYPE1 D_80097FA4;
|
||||
// extern UNK_TYPE1 D_80097FA5;
|
||||
extern s32 __osPfsLastChannel;
|
||||
extern OSViMode osViModeNtscLan1;
|
||||
extern OSViMode osViModeMpalLan1;
|
||||
@@ -89,7 +84,7 @@ extern OSViMode osViModeFpalLan1;
|
||||
// extern u8 udigs[];
|
||||
// extern OSDevMgr __osViDevMgr;
|
||||
extern u32 __additional_scanline;
|
||||
// extern UNK_TYPE1 D_80098180;
|
||||
|
||||
extern char bootThreadName[];
|
||||
extern char idleThreadName[];
|
||||
extern char irqmgrThreadName[];
|
||||
@@ -308,8 +303,6 @@ extern OSTask tmp_task;
|
||||
extern OSMesg siAccessBuf[1];
|
||||
extern OSMesgQueue __osSiAccessQueue;
|
||||
|
||||
extern UNK_TYPE1 D_8009CF60;
|
||||
// extern UNK_TYPE4 D_8009CF70;
|
||||
extern OSThread __osThreadSave;
|
||||
extern OSPiHandle D_8009D130;
|
||||
extern OSPiHandle D_8009D1A8;
|
||||
@@ -563,8 +556,6 @@ extern UNK_PTR D_801C5CB0;
|
||||
// extern UNK_TYPE2 D_801C6A90;
|
||||
// extern UNK_TYPE2 D_801C6A94;
|
||||
extern u8 gPageSwitchNextButtonStatus[6][5];
|
||||
// extern UNK_TYPE1 D_801C6AB8;
|
||||
// extern UNK_TYPE1 D_801C6B28;
|
||||
// extern UNK_TYPE1 D_801CED40;
|
||||
// extern UNK_TYPE2 D_801CFC78;
|
||||
// extern UNK_TYPE1 D_801CFC7A;
|
||||
@@ -697,65 +688,14 @@ extern s32 gDbgCamEnabled;
|
||||
extern Input* D_801D0D60;
|
||||
// extern UNK_TYPE2 sPlayerCsIdToCsCamId;
|
||||
// extern UNK_TYPE1 D_801D0D7A;
|
||||
// extern UNK_TYPE1 D_801D0D80;
|
||||
// extern UNK_TYPE1 D_801D11F4;
|
||||
// extern UNK_TYPE1 D_801D1230;
|
||||
// extern UNK_TYPE1 D_801D1234;
|
||||
// extern UNK_TYPE4 D_801D1238;
|
||||
// extern UNK_TYPE1 D_801D1244;
|
||||
// extern UNK_TYPE1 D_801D12C0;
|
||||
// extern UNK_TYPE1 D_801D12D0;
|
||||
// extern UNK_TYPE1 D_801D12D4;
|
||||
// extern UNK_TYPE1 D_801D12D8;
|
||||
// extern UNK_TYPE1 D_801D12DC;
|
||||
// extern UNK_TYPE2 D_801D1330;
|
||||
// extern UNK_TYPE1 D_801D1342;
|
||||
// extern UNK_TYPE2 D_801D1344;
|
||||
// extern UNK_TYPE1 D_801D1368;
|
||||
// extern UNK_TYPE2 D_801D1374;
|
||||
// extern UNK_TYPE1 D_801D1388;
|
||||
// extern UNK_TYPE2 D_801D13D8;
|
||||
// extern UNK_TYPE2 D_801D13DC;
|
||||
// extern UNK_TYPE2 D_801D13E0;
|
||||
// extern UNK_TYPE2 D_801D13E4;
|
||||
// extern UNK_TYPE4 D_801D13E8;
|
||||
// extern UNK_TYPE1 D_801D13EC;
|
||||
// extern UNK_TYPE1 D_801D13F0;
|
||||
// extern UNK_TYPE1 D_801D13F4;
|
||||
// extern UNK_TYPE1 D_801D13F8;
|
||||
// extern UNK_TYPE1 D_801D1420;
|
||||
// extern UNK_TYPE2 D_801D142C;
|
||||
// extern UNK_TYPE2 D_801D1434;
|
||||
// extern UNK_TYPE2 D_801D1438;
|
||||
// extern UNK_TYPE2 D_801D143C;
|
||||
// extern UNK_TYPE2 D_801D1440;
|
||||
// extern UNK_TYPE2 D_801D1444;
|
||||
// extern UNK_TYPE2 D_801D1448;
|
||||
// extern UNK_TYPE2 D_801D144C;
|
||||
// extern UNK_TYPE2 D_801D1450;
|
||||
// extern UNK_TYPE2 D_801D1454;
|
||||
// extern UNK_TYPE2 D_801D1458;
|
||||
// extern UNK_TYPE2 D_801D145C;
|
||||
// extern UNK_TYPE2 D_801D1460;
|
||||
// extern UNK_TYPE1 D_801D1464;
|
||||
// extern UNK_TYPE1 D_801D1468;
|
||||
// extern UNK_TYPE1 D_801D146C;
|
||||
// extern UNK_TYPE2 D_801D14DC;
|
||||
// extern UNK_TYPE2 D_801D14E0;
|
||||
// extern UNK_TYPE2 D_801D14E4;
|
||||
// extern UNK_TYPE2 D_801D14E8;
|
||||
// extern UNK_TYPE4 D_801D14F0;
|
||||
extern s32 gFramerateDivisor;
|
||||
extern f32 gFramerateDivisorF;
|
||||
extern f32 gFramerateDivisorHalf;
|
||||
extern f32 gFramerateDivisorThird;
|
||||
|
||||
extern u32 retryCount;
|
||||
extern u32 cfbIdx[3];
|
||||
extern s32 gScreenWidth;
|
||||
extern s32 gScreenHeight;
|
||||
extern u32 startHeapSize;
|
||||
extern UNK_PTR D_801D1540;
|
||||
// extern f32 sFactorialTbl[13];
|
||||
extern Vec3f gZeroVec3f;
|
||||
extern Vec3s gZeroVec3s;
|
||||
|
||||
@@ -2569,7 +2509,6 @@ extern s32 D_801FD120;
|
||||
// extern UNK_TYPE1 D_801FD598;
|
||||
// extern UNK_TYPE1 D_801FD5A0;
|
||||
// extern UNK_TYPE1 D_801FD5A4;
|
||||
extern OSVoiceHandle gVoiceHandle;
|
||||
// extern UNK_TYPE1 D_801FD5C4;
|
||||
// extern UNK_TYPE1 D_801FD5C8;
|
||||
// extern UNK_TYPE1 D_801FD5E8;
|
||||
|
||||
+34
-100
@@ -35,6 +35,7 @@
|
||||
#include "z64animation_legacy.h"
|
||||
#include "z64audio.h"
|
||||
#include "z64bgcheck.h"
|
||||
#include "z64bombers_notebook.h"
|
||||
#include "z64camera.h"
|
||||
#include "z64collision_check.h"
|
||||
#include "z64curve.h"
|
||||
@@ -44,6 +45,7 @@
|
||||
#include "z64effect.h"
|
||||
#include "z64frameadvance.h"
|
||||
#include "z64game_over.h"
|
||||
#include "z64game.h"
|
||||
#include "z64interface.h"
|
||||
#include "z64item.h"
|
||||
#include "z64light.h"
|
||||
@@ -273,45 +275,45 @@ typedef struct {
|
||||
/* 0x00 */ u16 unk_0;
|
||||
/* 0x02 */ u16 sceneTimeSpeed;
|
||||
/* 0x04 */ Vec3f sunPos;
|
||||
/* 0x10 */ u8 unk_10;
|
||||
/* 0x11 */ u8 unk_11;
|
||||
/* 0x10 */ u8 skybox1Index;
|
||||
/* 0x11 */ u8 skybox2Index;
|
||||
/* 0x12 */ u8 unk_12;
|
||||
/* 0x13 */ u8 unk_13;
|
||||
/* 0x13 */ u8 skyboxBlend;
|
||||
/* 0x14 */ u8 unk_14;
|
||||
/* 0x15 */ u8 skyboxDisabled;
|
||||
/* 0x16 */ u8 sunMoonDisabled;
|
||||
/* 0x17 */ u8 unk_17;
|
||||
/* 0x18 */ u8 unk_18;
|
||||
/* 0x19 */ u8 unk_19;
|
||||
/* 0x1A */ u16 unk_1A;
|
||||
/* 0x17 */ u8 skyboxConfig;
|
||||
/* 0x18 */ u8 changeSkyboxNextConfig;
|
||||
/* 0x19 */ u8 changeSkyboxState;
|
||||
/* 0x1A */ u16 changeSkyboxTimer;
|
||||
/* 0x1C */ u16 unk_1C;
|
||||
/* 0x1E */ u8 unk_1E;
|
||||
/* 0x1F */ u8 unk_1F;
|
||||
/* 0x20 */ u8 unk_20;
|
||||
/* 0x21 */ u8 unk_21;
|
||||
/* 0x22 */ u16 unk_22;
|
||||
/* 0x24 */ u16 unk_24;
|
||||
/* 0x1E */ u8 lightMode;
|
||||
/* 0x1F */ u8 lightConfig;
|
||||
/* 0x20 */ u8 changeLightNextConfig;
|
||||
/* 0x21 */ u8 changeLightEnabled;
|
||||
/* 0x22 */ u16 changeLightTimer;
|
||||
/* 0x24 */ u16 changeDuration;
|
||||
/* 0x26 */ u8 unk_26;
|
||||
/* 0x28 */ LightInfo dirLight1; // sun 1
|
||||
/* 0x36 */ LightInfo unk_36; // sun 2
|
||||
/* 0x44 */ s8 unk_44;
|
||||
/* 0x48 */ DmaRequest unk_48;
|
||||
/* 0x68 */ OSMesgQueue unk_68;
|
||||
/* 0x80 */ OSMesg unk_80;
|
||||
/* 0x84 */ f32 unk_84;
|
||||
/* 0x88 */ f32 unk_88;
|
||||
/* 0x44 */ s8 skyboxDmaState;
|
||||
/* 0x48 */ DmaRequest dmaRequest;
|
||||
/* 0x68 */ OSMesgQueue loadQueue;
|
||||
/* 0x80 */ OSMesg loadMsg;
|
||||
/* 0x84 */ f32 glareAlpha;
|
||||
/* 0x88 */ f32 lensFlareAlphaScale;
|
||||
/* 0x8C */ EnvLightSettings lightSettings;
|
||||
/* 0xA8 */ f32 unk_A8;
|
||||
/* 0xAC */ Vec3s windDir;
|
||||
/* 0xB4 */ f32 windSpeed;
|
||||
/* 0xB8 */ u8 numLightSettings;
|
||||
/* 0xBC */ LightSettings* lightSettingsList;
|
||||
/* 0xC0 */ u8 unk_C0;
|
||||
/* 0xC1 */ u8 unk_C1;
|
||||
/* 0xC2 */ u8 unk_C2;
|
||||
/* 0xC0 */ u8 lightBlendEnabled;
|
||||
/* 0xC1 */ u8 lightSetting;
|
||||
/* 0xC2 */ u8 prevLightSetting;
|
||||
/* 0xC3 */ u8 lightSettingOverride;
|
||||
/* 0xC4 */ LightSettings unk_C4;
|
||||
/* 0xDA */ u16 unk_DA;
|
||||
/* 0xDA */ u16 lightBlendRateOverride;
|
||||
/* 0xDC */ f32 lightBlend;
|
||||
/* 0xE0 */ u8 unk_E0;
|
||||
/* 0xE1 */ u8 unk_E1;
|
||||
@@ -407,54 +409,6 @@ typedef struct {
|
||||
/* 0x844 */ void* fb;
|
||||
} FaultThreadStruct; // size = 0x848
|
||||
|
||||
struct GameState;
|
||||
|
||||
typedef void (*GameStateFunc)(struct GameState* gameState);
|
||||
|
||||
typedef struct {
|
||||
/* 0x00 */ void* loadedRamAddr;
|
||||
/* 0x04 */ uintptr_t vromStart; // if applicable
|
||||
/* 0x08 */ uintptr_t vromEnd; // if applicable
|
||||
/* 0x0C */ void* vramStart; // if applicable
|
||||
/* 0x10 */ void* vramEnd; // if applicable
|
||||
/* 0x14 */ UNK_PTR unk_14;
|
||||
/* 0x18 */ GameStateFunc init; // initializes and executes the given context
|
||||
/* 0x1C */ GameStateFunc destroy; // deconstructs the context, and sets the next context to load
|
||||
/* 0x20 */ UNK_PTR unk_20;
|
||||
/* 0x24 */ UNK_PTR unk_24;
|
||||
/* 0x28 */ UNK_TYPE unk_28;
|
||||
/* 0x2C */ size_t instanceSize;
|
||||
} GameStateOverlay; // size = 0x30
|
||||
|
||||
typedef struct GameAllocEntry {
|
||||
/* 0x0 */ struct GameAllocEntry* next;
|
||||
/* 0x4 */ struct GameAllocEntry* prev;
|
||||
/* 0x8 */ size_t size;
|
||||
/* 0xC */ u32 unk_0C;
|
||||
} GameAllocEntry; // size = 0x10
|
||||
|
||||
typedef struct GameAlloc {
|
||||
/* 0x00 */ GameAllocEntry base;
|
||||
/* 0x10 */ GameAllocEntry* head;
|
||||
} GameAlloc; // size = 0x14
|
||||
|
||||
typedef struct GameState {
|
||||
/* 0x00 */ GraphicsContext* gfxCtx;
|
||||
/* 0x04 */ GameStateFunc main;
|
||||
/* 0x08 */ GameStateFunc destroy;
|
||||
/* 0x0C */ GameStateFunc init; // Usually the current game state's init, though after stopping, the graph thread will look here to determine the next game state to load.
|
||||
/* 0x10 */ size_t size;
|
||||
/* 0x14 */ Input input[MAXCONTROLLERS];
|
||||
/* 0x74 */ TwoHeadArena heap;
|
||||
/* 0x84 */ GameAlloc alloc;
|
||||
/* 0x98 */ UNK_TYPE1 pad98[0x3];
|
||||
/* 0x9B */ u8 running; // If 0, switch to next game state
|
||||
/* 0x9C */ u32 frames;
|
||||
/* 0xA0 */ u8 padA0[0x2];
|
||||
/* 0xA2 */ u8 framerateDivisor; // game speed?
|
||||
/* 0xA3 */ u8 unk_A3;
|
||||
} GameState; // size = 0xA4
|
||||
|
||||
struct PlayState;
|
||||
|
||||
typedef s32 (*ColChkResetFunc)(struct PlayState*, Collider*);
|
||||
@@ -576,26 +530,6 @@ typedef struct PlayState {
|
||||
/* 0x18E6C */ char unk_18E6C[0x3EC];
|
||||
} PlayState; // size = 0x19258
|
||||
|
||||
typedef struct {
|
||||
/* 0x00 */ u8 unk_00;
|
||||
/* 0x01 */ char unk_01[0x3F];
|
||||
/* 0x40 */ void* unk_40;
|
||||
/* 0x44 */ u32 unk_44;
|
||||
/* 0x48 */ u32 unk_48;
|
||||
/* 0x4C */ DmaRequest unk_4C;
|
||||
/* 0x6C */ OSMesgQueue unk_6C;
|
||||
/* 0x84 */ OSMesg unk_84[1];
|
||||
/* 0x88 */ void* unk_88;
|
||||
/* 0x8C */ uintptr_t unk_8C;
|
||||
/* 0x90 */ size_t unk_90;
|
||||
/* 0x94 */ s32 unk_94;
|
||||
/* 0x98 */ s32 unk_98;
|
||||
/* 0x9C */ s32 unk_9C;
|
||||
/* 0xA0 */ char unk_A0[0x4];
|
||||
/* 0xA4 */ s32 unk_A4;
|
||||
/* 0xA8 */ s32 unk_A8;
|
||||
} BombersNotebook; // size = 0xAC
|
||||
|
||||
typedef enum {
|
||||
/* 0 */ PICTO_PHOTO_STATE_OFF,
|
||||
/* 1 */ PICTO_PHOTO_STATE_SETUP,
|
||||
@@ -657,7 +591,7 @@ typedef struct {
|
||||
#define FLASHROM_REQUEST_WRITE 1
|
||||
#define FLASHROM_REQUEST_READ 2
|
||||
|
||||
enum fram_command {
|
||||
typedef enum FramCommand {
|
||||
/* Does nothing for FRAM_COMMAND_SET_MODE_READ_AND_STATUS, FRAM_MODE_NOP, FRAM_COMMAND_SET_MODE_STATUS_AND_STATUS
|
||||
Initializes fram to 0xFF in FRAM_MODE_ERASE
|
||||
Writes Contents in FLASHRAM_MODE_WRITE
|
||||
@@ -681,15 +615,15 @@ enum fram_command {
|
||||
FRAM_COMMAND_SET_MODE_READ_AND_STATUS = 0xF0000000,
|
||||
/* unk */
|
||||
FRAM_COMMAND_UNK_ERASE_OPERATION = 0x3C000000
|
||||
};
|
||||
} FramCommand;
|
||||
|
||||
enum fram_mode {
|
||||
FRAM_MODE_NOP = 0,
|
||||
FRAM_MODE_ERASE,
|
||||
FRAM_MODE_WRITE,
|
||||
FRAM_MODE_READ,
|
||||
FRAM_MODE_STATUS
|
||||
};
|
||||
typedef enum FramMode {
|
||||
/* 0 */ FRAM_MODE_NOP,
|
||||
/* 1 */ FRAM_MODE_ERASE,
|
||||
/* 2 */ FRAM_MODE_WRITE,
|
||||
/* 3 */ FRAM_MODE_READ,
|
||||
/* 4 */ FRAM_MODE_STATUS
|
||||
} FramMode;
|
||||
|
||||
typedef enum {
|
||||
/* 0 */ VI_MODE_EDIT_STATE_INACTIVE,
|
||||
|
||||
+1
-1
@@ -317,7 +317,7 @@ typedef struct EnAObj {
|
||||
|
||||
typedef enum {
|
||||
/* 0 */ AOBJ_SIGNPOST_OBLONG,
|
||||
/* 1 */ AOBJ_SIGNPOST_ARROW,
|
||||
/* 1 */ AOBJ_SIGNPOST_ARROW
|
||||
} AObjType;
|
||||
|
||||
#define AOBJ_GET_TEXTID(thisx) ((((thisx)->params >> 8) & 0xFF) | 0x300)
|
||||
|
||||
+6
-1
@@ -1,7 +1,10 @@
|
||||
#ifndef Z64AUDIO_H
|
||||
#define Z64AUDIO_H
|
||||
|
||||
#include "PR/ultratypes.h"
|
||||
#include "ultra64/os_voice.h"
|
||||
#include "audiothread_cmd.h"
|
||||
#include "libc/stddef.h"
|
||||
|
||||
#define NO_LAYER ((SequenceLayer*)(-1))
|
||||
|
||||
@@ -105,7 +108,7 @@ typedef enum {
|
||||
/* 1 */ SOUNDMODE_HEADSET,
|
||||
/* 2 */ SOUNDMODE_SURROUND_EXTERNAL,
|
||||
/* 3 */ SOUNDMODE_MONO,
|
||||
/* 4 */ SOUNDMODE_SURROUND,
|
||||
/* 4 */ SOUNDMODE_SURROUND
|
||||
} SoundMode;
|
||||
|
||||
typedef enum {
|
||||
@@ -1279,4 +1282,6 @@ typedef u32 (*AudioCustomSeqFunction)(s8 value, SequenceChannel* channel);
|
||||
typedef s32 (*AudioCustomReverbFunction)(Sample*, s32, s8, s32);
|
||||
typedef Acmd* (*AudioCustomSynthFunction)(Acmd*, s32, s32);
|
||||
|
||||
extern OSVoiceHandle gVoiceHandle;
|
||||
|
||||
#endif
|
||||
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user