14 enum libsnd2_ss_tick_enum
26 enum libsnd2_ss_play_enum
33 enum libsnd2_ss_s_enum
39 enum libsnd2_ss_mix_enum
45 enum libsnd2_ss_serial_enum
51 enum libsnd2_ss_mute_enum
57 enum libsnd2_wait_enum
64 enum libsnd2_ss_rev_type_enum
66 SS_REV_TYPE_CHECK = -1,
80 enum libsnd2_ss_skip_enum
89 #define SS_SEQ_TABSIZ 0xb0
91 #define SND_VOLL (1 << 0)
92 #define SND_VOLR (1 << 1)
93 #define SND_ADSR1 (1 << 2)
94 #define SND_ADSR2 (1 << 3)
95 #define SND_ADDR (1 << 4)
96 #define SND_PITCH (1 << 5)
98 enum libsnd2_control_enum
116 enum libsnd2_ccentry_enum
155 unsigned int reserved1;
167 unsigned int m_fake_prog_idx;
168 u16 m_vag_spu_addr_hi;
169 u16 m_vag_spu_addr_lo;
232 typedef void (*SsMarkCallbackProc)(s16 sep_no, s16 seq_no, s16 control_value);
236 void (*noteon)(s16 sep_no, s16 seq_no, u8 midi_byte_next, u8 midi_byte);
237 void (*programchange)(s16 sep_no, s16 seq_no, u8 midi_byte);
238 void (*pitchbend)(s16 sep_no, s16 seq_no);
239 void (*metaevent)(s16 sep_no, s16 seq_no, u8 midi_byte);
240 void (*control[CC_MAX])(s16 sep_no, s16 seq_no, u8 midi_byte);
241 void (*ccentry[DE_MAX])(s16 vab_id, s16 prog, s16 tone,
VagAtr vag_attr, s16 fn_idx, u8 attribute_value);
244 extern void _SsContBankChange(s16 sep_no, s16 seq_no, u8 control_value);
245 extern void _SsContDataEntry(s16 sep_no, s16 seq_no, u8 control_value);
246 extern void _SsContMainVol(s16 sep_no, s16 seq_no, u8 control_value);
247 extern void _SsContPanpot(s16 sep_no, s16 seq_no, u8 control_value);
248 extern void _SsContExpression(s16 sep_no, s16 seq_no, u8 control_value);
249 extern void _SsContDamper(s16 sep_no, s16 seq_no, u8 control_value);
250 extern void _SsContExternal(s16 sep_no, s16 seq_no, u8 control_value);
251 extern void _SsContNrpn1(s16 sep_no, s16 seq_no, u8 control_value);
252 extern void _SsContNrpn2(s16 sep_no, s16 seq_no, u8 control_value);
253 extern void _SsContRpn1(s16 sep_no, s16 seq_no, u8 control_value);
254 extern void _SsContRpn2(s16 sep_no, s16 seq_no, u8 control_value);
255 extern void _SsContResetAll(s16 sep_no, s16 seq_no, u8 control_value);
256 extern void _SsSetNrpnVabAttr0(s16 vab_id, s16 prog, s16 tone,
VagAtr vag_attr, s16 fn_idx, u8 attribute_value);
257 extern void _SsSetNrpnVabAttr1(s16 vab_id, s16 prog, s16 tone,
VagAtr vag_attr, s16 fn_idx, u8 attribute_value);
258 extern void _SsSetNrpnVabAttr2(s16 vab_id, s16 prog, s16 tone,
VagAtr vag_attr, s16 fn_idx, u8 attribute_value);
259 extern void _SsSetNrpnVabAttr3(s16 vab_id, s16 prog, s16 tone,
VagAtr vag_attr, s16 fn_idx, u8 attribute_value);
260 extern void _SsSetNrpnVabAttr4(s16 vab_id, s16 prog, s16 tone,
VagAtr vag_attr, s16 fn_idx, u8 attribute_value);
261 extern void _SsSetNrpnVabAttr5(s16 vab_id, s16 prog, s16 tone,
VagAtr vag_attr, s16 fn_idx, u8 attribute_value);
262 extern void _SsSetNrpnVabAttr6(s16 vab_id, s16 prog, s16 tone,
VagAtr vag_attr, s16 fn_idx, u8 attribute_value);
263 extern void _SsSetNrpnVabAttr7(s16 vab_id, s16 prog, s16 tone,
VagAtr vag_attr, s16 fn_idx, u8 attribute_value);
264 extern void _SsSetNrpnVabAttr8(s16 vab_id, s16 prog, s16 tone,
VagAtr vag_attr, s16 fn_idx, u8 attribute_value);
265 extern void _SsSetNrpnVabAttr9(s16 vab_id, s16 prog, s16 tone,
VagAtr vag_attr, s16 fn_idx, u8 attribute_value);
266 extern void _SsSetNrpnVabAttr10(s16 vab_id, s16 prog, s16 tone,
VagAtr vag_attr, s16 fn_idx, u8 attribute_value);
267 extern void _SsSetNrpnVabAttr11(s16 vab_id, s16 prog, s16 tone,
VagAtr vag_attr, s16 fn_idx, u8 attribute_value);
268 extern void _SsSetNrpnVabAttr12(s16 vab_id, s16 prog, s16 tone,
VagAtr vag_attr, s16 fn_idx, u8 attribute_value);
269 extern void _SsSetNrpnVabAttr13(s16 vab_id, s16 prog, s16 tone,
VagAtr vag_attr, s16 fn_idx, u8 attribute_value);
270 extern void _SsSetNrpnVabAttr14(s16 vab_id, s16 prog, s16 tone,
VagAtr vag_attr, s16 fn_idx, u8 attribute_value);
271 extern void _SsSetNrpnVabAttr15(s16 vab_id, s16 prog, s16 tone,
VagAtr vag_attr, s16 fn_idx, u8 attribute_value);
272 extern void _SsSetNrpnVabAttr16(s16 vab_id, s16 prog, s16 tone,
VagAtr vag_attr, s16 fn_idx, u8 attribute_value);
273 extern void _SsSetNrpnVabAttr17(s16 vab_id, s16 prog, s16 tone,
VagAtr vag_attr, s16 fn_idx, u8 attribute_value);
274 extern void _SsSetNrpnVabAttr18(s16 vab_id, s16 prog, s16 tone,
VagAtr vag_attr, s16 fn_idx, u8 attribute_value);
275 extern void _SsSetNrpnVabAttr19(s16 vab_id, s16 prog, s16 tone,
VagAtr vag_attr, s16 fn_idx, u8 attribute_value);
276 extern void _SsSetPitchBend(s16 sep_no, s16 seq_no);
277 extern void _SsSetControlChange(s16 sep_no, s16 seq_no, u8 control_value);
278 extern void _SsGetMetaEvent(s16 sep_no, s16 seq_no, u8 meta_event);
279 extern void _SsNoteOn(s16 sep_no, s16 seq_no, u8 note, u8 vollr);
280 extern void _SsSetProgramChange(s16 sep_no, s16 seq_no, u8 prog);
281 extern void SsSeqSetAccelerando(s16 seq_no,
int tempo,
int v_time);
282 extern void SsSepSetAccelerando(s16 seq_no, s16 sep_no,
int tempo,
int v_time);
283 extern void SsSeqCalledTbyT(
void);
284 extern void SsSeqClose(s16 seq_sep_no);
285 extern void SsSepClose(s16 seq_sep_no);
286 extern void SsChannelMute(s16 sep_no, s16 seq_no,
int channels);
287 extern int SsGetChannelMute(s16 sep_no, s16 seq_no);
288 extern void SsSeqSetCrescendo(s16 sep_no, s16 vol,
int v_time);
289 extern void SsSepSetCrescendo(s16 sep_no, s16 seq_no, s16 vol,
int v_time);
290 extern void SsSeqSetDecrescendo(s16 sep_no, s16 vol,
int v_time);
291 extern void SsSepSetDecrescendo(s16 sep_no, s16 seq_no, s16 vol,
int v_time);
292 extern void SsEnd(
void);
293 extern char SsGetMute(
void);
295 extern s16 SsGetNck(
void);
297 extern char SsGetSerialAttr(
char s_num,
char attr);
298 extern void SsGetSerialVol(
char s_num,
SndVolume *s_vol);
299 extern void SsInit(
void);
300 extern void SsPitchCorrect(s16 pitch_correct);
301 extern void SsInitHot(
void);
302 extern void SsSetLoop(s16 sep_no, s16 seq_no, s16 l_count);
303 extern s16 SsIsEos(s16 sep_no, s16 seq_no);
304 extern void SsSetMarkCallback(s16 sep_no, s16 seq_no, SsMarkCallbackProc proc);
305 extern void SsSetNext(s16 sep_no1, s16 seq_no1, s16 sep_no2, s16 seq_no2);
306 extern void SsSeqSetNext(s16 sep_no1, s16 sep_no2);
307 extern void SsSetNoiseOff(
void);
308 extern void SsSetNoiseOn(s16 voll, s16 volr);
309 extern s16 SsSepOpen(
unsigned int *addr, s16 vab_id, s16 seq_cnt);
310 extern s16 SsSeqOpen(
unsigned int *addr, s16 vab_id);
311 extern s16 SsSepOpenJ(
unsigned int *addr, s16 vab_id, s16 seq_cnt);
312 extern s16 SsSeqOpenJ(
unsigned int *addr, s16 vab_id);
313 extern void SsSeqPause(s16 sep_no);
314 extern void SsSepPause(s16 sep_no, s16 seq_no);
315 extern void SsSeqPlay(s16 sep_no,
char play_mode, s16 l_count);
316 extern void SsSepPlay(s16 sep_no, s16 seq_no,
char play_mode, s16 l_count);
317 extern void SsPlayBack(s16 sep_no, s16 seq_no, s16 l_count);
318 extern void SsQuit(
void);
319 extern void SsSeqReplay(s16 sep_no);
320 extern void SsSepReplay(s16 sep_no, s16 seq_no);
321 extern void SsSeqSetRitardando(s16 sep_no,
int tempo,
int v_time);
322 extern void SsSepSetRitardando(s16 sep_no, s16 seq_no,
int tempo,
int v_time);
323 extern int SsSeqSkip(s16 sep_no, s16 seq_no,
char unit, s16
count);
324 extern int SsSetCurrentPoint(s16 sep_no, s16 seq_no, u8 *point);
325 extern void SsSeqPlayPtoP(s16 sep_no, s16 seq_no, u8 *start_point, u8 *end_point,
char play_mode, s16 l_count);
326 extern void SsSetSerialAttr(
char s_num,
char attr,
char mode);
327 extern void SsSetMute(
char mode);
328 extern void SsSetMVol(s16 voll, s16 volr);
329 extern void SsSetNck(s16 n_clock);
330 extern void SsSetRVol(s16 voll, s16 volr);
331 extern void SsStart(
void);
332 extern void SsStart2(
void);
333 extern void SsSeqStop(s16 sep_no);
334 extern void SsSepStop(s16 sep_no, s16 seq_no);
335 extern void SsSetSerialVol(
char s_num, s16 voll, s16 volr);
336 extern void SsSetTableSize(
char *table, s16 s_max, s16 t_max);
337 extern void SsSetTempo(s16 sep_no, s16 seq_no, s16 tempo);
338 extern void SsSetTickMode(
int tick_mode);
339 extern void *SsSetTickCallback(
void (*cb)(
void));
340 extern int SsVoKeyOff(
int vab_pro,
int pitch);
341 extern int SsVoKeyOn(
int vab_pro,
int pitch, u16 voll, u16 volr);
342 extern void SsSeqSetVol(s16 sep_no, s16 voll, s16 volr);
343 extern void SsSepSetVol(s16 sep_no, s16 seq_no, s16 voll, s16 volr);
344 extern void SsSeqGetVol(s16 sep_no, s16 seq_no, s16 *voll, s16 *volr);
345 extern void dmy_nothing1(s16 seq_no, s16 sep_no, u8 note, u8 vollr);
346 extern void dmy_SsNoteOn(s16 sep_no, s16 seq_no, u8 note, u8 vollr);
347 extern void dmy_SsSetProgramChange(s16 sep_no, s16 seq_no, u8 prog);
348 extern void dmy_SsGetMetaEvent(s16 sep_no, s16 seq_no, u8 meta_event);
349 extern void dmy_SsSetPitchBend(s16 sep_no, s16 seq_no);
350 extern void dmy_SsSetControlChange(s16 sep_no, s16 seq_no, u8 control_value);
351 extern void dmy_SsContBankChange(s16 sep_no, s16 seq_no, u8 control_value);
352 extern void dmy_SsContDataEntry(s16 sep_no, s16 seq_no, u8 control_value);
353 extern void dmy_SsContMainVol(s16 sep_no, s16 seq_no, u8 control_value);
354 extern void dmy_SsContPanpot(s16 sep_no, s16 seq_no, u8 control_value);
355 extern void dmy_SsContExpression(s16 sep_no, s16 seq_no, u8 control_value);
356 extern void dmy_SsContDamper(s16 sep_no, s16 seq_no, u8 control_value);
357 extern void dmy_SsContExternal(s16 sep_no, s16 seq_no, u8 control_value);
358 extern void dmy_SsContNrpn1(s16 sep_no, s16 seq_no, u8 control_value);
359 extern void dmy_SsContNrpn2(s16 sep_no, s16 seq_no, u8 control_value);
360 extern void dmy_SsContRpn1(s16 sep_no, s16 seq_no, u8 control_value);
361 extern void dmy_SsContRpn2(s16 sep_no, s16 seq_no, u8 control_value);
362 extern void dmy_SsContResetAll(s16 sep_no, s16 seq_no, u8 control_value);
363 extern void dmy_SsSetNrpnVabAttr0(s16 vab_id, s16 prog, s16 tone,
VagAtr vag_attr, s16 fn_idx, u8 attribute_value);
364 extern void dmy_SsSetNrpnVabAttr1(s16 vab_id, s16 prog, s16 tone,
VagAtr vag_attr, s16 fn_idx, u8 attribute_value);
365 extern void dmy_SsSetNrpnVabAttr2(s16 vab_id, s16 prog, s16 tone,
VagAtr vag_attr, s16 fn_idx, u8 attribute_value);
366 extern void dmy_SsSetNrpnVabAttr3(s16 vab_id, s16 prog, s16 tone,
VagAtr vag_attr, s16 fn_idx, u8 attribute_value);
367 extern void dmy_SsSetNrpnVabAttr4(s16 vab_id, s16 prog, s16 tone,
VagAtr vag_attr, s16 fn_idx, u8 attribute_value);
368 extern void dmy_SsSetNrpnVabAttr5(s16 vab_id, s16 prog, s16 tone,
VagAtr vag_attr, s16 fn_idx, u8 attribute_value);
369 extern void dmy_SsSetNrpnVabAttr6(s16 vab_id, s16 prog, s16 tone,
VagAtr vag_attr, s16 fn_idx, u8 attribute_value);
370 extern void dmy_SsSetNrpnVabAttr7(s16 vab_id, s16 prog, s16 tone,
VagAtr vag_attr, s16 fn_idx, u8 attribute_value);
371 extern void dmy_SsSetNrpnVabAttr8(s16 vab_id, s16 prog, s16 tone,
VagAtr vag_attr, s16 fn_idx, u8 attribute_value);
372 extern void dmy_SsSetNrpnVabAttr9(s16 vab_id, s16 prog, s16 tone,
VagAtr vag_attr, s16 fn_idx, u8 attribute_value);
373 extern void dmy_SsSetNrpnVabAttr10(s16 vab_id, s16 prog, s16 tone,
VagAtr vag_attr, s16 fn_idx, u8 attribute_value);
374 extern void dmy_SsSetNrpnVabAttr11(s16 vab_id, s16 prog, s16 tone,
VagAtr vag_attr, s16 fn_idx, u8 attribute_value);
375 extern void dmy_SsSetNrpnVabAttr12(s16 vab_id, s16 prog, s16 tone,
VagAtr vag_attr, s16 fn_idx, u8 attribute_value);
376 extern void dmy_SsSetNrpnVabAttr13(s16 vab_id, s16 prog, s16 tone,
VagAtr vag_attr, s16 fn_idx, u8 attribute_value);
377 extern void dmy_SsSetNrpnVabAttr14(s16 vab_id, s16 prog, s16 tone,
VagAtr vag_attr, s16 fn_idx, u8 attribute_value);
378 extern void dmy_SsSetNrpnVabAttr15(s16 vab_id, s16 prog, s16 tone,
VagAtr vag_attr, s16 fn_idx, u8 attribute_value);
379 extern void dmy_SsSetNrpnVabAttr16(s16 vab_id, s16 prog, s16 tone,
VagAtr vag_attr, s16 fn_idx, u8 attribute_value);
380 extern void dmy_SsSetNrpnVabAttr17(s16 vab_id, s16 prog, s16 tone,
VagAtr vag_attr, s16 fn_idx, u8 attribute_value);
381 extern void dmy_SsSetNrpnVabAttr18(s16 vab_id, s16 prog, s16 tone,
VagAtr vag_attr, s16 fn_idx, u8 attribute_value);
382 extern void dmy_SsSetNrpnVabAttr19(s16 vab_id, s16 prog, s16 tone,
VagAtr vag_attr, s16 fn_idx, u8 attribute_value);
383 extern u8 *SsGetCurrentPoint(s16 sep_no, s16 seq_no);
384 extern void SsSetVoiceMask(
unsigned int s_voice);
385 extern unsigned int SsGetVoiceMask(
void);
386 extern void SsUtAllKeyOff(s16 mode);
387 extern s16 SsUtAutoPan(s16 vc, s16 start_pan, s16 end_pan, s16 delta_time);
388 extern s16 SsUtAutoVol(s16 vc, s16 start_vol, s16 end_vol, s16 delta_time);
389 extern s16 SsUtChangeADSR(s16 vc, s16 vab_id, s16 prog, s16 old_note, u16 adsr1, u16 adsr2);
390 extern s16 SsUtChangePitch(s16 vc, s16 vab_id, s16 prog, s16 old_note, s16 old_fine, s16 new_note, s16 new_fine);
391 extern void SsUtFlush(
void);
392 extern s16 SsUtGetProgAtr(s16 vab_id, s16 prog,
ProgAtr *prog_attr_ptr);
393 extern s16 SsUtGetVagAtr(s16 vab_id, s16 prog, s16 tone,
VagAtr *vag_attr_ptr);
394 extern int SsUtGetVagAddr(s16 vab_id, s16 vag_id);
395 extern unsigned int SsUtGetVagAddrFromTone(s16 vab_id, s16 prog, s16 tone);
396 extern unsigned int SsUtGetVBaddrInSB(s16 vab_id);
397 extern s16 SsUtGetVabHdr(s16 vab_id,
VabHdr *vab_hdr_ptr);
398 extern s16 SsUtKeyOn(s16 vab_id, s16 prog, s16 tone, s16 note, s16 fine, s16 voll, s16 volr);
399 extern s16 SsUtKeyOff(s16 vc, s16 vab_id, s16 prog, s16 tone, s16 note);
400 extern s16 SsUtKeyOnV(s16 vc, s16 vab_id, s16 prog, s16 tone, s16 note, s16 fine, s16 voll, s16 volr);
401 extern s16 SsUtKeyOffV(s16 vc);
402 extern s16 SsUtPitchBend(s16 vc, s16 vab_id, s16 prog, s16 note, s16 pbend);
403 extern void SsUtSetReverbDelay(s16 delay);
404 extern void SsUtSetReverbDepth(s16 ldepth, s16 rdepth);
405 extern s16 SsUtSetReverbType(s16 type);
406 extern s16 SsUtGetReverbType(
void);
407 extern void SsUtSetReverbFeedback(s16 feedback);
408 extern void SsUtReverbOff(
void);
409 extern void SsUtReverbOn(
void);
410 extern s16 SsUtSetProgAtr(s16 vab_id, s16 prog,
const ProgAtr *prog_attr_ptr);
411 extern s16 SsUtSetVagAtr(s16 vab_id, s16 prog, s16 tone,
const VagAtr *vag_attr_ptr);
412 extern s16 SsUtSetVabHdr(s16 vab_id,
const VabHdr *vab_hdr_ptr);
413 extern s16 SsUtGetDetVVol(s16 vc, s16 *detvoll, s16 *detvolr);
414 extern s16 SsUtSetDetVVol(s16 vc, s16 detvoll, s16 detvolr);
415 extern s16 SsUtGetVVol(s16 vc, s16 *voll, s16 *volr);
416 extern s16 SsUtSetVVol(s16 vc, s16 voll, s16 volr);
417 extern u16 SsPitchFromNote(s16 note, s16 fine, u8 center, u8 shift);
418 extern void SsSetAutoKeyOffMode(s16 mode);
419 extern void SsSetMono(
void);
420 extern void SsSetStereo(
void);
421 extern char SsSetReservedVoice(
char voices);
422 extern void SsVabClose(s16 vab_id);
423 extern s16 SsVabFakeBody(s16 vab_id);
424 extern s16 SsVabOpenHeadSticky(u8 *addr, s16 vab_id,
unsigned int sbaddr);
425 extern s16 SsVabFakeHead(u8 *addr, s16 vab_id,
unsigned int sbaddr);
426 extern s16 SsVabOpenHead(u8 *addr, s16 vab_id);
427 extern s16 SsVabTransfer(u8 *vh_addr, u8 *vb_addr, s16 vab_id, s16 i_flag);
428 extern s16 SsVabTransBody(u8 *addr, s16 vab_id);
429 extern s16 SsVabTransBodyPartly(u8 *addr,
unsigned int bufsize, s16 vab_id);
430 extern s16 SsVabTransCompleted(s16 immediate_flag);
431 extern char SsBlockVoiceAllocation(
void);
432 extern char SsUnBlockVoiceAllocation(
void);
433 extern int SsAllocateVoices(u8 voices, u8 priority);
434 extern void SsQueueKeyOn(
int voices);
435 extern void SsQueueReverb(
int voices,
int reverb);
437 extern s16 SsGetActualProgFromProg(s16 vab_id, s16 prog);
438 extern void SsSetVoiceSettings(
int vc,
const SndVoiceStats *snd_v_attr);
439 extern s16 SsVoiceCheck(
int vc,
int vab_id, s16 note);