JAIZelBasic work

This commit is contained in:
LagoLunatic 2023-12-26 17:41:52 -05:00
parent 9112e75c18
commit 4f652d0205
8 changed files with 143 additions and 47 deletions

View File

@ -38,11 +38,11 @@ public:
void onEnemyDamage();
void mbossBgmMuteProcess();
void mbossBgmNearByProcess(f32);
void checkBgmPlaying();
void checkPlayingMainBgmFlag();
void checkSubBgmPlaying();
void checkPlayingSubBgmFlag();
void checkPlayingStreamBgmFlag();
bool checkBgmPlaying();
int checkPlayingMainBgmFlag();
bool checkSubBgmPlaying();
int checkPlayingSubBgmFlag();
int checkPlayingStreamBgmFlag();
void changeBgmStatus(s32);
void changeSubBgmStatus(s32);
void bgmMuteMtDragon();
@ -102,7 +102,7 @@ public:
BOOL check1stDynamicWave();
void load2ndDynamicWave();
void loadStaticWaves();
BOOL checkFirstWaves();
s32 checkFirstWaves();
void setLinkHp(s32, s32);
void setLinkSwordType(s32, s32);
void setLinkShieldType(s32, s32);
@ -145,8 +145,8 @@ public:
void rainPlay(s32);
virtual JAISound* makeSound(u32);
virtual bool getMapInfoFxline(u32);
virtual bool getMapInfoGround(u32);
virtual BOOL getMapInfoFxline(u32);
virtual BOOL getMapInfoGround(u32);
virtual f32 getMapInfoFxParameter(u32);
void setHour(s32 i_hour) { mHour = i_hour; }
@ -155,6 +155,18 @@ public:
static JAIZelBasic* getInterface() { return zel_basic; }
// TODO
void bstHoriOff() {}
void bstHoriOn() {}
void calcMainBgmVol() {}
void calcSubBgmVol() {}
void checkSeMute() {}
void checkTBoxDemo() {}
void getCurCamera(u32) {}
void getLinkBootsType() {}
void getLinkSwShieldBeat() {}
void isTaktUsing() {}
static JAIZelBasic* zel_basic;
// static m_bgm_mute_state;
@ -199,10 +211,13 @@ public:
/* 0x0061 */ u8 field_0x0061;
/* 0x0062 */ u8 field_0x0062;
/* 0x0063 */ u8 field_0x0063;
/* 0x0064 */ u8 field_0x0064[0x0066 - 0x0064];
/* 0x0064 */ u8 field_0x0064[0x0065 - 0x0064];
/* 0x0065 */ u8 field_0x0065;
/* 0x0066 */ u8 field_0x0066;
/* 0x0067 */ u8 field_0x0067[0x0070 - 0x0067];
/* 0x0070 */ JAISound* mpSound;
/* 0x0067 */ u8 field_0x0067[0x0068 - 0x0067];
/* 0x0068 */ JAISound* mpMainBgmSound;
/* 0x006C */ JAISound* mpSubBgmSound;
/* 0x0070 */ JAISound* mpStreamBgmSound;
/* 0x0074 */ int field_0x0074;
/* 0x0078 */ u32 field_0x0078;
/* 0x007C */ u32 field_0x007c;

View File

@ -14,7 +14,7 @@ namespace JAInter {
void finishSceneSet(u32);
void loadSceneWave(s32, s32);
void loadGroupWave(s32, s32);
void getWaveLoadStatus(s32);
s32 getWaveLoadStatus(s32);
bool checkAllWaveLoadStatus();
extern s32* wsGroupNumber;

View File

@ -19,8 +19,8 @@ class JAIBasic {
public:
JAIBasic();
virtual JAISound* makeSound(u32);
virtual bool getMapInfoFxline(u32);
virtual bool getMapInfoGround(u32);
virtual BOOL getMapInfoFxline(u32);
virtual BOOL getMapInfoGround(u32);
virtual f32 getMapInfoFxParameter(u32);
virtual void setSeExtParameter(JAISound*);
virtual void setRegisterTrackCallback();
@ -81,6 +81,22 @@ public:
return msCurrentHeap;
}
// TODO
void addInitOnCodeSeScene(u32, u32) {}
void checkAllWaveLoadStatus() {}
void checkEnablePrepare(u32) {}
void getAudioCamera() {}
void getInitDataInfo() {}
void getInitOnCodeSeScene() {}
void getSceneSetFlag() {}
void getSeSoundHandle() {}
void getWaveLoadStatus(s32) {}
void initAudio(JKRSolidHeap*, u32, u8) {}
void loadSceneWave(s32, s32) {}
void prepareSoundVec(u32, JAISound**, Vec*, u32, u32, u8) {}
void setInitDataInfo(char*) {}
void setInitOnCodeSeScene(u32*) {}
static JAIBasic* msBasic;
static JKRSolidHeap* msCurrentHeap;
};

View File

