msacm.c 12.5 KB
Newer Older
1 2 3 4
/*
 *      MSACM library
 *
 *      Copyright 1998  Patrik Stridvall
5 6 7 8 9 10 11 12 13 14 15 16 17
 *
 * This library is free software; you can redistribute it and/or
 * modify it under the terms of the GNU Lesser General Public
 * License as published by the Free Software Foundation; either
 * version 2.1 of the License, or (at your option) any later version.
 *
 * This library is distributed in the hope that it will be useful,
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
 * Lesser General Public License for more details.
 *
 * You should have received a copy of the GNU Lesser General Public
 * License along with this library; if not, write to the Free Software
18
 * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
19 20
 */

21 22 23
#include <stdarg.h>

#include "windef.h"
24
#include "winbase.h"
25
#include "winerror.h"
26
#include "mmsystem.h"
27
#define NOBITMAP
28
#include "mmreg.h"
29
#include "msacm.h"
30
#include "msacmdrv.h"
31
#include "wineacm16.h"
32
#include "wine/debug.h"
33

34
WINE_DEFAULT_DEBUG_CHANNEL(msacm);
35

36
/**************************************************************************
37
 *		DllEntryPoint (MSACM.3)
38 39 40 41
 *
 * MSACM DLL entry point
 *
 */
42 43
BOOL WINAPI DllEntryPoint16(DWORD fdwReason, HINSTANCE16 hinstDLL, WORD ds,
                            WORD wHeapSize, DWORD dwReserved1, WORD wReserved2)
44 45 46 47
{
    return TRUE;
}

48
/***********************************************************************
49
 *		acmGetVersion (MSACM.7)
50
 */
51
DWORD WINAPI acmGetVersion16(void)
52
{
53
  return acmGetVersion();
54 55 56
}

/***********************************************************************
57
 *		acmMetrics (MSACM.8)
58 59 60 61 62
 */

MMRESULT16 WINAPI acmMetrics16(
  HACMOBJ16 hao, UINT16 uMetric, LPVOID pMetric)
{
63 64
  FIXME("(0x%04x, %d, %p): semi-stub\n", hao, uMetric, pMetric);

65 66 67
  if(!hao) return acmMetrics(0, uMetric, pMetric);
  SetLastError(ERROR_CALL_NOT_IMPLEMENTED);
  return MMSYSERR_ERROR;
68 69 70
}

/***********************************************************************
71
 *		acmDriverEnum (MSACM.10)
72 73 74 75
 */
MMRESULT16 WINAPI acmDriverEnum16(
  ACMDRIVERENUMCB16 fnCallback, DWORD dwInstance, DWORD fdwEnum)
{
76
  FIXME("(%p, %d, %d): stub\n",
77 78 79 80 81 82 83
    fnCallback, dwInstance, fdwEnum
  );
  SetLastError(ERROR_CALL_NOT_IMPLEMENTED);
  return MMSYSERR_ERROR;
}

/***********************************************************************
84
 * 		acmDriverDetails (MSACM.11)
85 86 87 88 89
 */

MMRESULT16 WINAPI acmDriverDetails16(
  HACMDRIVERID16 hadid, LPACMDRIVERDETAILS16 padd, DWORD fdwDetails)
{
90
  FIXME("(0x%04x, %p, %d): stub\n", hadid, padd, fdwDetails);
91 92 93 94 95
  SetLastError(ERROR_CALL_NOT_IMPLEMENTED);
  return MMSYSERR_ERROR;
}

/***********************************************************************
96
 * 		acmDriverAdd (MSACM.12)
97 98 99 100 101
 */
MMRESULT16 WINAPI acmDriverAdd16(
  LPHACMDRIVERID16 phadid, HINSTANCE16 hinstModule,
  LPARAM lParam, DWORD dwPriority, DWORD fdwAdd)
{
102
  FIXME("(%p, 0x%04x, %ld, %d, %d): stub\n",
103 104 105 106 107 108 109
    phadid, hinstModule, lParam, dwPriority, fdwAdd
  );
  SetLastError(ERROR_CALL_NOT_IMPLEMENTED);
  return MMSYSERR_ERROR;
}

/***********************************************************************
110
 * 		acmDriverRemove (MSACM.13)
111 112 113 114
 */
MMRESULT16 WINAPI acmDriverRemove16(
  HACMDRIVERID16 hadid, DWORD fdwRemove)
{
115
  FIXME("(0x%04x, %d): stub\n", hadid, fdwRemove);
116 117 118 119 120
  SetLastError(ERROR_CALL_NOT_IMPLEMENTED);
  return MMSYSERR_ERROR;
}

/***********************************************************************
121
 * 		acmDriverOpen (MSACM.14)
122 123 124 125
 */
