mirror of
https://github.com/zeldaret/tp
synced 2026-08-01 08:17:31 -04: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:
@@ -0,0 +1,34 @@
|
||||
#ifndef __Z2SOUNDHANDLES_H__
|
||||
#define __Z2SOUNDHANDLES_H__
|
||||
|
||||
#include "JSystem/JAudio2/JAISound/JAISound.h"
|
||||
#include "JSystem/JGeometry/JGeometry.h"
|
||||
#include "JSystem/JSupport/JSUList/JSUList.h"
|
||||
#include "dolphin/types.h"
|
||||
|
||||
class Z2SoundHandlePool : public JAISoundHandle, JSULink<Z2SoundHandlePool> {};
|
||||
|
||||
class Z2SoundHandles : protected JSUList<Z2SoundHandlePool> {
|
||||
public:
|
||||
Z2SoundHandles();
|
||||
~Z2SoundHandles();
|
||||
|
||||
void initHandlesPool(u8 pNumHandles);
|
||||
void deleteHandlesPool();
|
||||
|
||||
bool isActive() const;
|
||||
|
||||
JAISoundHandle* getHandleSoundID(JAISoundID pSoundId);
|
||||
JAISoundHandle* getHandleUserData(u32 pUserData);
|
||||
|
||||
void stopAllSounds(u32 fadeout);
|
||||
|
||||
void setPos(const JGeometry::TVec3<f32>& pos);
|
||||
|
||||
u32 getNumHandles() const { return this->getNumLinks(); }
|
||||
|
||||
private:
|
||||
u8 mNumHandles;
|
||||
};
|
||||
|
||||
#endif
|
||||
@@ -1,14 +0,0 @@
|
||||
/* 802AB07C 002A7FBC 94 21 FF F0 */ stwu r1, -0x10(r1)
|
||||
/* 802AB080 002A7FC0 7C 08 02 A6 */ mflr r0
|
||||
/* 802AB084 002A7FC4 90 01 00 14 */ stw r0, 0x14(r1)
|
||||
/* 802AB088 002A7FC8 93 E1 00 0C */ stw r31, 0xc(r1)
|
||||
/* 802AB08C 002A7FCC 7C 7F 1B 78 */ mr r31, r3
|
||||
/* 802AB090 002A7FD0 48 03 0E 85 */ bl initiate__10JSUPtrListFv
|
||||
/* 802AB094 002A7FD4 38 00 00 00 */ li r0, 0
|
||||
/* 802AB098 002A7FD8 98 1F 00 0C */ stb r0, 0xc(r31)
|
||||
/* 802AB09C 002A7FDC 7F E3 FB 78 */ mr r3, r31
|
||||
/* 802AB0A0 002A7FE0 83 E1 00 0C */ lwz r31, 0xc(r1)
|
||||
/* 802AB0A4 002A7FE4 80 01 00 14 */ lwz r0, 0x14(r1)
|
||||
/* 802AB0A8 002A7FE8 7C 08 03 A6 */ mtlr r0
|
||||
/* 802AB0AC 002A7FEC 38 21 00 10 */ addi r1, r1, 0x10
|
||||
/* 802AB0B0 002A7FF0 4E 80 00 20 */ blr
|
||||
@@ -1,27 +0,0 @@
|
||||
/* 802AB0B4 002A7FF4 94 21 FF F0 */ stwu r1, -0x10(r1)
|
||||
/* 802AB0B8 002A7FF8 7C 08 02 A6 */ mflr r0
|
||||
/* 802AB0BC 002A7FFC 90 01 00 14 */ stw r0, 0x14(r1)
|
||||
/* 802AB0C0 002A8000 93 E1 00 0C */ stw r31, 0xc(r1)
|
||||
/* 802AB0C4 002A8004 93 C1 00 08 */ stw r30, 8(r1)
|
||||
/* 802AB0C8 002A8008 7C 7E 1B 79 */ or. r30, r3, r3
|
||||
/* 802AB0CC 002A800C 7C 9F 23 78 */ mr r31, r4
|
||||
/* 802AB0D0 002A8010 41 82 00 2C */ beq lbl_802AB0FC
|
||||
/* 802AB0D4 002A8014 48 00 00 4D */ bl Z2SoundHandles_NS_deleteHandlesPool
|
||||
/* 802AB0D8 002A8018 28 1E 00 00 */ cmplwi r30, 0
|
||||
/* 802AB0DC 002A801C 41 82 00 10 */ beq lbl_802AB0EC
|
||||
/* 802AB0E0 002A8020 7F C3 F3 78 */ mr r3, r30
|
||||
/* 802AB0E4 002A8024 38 80 00 00 */ li r4, 0
|
||||
/* 802AB0E8 002A8028 48 03 0D C5 */ bl __dt__10JSUPtrListFv
|
||||
lbl_802AB0EC:
|
||||
/* 802AB0EC 002A802C 7F E0 07 35 */ extsh. r0, r31
|
||||
/* 802AB0F0 002A8030 40 81 00 0C */ ble lbl_802AB0FC
|
||||
/* 802AB0F4 002A8034 7F C3 F3 78 */ mr r3, r30
|
||||
/* 802AB0F8 002A8038 48 02 3C 45 */ bl __dl__FPv
|
||||
lbl_802AB0FC:
|
||||
/* 802AB0FC 002A803C 7F C3 F3 78 */ mr r3, r30
|
||||
/* 802AB100 002A8040 83 E1 00 0C */ lwz r31, 0xc(r1)
|
||||
/* 802AB104 002A8044 83 C1 00 08 */ lwz r30, 8(r1)
|
||||
/* 802AB108 002A8048 80 01 00 14 */ lwz r0, 0x14(r1)
|
||||
/* 802AB10C 002A804C 7C 08 03 A6 */ mtlr r0
|
||||
/* 802AB110 002A8050 38 21 00 10 */ addi r1, r1, 0x10
|
||||
/* 802AB114 002A8054 4E 80 00 20 */ blr
|
||||
@@ -1,2 +0,0 @@
|
||||
/* 802AB118 002A8058 98 83 00 0C */ stb r4, 0xc(r3)
|
||||
/* 802AB11C 002A805C 4E 80 00 20 */ blr
|
||||
@@ -25,7 +25,7 @@ lbl_802AB174:
|
||||
/* 802AB174 002A80B4 28 1E 00 00 */ cmplwi r30, 0
|
||||
/* 802AB178 002A80B8 41 82 00 0C */ beq lbl_802AB184
|
||||
/* 802AB17C 002A80BC 7F C3 F3 78 */ mr r3, r30
|
||||
/* 802AB180 002A80C0 4B FF 70 05 */ bl JAISoundHandle_NS_releaseSound
|
||||
/* 802AB180 002A80C0 4B FF 70 05 */ bl releaseSound__14JAISoundHandleFv
|
||||
lbl_802AB184:
|
||||
/* 802AB184 002A80C4 88 0D 8D C8 */ lbz r0, lbl_80451348-_SDA_BASE_(r13)
|
||||
/* 802AB188 002A80C8 7C 00 07 75 */ extsb. r0, r0
|
||||
|
||||
@@ -1,23 +0,0 @@
|
||||
/* 802AB254 002A8194 94 21 FF F0 */ stwu r1, -0x10(r1)
|
||||
/* 802AB258 002A8198 80 A3 00 00 */ lwz r5, 0(r3)
|
||||
/* 802AB25C 002A819C 80 04 00 00 */ lwz r0, 0(r4)
|
||||
/* 802AB260 002A81A0 48 00 00 2C */ b lbl_802AB28C
|
||||
lbl_802AB264:
|
||||
/* 802AB264 002A81A4 80 65 00 00 */ lwz r3, 0(r5)
|
||||
/* 802AB268 002A81A8 80 83 00 00 */ lwz r4, 0(r3)
|
||||
/* 802AB26C 002A81AC 28 04 00 00 */ cmplwi r4, 0
|
||||
/* 802AB270 002A81B0 41 82 00 18 */ beq lbl_802AB288
|
||||
/* 802AB274 002A81B4 80 84 00 18 */ lwz r4, 0x18(r4)
|
||||
/* 802AB278 002A81B8 90 81 00 08 */ stw r4, 8(r1)
|
||||
/* 802AB27C 002A81BC 7C 04 00 40 */ cmplw r4, r0
|
||||
/* 802AB280 002A81C0 40 82 00 08 */ bne lbl_802AB288
|
||||
/* 802AB284 002A81C4 48 00 00 14 */ b lbl_802AB298
|
||||
lbl_802AB288:
|
||||
/* 802AB288 002A81C8 80 A5 00 0C */ lwz r5, 0xc(r5)
|
||||
lbl_802AB28C:
|
||||
/* 802AB28C 002A81CC 28 05 00 00 */ cmplwi r5, 0
|
||||
/* 802AB290 002A81D0 40 82 FF D4 */ bne lbl_802AB264
|
||||
/* 802AB294 002A81D4 38 60 00 00 */ li r3, 0
|
||||
lbl_802AB298:
|
||||
/* 802AB298 002A81D8 38 21 00 10 */ addi r1, r1, 0x10
|
||||
/* 802AB29C 002A81DC 4E 80 00 20 */ blr
|
||||
@@ -1,17 +0,0 @@
|
||||
/* 802AB2A0 002A81E0 80 C3 00 00 */ lwz r6, 0(r3)
|
||||
/* 802AB2A4 002A81E4 48 00 00 24 */ b lbl_802AB2C8
|
||||
lbl_802AB2A8:
|
||||
/* 802AB2A8 002A81E8 80 66 00 00 */ lwz r3, 0(r6)
|
||||
/* 802AB2AC 002A81EC 80 A3 00 00 */ lwz r5, 0(r3)
|
||||
/* 802AB2B0 002A81F0 28 05 00 00 */ cmplwi r5, 0
|
||||
/* 802AB2B4 002A81F4 41 82 00 10 */ beq lbl_802AB2C4
|
||||
/* 802AB2B8 002A81F8 80 05 00 20 */ lwz r0, 0x20(r5)
|
||||
/* 802AB2BC 002A81FC 7C 04 00 40 */ cmplw r4, r0
|
||||
/* 802AB2C0 002A8200 4D 82 00 20 */ beqlr
|
||||
lbl_802AB2C4:
|
||||
/* 802AB2C4 002A8204 80 C6 00 0C */ lwz r6, 0xc(r6)
|
||||
lbl_802AB2C8:
|
||||
/* 802AB2C8 002A8208 28 06 00 00 */ cmplwi r6, 0
|
||||
/* 802AB2CC 002A820C 40 82 FF DC */ bne lbl_802AB2A8
|
||||
/* 802AB2D0 002A8210 38 60 00 00 */ li r3, 0
|
||||
/* 802AB2D4 002A8214 4E 80 00 20 */ blr
|
||||
@@ -1,28 +0,0 @@
|
||||
/* 802AB4A0 002A83E0 94 21 FF F0 */ stwu r1, -0x10(r1)
|
||||
/* 802AB4A4 002A83E4 7C 08 02 A6 */ mflr r0
|
||||
/* 802AB4A8 002A83E8 90 01 00 14 */ stw r0, 0x14(r1)
|
||||
/* 802AB4AC 002A83EC 93 E1 00 0C */ stw r31, 0xc(r1)
|
||||
/* 802AB4B0 002A83F0 93 C1 00 08 */ stw r30, 8(r1)
|
||||
/* 802AB4B4 002A83F4 7C 9E 23 78 */ mr r30, r4
|
||||
/* 802AB4B8 002A83F8 83 E3 00 00 */ lwz r31, 0(r3)
|
||||
/* 802AB4BC 002A83FC 48 00 00 28 */ b lbl_802AB4E4
|
||||
lbl_802AB4C0:
|
||||
/* 802AB4C0 002A8400 80 7F 00 00 */ lwz r3, 0(r31)
|
||||
/* 802AB4C4 002A8404 28 03 00 00 */ cmplwi r3, 0
|
||||
/* 802AB4C8 002A8408 41 82 00 18 */ beq lbl_802AB4E0
|
||||
/* 802AB4CC 002A840C 80 63 00 00 */ lwz r3, 0(r3)
|
||||
/* 802AB4D0 002A8410 28 03 00 00 */ cmplwi r3, 0
|
||||
/* 802AB4D4 002A8414 41 82 00 0C */ beq lbl_802AB4E0
|
||||
/* 802AB4D8 002A8418 7F C4 F3 78 */ mr r4, r30
|
||||
/* 802AB4DC 002A841C 4B FF 70 01 */ bl JAISound_NS_stop
|
||||
lbl_802AB4E0:
|
||||
/* 802AB4E0 002A8420 83 FF 00 0C */ lwz r31, 0xc(r31)
|
||||
lbl_802AB4E4:
|
||||
/* 802AB4E4 002A8424 28 1F 00 00 */ cmplwi r31, 0
|
||||
/* 802AB4E8 002A8428 40 82 FF D8 */ bne lbl_802AB4C0
|
||||
/* 802AB4EC 002A842C 83 E1 00 0C */ lwz r31, 0xc(r1)
|
||||
/* 802AB4F0 002A8430 83 C1 00 08 */ lwz r30, 8(r1)
|
||||
/* 802AB4F4 002A8434 80 01 00 14 */ lwz r0, 0x14(r1)
|
||||
/* 802AB4F8 002A8438 7C 08 03 A6 */ mtlr r0
|
||||
/* 802AB4FC 002A843C 38 21 00 10 */ addi r1, r1, 0x10
|
||||
/* 802AB500 002A8440 4E 80 00 20 */ blr
|
||||
@@ -1,16 +0,0 @@
|
||||
/* 802AB504 002A8444 80 83 00 00 */ lwz r4, 0(r3)
|
||||
/* 802AB508 002A8448 48 00 00 20 */ b lbl_802AB528
|
||||
lbl_802AB50C:
|
||||
/* 802AB50C 002A844C 80 64 00 00 */ lwz r3, 0(r4)
|
||||
/* 802AB510 002A8450 80 03 00 00 */ lwz r0, 0(r3)
|
||||
/* 802AB514 002A8454 28 00 00 00 */ cmplwi r0, 0
|
||||
/* 802AB518 002A8458 41 82 00 0C */ beq lbl_802AB524
|
||||
/* 802AB51C 002A845C 38 60 00 01 */ li r3, 1
|
||||
/* 802AB520 002A8460 4E 80 00 20 */ blr
|
||||
lbl_802AB524:
|
||||
/* 802AB524 002A8464 80 84 00 0C */ lwz r4, 0xc(r4)
|
||||
lbl_802AB528:
|
||||
/* 802AB528 002A8468 28 04 00 00 */ cmplwi r4, 0
|
||||
/* 802AB52C 002A846C 40 82 FF E0 */ bne lbl_802AB50C
|
||||
/* 802AB530 002A8470 38 60 00 00 */ li r3, 0
|
||||
/* 802AB534 002A8474 4E 80 00 20 */ blr
|
||||
@@ -41,7 +41,7 @@ lbl_802AB5C8:
|
||||
/* 802AB5C8 002A8508 28 1F 00 00 */ cmplwi r31, 0
|
||||
/* 802AB5CC 002A850C 41 82 00 0C */ beq lbl_802AB5D8
|
||||
/* 802AB5D0 002A8510 7F E3 FB 78 */ mr r3, r31
|
||||
/* 802AB5D4 002A8514 4B FF 6B B1 */ bl JAISoundHandle_NS_releaseSound
|
||||
/* 802AB5D4 002A8514 4B FF 6B B1 */ bl releaseSound__14JAISoundHandleFv
|
||||
lbl_802AB5D8:
|
||||
/* 802AB5D8 002A8518 88 0D 8D C8 */ lbz r0, lbl_80451348-_SDA_BASE_(r13)
|
||||
/* 802AB5DC 002A851C 7C 00 07 75 */ extsb. r0, r0
|
||||
|
||||
Reference in New Issue
Block a user