@ -72,6 +72,46 @@ public:
int checkSoundHandle(u32, void*);
void initParameter(JAISound**, JAInter::Actor*, u32, u32, u8, void*);
// TODO
void decWait() {}
void getAct() {}
void getAdjustPriority() {}
void getFadetime() {}
void getID() {}
void getInfoPointer() {}
void getMapInfo() {}
void getNextSound() {}
void getPlayGameFrameCounter() {}
void getPlayer() {}
void getPositionInfo() {}
void getPrevSound() {}
void getPriority() {}
void getStatus() {}
void getTrack() {}
void getTrans() {}
void getWait() {}
void incPlayGameFrameCounter() {}
void setCustomParameterPointer(void*) {}
void setDemoFxmix(f32, u32) {}
void setDemoPan(f32, u32) {}
void setDemoPitch(f32, u32) {}
void setDemoVolume(f32, u32) {}
void setFadetime(u32) {}
void setID(u32) {}
void setMainSoundPPointer(JAISound**) {}
void setNextSound(JAISound*) {}
void setPrevSound(JAISound*) {}
void setPriority(u32) {}
void setRandom(u8) {}
void setSeInterDolbyU7(u8, u8, u32, u8) {}
void setSeInterFxmixU7(u8, u8, u32, u8) {}
void setSeqInterVolumeU7(u8, u8, u32) {}
void setStatus(u8) {}
void setTrack(u8) {}
void setTrackVolumeU7(u8, u8, u32) {}
void setVolumeU7(u8, u32, u8) {}
void setWait(u8) {}
/* 0x04 */ u8 field_0x4;
/* 0x05 */ u8 field_0x5;
/* 0x06 */ u8 field_0x6;

View File

