forked from Tronix286/AIL2
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathSOUNDFX.H
67 lines (56 loc) · 3.09 KB
/
SOUNDFX.H
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
//ÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛ
//ÛÛ ÛÛ
//ÛÛ SOUNDFX.H ÛÛ
//ÛÛ ÛÛ
//ÛÛ Sample AIL MIDI sound effects shell header ÛÛ
//ÛÛ ÛÛ
//ÛÛ V1.00 of 14-Aug-91 ÛÛ
//ÛÛ ÛÛ
//ÛÛ C source compatible with Turbo C++ v1.0 or later ÛÛ
//ÛÛ ÛÛ
//ÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛ
//ÛÛ ÛÛ
//ÛÛ Copyright (C) 1991, 1992 Miles Design, Inc. ÛÛ
//ÛÛ ÛÛ
//ÛÛ Miles Design, Inc. ÛÛ
//ÛÛ 10926 Jollyville #308 ÛÛ
//ÛÛ Austin, TX 78759 ÛÛ
//ÛÛ (512) 345-2642 / FAX (512) 338-9630 / BBS (512) 454-9990 ÛÛ
//ÛÛ ÛÛ
//ÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛÛ
typedef int HEFFECT; // handle to sound effect
#define EFFECT_FREE 0 // values for get_sound_effect_status()
#define EFFECT_PLAYING 1
void init_sfx(void); // called at application startup
void shutdown_sfx(void); // called at application shutdown
//
// play_sound_effect(): Plays a single MIDI note "note" lasting
// "ms_duration" milliseconds on driver "driver," with a MIDI Program
// Change number "program," a Pan Controller value "panpot," and a
// relative volume "volume." Returns a handle to the sound effect
// in progress "HEFFECT," which may be used with the remaining
// functions to monitor or interrupt the sound effect. The "note,"
// "program," "panpot," and "volume" values should be given in
// standard MIDI units (0-127).
//
HEFFECT play_sound_effect(HDRIVER driver, unsigned program, unsigned note,
unsigned volume, unsigned panpot, int ms_duration);
//
// get_sound_effect_status(): Returns the status of a sound effect
// handle provided by a previous play_sound_effect() call.
// (See #defines above.)
//
unsigned get_sound_effect_status(HEFFECT effect);
//
// get_sound_effect_channel(): Returns the MIDI channel number
// allocated for a given sound effect. This may be used with the
// AIL_send_channel_voice_message() function to alter the MIDI
// controllers governing the sound effect.
//
unsigned get_sound_effect_channel(HEFFECT effect);
//
// stop_sound_effect(): Silences a given sound effect, and releases its
// MIDI channel, without waiting for its duration to expire.
//
void stop_sound_effect(HEFFECT effect);