MMRESULT16 WINAPI acmDriverOpen16(
  LPHACMDRIVER16 phad, HACMDRIVERID16 hadid, DWORD fdwOpen)
{
126
  FIXME("(%p, 0x%04x, %d): stub\n", phad, hadid, fdwOpen);
127 128 129 130 131
  SetLastError(ERROR_CALL_NOT_IMPLEMENTED);
  return MMSYSERR_ERROR;
}

/***********************************************************************
132
 * 		acmDriverClose (MSACM.15)
133 134 135 136
 */
MMRESULT16 WINAPI acmDriverClose16(
  HACMDRIVER16 had, DWORD fdwClose)
{
137
  FIXME("(0x%04x, %d): stub\n", had, fdwClose);
138 139 140 141 142
  SetLastError(ERROR_CALL_NOT_IMPLEMENTED);
  return MMSYSERR_ERROR;
}

/***********************************************************************
143
 * 		acmDriverMessage (MSACM.16)
144 145 146 147
 */
LRESULT WINAPI acmDriverMessage16(
  HACMDRIVER16 had, UINT16 uMsg, LPARAM lParam1, LPARAM lParam2)
{
148
  FIXME("(0x%04x, %d, %ld, %ld): stub\n",
149 150 151 152 153 154 155
    had, uMsg, lParam1, lParam2
  );
  SetLastError(ERROR_CALL_NOT_IMPLEMENTED);
  return 0;
}

/***********************************************************************
156
 * 		acmDriverID (MSACM.17)
157 158 159 160
 */
MMRESULT16 WINAPI acmDriverID16(
  HACMOBJ16 hao, LPHACMDRIVERID16 phadid, DWORD fdwDriverID)
{
161
  FIXME("(0x%04x, %p, %d): stub\n", hao, phadid, fdwDriverID);
162 163 164 165 166
  SetLastError(ERROR_CALL_NOT_IMPLEMENTED);
  return MMSYSERR_ERROR;
}

/***********************************************************************
167
 * 		acmDriverPriority (MSACM.18)
168 169 170 171
 */
MMRESULT16 WINAPI acmDriverPriority16(
 HACMDRIVERID16 hadid, DWORD dwPriority, DWORD fdwPriority)
{
172
  FIXME("(0x%04x, %d, %d): stub\n",
173 174 175 176 177 178 179
    hadid, dwPriority, fdwPriority
  );
  SetLastError(ERROR_CALL_NOT_IMPLEMENTED);
  return MMSYSERR_ERROR;
}

/***********************************************************************
180
 * 		acmFormatTagDetails (MSACM.30)
181 182 183 184
 */
MMRESULT16 WINAPI acmFormatTagDetails16(
  HACMDRIVER16 had, LPACMFORMATTAGDETAILS16 paftd, DWORD fdwDetails)
{
185
  FIXME("(0x%04x, %p, %d): stub\n", had, paftd, fdwDetails);
186 187 188 189 190
  SetLastError(ERROR_CALL_NOT_IMPLEMENTED);
  return MMSYSERR_ERROR;
}

/***********************************************************************
191
 * 		acmFormatTagEnum (MSACM.31)
192 193 194 195 196
 */
MMRESULT16 WINAPI acmFormatTagEnum16(
  HACMDRIVER16 had, LPACMFORMATTAGDETAILS16 paftd,
  ACMFORMATTAGENUMCB16 fnCallback, DWORD dwInstance, DWORD fdwEnum)
{
197
  FIXME("(0x%04x, %p, %p, %d, %d): stub\n",
198
    had, paftd, fnCallback, dwInstance, fdwEnum
199
  );
200 201 202 203 204
  SetLastError(ERROR_CALL_NOT_IMPLEMENTED);
  return MMSYSERR_ERROR;
}

/***********************************************************************
205
 * 		acmFormatChoose (MSACM.40)
206 207 208 209
 */
MMRESULT16 WINAPI acmFormatChoose16(
  LPACMFORMATCHOOSE16 pafmtc)
{
210
  FIXME("(%p): stub\n", pafmtc);
211 212 213 214 215
  SetLastError(ERROR_CALL_NOT_IMPLEMENTED);
  return MMSYSERR_ERROR;
}

/***********************************************************************
216
 * 		acmFormatDetails (MSACM.41)
217 218 219 220
 */
MMRESULT16 WINAPI acmFormatDetails16(
  HACMDRIVER16 had, LPACMFORMATDETAILS16 pafd, DWORD fdwDetails)
{
221
  FIXME("(0x%04x, %p, %d): stub\n", had, pafd, fdwDetails);
222 223 224 225 226
  SetLastError(ERROR_CALL_NOT_IMPLEMENTED);
  return MMSYSERR_ERROR;
}

