mirror of
https://github.com/encounter/tp.git
synced 2026-07-11 06:18:46 -07:00
Z2AudioLib misc decomp (#75)
* Z2SoundHandles: decomp portions
* start decomping: Z2SpeechMgr2, Z2SoundHandles
* Z2SoundHandles::stopAllSounds(): ok
* Z2SoundHandles::getHandleUserData(): ok
* Z2SoundInfo: header
* Z2SoundObjBase::framework(): ok
* Z2SoundObjBase::Z2SoundObjBase(), Z2SoundObjBase::init(): ok
* Z2SoundObjBase::~Z2SoundObjBase(): ok
* Z2SoundObjBase::stopOK(): ok
* Z2SoundObjBase::stopOK, incomplete Z2SoundObjBase::dispose()
* clang-format
* Z2SoundObjBase::dispose(): ok
* JAISound::operator->(): null assert
* JAIAudience: stub
* Z2SoundObject::{init, deleteObject, isAlive}: ok
* Z2SeMgr: elaborate struct (and decl JAISoundHandles to support this)
* start subclassing Z2SoundObjBase; nonmatching Z2SoundObjSimple::init()
* Z2SeMGr::{incrCrowdSize, decrCrowdSize}: ok
* Z2MultiSeMgr::resetMultiSePos(): ok
* Z2WolfHowlMgr.h: decls
* Z2SoundStarter: move to decls and fix postprocess.py symbol pass
* Z2AudioArcLoader: decls
* Z2SoundObjMgr: ok some fns
- deleteEnemyAll()
- isTwilightBattle()
- setGhostEnemyState()
additionally elaborates parts of the Z2Creature hierarchy
* delete unused .s files and add tool to find them (only runs on linux)
* run clang-format
* postprocess.py: comment out debugging
* add python step to ok-check workflow
* address review comments
* address review comments
Co-authored-by: notyourav <65437533+notyourav@users.noreply.github.com>
Co-authored-by: Pheenoh <pheenoh@gmail.com>
Co-authored-by: notyourav <65437533+notyourav@users.noreply.github.com>
This commit is contained in:
co-authored by
Pheenoh
notyourav
parent
afb426c60c
commit
a072e71c33
@@ -14,6 +14,11 @@ jobs:
|
||||
uses: actions/checkout@v1
|
||||
with:
|
||||
token: ${{secrets.MY_REPO_PAT}}
|
||||
- name: setup python
|
||||
uses: actions/setup-python@v2
|
||||
with:
|
||||
python-version: '3.x'
|
||||
architecture: 'x64'
|
||||
- name: Copy in dol and compilers
|
||||
run: cp /tmp/baserom.dol ./baserom.dol && cp -r /tmp/mwcc_compiler/ tools/mwcc_compiler && chown root /github/home/
|
||||
- name: Run Make (OK)
|
||||
|
||||
@@ -84,9 +84,6 @@ LDFLAGS := -map $(MAP) -fp hard -nodefaults -w off
|
||||
# Compiler flags
|
||||
CFLAGS += -Cpp_exceptions off -proc gekko -fp hard -O3 -nodefaults -msgstyle gcc -enum int $(INCLUDES)
|
||||
|
||||
# for postprocess.py
|
||||
PROCFLAGS := -fprologue-fixup=old_stack
|
||||
|
||||
# elf2dol needs to know these in order to calculate sbss correctly.
|
||||
SDATA_PDHR := 9
|
||||
SBSS_PDHR := 10
|
||||
@@ -138,8 +135,7 @@ $(BUILD_DIR)/%.o: %.c
|
||||
|
||||
$(BUILD_DIR)/%.o: %.cpp
|
||||
$(CC) $(CFLAGS) -c -o $@ $<
|
||||
# TODO: See if this is necessary after actually adding some C code
|
||||
# $(PYTHON) $(POSTPROC) $(PROCFLAGS) $@
|
||||
$(PYTHON) $(POSTPROC) -fsymbol-fixup $@
|
||||
|
||||
### Debug Print ###
|
||||
|
||||
|
||||
@@ -72,7 +72,7 @@ lbl_8029F97C:
|
||||
/* 8029F97C 0029C8BC 54 00 06 3F */ clrlwi. r0, r0, 0x18
|
||||
/* 8029F980 0029C8C0 41 82 00 10 */ beq lbl_8029F990
|
||||
/* 8029F984 0029C8C4 38 64 00 10 */ addi r3, r4, 0x10
|
||||
/* 8029F988 0029C8C8 48 00 2C 11 */ bl JAISound_NS_stop_X1_
|
||||
/* 8029F988 0029C8C8 48 00 2C 11 */ bl stop__8JAISoundFv
|
||||
/* 8029F98C 0029C8CC 38 A0 00 01 */ li r5, 1
|
||||
lbl_8029F990:
|
||||
/* 8029F990 0029C8D0 83 BD 00 0C */ lwz r29, 0xc(r29)
|
||||
@@ -417,7 +417,7 @@ lbl_8029FE00:
|
||||
/* 8029FE00 0029CD40 80 7F 00 00 */ lwz r3, 0(r31)
|
||||
/* 8029FE04 0029CD44 38 63 00 10 */ addi r3, r3, 0x10
|
||||
/* 8029FE08 0029CD48 7F C4 F3 78 */ mr r4, r30
|
||||
/* 8029FE0C 0029CD4C 48 00 26 D1 */ bl JAISound_NS_stop
|
||||
/* 8029FE0C 0029CD4C 48 00 26 D1 */ bl stop__8JAISoundFUl
|
||||
/* 8029FE10 0029CD50 83 FF 00 0C */ lwz r31, 0xc(r31)
|
||||
lbl_8029FE14:
|
||||
/* 8029FE14 0029CD54 28 1F 00 00 */ cmplwi r31, 0
|
||||
@@ -440,7 +440,7 @@ JAISeCategoryMgr_NS_stop_X1_:
|
||||
lbl_8029FE4C:
|
||||
/* 8029FE4C 0029CD8C 80 7F 00 00 */ lwz r3, 0(r31)
|
||||
/* 8029FE50 0029CD90 38 63 00 10 */ addi r3, r3, 0x10
|
||||
/* 8029FE54 0029CD94 48 00 27 45 */ bl JAISound_NS_stop_X1_
|
||||
/* 8029FE54 0029CD94 48 00 27 45 */ bl stop__8JAISoundFv
|
||||
/* 8029FE58 0029CD98 83 FF 00 0C */ lwz r31, 0xc(r31)
|
||||
lbl_8029FE5C:
|
||||
/* 8029FE5C 0029CD9C 28 1F 00 00 */ cmplwi r31, 0
|
||||
@@ -473,7 +473,7 @@ lbl_8029FEA8:
|
||||
/* 8029FEB8 0029CDF8 7C 03 00 40 */ cmplw r3, r0
|
||||
/* 8029FEBC 0029CDFC 40 82 00 0C */ bne lbl_8029FEC8
|
||||
/* 8029FEC0 0029CE00 38 64 00 10 */ addi r3, r4, 0x10
|
||||
/* 8029FEC4 0029CE04 48 00 26 D5 */ bl JAISound_NS_stop_X1_
|
||||
/* 8029FEC4 0029CE04 48 00 26 D5 */ bl stop__8JAISoundFv
|
||||
lbl_8029FEC8:
|
||||
/* 8029FEC8 0029CE08 83 FF 00 0C */ lwz r31, 0xc(r31)
|
||||
lbl_8029FECC:
|
||||
@@ -1134,7 +1134,7 @@ JAISeMgr_NS_startSound:
|
||||
/* 802A0790 0029D6D0 80 7E 00 00 */ lwz r3, 0(r30)
|
||||
/* 802A0794 0029D6D4 28 03 00 00 */ cmplwi r3, 0
|
||||
/* 802A0798 0029D6D8 41 82 00 08 */ beq lbl_802A07A0
|
||||
/* 802A079C 0029D6DC 48 00 1D FD */ bl JAISound_NS_stop_X1_
|
||||
/* 802A079C 0029D6DC 48 00 1D FD */ bl stop__8JAISoundFv
|
||||
lbl_802A07A0:
|
||||
/* 802A07A0 0029D6E0 83 6D 85 DC */ lwz r27, lbl_80450B5C-_SDA_BASE_(r13)
|
||||
/* 802A07A4 0029D6E4 28 1B 00 00 */ cmplwi r27, 0
|
||||
|
||||
@@ -66,7 +66,7 @@ lbl_802A18CC:
|
||||
lbl_802A18D0:
|
||||
/* 802A18D0 0029E810 54 00 06 3F */ clrlwi. r0, r0, 0x18
|
||||
/* 802A18D4 0029E814 41 82 00 0C */ beq lbl_802A18E0
|
||||
/* 802A18D8 0029E818 48 00 0C C1 */ bl JAISound_NS_stop_X1_
|
||||
/* 802A18D8 0029E818 48 00 0C C1 */ bl stop__8JAISoundFv
|
||||
/* 802A18DC 0029E81C 38 A0 00 01 */ li r5, 1
|
||||
lbl_802A18E0:
|
||||
/* 802A18E0 0029E820 83 BD 00 0C */ lwz r29, 0xc(r29)
|
||||
@@ -259,7 +259,7 @@ JAISeqMgr_NS_startSound:
|
||||
/* 802A1B70 0029EAB0 80 7B 00 00 */ lwz r3, 0(r27)
|
||||
/* 802A1B74 0029EAB4 28 03 00 00 */ cmplwi r3, 0
|
||||
/* 802A1B78 0029EAB8 41 82 00 08 */ beq lbl_802A1B80
|
||||
/* 802A1B7C 0029EABC 48 00 0A 1D */ bl JAISound_NS_stop_X1_
|
||||
/* 802A1B7C 0029EABC 48 00 0A 1D */ bl stop__8JAISoundFv
|
||||
lbl_802A1B80:
|
||||
/* 802A1B80 0029EAC0 83 CD 85 DC */ lwz r30, lbl_80450B5C-_SDA_BASE_(r13)
|
||||
/* 802A1B84 0029EAC4 28 1E 00 00 */ cmplwi r30, 0
|
||||
@@ -452,7 +452,7 @@ JAISeqMgr_NS_stop:
|
||||
/* 802A1E10 0029ED50 48 00 00 10 */ b lbl_802A1E20
|
||||
lbl_802A1E14:
|
||||
/* 802A1E14 0029ED54 80 7F 00 00 */ lwz r3, 0(r31)
|
||||
/* 802A1E18 0029ED58 48 00 07 81 */ bl JAISound_NS_stop_X1_
|
||||
/* 802A1E18 0029ED58 48 00 07 81 */ bl stop__8JAISoundFv
|
||||
/* 802A1E1C 0029ED5C 83 FF 00 0C */ lwz r31, 0xc(r31)
|
||||
lbl_802A1E20:
|
||||
/* 802A1E20 0029ED60 28 1F 00 00 */ cmplwi r31, 0
|
||||
@@ -476,7 +476,7 @@ JAISeqMgr_NS_stop_X1_:
|
||||
lbl_802A1E5C:
|
||||
/* 802A1E5C 0029ED9C 80 7F 00 00 */ lwz r3, 0(r31)
|
||||
/* 802A1E60 0029EDA0 7F C4 F3 78 */ mr r4, r30
|
||||
/* 802A1E64 0029EDA4 48 00 06 79 */ bl JAISound_NS_stop
|
||||
/* 802A1E64 0029EDA4 48 00 06 79 */ bl stop__8JAISoundFUl
|
||||
/* 802A1E68 0029EDA8 83 FF 00 0C */ lwz r31, 0xc(r31)
|
||||
lbl_802A1E6C:
|
||||
/* 802A1E6C 0029EDAC 28 1F 00 00 */ cmplwi r31, 0
|
||||
@@ -509,7 +509,7 @@ lbl_802A1EBC:
|
||||
/* 802A1EC8 0029EE08 80 1E 00 00 */ lwz r0, 0(r30)
|
||||
/* 802A1ECC 0029EE0C 7C 04 00 40 */ cmplw r4, r0
|
||||
/* 802A1ED0 0029EE10 40 82 00 08 */ bne lbl_802A1ED8
|
||||
/* 802A1ED4 0029EE14 48 00 06 C5 */ bl JAISound_NS_stop_X1_
|
||||
/* 802A1ED4 0029EE14 48 00 06 C5 */ bl stop__8JAISoundFv
|
||||
lbl_802A1ED8:
|
||||
/* 802A1ED8 0029EE18 83 FF 00 0C */ lwz r31, 0xc(r31)
|
||||
lbl_802A1EDC:
|
||||
|
||||
@@ -3,8 +3,8 @@
|
||||
.section .text, "ax" # 802a2184
|
||||
|
||||
|
||||
.global JAISoundHandle_NS_releaseSound
|
||||
JAISoundHandle_NS_releaseSound:
|
||||
.global releaseSound__14JAISoundHandleFv
|
||||
releaseSound__14JAISoundHandleFv:
|
||||
/* 802A2184 0029F0C4 80 83 00 00 */ lwz r4, 0(r3)
|
||||
/* 802A2188 0029F0C8 28 04 00 00 */ cmplwi r4, 0
|
||||
/* 802A218C 0029F0CC 4D 82 00 20 */ beqlr
|
||||
@@ -35,7 +35,7 @@ JAISound_NS_attachHandle:
|
||||
/* 802A21D8 0029F118 80 64 00 00 */ lwz r3, 0(r4)
|
||||
/* 802A21DC 0029F11C 28 03 00 00 */ cmplwi r3, 0
|
||||
/* 802A21E0 0029F120 41 82 00 08 */ beq lbl_802A21E8
|
||||
/* 802A21E4 0029F124 48 00 03 B5 */ bl JAISound_NS_stop_X1_
|
||||
/* 802A21E4 0029F124 48 00 03 B5 */ bl stop__8JAISoundFv
|
||||
lbl_802A21E8:
|
||||
/* 802A21E8 0029F128 80 1E 00 04 */ lwz r0, 4(r30)
|
||||
/* 802A21EC 0029F12C 28 00 00 00 */ cmplwi r0, 0
|
||||
@@ -256,14 +256,14 @@ lbl_802A249C:
|
||||
/* 802A24D4 0029F414 38 21 00 20 */ addi r1, r1, 0x20
|
||||
/* 802A24D8 0029F418 4E 80 00 20 */ blr
|
||||
|
||||
.global JAISound_NS_stop
|
||||
JAISound_NS_stop:
|
||||
.global stop__8JAISoundFUl
|
||||
stop__8JAISoundFUl:
|
||||
/* 802A24DC 0029F41C 94 21 FF F0 */ stwu r1, -0x10(r1)
|
||||
/* 802A24E0 0029F420 7C 08 02 A6 */ mflr r0
|
||||
/* 802A24E4 0029F424 90 01 00 14 */ stw r0, 0x14(r1)
|
||||
/* 802A24E8 0029F428 28 04 00 00 */ cmplwi r4, 0
|
||||
/* 802A24EC 0029F42C 40 82 00 0C */ bne lbl_802A24F8
|
||||
/* 802A24F0 0029F430 48 00 00 A9 */ bl JAISound_NS_stop_X1_
|
||||
/* 802A24F0 0029F430 48 00 00 A9 */ bl stop__8JAISoundFv
|
||||
/* 802A24F4 0029F434 48 00 00 94 */ b lbl_802A2588
|
||||
lbl_802A24F8:
|
||||
/* 802A24F8 0029F438 41 82 00 40 */ beq lbl_802A2538
|
||||
@@ -310,8 +310,8 @@ lbl_802A2588:
|
||||
/* 802A2590 0029F4D0 38 21 00 10 */ addi r1, r1, 0x10
|
||||
/* 802A2594 0029F4D4 4E 80 00 20 */ blr
|
||||
|
||||
.global JAISound_NS_stop_X1_
|
||||
JAISound_NS_stop_X1_:
|
||||
.global stop__8JAISoundFv
|
||||
stop__8JAISoundFv:
|
||||
/* 802A2598 0029F4D8 94 21 FF F0 */ stwu r1, -0x10(r1)
|
||||
/* 802A259C 0029F4DC 7C 08 02 A6 */ mflr r0
|
||||
/* 802A25A0 0029F4E0 90 01 00 14 */ stw r0, 0x14(r1)
|
||||
|
||||
@@ -75,7 +75,7 @@ JAIStreamMgr_NS_startSound:
|
||||
/* 802A3C64 002A0BA4 80 7B 00 00 */ lwz r3, 0(r27)
|
||||
/* 802A3C68 002A0BA8 28 03 00 00 */ cmplwi r3, 0
|
||||
/* 802A3C6C 002A0BAC 41 82 00 08 */ beq lbl_802A3C74
|
||||
/* 802A3C70 002A0BB0 4B FF E9 29 */ bl JAISound_NS_stop_X1_
|
||||
/* 802A3C70 002A0BB0 4B FF E9 29 */ bl stop__8JAISoundFv
|
||||
lbl_802A3C74:
|
||||
/* 802A3C74 002A0BB4 80 1A 00 00 */ lwz r0, 0(r26)
|
||||
/* 802A3C78 002A0BB8 90 01 00 14 */ stw r0, 0x14(r1)
|
||||
@@ -360,7 +360,7 @@ JAIStreamMgr_NS_stop:
|
||||
/* 802A403C 002A0F7C 48 00 00 10 */ b lbl_802A404C
|
||||
lbl_802A4040:
|
||||
/* 802A4040 002A0F80 80 7F 00 00 */ lwz r3, 0(r31)
|
||||
/* 802A4044 002A0F84 4B FF E5 55 */ bl JAISound_NS_stop_X1_
|
||||
/* 802A4044 002A0F84 4B FF E5 55 */ bl stop__8JAISoundFv
|
||||
/* 802A4048 002A0F88 83 FF 00 0C */ lwz r31, 0xc(r31)
|
||||
lbl_802A404C:
|
||||
/* 802A404C 002A0F8C 28 1F 00 00 */ cmplwi r31, 0
|
||||
@@ -384,7 +384,7 @@ JAIStreamMgr_NS_stop_X1_:
|
||||
lbl_802A4088:
|
||||
/* 802A4088 002A0FC8 80 7F 00 00 */ lwz r3, 0(r31)
|
||||
/* 802A408C 002A0FCC 7F C4 F3 78 */ mr r4, r30
|
||||
/* 802A4090 002A0FD0 4B FF E4 4D */ bl JAISound_NS_stop
|
||||
/* 802A4090 002A0FD0 4B FF E4 4D */ bl stop__8JAISoundFUl
|
||||
/* 802A4094 002A0FD4 83 FF 00 0C */ lwz r31, 0xc(r31)
|
||||
lbl_802A4098:
|
||||
/* 802A4098 002A0FD8 28 1F 00 00 */ cmplwi r31, 0
|
||||
@@ -413,7 +413,7 @@ lbl_802A40D8:
|
||||
/* 802A40E4 002A1024 80 1E 00 00 */ lwz r0, 0(r30)
|
||||
/* 802A40E8 002A1028 7C 04 00 40 */ cmplw r4, r0
|
||||
/* 802A40EC 002A102C 40 82 00 08 */ bne lbl_802A40F4
|
||||
/* 802A40F0 002A1030 4B FF E4 A9 */ bl JAISound_NS_stop_X1_
|
||||
/* 802A40F0 002A1030 4B FF E4 A9 */ bl stop__8JAISoundFv
|
||||
lbl_802A40F4:
|
||||
/* 802A40F4 002A1034 83 FF 00 0C */ lwz r31, 0xc(r31)
|
||||
lbl_802A40F8:
|
||||
|
||||
@@ -151,22 +151,22 @@ JStudio_JAudio2_NS_TAdaptor_sound:
|
||||
/* 8028D92C 0028A86C 88 1E 01 1F */ lbz r0, 0x11f(r30)
|
||||
/* 8028D930 0028A870 28 00 00 00 */ cmplwi r0, 0
|
||||
/* 8028D934 0028A874 40 82 00 0C */ bne lbl_8028D940
|
||||
/* 8028D938 0028A878 48 01 4C 61 */ bl JAISound_NS_stop_X1_
|
||||
/* 8028D938 0028A878 48 01 4C 61 */ bl stop__8JAISoundFv
|
||||
/* 8028D93C 0028A87C 48 00 00 20 */ b lbl_8028D95C
|
||||
lbl_8028D940:
|
||||
/* 8028D940 0028A880 88 1E 01 1C */ lbz r0, 0x11c(r30)
|
||||
/* 8028D944 0028A884 28 00 00 00 */ cmplwi r0, 0
|
||||
/* 8028D948 0028A888 41 82 00 10 */ beq lbl_8028D958
|
||||
/* 8028D94C 0028A88C 38 7E 01 18 */ addi r3, r30, 0x118
|
||||
/* 8028D950 0028A890 48 01 48 35 */ bl JAISoundHandle_NS_releaseSound
|
||||
/* 8028D950 0028A890 48 01 48 35 */ bl releaseSound__14JAISoundHandleFv
|
||||
/* 8028D954 0028A894 48 00 00 08 */ b lbl_8028D95C
|
||||
lbl_8028D958:
|
||||
/* 8028D958 0028A898 48 01 4C 41 */ bl JAISound_NS_stop_X1_
|
||||
/* 8028D958 0028A898 48 01 4C 41 */ bl stop__8JAISoundFv
|
||||
lbl_8028D95C:
|
||||
/* 8028D95C 0028A89C 34 1E 01 18 */ addic. r0, r30, 0x118
|
||||
/* 8028D960 0028A8A0 41 82 00 0C */ beq lbl_8028D96C
|
||||
/* 8028D964 0028A8A4 38 7E 01 18 */ addi r3, r30, 0x118
|
||||
/* 8028D968 0028A8A8 48 01 48 1D */ bl JAISoundHandle_NS_releaseSound
|
||||
/* 8028D968 0028A8A8 48 01 48 1D */ bl releaseSound__14JAISoundHandleFv
|
||||
lbl_8028D96C:
|
||||
/* 8028D96C 0028A8AC 7F C3 F3 78 */ mr r3, r30
|
||||
/* 8028D970 0028A8B0 38 80 00 00 */ li r4, 0
|
||||
@@ -570,7 +570,7 @@ JStudio_JAudio2_NS_TAdaptor_sound_NS_prepareSound_:
|
||||
/* 8028DF18 0028AE58 80 63 01 18 */ lwz r3, 0x118(r3)
|
||||
/* 8028DF1C 0028AE5C 28 03 00 00 */ cmplwi r3, 0
|
||||
/* 8028DF20 0028AE60 41 82 00 08 */ beq lbl_8028DF28
|
||||
/* 8028DF24 0028AE64 48 01 46 75 */ bl JAISound_NS_stop_X1_
|
||||
/* 8028DF24 0028AE64 48 01 46 75 */ bl stop__8JAISoundFv
|
||||
lbl_8028DF28:
|
||||
/* 8028DF28 0028AE68 80 7F 01 14 */ lwz r3, 0x114(r31)
|
||||
/* 8028DF2C 0028AE6C 80 63 00 0C */ lwz r3, 0xc(r3)
|
||||
@@ -667,7 +667,7 @@ JStudio_JAudio2_NS_TAdaptor_sound_NS_endSound_fadeOut_:
|
||||
/* 8028E068 0028AFA8 80 63 01 18 */ lwz r3, 0x118(r3)
|
||||
/* 8028E06C 0028AFAC 28 03 00 00 */ cmplwi r3, 0
|
||||
/* 8028E070 0028AFB0 41 82 00 10 */ beq lbl_8028E080
|
||||
/* 8028E074 0028AFB4 48 01 44 69 */ bl JAISound_NS_stop
|
||||
/* 8028E074 0028AFB4 48 01 44 69 */ bl stop__8JAISoundFUl
|
||||
/* 8028E078 0028AFB8 38 00 00 00 */ li r0, 0
|
||||
/* 8028E07C 0028AFBC 98 1F 01 20 */ stb r0, 0x120(r31)
|
||||
lbl_8028E080:
|
||||
|
||||
+3
-3
@@ -16481,7 +16481,7 @@ lbl_8036F930:
|
||||
/* 8036F934 0036C874 60 42 32 44 */ ori r2, r2, lbl_803D3244@l
|
||||
/* 8036F938 0036C878 38 60 00 00 */ li r3, 0
|
||||
/* 8036F93C 0036C87C 98 62 00 0C */ stb r3, 0xc(r2)
|
||||
/* 8036F940 0036C880 48 00 1A 69 */ bl func_803713A8
|
||||
/* 8036F940 0036C880 48 00 1A 69 */ bl TRKRestoreExtended1Block
|
||||
/* 8036F944 0036C884 3C 40 80 44 */ lis r2, lbl_8044F338@h
|
||||
/* 8036F948 0036C888 60 42 F3 38 */ ori r2, r2, lbl_8044F338@l
|
||||
/* 8036F94C 0036C88C BB 62 00 80 */ lmw r27, 0x80(r2)
|
||||
@@ -18352,8 +18352,8 @@ lbl_80371340:
|
||||
/* 803713A0 0036E2E0 93 E2 02 78 */ stw r31, 0x278(r2)
|
||||
/* 803713A4 0036E2E4 4E 80 00 20 */ blr
|
||||
|
||||
.global func_803713A8
|
||||
func_803713A8:
|
||||
.global TRKRestoreExtended1Block
|
||||
TRKRestoreExtended1Block:
|
||||
/* 803713A8 0036E2E8 3C 40 80 44 */ lis r2, lbl_8044F338@h
|
||||
/* 803713AC 0036E2EC 60 42 F3 38 */ ori r2, r2, lbl_8044F338@l
|
||||
/* 803713B0 0036E2F0 3C A0 80 3D */ lis r5, lbl_803D3238@h
|
||||
|
||||
+1
-1
@@ -9966,7 +9966,7 @@ daBaseNpc_c:
|
||||
/* 8014E718 0014B658 38 7E 00 14 */ addi r3, r30, 0x14
|
||||
/* 8014E71C 0014B65C 4B F2 A7 4D */ bl dBgS_PolyPassChk_NS_SetObj
|
||||
/* 8014E720 0014B660 38 7F 07 58 */ addi r3, r31, 0x758
|
||||
/* 8014E724 0014B664 48 17 1C A5 */ bl Z2Creature
|
||||
/* 8014E724 0014B664 48 17 1C A5 */ bl __ct__10Z2CreatureFv
|
||||
/* 8014E728 0014B668 3B DF 07 EC */ addi r30, r31, 0x7ec
|
||||
/* 8014E72C 0014B66C 3C 60 80 3A */ lis r3, lbl_803A3354@ha
|
||||
/* 8014E730 0014B670 38 03 33 54 */ addi r0, r3, lbl_803A3354@l
|
||||
|
||||
@@ -902,7 +902,7 @@ Z2SoundObjSimple_NS_dtor:
|
||||
/* 8015BA60 001589A0 38 04 AD 10 */ addi r0, r4, lbl_803CAD10@l
|
||||
/* 8015BA64 001589A4 90 1E 00 10 */ stw r0, 0x10(r30)
|
||||
/* 8015BA68 001589A8 38 80 00 00 */ li r4, 0
|
||||
/* 8015BA6C 001589AC 48 16 24 DD */ bl Z2SoundObjBase_NS_dtor
|
||||
/* 8015BA6C 001589AC 48 16 24 DD */ bl __dt__14Z2SoundObjBaseFv
|
||||
/* 8015BA70 001589B0 7F E0 07 35 */ extsh. r0, r31
|
||||
/* 8015BA74 001589B4 40 81 00 0C */ ble lbl_8015BA80
|
||||
/* 8015BA78 001589B8 7F C3 F3 78 */ mr r3, r30
|
||||
@@ -1153,7 +1153,7 @@ daItem_c_NS__daItem_delete:
|
||||
/* 8015BDF4 00158D34 93 E1 00 0C */ stw r31, 0xc(r1)
|
||||
/* 8015BDF8 00158D38 7C 7F 1B 78 */ mr r31, r3
|
||||
/* 8015BDFC 00158D3C 38 7F 09 78 */ addi r3, r31, 0x978
|
||||
/* 8015BE00 00158D40 48 16 21 F9 */ bl Z2SoundObjBase_NS_deleteObject
|
||||
/* 8015BE00 00158D40 48 16 21 F9 */ bl deleteObject__14Z2SoundObjBaseFv
|
||||
/* 8015BE04 00158D44 88 1F 09 2A */ lbz r0, 0x92a(r31)
|
||||
/* 8015BE08 00158D48 28 00 00 06 */ cmplwi r0, 6
|
||||
/* 8015BE0C 00158D4C 41 82 00 0C */ beq lbl_8015BE18
|
||||
|
||||
@@ -910,7 +910,7 @@ lbl_802415B4:
|
||||
/* 80241720 0023E660 41 80 00 28 */ blt lbl_80241748
|
||||
/* 80241724 0023E664 80 7D 5D B4 */ lwz r3, 0x5db4(r29)
|
||||
/* 80241728 0023E668 38 63 2D 84 */ addi r3, r3, 0x2d84
|
||||
/* 8024172C 0023E66C 48 08 9C 45 */ bl Z2WolfHowlMgr_NS_getCorrectLineNum
|
||||
/* 8024172C 0023E66C 48 08 9C 45 */ bl getCorrectLineNum__13Z2WolfHowlMgrFv
|
||||
/* 80241730 0023E670 98 7F 21 96 */ stb r3, 0x2196(r31)
|
||||
/* 80241734 0023E674 38 00 00 1E */ li r0, 0x1e
|
||||
/* 80241738 0023E678 98 1F 21 97 */ stb r0, 0x2197(r31)
|
||||
@@ -1427,7 +1427,7 @@ lbl_80241E64:
|
||||
/* 80241EA4 0023EDE4 81 8C 02 98 */ lwz r12, 0x298(r12)
|
||||
/* 80241EA8 0023EDE8 7D 89 03 A6 */ mtctr r12
|
||||
/* 80241EAC 0023EDEC 4E 80 04 21 */ bctrl
|
||||
/* 80241EB0 0023EDF0 48 08 8E 1D */ bl Z2WolfHowlMgr_NS_getNowInputValue
|
||||
/* 80241EB0 0023EDF0 48 08 8E 1D */ bl getNowInputValue__13Z2WolfHowlMgrFv
|
||||
/* 80241EB4 0023EDF4 FC 20 08 50 */ fneg f1, f1
|
||||
/* 80241EB8 0023EDF8 7F E3 FB 78 */ mr r3, r31
|
||||
/* 80241EBC 0023EDFC 48 00 20 D9 */ bl dMsgScrnHowl_c_NS_getNowPlotPitch
|
||||
@@ -1499,7 +1499,7 @@ lbl_80241FA0:
|
||||
/* 80241FB4 0023EEF4 7D 89 03 A6 */ mtctr r12
|
||||
/* 80241FB8 0023EEF8 4E 80 04 21 */ bctrl
|
||||
/* 80241FBC 0023EEFC 7F C4 F3 78 */ mr r4, r30
|
||||
/* 80241FC0 0023EF00 48 08 9A C9 */ bl Z2WolfHowlMgr_NS_startGuideMelody
|
||||
/* 80241FC0 0023EF00 48 08 9A C9 */ bl startGuideMelody__13Z2WolfHowlMgrFb
|
||||
/* 80241FC4 0023EF04 90 7F 01 7C */ stw r3, 0x17c(r31)
|
||||
/* 80241FC8 0023EF08 A8 1F 21 2A */ lha r0, 0x212a(r31)
|
||||
/* 80241FCC 0023EF0C 2C 00 00 1E */ cmpwi r0, 0x1e
|
||||
@@ -3231,7 +3231,7 @@ lbl_80243964:
|
||||
/* 80243974 002408B4 3B C3 61 C0 */ addi r30, r3, g_dComIfG_gameInfo@l
|
||||
/* 80243978 002408B8 80 7E 5D B4 */ lwz r3, 0x5db4(r30)
|
||||
/* 8024397C 002408BC 38 63 2D 84 */ addi r3, r3, 0x2d84
|
||||
/* 80243980 002408C0 48 08 7C D1 */ bl Z2WolfHowlMgr_NS_getOnLineNum
|
||||
/* 80243980 002408C0 48 08 7C D1 */ bl getOnLineNum__13Z2WolfHowlMgrFv
|
||||
/* 80243984 002408C4 7C 60 07 75 */ extsb. r0, r3
|
||||
/* 80243988 002408C8 41 80 00 48 */ blt lbl_802439D0
|
||||
/* 8024398C 002408CC A8 1F 21 2A */ lha r0, 0x212a(r31)
|
||||
@@ -3264,7 +3264,7 @@ lbl_802439E0:
|
||||
/* 802439F0 00240930 81 8C 02 98 */ lwz r12, 0x298(r12)
|
||||
/* 802439F4 00240934 7D 89 03 A6 */ mtctr r12
|
||||
/* 802439F8 00240938 4E 80 04 21 */ bctrl
|
||||
/* 802439FC 0024093C 48 08 72 D1 */ bl Z2WolfHowlMgr_NS_getNowInputValue
|
||||
/* 802439FC 0024093C 48 08 72 D1 */ bl getNowInputValue__13Z2WolfHowlMgrFv
|
||||
/* 80243A00 00240940 FC 20 08 50 */ fneg f1, f1
|
||||
/* 80243A04 00240944 7F E3 FB 78 */ mr r3, r31
|
||||
/* 80243A08 00240948 48 00 05 8D */ bl dMsgScrnHowl_c_NS_getNowPlotPitch
|
||||
@@ -3921,7 +3921,7 @@ lbl_80244330:
|
||||
/* 80244330 00241270 80 7F 5D B4 */ lwz r3, 0x5db4(r31)
|
||||
/* 80244334 00241274 38 63 2D 84 */ addi r3, r3, 0x2d84
|
||||
/* 80244338 00241278 57 A4 06 3E */ clrlwi r4, r29, 0x18
|
||||
/* 8024433C 0024127C 48 08 6F E5 */ bl Z2WolfHowlMgr_NS_getCorrectLine
|
||||
/* 8024433C 0024127C 48 08 6F E5 */ bl getCorrectLine__13Z2WolfHowlMgrFUc
|
||||
/* 80244340 00241280 54 60 84 3E */ srwi r0, r3, 0x10
|
||||
/* 80244344 00241284 B0 01 00 08 */ sth r0, 8(r1)
|
||||
/* 80244348 00241288 B0 01 00 0C */ sth r0, 0xc(r1)
|
||||
@@ -3963,7 +3963,7 @@ lbl_802443C4:
|
||||
/* 802443C4 00241304 80 7F 5D B4 */ lwz r3, 0x5db4(r31)
|
||||
/* 802443C8 00241308 38 63 2D 84 */ addi r3, r3, 0x2d84
|
||||
/* 802443CC 0024130C 57 84 06 3E */ clrlwi r4, r28, 0x18
|
||||
/* 802443D0 00241310 48 08 6F 51 */ bl Z2WolfHowlMgr_NS_getCorrectLine
|
||||
/* 802443D0 00241310 48 08 6F 51 */ bl getCorrectLine__13Z2WolfHowlMgrFUc
|
||||
/* 802443D4 00241314 54 60 84 3E */ srwi r0, r3, 0x10
|
||||
/* 802443D8 00241318 B0 01 00 0C */ sth r0, 0xc(r1)
|
||||
/* 802443DC 0024131C B0 01 00 14 */ sth r0, 0x14(r1)
|
||||
@@ -3978,7 +3978,7 @@ lbl_802443C4:
|
||||
/* 80244400 00241340 80 7F 5D B4 */ lwz r3, 0x5db4(r31)
|
||||
/* 80244404 00241344 38 63 2D 84 */ addi r3, r3, 0x2d84
|
||||
/* 80244408 00241348 57 84 06 3E */ clrlwi r4, r28, 0x18
|
||||
/* 8024440C 0024134C 48 08 6F 15 */ bl Z2WolfHowlMgr_NS_getCorrectLine
|
||||
/* 8024440C 0024134C 48 08 6F 15 */ bl getCorrectLine__13Z2WolfHowlMgrFUc
|
||||
/* 80244410 00241350 54 60 84 3E */ srwi r0, r3, 0x10
|
||||
/* 80244414 00241354 B0 01 00 08 */ sth r0, 8(r1)
|
||||
/* 80244418 00241358 B0 01 00 10 */ sth r0, 0x10(r1)
|
||||
|
||||
@@ -362,12 +362,12 @@ lbl_80007474:
|
||||
lbl_8000747C:
|
||||
/* 8000747C 000043BC 34 7E 0F 30 */ addic. r3, r30, 0xf30
|
||||
/* 80007480 000043C0 41 82 00 08 */ beq lbl_80007488
|
||||
/* 80007484 000043C4 48 29 AD 01 */ bl JAISoundHandle_NS_releaseSound
|
||||
/* 80007484 000043C4 48 29 AD 01 */ bl releaseSound__14JAISoundHandleFv
|
||||
lbl_80007488:
|
||||
/* 80007488 000043C8 34 1E 0F 2C */ addic. r0, r30, 0xf2c
|
||||
/* 8000748C 000043CC 41 82 00 0C */ beq lbl_80007498
|
||||
/* 80007490 000043D0 38 7E 0F 2C */ addi r3, r30, 0xf2c
|
||||
/* 80007494 000043D4 48 29 AC F1 */ bl JAISoundHandle_NS_releaseSound
|
||||
/* 80007494 000043D4 48 29 AC F1 */ bl releaseSound__14JAISoundHandleFv
|
||||
lbl_80007498:
|
||||
/* 80007498 000043D8 34 1E 0F 2C */ addic. r0, r30, 0xf2c
|
||||
/* 8000749C 000043DC 41 82 00 1C */ beq lbl_800074B8
|
||||
@@ -564,20 +564,20 @@ lbl_80007744:
|
||||
/* 80007748 00004688 41 82 00 58 */ beq lbl_800077A0
|
||||
/* 8000774C 0000468C 34 7E 03 DC */ addic. r3, r30, 0x3dc
|
||||
/* 80007750 00004690 41 82 00 08 */ beq lbl_80007758
|
||||
/* 80007754 00004694 48 29 AA 31 */ bl JAISoundHandle_NS_releaseSound
|
||||
/* 80007754 00004694 48 29 AA 31 */ bl releaseSound__14JAISoundHandleFv
|
||||
lbl_80007758:
|
||||
/* 80007758 00004698 34 7E 03 D8 */ addic. r3, r30, 0x3d8
|
||||
/* 8000775C 0000469C 41 82 00 08 */ beq lbl_80007764
|
||||
/* 80007760 000046A0 48 29 AA 25 */ bl JAISoundHandle_NS_releaseSound
|
||||
/* 80007760 000046A0 48 29 AA 25 */ bl releaseSound__14JAISoundHandleFv
|
||||
lbl_80007764:
|
||||
/* 80007764 000046A4 34 7E 03 D4 */ addic. r3, r30, 0x3d4
|
||||
/* 80007768 000046A8 41 82 00 08 */ beq lbl_80007770
|
||||
/* 8000776C 000046AC 48 29 AA 19 */ bl JAISoundHandle_NS_releaseSound
|
||||
/* 8000776C 000046AC 48 29 AA 19 */ bl releaseSound__14JAISoundHandleFv
|
||||
lbl_80007770:
|
||||
/* 80007770 000046B0 34 1E 03 D0 */ addic. r0, r30, 0x3d0
|
||||
/* 80007774 000046B4 41 82 00 0C */ beq lbl_80007780
|
||||
/* 80007778 000046B8 38 7E 03 D0 */ addi r3, r30, 0x3d0
|
||||
/* 8000777C 000046BC 48 29 AA 09 */ bl JAISoundHandle_NS_releaseSound
|
||||
/* 8000777C 000046BC 48 29 AA 09 */ bl releaseSound__14JAISoundHandleFv
|
||||
lbl_80007780:
|
||||
/* 80007780 000046C0 34 1E 03 D0 */ addic. r0, r30, 0x3d0
|
||||
/* 80007784 000046C4 41 82 00 1C */ beq lbl_800077A0
|
||||
@@ -644,7 +644,7 @@ JAISoundHandle_NS_dtor:
|
||||
/* 8000784C 0000478C 7C 7E 1B 79 */ or. r30, r3, r3
|
||||
/* 80007850 00004790 7C 9F 23 78 */ mr r31, r4
|
||||
/* 80007854 00004794 41 82 00 18 */ beq lbl_8000786C
|
||||
/* 80007858 00004798 48 29 A9 2D */ bl JAISoundHandle_NS_releaseSound
|
||||
/* 80007858 00004798 48 29 A9 2D */ bl releaseSound__14JAISoundHandleFv
|
||||
/* 8000785C 0000479C 7F E0 07 35 */ extsh. r0, r31
|
||||
/* 80007860 000047A0 40 81 00 0C */ ble lbl_8000786C
|
||||
/* 80007864 000047A4 7F C3 F3 78 */ mr r3, r30
|
||||
|
||||
@@ -0,0 +1,6 @@
|
||||
#ifndef JAIAUDIENCE_H_
|
||||
#define JAIAUDIENCE_H_
|
||||
|
||||
struct JAIAudience {};
|
||||
|
||||
#endif // JAIAUDIENCE_H_
|
||||
@@ -3,9 +3,4 @@
|
||||
|
||||
#include "global.h"
|
||||
|
||||
struct JAISoundID {
|
||||
u32 soundId;
|
||||
JAISoundID(JAISoundID const& soundIdToSet);
|
||||
};
|
||||
|
||||
#endif
|
||||
@@ -0,0 +1,147 @@
|
||||
#ifndef __JAISOUND_H__
|
||||
#define __JAISOUND_H__
|
||||
|
||||
#include "global.h"
|
||||
|
||||
class JAISoundID {
|
||||
public:
|
||||
operator u32() const { return this->mId; }
|
||||
|
||||
JAISoundID(u32 pId) : mId(pId) {}
|
||||
|
||||
JAISoundID(JAISoundID const& other);
|
||||
|
||||
private:
|
||||
u32 mId;
|
||||
};
|
||||
|
||||
struct JAISoundParams {
|
||||
float field_0x0;
|
||||
float field_0x4;
|
||||
float field_0x8;
|
||||
float field_0xc;
|
||||
float field_0x10;
|
||||
float field_0x14;
|
||||
float field_0x18;
|
||||
float field_0x1c;
|
||||
};
|
||||
|
||||
class JAISoundHandle;
|
||||
class JAIAudible;
|
||||
class JAIAudience;
|
||||
class JAISound {
|
||||
public:
|
||||
JAISoundID getID() const { return JAISoundID((u32)this->sound_id); }
|
||||
|
||||
void stop(u32 fadeout);
|
||||
void stop();
|
||||
|
||||
u32 getUserData() const { return user_data; }
|
||||
|
||||
// TODO: do proper struct later
|
||||
void* __vt;
|
||||
struct JAISoundHandle* handle;
|
||||
struct JAIAudible* audible;
|
||||
struct JAIAudience* audience;
|
||||
s32 field_0xc;
|
||||
s32 num_prepare_steps;
|
||||
struct JAISoundID sound_id;
|
||||
u8 field_0x18;
|
||||
u8 field_0x19;
|
||||
u8 field_0x1a;
|
||||
u8 field_0x1b;
|
||||
u32 user_data;
|
||||
float field_0x20;
|
||||
float field_0x24;
|
||||
float field_0x28;
|
||||
s32 field_0x2c;
|
||||
s32 audience_priority;
|
||||
s32 field_0x34;
|
||||
struct JAISoundParams params;
|
||||
u8 field_0x58;
|
||||
u8 field_0x59;
|
||||
u8 field_0x5a;
|
||||
u8 field_0x5b;
|
||||
u8 field_0x5c;
|
||||
u8 field_0x5d;
|
||||
u8 field_0x5e;
|
||||
u8 field_0x5f;
|
||||
u8 field_0x60;
|
||||
u8 field_0x61;
|
||||
u8 field_0x62;
|
||||
u8 field_0x63;
|
||||
u8 field_0x64;
|
||||
u8 field_0x65;
|
||||
u8 field_0x66;
|
||||
u8 field_0x67;
|
||||
u8 field_0x68;
|
||||
u8 field_0x69;
|
||||
u8 field_0x6a;
|
||||
u8 field_0x6b;
|
||||
u8 field_0x6c;
|
||||
u8 field_0x6d;
|
||||
u8 field_0x6e;
|
||||
u8 field_0x6f;
|
||||
u8 field_0x70;
|
||||
u8 field_0x71;
|
||||
u8 field_0x72;
|
||||
u8 field_0x73;
|
||||
u8 field_0x74;
|
||||
u8 field_0x75;
|
||||
u8 field_0x76;
|
||||
u8 field_0x77;
|
||||
u8 field_0x78;
|
||||
u8 field_0x79;
|
||||
u8 field_0x7a;
|
||||
u8 field_0x7b;
|
||||
u8 field_0x7c;
|
||||
u8 field_0x7d;
|
||||
u8 field_0x7e;
|
||||
u8 field_0x7f;
|
||||
u8 field_0x80;
|
||||
u8 field_0x81;
|
||||
u8 field_0x82;
|
||||
u8 field_0x83;
|
||||
u8 field_0x84;
|
||||
u8 field_0x85;
|
||||
u8 field_0x86;
|
||||
u8 field_0x87;
|
||||
u8 field_0x88;
|
||||
u8 field_0x89;
|
||||
u8 field_0x8a;
|
||||
u8 field_0x8b;
|
||||
u8 field_0x8c;
|
||||
u8 field_0x8d;
|
||||
u8 field_0x8e;
|
||||
u8 field_0x8f;
|
||||
u8 field_0x90;
|
||||
u8 field_0x91;
|
||||
u8 field_0x92;
|
||||
u8 field_0x93;
|
||||
};
|
||||
|
||||
extern "C" {
|
||||
void stop__8JAISoundFUl(JAISound*, u32 fadeout);
|
||||
void stop__8JAISoundFv(JAISound*);
|
||||
}
|
||||
|
||||
class JAISoundHandle {
|
||||
public:
|
||||
JAISoundHandle(); // noninline in JAUClusterSound.cpp
|
||||
|
||||
bool isSoundAttached() const { return mSound != NULL; }
|
||||
|
||||
JAISound* operator->() const {
|
||||
JUT_ASSERT(mSound != NULL);
|
||||
return mSound;
|
||||
}
|
||||
|
||||
operator bool() const { return isSoundAttached(); }
|
||||
|
||||
void releaseSound();
|
||||
|
||||
private:
|
||||
JAISound* mSound;
|
||||
};
|
||||
|
||||
#endif
|
||||
@@ -0,0 +1,11 @@
|
||||
#ifndef JAISOUNDHANDLES_H_
|
||||
#define JAISOUNDHANDLES_H_
|
||||
|
||||
#include "JSystem/JAudio2/JAISound/JAISound.h"
|
||||
|
||||
class JAISoundHandles {
|
||||
public:
|
||||
JAISoundHandle mHandles[24];
|
||||
};
|
||||
|
||||
#endif // JAISOUNDHANDLES_H_
|
||||
@@ -0,0 +1,22 @@
|
||||
#ifndef __JASGADGET_H__
|
||||
#define __JASGADGET_H__
|
||||
|
||||
//! @todo figure out *GlobalInstance singleton handlers once we can properly place statics.
|
||||
/*
|
||||
template <typename T>
|
||||
class JASGlobalInstance {
|
||||
public:
|
||||
JASGlobalInstance(bool p1) {
|
||||
JASGlobalInstance<T> pJVar1;
|
||||
if ((p1 == true) && (sInstance != NULL)) {
|
||||
// assert
|
||||
pJVar1 = this;
|
||||
}
|
||||
sInstance = pJVar1;
|
||||
}
|
||||
|
||||
private:
|
||||
static T sInstance;
|
||||
}; */
|
||||
|
||||
#endif
|
||||
@@ -0,0 +1,6 @@
|
||||
#ifndef JAUAUDIOARCLOADER_H_
|
||||
#define JAUAUDIOARCLOADER_H_
|
||||
|
||||
struct JAUSection; // goes in JAudio2.a JAUAudioArcLoader.o
|
||||
|
||||
#endif // JAUAUDIOARCLOADER_H_
|
||||
@@ -3,10 +3,4 @@
|
||||
|
||||
#include "dolphin/types.h"
|
||||
|
||||
struct JAISoundHandle {
|
||||
void* unk; // probably JAISound*
|
||||
|
||||
JAISoundHandle();
|
||||
};
|
||||
|
||||
#endif
|
||||
@@ -0,0 +1,25 @@
|
||||
#ifndef __JGEOMETRY_H__
|
||||
#define __JGEOMETRY_H__
|
||||
|
||||
#include "dolphin/types.h"
|
||||
|
||||
namespace JGeometry {
|
||||
|
||||
template <typename T>
|
||||
struct TVec3 {
|
||||
T x;
|
||||
T y;
|
||||
T z;
|
||||
};
|
||||
/*
|
||||
template <>
|
||||
struct TVec3<f32> {
|
||||
TVec3(Vec& v) {
|
||||
|
||||
}
|
||||
};
|
||||
*/
|
||||
|
||||
} // namespace JGeometry
|
||||
|
||||
#endif
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user