FF7/PSX/Sound/Code Map

From Final Fantasy Inside
< FF7
Revision as of 15:46, 31 May 2020 by Loveemu (talk | contribs) (Separate PsyQ library functions)
Jump to navigation Jump to search

Code Map

Introduces functions, variables and data related to sound, contained in SCUS_941.63 (game program of US version). Note that all symbol names below are for convenience only.

PSX Address Declaration Description
0x80029818 void AkaoLoadInstrSet(const void *sampleSet, const void *instrSet) Load additional instrument set

sampleSet: corresponding to SOUND/INSTR2.ALL

instrSet: corresponding to SOUND/INSTR2.DAT

0x8002988C void AkaoInit(const void *sampleSet, const void *instrSet) Initialize sound driver and load initial instruments

sampleSet: corresponding to SOUND/INSTR.ALL

instrSet: corresponding to SOUND/INSTR.DAT

0x8002DA7C int AkaoLoadSeq(void) Load and start playing new AKAO sequence

Parameters are given from a global structure

Returns: 0 for success, 1 for already loaded, and -1 for invalid signature

0x80030234 int _AkaoCallback(void) Callback event for sound, registered by OpenEvent BIOS function
0x80030E7C void _AkaoDispatchVoice(struct MusicPlayerTrack *track, void *a1, int a2) Dispatch voice opcodes until the next note or end of track
0x80049948 const unsigned char VOICE_OPCODE_LENGTHS[0x60] Length table for voice opcodes 0xa0-0xff

0 for end of track and branches

0x80049AA8 void (* const VOICE_OPCODES[0x60])(struct MusicPlayerTrack *, void *, int) Address table for voice opcodes 0xa0-0xff
0x80049C44 const unsigned short VOLUME_TABLE_L[256] See Opcode 0xAA for volume balance calculation
0x80049E44 const unsigned short VOLUME_TABLE_R[256] See Opcode 0xAA for volume balance calculation
0x80083580 unsigned char g_AkaoSeqData[] RAM area to load AKAO sequence data

Psy-Q Library Functions

PSX Address Declaration Description
0x80036298 void SpuInit(void) Initialize SPU
0x8003D0C0 int ResetCallback(void) Initialize all system callbacks

Structures

struct MusicPlayerTrack {
};