/***********************************************************************
227
 * 		acmFormatEnum (MSACM.42)
228 229 230 231 232
 */
MMRESULT16 WINAPI acmFormatEnum16(
  HACMDRIVER16 had, LPACMFORMATDETAILS16 pafd,
  ACMFORMATENUMCB16 fnCallback, DWORD dwInstance, DWORD fdwEnum)
{
233
  FIXME("(0x%04x, %p, %p, %d, %d): stub\n",
234 235 236 237 238 239 240
    had, pafd, fnCallback, dwInstance, fdwEnum
  );
  SetLastError(ERROR_CALL_NOT_IMPLEMENTED);
  return MMSYSERR_ERROR;
}

/***********************************************************************
241
 * 		acmFormatSuggest (MSACM.45)
242 243
 */
MMRESULT16 WINAPI acmFormatSuggest16(
244
  HACMDRIVER16 had, LPWAVEFORMATEX pwfxSrc,
245
  LPWAVEFORMATEX pwfxDst, DWORD cbwfxDst, DWORD fdwSuggest)
246
{
247
  FIXME("(0x%04x, %p, %p, %d, %d): stub\n",
248 249 250 251 252 253 254
    had, pwfxSrc, pwfxDst, cbwfxDst, fdwSuggest
  );
  SetLastError(ERROR_CALL_NOT_IMPLEMENTED);
  return MMSYSERR_ERROR;
}

/***********************************************************************
255
 * 		acmFilterTagDetails (MSACM.50)
256 257 258 259
 */
MMRESULT16 WINAPI acmFilterTagDetails16(
  HACMDRIVER16 had, LPACMFILTERTAGDETAILS16 paftd, DWORD fdwDetails)
{
260
  FIXME("(0x%04x, %p, %d): stub\n", had, paftd, fdwDetails);
261 262 263 264 265
  SetLastError(ERROR_CALL_NOT_IMPLEMENTED);
  return MMSYSERR_ERROR;
}

/***********************************************************************
266
 * 		acmFilterTagEnum (MSACM.51)
267 268 269 270 271
 */
MMRESULT16 WINAPI acmFilterTagEnum16(
  HACMDRIVER16 had, LPACMFILTERTAGDETAILS16 paftd,
  ACMFILTERTAGENUMCB16 fnCallback, DWORD dwInstance, DWORD fdwEnum)
{
272
  FIXME("(0x%04x, %p, %p, %d, %d): stub\n",
273 274 275 276 277 278 279
    had, paftd, fnCallback, dwInstance, fdwEnum
  );
  SetLastError(ERROR_CALL_NOT_IMPLEMENTED);
  return MMSYSERR_ERROR;
}

/***********************************************************************
280
 * 		acmFilterChoose (MSACM.60)
281 282 283 284
 */
MMRESULT16 WINAPI acmFilterChoose16(
  LPACMFILTERCHOOSE16 pafltrc)
{
285
  FIXME("(%p): stub\n", pafltrc);
286 287 288 289 290
  SetLastError(ERROR_CALL_NOT_IMPLEMENTED);
  return MMSYSERR_ERROR;
}

/***********************************************************************
291
 * 		acmFilterDetails (MSACM.61)
292 293 294 295
 */
MMRESULT16 WINAPI acmFilterDetails16(
  HACMDRIVER16 had, LPACMFILTERDETAILS16 pafd, DWORD fdwDetails)
{
296
  FIXME("(0x%04x, %p, %d): stub\n", had, pafd, fdwDetails);
297 298 299 300 301
  SetLastError(ERROR_CALL_NOT_IMPLEMENTED);
  return MMSYSERR_ERROR;
}

/***********************************************************************
302
 * 		acmFilterEnum (MSACM.62)
303 304 305 306 307
 */
MMRESULT16 WINAPI acmFilterEnum16(
  HACMDRIVER16 had, LPACMFILTERDETAILS16 pafd,
  ACMFILTERENUMCB16 fnCallback, DWORD dwInstance, DWORD fdwEnum)
{
308
  FIXME("(0x%04x, %p, %p, %d, %d): stub\n",
309 310 311 312 313 314 315
    had, pafd, fnCallback, dwInstance, fdwEnum
  );
  SetLastError(ERROR_CALL_NOT_IMPLEMENTED);
  return MMSYSERR_ERROR;
}

/***********************************************************************
316
 * 		acmStreamOpen (MSACM.70)
317 318 319
 */
