annotate AIL.h @ 69:efefae49c990

Merge
author Nomad
date Sat, 27 Oct 2012 19:24:11 +0200
parents 540178ef9b18
children
rev   line source
0
8b8875f5b359 Initial commit
Nomad
parents:
diff changeset
1 #pragma once
8b8875f5b359 Initial commit
Nomad
parents:
diff changeset
2 #include "OSAPI.h"
8b8875f5b359 Initial commit
Nomad
parents:
diff changeset
3
8b8875f5b359 Initial commit
Nomad
parents:
diff changeset
4
8b8875f5b359 Initial commit
Nomad
parents:
diff changeset
5
8b8875f5b359 Initial commit
Nomad
parents:
diff changeset
6 /* 252 */
8b8875f5b359 Initial commit
Nomad
parents:
diff changeset
7 enum AILFILETYPE : __int32
8b8875f5b359 Initial commit
Nomad
parents:
diff changeset
8 {
8b8875f5b359 Initial commit
Nomad
parents:
diff changeset
9 AILFILETYPE_UNKNOWN = 0x0,
8b8875f5b359 Initial commit
Nomad
parents:
diff changeset
10 AILFILETYPE_PCM_WAV = 0x1,
8b8875f5b359 Initial commit
Nomad
parents:
diff changeset
11 AILFILETYPE_ADPCM_WAV = 0x2,
8b8875f5b359 Initial commit
Nomad
parents:
diff changeset
12 AILFILETYPE_OTHER_WAV = 0x3,
8b8875f5b359 Initial commit
Nomad
parents:
diff changeset
13 AILFILETYPE_VOC = 0x4,
8b8875f5b359 Initial commit
Nomad
parents:
diff changeset
14 AILFILETYPE_MIDI = 0x5,
8b8875f5b359 Initial commit
Nomad
parents:
diff changeset
15 AILFILETYPE_XMIDI = 0x6,
8b8875f5b359 Initial commit
Nomad
parents:
diff changeset
16 AILFILETYPE_7 = 0x7,
8b8875f5b359 Initial commit
Nomad
parents:
diff changeset
17 AILFILETYPE_XMIDI_MLS = 0x8,
8b8875f5b359 Initial commit
Nomad
parents:
diff changeset
18 AILFILETYPE_DLS = 0x9,
8b8875f5b359 Initial commit
Nomad
parents:
diff changeset
19 AILFILETYPE_MLS = 0xA,
8b8875f5b359 Initial commit
Nomad
parents:
diff changeset
20 AILFILETYPE_MPEG_L1_AUDIO = 0xB,
8b8875f5b359 Initial commit
Nomad
parents:
diff changeset
21 AILFILETYPE_MPEG_L2_AUDIO = 0xC,
8b8875f5b359 Initial commit
Nomad
parents:
diff changeset
22 AILFILETYPE_MPEG_L3_AUDIO = 0xD,
8b8875f5b359 Initial commit
Nomad
parents:
diff changeset
23 AILFILETYPE_OTHER_ASI_WAV = 0xE,
8b8875f5b359 Initial commit
Nomad
parents:
diff changeset
24 AILFILETYPE_OTHER_ASI_F = 0xF,
8b8875f5b359 Initial commit
Nomad
parents:
diff changeset
25 };
8b8875f5b359 Initial commit
Nomad
parents:
diff changeset
26
8b8875f5b359 Initial commit
Nomad
parents:
diff changeset
27
8b8875f5b359 Initial commit
Nomad
parents:
diff changeset
28
8b8875f5b359 Initial commit
Nomad
parents:
diff changeset
29 /* 253 */
8b8875f5b359 Initial commit
Nomad
parents:
diff changeset
30 #pragma pack(push, 1)
8b8875f5b359 Initial commit
Nomad
parents:
diff changeset
31 struct AILSOUNDINFO
8b8875f5b359 Initial commit
Nomad
parents:
diff changeset
32 {
8b8875f5b359 Initial commit
Nomad
parents:
diff changeset
33 int uFormat;
8b8875f5b359 Initial commit
Nomad
parents:
diff changeset
34 void *pData;
8b8875f5b359 Initial commit
Nomad
parents:
diff changeset
35 unsigned int uDataSize;
8b8875f5b359 Initial commit
Nomad
parents:
diff changeset
36 unsigned int uRate;
8b8875f5b359 Initial commit
Nomad
parents:
diff changeset
37 int uBits;
8b8875f5b359 Initial commit
Nomad
parents:
diff changeset
38 int uChannels;
8b8875f5b359 Initial commit
Nomad
parents:
diff changeset
39 unsigned int uSamples;
8b8875f5b359 Initial commit
Nomad
parents:
diff changeset
40 unsigned int uBlockSize;
8b8875f5b359 Initial commit
Nomad
parents:
diff changeset
41 void *pInitial;
8b8875f5b359 Initial commit
Nomad
parents:
diff changeset
42 };
8b8875f5b359 Initial commit
Nomad
parents:
diff changeset
43 #pragma pack(pop)
8b8875f5b359 Initial commit
Nomad
parents:
diff changeset
44
8b8875f5b359 Initial commit
Nomad
parents:
diff changeset
45
8b8875f5b359 Initial commit
Nomad
parents:
diff changeset
46
8b8875f5b359 Initial commit
Nomad
parents:
diff changeset
47
8b8875f5b359 Initial commit
Nomad
parents:
diff changeset
48 //Bink
8b8875f5b359 Initial commit
Nomad
parents:
diff changeset
49 typedef struct _BINK *HBINK;
8b8875f5b359 Initial commit
Nomad
parents:
diff changeset
50 typedef struct _BINKBUF *HBINKBUF;
8b8875f5b359 Initial commit
Nomad
parents:
diff changeset
51 //Smacker & AIL types
8b8875f5b359 Initial commit
Nomad
parents:
diff changeset
52 typedef struct _DIG_DRIVER *HDIGDRIVER;
8b8875f5b359 Initial commit
Nomad
parents:
diff changeset
53 typedef struct _SMACK *HSMACK;
8b8875f5b359 Initial commit
Nomad
parents:
diff changeset
54 typedef struct _SMACKBLIT *HSMACKBLIT;
8b8875f5b359 Initial commit
Nomad
parents:
diff changeset
55 typedef struct _SMACKBUF *HSMACKBUF;
8b8875f5b359 Initial commit
Nomad
parents:
diff changeset
56 //AIL
8b8875f5b359 Initial commit
Nomad
parents:
diff changeset
57 typedef struct _REDBOOK *HREDBOOK;
8b8875f5b359 Initial commit
Nomad
parents:
diff changeset
58 typedef struct _SAMPLE *HSAMPLE;
8b8875f5b359 Initial commit
Nomad
parents:
diff changeset
59 typedef struct _PROVIDER *HPROVIDER;
8b8875f5b359 Initial commit
Nomad
parents:
diff changeset
60 typedef struct _SEQUENCE *HSEQUENCE;
8b8875f5b359 Initial commit
Nomad
parents:
diff changeset
61 typedef struct _STREAM *HSTREAM;
8b8875f5b359 Initial commit
Nomad
parents:
diff changeset
62 typedef __int32 HATTRIB;
8b8875f5b359 Initial commit
Nomad
parents:
diff changeset
63 typedef __int32 HASISTREAM; // Handle to stream being managed by ASI codec
8b8875f5b359 Initial commit
Nomad
parents:
diff changeset
64
8b8875f5b359 Initial commit
Nomad
parents:
diff changeset
65
8b8875f5b359 Initial commit
Nomad
parents:
diff changeset
66
8b8875f5b359 Initial commit
Nomad
parents:
diff changeset
67 void MSS32_DLL_Initialize();
8b8875f5b359 Initial commit
Nomad
parents:
diff changeset
68
8b8875f5b359 Initial commit
Nomad
parents:
diff changeset
69 #define AILCALL __stdcall
8b8875f5b359 Initial commit
Nomad
parents:
diff changeset
70 #define AILCALLBACK __stdcall
8b8875f5b359 Initial commit
Nomad
parents:
diff changeset
71
8b8875f5b359 Initial commit
Nomad
parents:
diff changeset
72
8b8875f5b359 Initial commit
Nomad
parents:
diff changeset
73 typedef __int32 (AILCALLBACK FAR * AILASIFETCHCB) (unsigned __int32 user, // User value passed to ASI_open_stream()
8b8875f5b359 Initial commit
Nomad
parents:
diff changeset
74 void FAR *dest, // Location to which stream data should be copied by app
8b8875f5b359 Initial commit
Nomad
parents:
diff changeset
75 __int32 bytes_requested, // # of bytes requested by ASI codec
8b8875f5b359 Initial commit
Nomad
parents:
diff changeset
76 __int32 offset); // If not -1, application should seek to this point in stream
8b8875f5b359 Initial commit
Nomad
parents:
diff changeset
77
8b8875f5b359 Initial commit
Nomad
parents:
diff changeset
78 typedef HASISTREAM (AILCALL FAR *ASI_STREAM_OPEN) (unsigned __int32 user, // User value passed to fetch callback
8b8875f5b359 Initial commit
Nomad
parents:
diff changeset
79 AILASIFETCHCB fetch_CB, // Source data fetch handler
8b8875f5b359 Initial commit
Nomad
parents:
diff changeset
80 unsigned __int32 total_size); // Total size for %-done calculations (0=unknown)
8b8875f5b359 Initial commit
Nomad
parents:
diff changeset
81 typedef __int32 (AILCALL FAR *ASI_STREAM_PROCESS) (HASISTREAM stream, // Handle of stream
8b8875f5b359 Initial commit
Nomad
parents:
diff changeset
82 void FAR *buffer, // Destination for processed data
8b8875f5b359 Initial commit
Nomad
parents:
diff changeset
83 __int32 buffer_size); // # of bytes to return in buffer
8b8875f5b359 Initial commit
Nomad
parents:
diff changeset
84 typedef __int32 (AILCALL FAR *ASI_STREAM_SEEK) (HASISTREAM stream,
8b8875f5b359 Initial commit
Nomad
parents:
diff changeset
85 __int32 stream_offset);
8b8875f5b359 Initial commit
Nomad
parents:
diff changeset
86 typedef __int32 (AILCALL FAR *ASI_STREAM_CLOSE) (HASISTREAM stream);
8b8875f5b359 Initial commit
Nomad
parents:
diff changeset
87 typedef __int32 (AILCALL FAR *ASI_STREAM_ATTRIBUTE) (HASISTREAM stream,
8b8875f5b359 Initial commit
Nomad
parents:
diff changeset
88 HATTRIB attrib);
8b8875f5b359 Initial commit
Nomad
parents:
diff changeset
89 typedef __int32 (AILCALL FAR *ASI_STREAM_SET_PREFERENCE) (HASISTREAM stream,
8b8875f5b359 Initial commit
Nomad
parents:
diff changeset
90 HATTRIB preference,
8b8875f5b359 Initial commit
Nomad
parents:
diff changeset
91 void const FAR * value);
8b8875f5b359 Initial commit
Nomad
parents:
diff changeset
92
8b8875f5b359 Initial commit
Nomad
parents:
diff changeset
93 typedef struct
8b8875f5b359 Initial commit
Nomad
parents:
diff changeset
94 {
8b8875f5b359 Initial commit
Nomad
parents:
diff changeset
95 ASI_STREAM_OPEN ASI_stream_open;
8b8875f5b359 Initial commit
Nomad
parents:
diff changeset
96 ASI_STREAM_PROCESS ASI_stream_process;
8b8875f5b359 Initial commit
Nomad
parents:
diff changeset
97 ASI_STREAM_SEEK ASI_stream_seek;
8b8875f5b359 Initial commit
Nomad
parents:
diff changeset
98 ASI_STREAM_CLOSE ASI_stream_close;
8b8875f5b359 Initial commit
Nomad
parents:
diff changeset
99 ASI_STREAM_ATTRIBUTE ASI_stream_attribute;
8b8875f5b359 Initial commit
Nomad
parents:
diff changeset
100 ASI_STREAM_SET_PREFERENCE ASI_stream_set_preference;
8b8875f5b359 Initial commit
Nomad
parents:
diff changeset
101
8b8875f5b359 Initial commit
Nomad
parents:
diff changeset
102 HATTRIB INPUT_BIT_RATE;
8b8875f5b359 Initial commit
Nomad
parents:
diff changeset
103 HATTRIB INPUT_SAMPLE_RATE;
8b8875f5b359 Initial commit
Nomad
parents:
diff changeset
104 HATTRIB INPUT_BITS;
8b8875f5b359 Initial commit
Nomad
parents:
diff changeset
105 HATTRIB INPUT_CHANNELS;
8b8875f5b359 Initial commit
Nomad
parents:
diff changeset
106 HATTRIB OUTPUT_BIT_RATE;
8b8875f5b359 Initial commit
Nomad
parents:
diff changeset
107 HATTRIB OUTPUT_SAMPLE_RATE;
8b8875f5b359 Initial commit
Nomad
parents:
diff changeset
108 HATTRIB OUTPUT_BITS;
8b8875f5b359 Initial commit
Nomad
parents:
diff changeset
109 HATTRIB OUTPUT_CHANNELS;
8b8875f5b359 Initial commit
Nomad
parents:
diff changeset
110 HATTRIB POSITION;
8b8875f5b359 Initial commit
Nomad
parents:
diff changeset
111 HATTRIB PERCENT_DONE;
8b8875f5b359 Initial commit
Nomad
parents:
diff changeset
112 HATTRIB MIN_INPUT_BLOCK_SIZE;
8b8875f5b359 Initial commit
Nomad
parents:
diff changeset
113 HATTRIB RAW_RATE;
8b8875f5b359 Initial commit
Nomad
parents:
diff changeset
114 HATTRIB RAW_BITS;
8b8875f5b359 Initial commit
Nomad
parents:
diff changeset
115 HATTRIB RAW_CHANNELS;
8b8875f5b359 Initial commit
Nomad
parents:
diff changeset
116 HATTRIB REQUESTED_RATE;
8b8875f5b359 Initial commit
Nomad
parents:
diff changeset
117 HATTRIB REQUESTED_BITS;
8b8875f5b359 Initial commit
Nomad
parents:
diff changeset
118 HATTRIB REQUESTED_CHANS;
8b8875f5b359 Initial commit
Nomad
parents:
diff changeset
119
8b8875f5b359 Initial commit
Nomad
parents:
diff changeset
120 HASISTREAM stream;
8b8875f5b359 Initial commit
Nomad
parents:
diff changeset
121 }
8b8875f5b359 Initial commit
Nomad
parents:
diff changeset
122 ASISTAGE;
8b8875f5b359 Initial commit
Nomad
parents:
diff changeset
123
8b8875f5b359 Initial commit
Nomad
parents:
diff changeset
124
8b8875f5b359 Initial commit
Nomad
parents:
diff changeset
125
8b8875f5b359 Initial commit
Nomad
parents:
diff changeset
126
8b8875f5b359 Initial commit
Nomad
parents:
diff changeset
127 typedef void (AILCALLBACK FAR* AILSTREAMCB)(HSTREAM stream);
8b8875f5b359 Initial commit
Nomad
parents:
diff changeset
128 typedef struct _STREAM {
8b8875f5b359 Initial commit
Nomad
parents:
diff changeset
129
8b8875f5b359 Initial commit
Nomad
parents:
diff changeset
130 __int32 block_oriented; // 1 if this is an ADPCM or ASI-compressed stream
8b8875f5b359 Initial commit
Nomad
parents:
diff changeset
131 __int32 using_ASI; // 1 if using ASI decoder to uncompress stream data
8b8875f5b359 Initial commit
Nomad
parents:
diff changeset
132 ASISTAGE FAR *ASI; // handy pointer to our ASI coded
8b8875f5b359 Initial commit
Nomad
parents:
diff changeset
133
8b8875f5b359 Initial commit
Nomad
parents:
diff changeset
134 HSAMPLE samp; // the sample handle
8b8875f5b359 Initial commit
Nomad
parents:
diff changeset
135
8b8875f5b359 Initial commit
Nomad
parents:
diff changeset
136 unsigned __int32 fileh; // the open file handle
8b8875f5b359 Initial commit
Nomad
parents:
diff changeset
137
8b8875f5b359 Initial commit
Nomad
parents:
diff changeset
138 unsigned __int8 FAR* bufs[3]; // the data buffers
8b8875f5b359 Initial commit
Nomad
parents:
diff changeset
139 unsigned __int32 bufsizes[3]; // the size of each buffer
8b8875f5b359 Initial commit
Nomad
parents:
diff changeset
140 __int32 reset_ASI[3]; // should we reset the ASI at the end of the buffer?
8b8875f5b359 Initial commit
Nomad
parents:
diff changeset
141 __int32 bufstart[3]; // offset of where this buffer started
8b8875f5b359 Initial commit
Nomad
parents:
diff changeset
142 void FAR* asyncs[3];// async read structures
8b8875f5b359 Initial commit
Nomad
parents:
diff changeset
143
8b8875f5b359 Initial commit
Nomad
parents:
diff changeset
144 __int32 loadedbufstart[2]; // offset of where the loaded buffer started
8b8875f5b359 Initial commit
Nomad
parents:
diff changeset
145 __int32 loadedorder[2]; // order of the buffers as they were loaded
8b8875f5b359 Initial commit
Nomad
parents:
diff changeset
146 __int32 loadorder; // incremented as each buffer is loaded
8b8875f5b359 Initial commit
Nomad
parents:
diff changeset
147
8b8875f5b359 Initial commit
Nomad
parents:
diff changeset
148 __int32 bufsize; // size of each buffer
8b8875f5b359 Initial commit
Nomad
parents:
diff changeset
149 __int32 readsize; // size of each read block
8b8875f5b359 Initial commit
Nomad
parents:
diff changeset
150
8b8875f5b359 Initial commit
Nomad
parents:
diff changeset
151 unsigned __int32 buf1; // 0,1,2 (current buffer that we are reading into)
8b8875f5b359 Initial commit
Nomad
parents:
diff changeset
152 __int32 size1; // holds the current amount of data read
8b8875f5b359 Initial commit
Nomad
parents:
diff changeset
153
8b8875f5b359 Initial commit
Nomad
parents:
diff changeset
154 unsigned __int32 buf2; // 0,1,2 (the next buffer that we are reading into)
8b8875f5b359 Initial commit
Nomad
parents:
diff changeset
155 __int32 size2; // next buffer loaded up to
8b8875f5b359 Initial commit
Nomad
parents:
diff changeset
156
8b8875f5b359 Initial commit
Nomad
parents:
diff changeset
157 unsigned __int32 buf3; // 0,1,2 (the next buffer that we are reading into)
8b8875f5b359 Initial commit
Nomad
parents:
diff changeset
158 __int32 size3; // next buffer loaded up to
8b8875f5b359 Initial commit
Nomad
parents:
diff changeset
159
8b8875f5b359 Initial commit
Nomad
parents:
diff changeset
160 unsigned __int32 datarate; // datarate in bytes per second
8b8875f5b359 Initial commit
Nomad
parents:
diff changeset
161 __int32 filerate; // original datarate of the file
8b8875f5b359 Initial commit
Nomad
parents:
diff changeset
162 __int32 filetype; // file format type
8b8875f5b359 Initial commit
Nomad
parents:
diff changeset
163 unsigned __int32 fileflags; // file format flags (signed or unsigned)
8b8875f5b359 Initial commit
Nomad
parents:
diff changeset
164 __int32 totallen; // total length of the sound data
8b8875f5b359 Initial commit
Nomad
parents:
diff changeset
165
8b8875f5b359 Initial commit
Nomad
parents:
diff changeset
166 __int32 substart; // subblock loop start
8b8875f5b359 Initial commit
Nomad
parents:
diff changeset
167 __int32 sublen; // subblock loop len
8b8875f5b359 Initial commit
Nomad
parents:
diff changeset
168 __int32 subpadding; // amount to pad the final block
8b8875f5b359 Initial commit
Nomad
parents:
diff changeset
169
8b8875f5b359 Initial commit
Nomad
parents:
diff changeset
170 unsigned __int32 blocksize; // ADPCM block size
8b8875f5b359 Initial commit
Nomad
parents:
diff changeset
171 __int32 padding; // padding to be done
8b8875f5b359 Initial commit
Nomad
parents:
diff changeset
172 __int32 padded; // padding done
8b8875f5b359 Initial commit
Nomad
parents:
diff changeset
173
8b8875f5b359 Initial commit
Nomad
parents:
diff changeset
174 __int32 loadedsome; // have we done any loads?
8b8875f5b359 Initial commit
Nomad
parents:
diff changeset
175
8b8875f5b359 Initial commit
Nomad
parents:
diff changeset
176 unsigned __int32 startpos; // point that the sound data begins
8b8875f5b359 Initial commit
Nomad
parents:
diff changeset
177 unsigned __int32 totalread; // total bytes read from the disk
8b8875f5b359 Initial commit
Nomad
parents:
diff changeset
178
8b8875f5b359 Initial commit
Nomad
parents:
diff changeset
179 unsigned __int32 loopsleft; // how many loops are left
8b8875f5b359 Initial commit
Nomad
parents:
diff changeset
180
8b8875f5b359 Initial commit
Nomad
parents:
diff changeset
181 unsigned __int32 error; // read error has occurred
8b8875f5b359 Initial commit
Nomad
parents:
diff changeset
182
8b8875f5b359 Initial commit
Nomad
parents:
diff changeset
183 __int32 preload; // preload the file into the first buffer
8b8875f5b359 Initial commit
Nomad
parents:
diff changeset
184 unsigned __int32 preloadpos; // position to use in preload
8b8875f5b359 Initial commit
Nomad
parents:
diff changeset
185 __int32 noback; // no background processing
8b8875f5b359 Initial commit
Nomad
parents:
diff changeset
186 __int32 alldone; // alldone
8b8875f5b359 Initial commit
Nomad
parents:
diff changeset
187 __int32 primeamount; // amount to load after a seek
8b8875f5b359 Initial commit
Nomad
parents:
diff changeset
188 __int32 readatleast; // forced amount to read on next service
8b8875f5b359 Initial commit
Nomad
parents:
diff changeset
189
8b8875f5b359 Initial commit
Nomad
parents:
diff changeset
190 __int32 playcontrol; // control: 0=stopped, 1=started, |8=paused, |16=sample paused
8b8875f5b359 Initial commit
Nomad
parents:
diff changeset
191
8b8875f5b359 Initial commit
Nomad
parents:
diff changeset
192 AILSTREAMCB callback; // end of stream callback
8b8875f5b359 Initial commit
Nomad
parents:
diff changeset
193
8b8875f5b359 Initial commit
Nomad
parents:
diff changeset
194 __int32 user_data[8]; // Miscellaneous user data
8b8875f5b359 Initial commit
Nomad
parents:
diff changeset
195 void FAR* next; // pointer to next stream
8b8875f5b359 Initial commit
Nomad
parents:
diff changeset
196
8b8875f5b359 Initial commit
Nomad
parents:
diff changeset
197 #if defined(IS_WINDOWS) || defined(IS_MAC)
8b8875f5b359 Initial commit
Nomad
parents:
diff changeset
198 __int32 autostreaming; // are we autostreaming this stream
8b8875f5b359 Initial commit
Nomad
parents:
diff changeset
199 #endif
8b8875f5b359 Initial commit
Nomad
parents:
diff changeset
200
8b8875f5b359 Initial commit
Nomad
parents:
diff changeset
201 #ifdef IS_WINDOWS
8b8875f5b359 Initial commit
Nomad
parents:
diff changeset
202 __int32 cb_IsWin32s; // Is the callback win32s?
8b8875f5b359 Initial commit
Nomad
parents:
diff changeset
203 #endif
8b8875f5b359 Initial commit
Nomad
parents:
diff changeset
204 __int32 docallback; // set when it time to poll for a callback
8b8875f5b359 Initial commit
Nomad
parents:
diff changeset
205 #ifdef IS_MAC
8b8875f5b359 Initial commit
Nomad
parents:
diff changeset
206 IOParam stream_param;
8b8875f5b359 Initial commit
Nomad
parents:
diff changeset
207 __int32 donext;
8b8875f5b359 Initial commit
Nomad
parents:
diff changeset
208 __int32 donext1;
8b8875f5b359 Initial commit
Nomad
parents:
diff changeset
209 unsigned __int32 fillup;
8b8875f5b359 Initial commit
Nomad
parents:
diff changeset
210 unsigned __int32 session;
8b8875f5b359 Initial commit
Nomad
parents:
diff changeset
211 unsigned __int32 tamt;
8b8875f5b359 Initial commit
Nomad
parents:
diff changeset
212 unsigned __int32 buf;
8b8875f5b359 Initial commit
Nomad
parents:
diff changeset
213 __int32* size;
8b8875f5b359 Initial commit
Nomad
parents:
diff changeset
214 __int32* done;
8b8875f5b359 Initial commit
Nomad
parents:
diff changeset
215 __int32 done1;
8b8875f5b359 Initial commit
Nomad
parents:
diff changeset
216 __int32 done2;
8b8875f5b359 Initial commit
Nomad
parents:
diff changeset
217 __int32 done3;
8b8875f5b359 Initial commit
Nomad
parents:
diff changeset
218 Boolean force_quit;
8b8875f5b359 Initial commit
Nomad
parents:
diff changeset
219 #endif
8b8875f5b359 Initial commit
Nomad
parents:
diff changeset
220
8b8875f5b359 Initial commit
Nomad
parents:
diff changeset
221 } MSTREAM_TYPE;
8b8875f5b359 Initial commit
Nomad
parents:
diff changeset
222
8b8875f5b359 Initial commit
Nomad
parents:
diff changeset
223
8b8875f5b359 Initial commit
Nomad
parents:
diff changeset
224
8b8875f5b359 Initial commit
Nomad
parents:
diff changeset
225
8b8875f5b359 Initial commit
Nomad
parents:
diff changeset
226
8b8875f5b359 Initial commit
Nomad
parents:
diff changeset
227
8b8875f5b359 Initial commit
Nomad
parents:
diff changeset
228
8b8875f5b359 Initial commit
Nomad
parents:
diff changeset
229
8b8875f5b359 Initial commit
Nomad
parents:
diff changeset
230 int __stdcall AIL_startup();
8b8875f5b359 Initial commit
Nomad
parents:
diff changeset
231 HREDBOOK __stdcall AIL_redbook_open_drive(long drive);
3
540178ef9b18 Main menu functionality
Nomad
parents: 0
diff changeset
232 HREDBOOK __stdcall AIL_redbook_open(int);
0
8b8875f5b359 Initial commit
Nomad
parents:
diff changeset
233 int __stdcall AIL_set_preference(unsigned int number, int value);
8b8875f5b359 Initial commit
Nomad
parents:
diff changeset
234 int __stdcall AIL_waveOutOpen(HDIGDRIVER *drv, HWAVEOUT *phWaveOut, int wDeviceID, WAVEFORMAT *pFormat);
8b8875f5b359 Initial commit
Nomad
parents:
diff changeset
235 int __stdcall AIL_get_preference(unsigned int number);
8b8875f5b359 Initial commit
Nomad
parents:
diff changeset
236 int __stdcall AIL_digital_configuration(HDIGDRIVER drv, int *rate, int *format, char *string);
8b8875f5b359 Initial commit
Nomad
parents:
diff changeset
237 HSAMPLE __stdcall AIL_allocate_sample_handle(HDIGDRIVER hDrv);
8b8875f5b359 Initial commit
Nomad
parents:
diff changeset
238 unsigned int __stdcall AIL_redbook_tracks(HREDBOOK hRedbook);
8b8875f5b359 Initial commit
Nomad
parents:
diff changeset
239 int __stdcall AIL_redbook_volume(HREDBOOK hRedbook);
8b8875f5b359 Initial commit
Nomad
parents:
diff changeset
240 unsigned int __stdcall AIL_redbook_stop(HREDBOOK hRedbook);
8b8875f5b359 Initial commit
Nomad
parents:
diff changeset
241 void __stdcall AIL_set_digital_master_volume(HDIGDRIVER hDrv, float master_volume);
8b8875f5b359 Initial commit
Nomad
parents:
diff changeset
242 int __stdcall AIL_redbook_set_volume(HREDBOOK hRedbook, int volume);
8b8875f5b359 Initial commit
Nomad
parents:
diff changeset
243 unsigned int __stdcall AIL_redbook_pause(HREDBOOK hRedbook);
8b8875f5b359 Initial commit
Nomad
parents:
diff changeset
244 void __stdcall AIL_redbook_track_info(HREDBOOK hRedbook, unsigned int uTrackNum, unsigned int *pStartMS, unsigned int *pEndMS);
8b8875f5b359 Initial commit
Nomad
parents:
diff changeset
245 unsigned int __stdcall AIL_redbook_play(HREDBOOK hRedbook, unsigned int uStartMS, unsigned int uEndMS);
8b8875f5b359 Initial commit
Nomad
parents:
diff changeset
246 unsigned int __stdcall AIL_redbook_resume(HREDBOOK);
8b8875f5b359 Initial commit
Nomad
parents:
diff changeset
247 int __stdcall AIL_enumerate_3D_providers(int *a1, HPROVIDER *pOutProv, char **pOutName);
8b8875f5b359 Initial commit
Nomad
parents:
diff changeset
248 DWORD __stdcall AIL_open_3D_provider(HPROVIDER a2);
8b8875f5b359 Initial commit
Nomad
parents:
diff changeset
249 int __stdcall AIL_3D_provider_attribute(HPROVIDER a1, const char *a2, int *a3);
8b8875f5b359 Initial commit
Nomad
parents:
diff changeset
250 int __stdcall AIL_set_3D_provider_preference(HPROVIDER a1, const char *a2, int *a3);
8b8875f5b359 Initial commit
Nomad
parents:
diff changeset
251 int __stdcall AIL_waveOutClose(_DIG_DRIVER *);
8b8875f5b359 Initial commit
Nomad
parents:
diff changeset
252 int __stdcall AIL_allocate_3D_sample_handle(HPROVIDER);
8b8875f5b359 Initial commit
Nomad
parents:
diff changeset
253 int __stdcall AIL_set_3D_sample_float_distances(void *a1, long a2, long a3, long a4, long a5);
8b8875f5b359 Initial commit
Nomad
parents:
diff changeset
254 int __stdcall AIL_set_3D_sample_volume(void *a1, long a2);
8b8875f5b359 Initial commit
Nomad
parents:
diff changeset
255 int __stdcall AIL_release_sample_handle(void *a1);
8b8875f5b359 Initial commit
Nomad
parents:
diff changeset
256 int __stdcall AIL_3D_position(void *a1, int *a2, float *a3, long *a4);
8b8875f5b359 Initial commit
Nomad
parents:
diff changeset
257 int __stdcall AIL_set_3D_sample_file(long a1, void *a2);
8b8875f5b359 Initial commit
Nomad
parents:
diff changeset
258 int __stdcall AIL_set_3D_sample_loop_count(long a1, long a2);
8b8875f5b359 Initial commit
Nomad
parents:
diff changeset
259 int __stdcall AIL_start_3D_sample(long a1);
8b8875f5b359 Initial commit
Nomad
parents:
diff changeset
260 int __stdcall AIL_set_3D_position(void *hSample, long a2, long a3, long a4);
8b8875f5b359 Initial commit
Nomad
parents:
diff changeset
261 int __stdcall AIL_set_3D_orientation(void *hSample, long a2, long a3, long a4, long a5, long a6, long a7);
8b8875f5b359 Initial commit
Nomad
parents:
diff changeset
262 int __stdcall AIL_release_3D_sample_handle(void *hHandle);
8b8875f5b359 Initial commit
Nomad
parents:
diff changeset
263
8b8875f5b359 Initial commit
Nomad
parents:
diff changeset
264 int __stdcall AIL_close_3D_provider(HPROVIDER);
8b8875f5b359 Initial commit
Nomad
parents:
diff changeset
265 int __stdcall AIL_redbook_close(HREDBOOK);
8b8875f5b359 Initial commit
Nomad
parents:
diff changeset
266
8b8875f5b359 Initial commit
Nomad
parents:
diff changeset
267 // sub_4D8344: using guessed type int __stdcall AIL_shutdown();
8b8875f5b359 Initial commit
Nomad
parents:
diff changeset
268 int __stdcall AIL_shutdown();
8b8875f5b359 Initial commit
Nomad
parents:
diff changeset
269
8b8875f5b359 Initial commit
Nomad
parents:
diff changeset
270 int __stdcall AIL_end_sample(HSAMPLE a1);
8b8875f5b359 Initial commit
Nomad
parents:
diff changeset
271 int __stdcall AIL_end_3D_sample(void *a1);
8b8875f5b359 Initial commit
Nomad
parents:
diff changeset
272 void __stdcall AIL_end_sequence(HSEQUENCE a1);
8b8875f5b359 Initial commit
Nomad
parents:
diff changeset
273 void __stdcall AIL_pause_stream(HSTREAM a1, int onoff);
8b8875f5b359 Initial commit
Nomad
parents:
diff changeset
274 int __stdcall AIL_set_sample_file(HSAMPLE, const void *file_image, int block);
8b8875f5b359 Initial commit
Nomad
parents:
diff changeset
275 void __stdcall AIL_start_sample(HSAMPLE);
8b8875f5b359 Initial commit
Nomad
parents:
diff changeset
276 void __stdcall AIL_set_sample_playback_rate(HSAMPLE, int rate);
8b8875f5b359 Initial commit
Nomad
parents:
diff changeset
277 void __stdcall AIL_sample_ms_position(HSAMPLE, int *pTotalMS, int *pCurrentMS);
8b8875f5b359 Initial commit
Nomad
parents:
diff changeset
278 int __stdcall AIL_3D_sample_status(void *a1);
8b8875f5b359 Initial commit
Nomad
parents:
diff changeset
279
8b8875f5b359 Initial commit
Nomad
parents:
diff changeset
280
8b8875f5b359 Initial commit
Nomad
parents:
diff changeset
281 namespace AIL
8b8875f5b359 Initial commit
Nomad
parents:
diff changeset
282 {
8b8875f5b359 Initial commit
Nomad
parents:
diff changeset
283 namespace Sample
8b8875f5b359 Initial commit
Nomad
parents:
diff changeset
284 {
8b8875f5b359 Initial commit
Nomad
parents:
diff changeset
285 enum Status
8b8875f5b359 Initial commit
Nomad
parents:
diff changeset
286 {
8b8875f5b359 Initial commit
Nomad
parents:
diff changeset
287 Free = 1, // Sample is available for allocation
8b8875f5b359 Initial commit
Nomad
parents:
diff changeset
288 Done = 2, // Sample has finished playing, or has never been started
8b8875f5b359 Initial commit
Nomad
parents:
diff changeset
289 Playing = 4, // Sample is playing
8b8875f5b359 Initial commit
Nomad
parents:
diff changeset
290 Stopped = 8, // Sample has been stopped
8b8875f5b359 Initial commit
Nomad
parents:
diff changeset
291 PlayingButReleased = 16 // Sample is playing, but digital handle has been temporarily released
8b8875f5b359 Initial commit
Nomad
parents:
diff changeset
292 };
8b8875f5b359 Initial commit
Nomad
parents:
diff changeset
293 };
8b8875f5b359 Initial commit
Nomad
parents:
diff changeset
294 };
8b8875f5b359 Initial commit
Nomad
parents:
diff changeset
295 AIL::Sample::Status __stdcall AIL_sample_status(HSAMPLE a1);
8b8875f5b359 Initial commit
Nomad
parents:
diff changeset
296
8b8875f5b359 Initial commit
Nomad
parents:
diff changeset
297
8b8875f5b359 Initial commit
Nomad
parents:
diff changeset
298 void __stdcall AIL_set_sample_loop_count(HSAMPLE, int);
8b8875f5b359 Initial commit
Nomad
parents:
diff changeset
299 int __stdcall AIL_set_sample_volume(HSAMPLE a1, long a2);
8b8875f5b359 Initial commit
Nomad
parents:
diff changeset
300
8b8875f5b359 Initial commit
Nomad
parents:
diff changeset
301
8b8875f5b359 Initial commit
Nomad
parents:
diff changeset
302 int __stdcall AIL_sample_volume(HSAMPLE);
8b8875f5b359 Initial commit
Nomad
parents:
diff changeset
303 void __stdcall AIL_init_sample(HSAMPLE);
8b8875f5b359 Initial commit
Nomad
parents:
diff changeset
304 int __stdcall AIL_set_sample_pan(HSAMPLE, long a2);
8b8875f5b359 Initial commit
Nomad
parents:
diff changeset
305 AILFILETYPE __stdcall AIL_file_type(void *pSoundBytes, int numBytes);
8b8875f5b359 Initial commit
Nomad
parents:
diff changeset
306 int __stdcall AIL_WAV_info(void *pSoundBytes, AILSOUNDINFO *pInfo);
8b8875f5b359 Initial commit
Nomad
parents:
diff changeset
307 int __stdcall AIL_decompress_ADPCM(AILSOUNDINFO *pInfo, void *a2, void *a3);
8b8875f5b359 Initial commit
Nomad
parents:
diff changeset
308 int __stdcall AIL_mem_free_lock(void *a1);
8b8875f5b359 Initial commit
Nomad
parents:
diff changeset
309
8b8875f5b359 Initial commit
Nomad
parents:
diff changeset
310
8b8875f5b359 Initial commit
Nomad
parents:
diff changeset
311
8b8875f5b359 Initial commit
Nomad
parents:
diff changeset
312
8b8875f5b359 Initial commit
Nomad
parents:
diff changeset
313
8b8875f5b359 Initial commit
Nomad
parents:
diff changeset
314
8b8875f5b359 Initial commit
Nomad
parents:
diff changeset
315
8b8875f5b359 Initial commit
Nomad
parents:
diff changeset
316
8b8875f5b359 Initial commit
Nomad
parents:
diff changeset
317
8b8875f5b359 Initial commit
Nomad
parents:
diff changeset
318