mirror of
https://github.com/ACreTeam/ac-decomp
synced 2026-07-08 20:24:49 -04:00
Implement & link jaudio_NES/game64.c
Co-authored-by: roeming <roeming@users.noreply.github.com>
This commit is contained in:
@@ -3,6 +3,7 @@
|
||||
|
||||
#include "types.h"
|
||||
// #include "va_args.h"
|
||||
#include "libc/stdarg.h"
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
|
||||
+3
-3
@@ -65,7 +65,7 @@ extern void sAdo_PlyWalkSeRoom(u8 walk, const xyz_t* pos);
|
||||
extern void sAdo_NpcWalkSe(u16 se_no, const xyz_t* pos);
|
||||
extern void sAdo_NpcWalkSeRoom(u8 se_no, const xyz_t* pos);
|
||||
|
||||
extern void sAdo_PlayerStatusLevel(f32 speed, int p);
|
||||
extern void sAdo_PlayerStatusLevel(u8 dash, f32 speed);
|
||||
|
||||
/* Not sure about the last param name */
|
||||
extern void sAdo_VoiceSe(u8 num, u8 num2, u8 num3, s16 character_idx, u8 scale, u8 mode);
|
||||
@@ -103,7 +103,7 @@ extern s8 sAdo_InstCountGet();
|
||||
extern void sAdo_RhythmPos(u32 id, u8 haniwa_id, const xyz_t* pos);
|
||||
|
||||
extern void sAdo_SpecChange(int spec);
|
||||
extern void sAdo_MDPlayerPos(const xyz_t* pos, u16 s1, u16 s2, int p);
|
||||
extern void sAdo_MDPlayerPos(const xyz_t* pos, u16 s1, u16 s2, u32 p);
|
||||
|
||||
extern void sAdo_BGMVolume(f32 f, u16 volume);
|
||||
extern void sAdo_BgmCrossfadeStart(u8 b);
|
||||
@@ -141,7 +141,7 @@ extern u16 sAdo_Get_WalkLabel(int type);
|
||||
extern u16 sAdo_Get_KokeruLabel(int type);
|
||||
|
||||
extern void sAdo_SceneMode(u8 mode);
|
||||
extern u8 sAdo_RoomIncectPos(u32 f, u16 u, const xyz_t* pos);
|
||||
extern u8 sAdo_RoomIncectPos(u32 f, u8 u, const xyz_t* pos);
|
||||
|
||||
extern void sAdo_FurnitureInstPos(u32 id, const xyz_t* pos);
|
||||
extern void sAdo_Set_ongenpos_refuse_fg(int state);
|
||||
|
||||
@@ -0,0 +1,14 @@
|
||||
#ifndef OSATTENTION_H_
|
||||
#define OSATTENTION_H_
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
#endif // !__cplusplus
|
||||
|
||||
int OSAttention(const char* c, ...);
|
||||
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
#endif // !__cplusplus
|
||||
|
||||
#endif // !OSATTENTION_H_
|
||||
@@ -1,6 +1,11 @@
|
||||
#ifndef ARAMCALL_H
|
||||
#define ARAMCALL_H
|
||||
#include "types.h"
|
||||
void Jac_WaveDirectorySet(char*);
|
||||
#include "jaudio_NES/heapctrl.h"
|
||||
|
||||
#endif
|
||||
void Jac_WaveDirectorySet(char*);
|
||||
void Jac_RegisterARAMCallback(u32 (*callback)(char*, u32, u32, u32*, JAHEAP*));
|
||||
void Init_AramMotherHeap();
|
||||
JAHEAP* Get_AramMotherHeap();
|
||||
|
||||
#endif
|
||||
|
||||
@@ -9,12 +9,12 @@
|
||||
#define DUMMYROM_ARAM_TO_DRAM 1
|
||||
|
||||
extern u8* JAC_ARAM_DMA_BUFFER_TOP;
|
||||
ALHeap aram_hp; /* placed in common bss */
|
||||
extern ALHeap aram_hp; /* placed in common bss */
|
||||
|
||||
extern u32 GetNeos_FileTop(void);
|
||||
extern u32 GetNeosRomTop(void);
|
||||
extern u32 GetNeosRom_PreLoaded(void);
|
||||
extern void SetPreCopy_NeosRom(u8* load_addr, u32 load_size, BOOL cut_flag);
|
||||
extern u32 SetPreCopy_NeosRom(u8* load_addr, u32 load_size, BOOL cut_flag);
|
||||
extern BOOL ARAMStartDMAmesg(u32 dir, u32 dramAddr, u32 aramAddr, u32 size, s32 unused, OSMesgQueue* mq);
|
||||
extern void Jac_SetAudioARAMSize(u32 size);
|
||||
extern void ARAllocFull(u32* outSize);
|
||||
|
||||
@@ -20,7 +20,7 @@ extern s32 DVDT_DRAMtoARAM_Main(void* arg);
|
||||
extern s32 DVDT_ARAMtoDRAM(u32 owner, u32 dst, u32 src, u32 length, u32* status, Jac_DVDCallback callback);
|
||||
extern s32 DVDT_DRAMtoARAM(u32 owner, u32 dst, u32 src, u32 length, u32* status, Jac_DVDCallback callback);
|
||||
extern s32 DVDT_CheckFile(char* file);
|
||||
extern void DVDT_CheckPass(u32 owner, u32* status, Jac_DVDCallback callback);
|
||||
extern s32 DVDT_CheckPass(u32 owner, u32* status, Jac_DVDCallback callback);
|
||||
extern s32 Jac_CheckFile(char* file);
|
||||
extern void Jac_RegisterDVDErrorCallback(ErrorCallback callback);
|
||||
extern s32 Jac_RegisterFastOpen(char* file);
|
||||
|
||||
+37
-19
@@ -2,14 +2,21 @@
|
||||
#define GAME64_H
|
||||
|
||||
#include "types.h"
|
||||
#include "libc/stdarg.h"
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
#endif
|
||||
|
||||
f32 distance2vol4KITEKI(f32);
|
||||
f32 distance2vol4MD(f32);
|
||||
|
||||
extern void Na_InitAudio(void (*fatal_callback)(), u8* load_addr, size_t load_size, u8* bootsound,
|
||||
size_t bootsound_size, BOOL cut_flag);
|
||||
extern void Na_GameFrame();
|
||||
extern void Na_Reset();
|
||||
extern void Na_SoftReset();
|
||||
extern void Na_Tenki(u8);
|
||||
extern void Na_BgmStart(u8);
|
||||
extern void Na_BgmCrossfadeStart(u8);
|
||||
extern void Na_BgmStop(u16);
|
||||
@@ -18,49 +25,60 @@ extern void Na_PlyWalkSe(u16, u16, f32);
|
||||
extern void Na_PlyWalkSeRoom(u8, u16, f32);
|
||||
extern void Na_NpcWalkSe(u16, u16, f32);
|
||||
extern void Na_NpcWalkSeRoom(u8, u16, f32);
|
||||
extern void Na_PlayerStatusLevel(f32, int);
|
||||
// #ifdef BUGFIXES
|
||||
extern void Na_PlayerStatusLevel(u8, f32);
|
||||
// #endif // BUGFIXES
|
||||
extern void Na_VoiceSe(u8, u8, u8, s16, u8, u8);
|
||||
extern void Na_MessageStatus(u8);
|
||||
extern void Na_MessageSpeed(u8);
|
||||
extern u8 Na_MessageSpeedGet();
|
||||
extern void Na_SysLevStart(u8);
|
||||
extern void Na_SysLevStop(u8);
|
||||
extern void Na_OngenPos(u32, u8, u16, f32);
|
||||
extern void Na_OngenTrgStartSpeed(u16, u16, f32, f32);
|
||||
extern void Na_OngenTrgStart(u16, u16, f32);
|
||||
extern void Na_SetOutMode(u8);
|
||||
extern void Na_SetVoiceMode(u8);
|
||||
extern void Na_FloorTrgStart(u8, u16, f32);
|
||||
extern void Na_SysLevStart(u8);
|
||||
extern void Na_SysLevStop(u8);
|
||||
extern void Na_Pause(u8);
|
||||
extern void Na_RhythmPos(u32, u8, u16, f32);
|
||||
extern void Na_SpecChange(int);
|
||||
extern void Na_MDPlayerPos(u16, u16, u16, int, f32);
|
||||
extern void Na_MDPlayerPos(u16 a, f32 e, u16 b, u16 c, u32 d);
|
||||
extern void Na_BGMVolume(f32, u16);
|
||||
extern void Na_SubGameStart();
|
||||
extern void Na_SubGameEnd();
|
||||
extern void Na_RestartPrepare();
|
||||
extern u8 Na_CheckRestartReady();
|
||||
extern void Na_Restart();
|
||||
extern u8 Na_SubGameOK();
|
||||
extern void Na_Tenki(u8);
|
||||
extern void Na_KishaStatusTrg(u8);
|
||||
extern void Na_KishaStatusLevel(f32 speed, u32 ongenNum1, u16 angle1, f32 distance1, u32 ongenNum2, u16 angle2,
|
||||
f32 distance2);
|
||||
extern void Na_TTKK_ARM(u8);
|
||||
extern void Na_OngenTrgStartSpeed(u16, u16, f32, f32);
|
||||
extern void Na_BgmMuteClear();
|
||||
extern u8 Na_BgmFadeoutCheck();
|
||||
extern u8 Na_SeFadeoutCheck();
|
||||
extern void Na_BgmTrOn(u8 a);
|
||||
extern void Na_BgmTrOff(u8 a);
|
||||
extern void Na_SubGameStart();
|
||||
extern void Na_SubGameEnd();
|
||||
extern void Na_SceneMode(u8);
|
||||
extern u8 Na_RoomIncectPos(int, u8, u16, f32);
|
||||
extern void Na_FurnitureInstPos(int, u16, f32);
|
||||
extern void Na_TrgSeEcho(u8);
|
||||
extern void Na_LevSeEcho(u8);
|
||||
extern void Na_BgmFadeoutCheck();
|
||||
extern void Na_SeFadeoutCheck();
|
||||
extern void Na_BGMFilter(u8);
|
||||
extern void Na_RoomType(u8);
|
||||
extern u8 Na_CheckNeosBoot();
|
||||
extern void Na_Museum(u8);
|
||||
extern void Na_SoftReset();
|
||||
extern void Na_SceneMode(u8);
|
||||
extern u8 Na_RoomIncectPos(int, u16, u16, f32);
|
||||
extern void Na_FurnitureInstPos(int, u16, f32);
|
||||
extern int Na_GetSoundFrameCounter();
|
||||
extern void Na_kazagurumaLevel(f32);
|
||||
extern u8 Na_CheckNeosBoot();
|
||||
extern void Na_RestartPrepare();
|
||||
extern u8 Na_CheckRestartReady();
|
||||
extern void Na_Restart();
|
||||
extern void Na_Reset();
|
||||
|
||||
// __declspec(weak) extern int OSAttention(const char* msg, ...) {
|
||||
// va_list marker;
|
||||
|
||||
// va_start(marker, msg);
|
||||
|
||||
// return vprintf(msg, marker);
|
||||
// }
|
||||
|
||||
extern u8 sou_now_bgm_handle;
|
||||
extern u8 sou_chime_status;
|
||||
|
||||
@@ -5,7 +5,49 @@
|
||||
#include "jaudio_NES/game64.h"
|
||||
|
||||
/* C++ linkage */
|
||||
extern void Sou_lev_ongen_data_struct_clear();
|
||||
extern void Sou_BgmFadeoutEndCheck();
|
||||
extern u8 Sou_BgmTenkiConv(u8);
|
||||
extern void Sou_GroupControl(u8, u8, f32);
|
||||
extern void Sou_GroupControl_MD(u8, u8, f32);
|
||||
extern u8 pan_kochou(u8, f32);
|
||||
extern u8 angle2pan(u16 angle, f32 dist);
|
||||
extern f32 distance2vol(f32 distance);
|
||||
|
||||
extern void Sou_VoiceStart(u8, u8);
|
||||
extern void Sou_TrgStart(u16, f32, f32, f32, u8, u8, f32);
|
||||
extern void Sou_SpecialRoutine00();
|
||||
extern void Sou_SpecialRoutine02();
|
||||
extern void Sou_SpecialRoutine03();
|
||||
extern void Sou_TrgEndCheck();
|
||||
extern void Sou_LevStart(u8, u8);
|
||||
extern void Sou_LevStop(u8, u8);
|
||||
extern void Sou_TrgMake(u8);
|
||||
extern void Sou_VoiceMake(u8);
|
||||
extern void Sou_LevMake(u8);
|
||||
extern void Sou_ChimeMake();
|
||||
extern void Sou_LevSet(u8);
|
||||
extern void Sou_Insect_Lev_Cont();
|
||||
extern void Sou_Ongen_Lev_Cont();
|
||||
extern void Sou_Ongen_Lev_Prog(u8);
|
||||
extern void Sou_BgmStart(u8, u16);
|
||||
extern void Sou_BGMVolMove();
|
||||
extern void Sou_Na_BgmStart(u8);
|
||||
extern void Sou_Na_BgmStop(u16);
|
||||
extern void Sou_SpecialRoutine06();
|
||||
extern void Sou_SpecialRoutine07();
|
||||
extern void Sou_SeFadeoutRoutine();
|
||||
extern void Sou_SeFadeinRoutine();
|
||||
extern void Sou_SeVolumeReset();
|
||||
extern void Sou_SeTrFadeout(u8, u16);
|
||||
extern void Sou_SeFadeout(u16);
|
||||
extern void Sou_SpecialRoutine08();
|
||||
extern void Sou_SpecialRoutine10();
|
||||
extern void Sou_InitAudio();
|
||||
extern void Sou_DVD_Error(char*, u8*);
|
||||
extern void Sou_WalkSe(u16, u16, f32, u8, f32);
|
||||
extern u8 Sou_TanboinHenkan(u8, u8);
|
||||
extern u8 Sou_ChouboinHenkan(u8, u8);
|
||||
extern u8 Sou_ConnectCheck(u8, u8, u8);
|
||||
extern u8 Sou_BoinShiinCheck(u8);
|
||||
extern void Sou_PosTrgStart(u16, u16, f32, u8, f32);
|
||||
#endif
|
||||
|
||||
@@ -0,0 +1,13 @@
|
||||
#ifndef HEAPCTRL_H
|
||||
#define HEAPCTRL_H
|
||||
#include "types.h"
|
||||
|
||||
typedef struct jaheap_ {
|
||||
void* _00;
|
||||
void* _04;
|
||||
void* _08;
|
||||
} JAHEAP;
|
||||
|
||||
JAHEAP* Jac_AllocHeap(jaheap_*, jaheap_*, unsigned long);
|
||||
|
||||
#endif
|
||||
@@ -15,7 +15,7 @@ extern s16 Na_MelodyGetSubTrackNum(s16 inst);
|
||||
extern void Na_FurnitureInst(u32 id, u8 inst, u8* melody, u16 angle, f32 dist);
|
||||
extern void Na_MelodyVoice(s16 voice);
|
||||
|
||||
extern u32 na_melody_id_hist[];
|
||||
extern u32 na_melody_id_hist[2];
|
||||
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
|
||||
@@ -9,10 +9,11 @@ extern "C" {
|
||||
typedef struct seqp seqp; // TODO
|
||||
|
||||
void Jaq_Reset(void);
|
||||
void Jaq_SetSeqData(seqp* seqp, u8* param_2, u32 param_3, int param_4);
|
||||
s32 Jaq_SetSeqData(seqp* seqp, u8* param_2, u32 param_3, int param_4);
|
||||
s32 Jaq_StartSeq(u8);
|
||||
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
#endif
|
||||
|
||||
#endif
|
||||
#endif
|
||||
|
||||
@@ -0,0 +1,8 @@
|
||||
#ifndef WAVEREAD_H
|
||||
#define WAVEREAD_H
|
||||
#include "types.h"
|
||||
|
||||
int WaveScene_Set(u32, u32);
|
||||
void Wavegroup_Init();
|
||||
int Wavegroup_Regist(void*, u32);
|
||||
#endif
|
||||
@@ -3,6 +3,10 @@
|
||||
|
||||
#include <stdarg.h>
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
#endif
|
||||
|
||||
typedef struct
|
||||
{
|
||||
int unk0;
|
||||
@@ -31,4 +35,8 @@ int sprintf(char *s, const char *format, ...);
|
||||
int vprintf(const char *format, va_list arg);
|
||||
int vsprintf(char *s, const char *format, va_list arg);
|
||||
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
#endif
|
||||
|
||||
#endif
|
||||
|
||||
Reference in New Issue
Block a user