MMRESULT16 WINAPI acmStreamOpen16(
  LPHACMSTREAM16 phas, HACMDRIVER16 had,
320 321
  LPWAVEFORMATEX pwfxSrc, LPWAVEFORMATEX pwfxDst,
  LPWAVEFILTER pwfltr, DWORD dwCallback,
322 323
  DWORD dwInstance, DWORD fdwOpen)
{
324
  FIXME("(%p, 0x%04x, %p, %p, %p, %d, %d, %d): stub\n",
325 326 327 328 329 330 331 332
    phas, had, pwfxSrc, pwfxDst, pwfltr,
    dwCallback, dwInstance, fdwOpen
  );
  SetLastError(ERROR_CALL_NOT_IMPLEMENTED);
  return MMSYSERR_ERROR;
}

/***********************************************************************
333
 * 		acmStreamClose (MSACM.71)
334 335 336 337
 */
MMRESULT16 WINAPI acmStreamClose16(
  HACMSTREAM16 has, DWORD fdwClose)
{
338
  FIXME("(0x%04x, %d): stub\n", has, fdwClose);
339 340 341 342 343
  SetLastError(ERROR_CALL_NOT_IMPLEMENTED);
  return MMSYSERR_ERROR;
}

/***********************************************************************
344
 * 		acmStreamSize (MSACM.72)
345 346
 */
MMRESULT16 WINAPI acmStreamSize16(
347
  HACMSTREAM16 has, DWORD cbInput,
348 349
  LPDWORD pdwOutputBytes, DWORD fdwSize)
{
350
  FIXME("(0x%04x, %d, %p, %d): stub\n",
351 352 353 354 355 356 357
    has, cbInput, pdwOutputBytes, fdwSize
  );
  SetLastError(ERROR_CALL_NOT_IMPLEMENTED);
  return MMSYSERR_ERROR;
}

/***********************************************************************
358
 * 		acmStreamConvert (MSACM.75)
359 360 361 362
 */
MMRESULT16 WINAPI acmStreamConvert16(
  HACMSTREAM16 has, LPACMSTREAMHEADER16 pash, DWORD fdwConvert)
{
363
  FIXME("(0x%04x, %p, %d): stub\n", has, pash, fdwConvert);
364 365 366 367 368
  SetLastError(ERROR_CALL_NOT_IMPLEMENTED);
  return MMSYSERR_ERROR;
}

/***********************************************************************
369
 * 		acmStreamReset (MSACM.76)
370 371 372 373
 */
MMRESULT16 WINAPI acmStreamReset16(
  HACMSTREAM16 has, DWORD fdwReset)
{
374
  FIXME("(0x%04x, %d): stub\n", has, fdwReset);
375 376 377 378 379
  SetLastError(ERROR_CALL_NOT_IMPLEMENTED);
  return MMSYSERR_ERROR;
}

/***********************************************************************
380
 * 		acmStreamPrepareHeader (MSACM.77)
381 382 383 384
 */
MMRESULT16 WINAPI acmStreamPrepareHeader16(
  HACMSTREAM16 has, LPACMSTREAMHEADER16 pash, DWORD fdwPrepare)
{
385
  FIXME("(0x%04x, %p, %d): stub\n", has, pash, fdwPrepare);
386 387 388 389 390
  SetLastError(ERROR_CALL_NOT_IMPLEMENTED);
  return MMSYSERR_ERROR;
}

/***********************************************************************
391
 * 		acmStreamUnprepareHeader (MSACM.78)
392 393 394 395
 */
MMRESULT16 WINAPI acmStreamUnprepareHeader16(
  HACMSTREAM16 has, LPACMSTREAMHEADER16 pash, DWORD fdwUnprepare)
{
396
  FIXME("(0x%04x, %p, %d): stub\n",
397 398 399 400 401 402 403
    has, pash, fdwUnprepare
  );
  SetLastError(ERROR_CALL_NOT_IMPLEMENTED);
  return MMSYSERR_ERROR;
}

/***********************************************************************
404
 *		ACMAPPLICATIONEXIT (MSACM.150)
405 406 407 408 409
 * FIXME
 *   No documentation found.
 */

/***********************************************************************
410 411
 *		ACMHUGEPAGELOCK (MSACM.175)
 *FIXME
412 413 414 415
 *   No documentation found.
 */

/***********************************************************************
416
 *		ACMHUGEPAGEUNLOCK (MSACM.176)
417 418 419 420 421
 * FIXME
 *   No documentation found.
 */

/***********************************************************************
422
 *		ACMOPENCONVERSION (MSACM.200)
423 424 425 426 427
 * FIXME
 *   No documentation found.
 */

/***********************************************************************
428
 *		ACMCLOSECONVERSION (MSACM.201)
429 430 431 432 433
 * FIXME
 *   No documentation found.
 */

/***********************************************************************
434
 *		ACMCONVERT (MSACM.202)
435 436 437 438 439
 * FIXME
 *   No documentation found.
 */

/***********************************************************************
440
 *		ACMCHOOSEFORMAT (MSACM.203)
441 442 443
 * FIXME
 *   No documentation found.
 */