@ -28,9 +28,11 @@ namespace JAInter {
extern LinkSound streamControl;
extern u8 flags;
extern int streamUpdate;
extern int streamUpdate; // TODO pointer to something, not actually an int
extern u8* streamList;
extern u8* initOnCodeStrm;
inline int getUpdateInfo() { return streamUpdate; }
}
namespace StreamLib {

View File

@ -4,14 +4,18 @@
//
#include "JAZelAudio/JAIZelBasic.h"
#include "dolphin/types.h"
#include "JSystem/JAudio/JAISound.h"
#include "JSystem/JAudio/JAIStreamMgr.h"
#include "JSystem/JAudio/JAIBankWave.h"
JAIZelBasic* JAIZelBasic::zel_basic;
/* 802A1C78-802A1EB4 .text __ct__11JAIZelBasicFv */
JAIZelBasic::JAIZelBasic() {
zel_basic = this;
field_0x0021 = 0;
field_0x0024 = 0;
mpSound = 0;
mpStreamBgmSound = NULL;
field_0x0020 = 0;
field_0x0074 = -1;
field_0x0078 = -1;
@ -180,8 +184,12 @@ void JAIZelBasic::bgmStop(u32, s32) {
}
/* 802A4770-802A47B8 .text mainBgmStopOnly__11JAIZelBasicFUl */
void JAIZelBasic::mainBgmStopOnly(u32) {
/* Nonmatching */
void JAIZelBasic::mainBgmStopOnly(u32 param_1) {
if (mpMainBgmSound) {
mpMainBgmSound->stop(param_1);
}
mpMainBgmSound = NULL;
field_0x0078 = -1;
}
/* 802A47B8-802A4CDC .text subBgmStart__11JAIZelBasicFUl */
@ -225,8 +233,8 @@ void JAIZelBasic::bgmHitSound(s32) {
}
/* 802A579C-802A57A4 .text bgmSetSwordUsing__11JAIZelBasicFl */
void JAIZelBasic::bgmSetSwordUsing(s32) {
/* Nonmatching */
void JAIZelBasic::bgmSetSwordUsing(s32 param_1) {
field_0x00c9 = param_1;
}
/* 802A57A4-802A5818 .text onEnemyDamage__11JAIZelBasicFv */
@ -245,33 +253,48 @@ void JAIZelBasic::mbossBgmNearByProcess(f32) {
}
/* 802A59B0-802A59D8 .text checkBgmPlaying__11JAIZelBasicFv */
void JAIZelBasic::checkBgmPlaying() {
/* Nonmatching */
bool JAIZelBasic::checkBgmPlaying() {
if (mpMainBgmSound || mpStreamBgmSound) {
return true;
} else {
return false;
}
}
/* 802A59D8-802A59F4 .text checkPlayingMainBgmFlag__11JAIZelBasicFv */
void JAIZelBasic::checkPlayingMainBgmFlag() {
/* Nonmatching */
int JAIZelBasic::checkPlayingMainBgmFlag() {
if (mpMainBgmSound) {
return mpMainBgmSound->field_0xc;
} else {
return -1;
}
}
/* 802A59F4-802A5A04 .text checkSubBgmPlaying__11JAIZelBasicFv */
void JAIZelBasic::checkSubBgmPlaying() {
/* Nonmatching */
bool JAIZelBasic::checkSubBgmPlaying() {
return mpSubBgmSound != NULL;
}
/* 802A5A04-802A5A20 .text checkPlayingSubBgmFlag__11JAIZelBasicFv */
void JAIZelBasic::checkPlayingSubBgmFlag() {
/* Nonmatching */
int JAIZelBasic::checkPlayingSubBgmFlag() {
if (mpSubBgmSound) {
return mpSubBgmSound->field_0xc;
} else {
return -1;
}
}
/* 802A5A20-802A5A40 .text checkPlayingStreamBgmFlag__11JAIZelBasicFv */
void JAIZelBasic::checkPlayingStreamBgmFlag() {
int JAIZelBasic::checkPlayingStreamBgmFlag() {
/* Nonmatching */
JAInter::StreamMgr::getUpdateInfo();
}
/* 802A5A40-802A5A78 .text changeBgmStatus__11JAIZelBasicFl */
void JAIZelBasic::changeBgmStatus(s32) {
/* Nonmatching */
void JAIZelBasic::changeBgmStatus(s32 param_0) {
if (mpMainBgmSound) {
mpMainBgmSound->setPortData(9, param_0);
}
}
/* 802A5A78-802A5AC0 .text changeSubBgmStatus__11JAIZelBasicFl */
@ -281,7 +304,7 @@ void JAIZelBasic::changeSubBgmStatus(s32) {
/* 802A5AC0-802A5ACC .text bgmMuteMtDragon__11JAIZelBasicFv */
void JAIZelBasic::bgmMuteMtDragon() {
/* Nonmatching */
field_0x0065 = 1;
}
/* 802A5ACC-802A5BA4 .text enemyNearBy__11JAIZelBasicFv */
@ -341,7 +364,7 @@ void JAIZelBasic::startLandingDemo() {
/* 802A6608-802A6614 .text endLandingDemo__11JAIZelBasicFv */
void JAIZelBasic::endLandingDemo() {
/* Nonmatching */
mbLandingDemoStarted = 0;
}
/* 802A6614-802A6720 .text initSe__11JAIZelBasicFv */
@ -435,8 +458,8 @@ void JAIZelBasic::shipCruiseSePlay(Vec*, f32) {
}
/* 802A965C-802A9664 .text setShipSailState__11JAIZelBasicFl */
void JAIZelBasic::setShipSailState(s32) {
/* Nonmatching */
void JAIZelBasic::setShipSailState(s32 isSailing) {
mIsSailing = isSailing;
}
/* 802A9664-802A9874 .text init__11JAIZelBasicFP12JKRSolidHeapUl */
@ -505,8 +528,8 @@ void JAIZelBasic::setLinkGroupInfo(u8) {
}
/* 802AA378-802AA380 .text getMapInfoFxline__11JAIZelBasicFUl */
bool JAIZelBasic::getMapInfoFxline(u32) {
/* Nonmatching */
BOOL JAIZelBasic::getMapInfoFxline(u32 param_0) {
return param_0 & 0xFFFF;
}
/* 802AA380-802AA388 .text getMapInfoFxParameter__11JAIZelBasicFUl */
@ -515,8 +538,8 @@ f32 JAIZelBasic::getMapInfoFxParameter(u32) {
}
/* 802AA388-802AA390 .text getMapInfoGround__11JAIZelBasicFUl */
bool JAIZelBasic::getMapInfoGround(u32) {
/* Nonmatching */
BOOL JAIZelBasic::getMapInfoGround(u32) {
return FALSE;
}
/* 802AA390-802AACE8 .text setScene__11JAIZelBasicFllll */
@ -580,8 +603,8 @@ void JAIZelBasic::loadStaticWaves() {
}
/* 802AB888-802AB8B0 .text checkFirstWaves__11JAIZelBasicFv */
BOOL JAIZelBasic::checkFirstWaves() {
/* Nonmatching */
s32 JAIZelBasic::checkFirstWaves() {
return 2 - JAInter::BankWave::getWaveLoadStatus(2);
}
/* 802AB8B0-802AB9F4 .text setLinkHp__11JAIZelBasicFll */

View File

@ -65,7 +65,7 @@ void JAInter::BankWave::loadGroupWave(s32, s32) {
}
/* 802916B0-802916C0 .text getWaveLoadStatus__Q27JAInter8BankWaveFl */
void JAInter::BankWave::getWaveLoadStatus(s32) {
s32 JAInter::BankWave::getWaveLoadStatus(s32) {
/* Nonmatching */
}

View File

@ -224,13 +224,13 @@ void JAIBasic::deleteObject(void*) {
}
/* 80290D94-80290DA0 .text getMapInfoFxline__8JAIBasicFUl */
bool JAIBasic::getMapInfoFxline(u32 param_1) {
return param_1 != 0;
BOOL JAIBasic::getMapInfoFxline(u32 param_1) {
return param_1 ? TRUE : FALSE;
}
/* 80290DA0-80290DAC .text getMapInfoGround__8JAIBasicFUl */
bool JAIBasic::getMapInfoGround(u32 param_1) {
return param_1 != 0;
BOOL JAIBasic::getMapInfoGround(u32 param_1) {
return param_1 ? TRUE : FALSE;
}
/* 80290DAC-80290DC4 .text getMapInfoFxParameter__8JAIBasicFUl */