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:
Erin Moon
2021-01-21 22:16:51 -06:00
committed by GitHub
parent afb426c60c
commit a072e71c33
595 changed files with 1228 additions and 9009 deletions
+25 -10
View File
@@ -1,4 +1,7 @@
#include "Z2AudioLib/Z2SeMgr/Z2SeMgr.h"
#include "Z2AudioLib/Z2SoundObjMgr/Z2SoundObjMgr.h"
#include "Z2AudioLib/Z2SoundStarter/Z2SoundStarter.h"
#include "Z2AudioLib/Z2SpeechMgr2/Z2SpeechMgr2.h"
#include "Z2AudioLib/Z2StatusMgr/Z2StatusMgr.h"
extern "C" {
@@ -32,14 +35,20 @@ asm void Z2SeMgr::modHeightAtCamera(Vec const** param1) {
#include "Z2AudioLib/Z2SeMgr/asm/func_802AB830.s"
}
asm void Z2SeMgr::incrCrowdSize(void) {
nofralloc
#include "Z2AudioLib/Z2SeMgr/asm/func_802AB93C.s"
void Z2SeMgr::incrCrowdSize(void) {
mCrowdSize++;
if (mCrowdSize > 100)
mCrowdSize = 100;
}
asm void Z2SeMgr::decrCrowdSize(void) {
nofralloc
#include "Z2AudioLib/Z2SeMgr/asm/func_802AB960.s"
void Z2SeMgr::decrCrowdSize(void) {
mCrowdSize--;
//! @bug probably copypasta from incrCrowdSize(), but semantically it's still correct:
//! mCrowdSize is a u8, so an underflow would result in mCrowdSize > 100, triggering the clamp.
if (mCrowdSize > 100)
mCrowdSize = 0;
}
asm void Z2SeMgr::seStart(JAISoundID, Vec const*, u32, s8, float, float, float, float, u8) {
@@ -127,9 +136,15 @@ asm u32 Z2MultiSeMgr::registMultiSePos(Vec*) {
#include "Z2AudioLib/Z2SeMgr/asm/func_802AEB70.s"
}
asm void Z2MultiSeMgr::resetMultiSePos(void) {
nofralloc
#include "Z2AudioLib/Z2SeMgr/asm/func_802AECBC.s"
void Z2MultiSeMgr::resetMultiSePos(void) {
field_0x18 = -1;
// @todo fix when we have proper const placement
f32 zero = /* 0.0f */ lbl_80455878;
field_0x8 = zero;
this->field_0xc = zero;
this->field_0x10 = zero;
this->field_0x14 = zero;
this->field_0x4 = zero;
}
asm float Z2MultiSeMgr::getPanPower(void) {
@@ -140,4 +155,4 @@ asm float Z2MultiSeMgr::getPanPower(void) {
asm float Z2MultiSeMgr::getDolbyPower(void) {
nofralloc
#include "Z2AudioLib/Z2SeMgr/asm/func_802AEDC0.s"
}
}