This commit is contained in:
Jcw87
2024-01-07 00:26:00 -08:00
parent f5b5e319a7
commit 17bb3ebb13
2 changed files with 64 additions and 10 deletions
+3 -2
View File
@@ -9,6 +9,7 @@ class JKRSolidHeap;
namespace JAInter {
class Actor;
class Camera;
}
namespace JASystem {
@@ -34,7 +35,7 @@ public:
void setCameraInfo(Vec*, Vec*, f32(*)[4], u32);
void initAudioThread(JKRSolidHeap*, u32, u8);
void initCamera();
bool initReadFile();
BOOL initReadFile();
void processFrameWork();
void startSoundVec(u32, JAISound**, Vec*, u32, u32, u8);
void startSoundActor(u32, JAISound**, JAInter::Actor*, u32, u8);
@@ -56,7 +57,7 @@ public:
bool allocStreamBuffer(void*, s32);
bool deallocStreamBuffer();
/* 0x04 */ void* field_0x4;
/* 0x04 */ JAInter::Camera* mAudioCamera;
/* 0x08 */ JKRSolidHeap* field_0x8;
/* 0x0C */ u8 initLoadFileSw;
/* 0x0D */ u8 field_0xd;
+61 -8
View File
@@ -4,9 +4,16 @@
//
#include "JSystem/JAudio/JAIBasic.h"
#include "JSystem/JAudio/JAIBankWave.h"
#include "JSystem/JAudio/JAIConst.h"
#include "JSystem/JAudio/JAIDummyObject.h"
#include "JSystem/JAudio/JAIFx.h"
#include "JSystem/JAudio/JAIGlobalParameter.h"
#include "JSystem/JAudio/JAIInitData.h"
#include "JSystem/JAudio/JAISeMgr.h"
#include "JSystem/JAudio/JAISequenceHeap.h"
#include "JSystem/JAudio/JAISequenceMgr.h"
#include "JSystem/JAudio/JAIStreamMgr.h"
#include "JSystem/JAudio/JASAudioThread.h"
#include "JSystem/JAudio/JASDriverIF.h"
#include "JSystem/JAudio/JASSystemHeap.h"
@@ -33,7 +40,7 @@ JAIBasic::JAIBasic() {
field_0xe.flag4 = 0;
field_0xe.flag5 = 0;
field_0x14 = 0;
field_0x4 = NULL;
mAudioCamera = NULL;
field_0x10 = 0;
initLoadFileSw = 2;
field_0x1c = 0;
@@ -54,7 +61,26 @@ void JAIBasic::initInterface(u8) {
/* 8028FD04-8028FDC0 .text initInterfaceMain__8JAIBasicFv */
void JAIBasic::initInterfaceMain() {
/* Nonmatching */
initHeap();
initResourcePath();
initArchive();
if (initReadFile()) {
if (!field_0xe.flag1) {
JAInter::BankWave::setWaveScene();
}
JAInter::DummyObjectMgr::init();
JAInter::Fx::init();
JAInter::SequenceMgr::init();
JAInter::SeMgr::init();
JAInter::StreamMgr::init();
JAInter::HeapMgr::init(JAIGlobalParameter::stayHeapMax, JAIGlobalParameter::stayHeapSize, JAIGlobalParameter::autoHeapMax, JAIGlobalParameter::autoHeapRoomSize);
initCamera();
initStream();
JAInter::SeMgr::startSeSequence();
if (!field_0xe.flag1) {
JAInter::SequenceMgr::checkEntriedSeq();
}
}
}
/* 8028FDC0-8028FE78 .text initHeap__8JAIBasicFv */
@@ -94,13 +120,20 @@ void JAIBasic::initResourcePath() {
}
/* 8028FFF8-8029002C .text setCameraInfo__8JAIBasicFP3VecP3VecPA4_fUl */
void JAIBasic::setCameraInfo(Vec*, Vec*, f32(*)[4], u32) {
/* Nonmatching */
void JAIBasic::setCameraInfo(Vec* param_1, Vec* param_2, MtxP param_3, u32 param_4) {
if (JAIGlobalParameter::audioCameraMax <= param_4) {
return;
}
mAudioCamera[param_4].field_0x0 = param_1;
mAudioCamera[param_4].field_0x4 = param_2;
mAudioCamera[param_4].field_0x8 = param_3;
}
/* 8029002C-80290068 .text initStream__8JAIBasicFv */
void JAIBasic::initStream() {
/* Nonmatching */
if (!field_0xe.flag4) {
JAInter::StreamLib::init(field_0xe.flag5);
}
}
/* 80290068-80290090 .text setRegisterTrackCallback__8JAIBasicFv */
@@ -123,12 +156,32 @@ void JAIBasic::initAudioThread(JKRSolidHeap* param_1, u32 param_2, u8 param_3) {
/* 8029011C-8029031C .text initCamera__8JAIBasicFv */
void JAIBasic::initCamera() {
/* Nonmatching */
mAudioCamera = new (JAIBasic::getCurrentJAIHeap(), 0x20) JAInter::Camera[JAIGlobalParameter::audioCameraMax];
JUT_ASSERT_MSG(291, mAudioCamera, "JAIBasic::initAllocParameter Cannot Alloc Heap!! (mAudioCamera)\n");
if (!mAudioCamera->field_0x0) {
JAInter::Const::nullCamera.field_0x0->x = 0.0f;
JAInter::Const::nullCamera.field_0x0->y = 0.0f;
JAInter::Const::nullCamera.field_0x0->z = -50.0f;
JAInter::Const::nullCamera.field_0x4->x = 0.0f;
JAInter::Const::nullCamera.field_0x4->y = 0.0f;
JAInter::Const::nullCamera.field_0x4->z = -50.0f;
Vec local_2c;
local_2c.x = 0.0f;
local_2c.y = 1.0f;
local_2c.z = 0.0f;
Vec local_38;
local_38.x = JAInter::Const::dummyZeroVec.x;
local_38.y = JAInter::Const::dummyZeroVec.y;
local_38.z = JAInter::Const::dummyZeroVec.z;
C_MTXLookAt(JAInter::Const::camMtx, JAInter::Const::nullCamera.field_0x0, &local_2c, &local_38);
for (u32 i = 0; i < JAIGlobalParameter::audioCameraMax; i++) {
setCameraInfo(JAInter::Const::nullCamera.field_0x0, JAInter::Const::nullCamera.field_0x4, JAInter::Const::camMtx, i);
}
}
}
/* 80290330-8029046C .text initReadFile__8JAIBasicFv */
bool JAIBasic::initReadFile() {
/* Nonmatching */
BOOL JAIBasic::initReadFile() {
switch (initLoadFileSw) {
case 2:
if (JAIInitData::checkInitDataFile()) {