Difference between revisions of "FF7/PSX/Sound/Code Map"

From Final Fantasy Inside
< FF7
Jump to navigation Jump to search
(Add callback event)
m (Separate PsyQ library functions)
Line 39: Line 39:
 
|void _AkaoDispatchVoice(struct MusicPlayerTrack *track, void *a1, int a2)
 
|void _AkaoDispatchVoice(struct MusicPlayerTrack *track, void *a1, int a2)
 
|Dispatch voice opcodes until the next note or end of track
 
|Dispatch voice opcodes until the next note or end of track
|-
 
|0x80036298
 
|void SpuInit(void)
 
|Initialize SPU (PsyQ library function)
 
|-
 
|0x8003D0C0
 
|int ResetCallback()
 
|Initialize all system callbacks (PsyQ library function)
 
 
|-
 
|-
 
|0x80049948
 
|0x80049948
Line 69: Line 61:
 
|unsigned char g_AkaoSeqData[]
 
|unsigned char g_AkaoSeqData[]
 
|RAM area to load AKAO sequence data
 
|RAM area to load AKAO sequence data
 +
|}
 +
 +
== Psy-Q Library Functions ==
 +
 +
{| class="wikitable"
 +
! PSX Address
 +
! Declaration
 +
! Description
 +
|-
 +
|0x80036298
 +
|void SpuInit(void)
 +
|Initialize SPU
 +
|-
 +
|0x8003D0C0
 +
|int ResetCallback(void)
 +
|Initialize all system callbacks
 
|}
 
|}
  

Revision as of 15:46, 31 May 2020

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 {
};