#include <cafe.h>
#include <cafe/syn.h>

void SYNInitSynth(
                 SYNSYNTH *synth,
                 u8       *wavetable,
                 u8       *samples,
                 u8       *zerobuffer,
                 u32      priorityVoiceAlloc,
                 u32      priorityNoteOn,
                 u32      priorityNoteRelease


synth Pointer to the user-allocated SYNSYNTH data structure.
wavetable Pointer to contents of the WT file in memory.
samples Pointer to contents of the PCM file in memory.
zerobuffer Pointer to the zero buffer in memory. (Not used. Specify NULL.)
priorityVoiceAlloc Priority for allocating AX voices that handle MIDI notes in events.
Maximum = 31
Minimum = 1
priorityNoteOn Priority at which to set voices after successful allocation.
Maximum = 31
Minimum = 1
priorityNoteRelease Priority at which to set voices after a MIDI key-off event.
Maximum = 31
Minimum = 1

Return Values



SYNInitSynth initializes a user-allocated instance of the synthesizer. Any number of synthesizer instances may be used. All running synthesizers will contend for the same pool of AX voices at runtime. SYNInitSynth must be called prior to any other function calls for the specific instance of the synthesizer.

Do Not Call From


See Also


Revision History

2013/05/08 Automated cleanup pass.
2006/11/21 Added an explanation to the arguments about the zero buffer no longer being necessary.
2006/03/01 Initial version.