source: trunk/src/winmm/auxiliary.cpp@ 2308

Last change on this file since 2308 was 2308, checked in by sandervl, 26 years ago

JW: Ported Wine mci dlls

File size: 4.7 KB
Line 
1/* $Id: auxiliary.cpp,v 1.2 2000-01-03 10:29:02 sandervl Exp $ */
2
3/*
4 * Auxilary multimedia apis
5 *
6 * Copyright 1998 Sander van Leeuwen (sandervl@xs4all.nl)
7 *
8 *
9 * Project Odin Software License can be found in LICENSE.TXT
10 *
11 */
12
13
14/****************************************************************************
15 * Includes *
16 ****************************************************************************/
17
18#include <os2win.h>
19#include <mmsystem.h>
20#include <mmddk.h>
21#include <odinwrap.h>
22#include <string.h>
23
24#include <misc.h>
25#include <unicode.h>
26
27#include "winmm.h"
28#include "auxiliary.h"
29
30ODINDEBUGCHANNEL(WINMM-AUX)
31
32/******************************************************************************/
33/******************************************************************************/
34ODINFUNCTION3(MMRESULT, auxGetDevCapsA,
35 UINT, uDeviceID,
36 LPAUXCAPSA, pac,
37 UINT, cbac)
38{
39 if(uDeviceID == AUX_MAPPER) {//AUX mapper
40 return(MMSYSERR_NODRIVER);
41 }
42 if(uDeviceID != 0) {
43 return(MMSYSERR_BADDEVICEID);
44 }
45 if(auxOS2Open() == FALSE) {
46 return(MMSYSERR_NODRIVER);
47 }
48 pac->wMid = 0;
49 pac->wPid = 0;
50 pac->vDriverVersion = 0x0001;
51 strcpy(pac->szPname, "OS/2 Aux Device");
52 pac->wTechnology = AUXCAPS_AUXIN;
53 pac->wReserved1 = 0;
54 pac->dwSupport = AUXCAPS_LRVOLUME | AUXCAPS_VOLUME;
55 return MMSYSERR_NOERROR;
56}
57/******************************************************************************/
58/******************************************************************************/
59ODINFUNCTION3(MMRESULT, auxGetDevCapsW,
60 UINT, uDeviceID,
61 LPAUXCAPSW, pac,
62 UINT, cbac)
63{
64 if(uDeviceID == AUX_MAPPER) {//AUX mapper
65 return(MMSYSERR_NODRIVER);
66 }
67 if(uDeviceID != 0) {
68 return(MMSYSERR_BADDEVICEID);
69 }
70 if(auxOS2Open() == FALSE) {
71 return(MMSYSERR_NODRIVER);
72 }
73 pac->wMid = 0;
74 pac->wPid = 0;
75 pac->vDriverVersion = 0x0001;
76 AsciiToUnicode("OS/2 Aux Device", pac->szPname);
77 pac->wTechnology = AUXCAPS_AUXIN;
78 pac->wReserved1 = 0;
79 pac->dwSupport = AUXCAPS_LRVOLUME | AUXCAPS_VOLUME;
80 return MMSYSERR_NOERROR;
81}
82/******************************************************************************/
83/******************************************************************************/
84ODINFUNCTION2(MMRESULT, auxSetVolume,
85 UINT, uDeviceID,
86 DWORD, dwVolume)
87{
88 if(uDeviceID == AUX_MAPPER) {//AUX mapper
89 return(MMSYSERR_NODRIVER);
90 }
91 if(uDeviceID != 0) {
92 return(MMSYSERR_BADDEVICEID);
93 }
94 if(auxOS2Open() == FALSE) {
95 return(MMSYSERR_NODRIVER);
96 }
97 return auxOS2SetVolume(dwVolume);
98}
99/******************************************************************************/
100/******************************************************************************/
101ODINFUNCTION2(MMRESULT, auxGetVolume,
102 UINT, uDeviceID,
103 LPDWORD, pdwVolume)
104{
105 if(uDeviceID == AUX_MAPPER) {//AUX mapper
106 return(MMSYSERR_NODRIVER);
107 }
108 if(uDeviceID != 0) {
109 return(MMSYSERR_BADDEVICEID);
110 }
111 if(auxOS2Open() == FALSE) {
112 return(MMSYSERR_NODRIVER);
113 }
114 return auxOS2GetVolume(pdwVolume);
115}
116/******************************************************************************/
117/******************************************************************************/
118ODINFUNCTION0(UINT, auxGetNumDevs)
119{
120 if(auxOS2Open() == FALSE)
121 return(0);
122 else
123 return 1;
124}
125/******************************************************************************/
126/******************************************************************************/
127ODINFUNCTION4(MMRESULT, auxOutMessage,
128 UINT, uDeviceID,
129 UINT, uMsg,
130 DWORD, dwParam1,
131 DWORD, dwParam2)
132{
133 if(uDeviceID == AUX_MAPPER) {//AUX mapper
134 return(MMSYSERR_NODRIVER);
135 }
136 if(uDeviceID != 0) {
137 return(MMSYSERR_BADDEVICEID);
138 }
139 if(auxOS2Open() == FALSE) {
140 return(MMSYSERR_NODRIVER);
141 }
142 switch(uMsg) {
143 case DRVM_INIT:
144 case DRVM_EXIT:
145 return MMSYSERR_NOERROR;
146 case AUXDM_GETNUMDEVS:
147 return auxGetNumDevs();
148
149 case AUXDM_GETDEVCAPS:
150 return auxGetDevCapsA(uDeviceID, (AUXCAPSA *)dwParam1, dwParam2);
151
152 case AUXDM_GETVOLUME:
153 return auxGetVolume(uDeviceID, (DWORD *)dwParam1);
154
155 case AUXDM_SETVOLUME:
156 return auxSetVolume(uDeviceID, dwParam1);
157 }
158 return MMSYSERR_NOTSUPPORTED;
159}
160/******************************************************************************/
161/******************************************************************************/
162
Note: See TracBrowser for help on using the repository browser.