source: GPL/branches/uniaud-2.0/include/ossidc32.h@ 304

Last change on this file since 304 was 265, checked in by Brendan Oakley, 18 years ago

Add debug logging functions to Uniaud32 for receiving output from Uniaud16, from Pavel

File size: 3.9 KB
Line 
1/* $Id: ossidc32.h,v 1.1.1.1 2003/07/02 13:56:58 eleph Exp $ */
2/*
3 * Header for IDC definitions & declarations
4 *
5 * (C) 2000-2002 InnoTek Systemberatung GmbH
6 * (C) 2000-2001 Sander van Leeuwen (sandervl@xs4all.nl)
7 *
8 * This program is free software; you can redistribute it and/or
9 * modify it under the terms of the GNU General Public License as
10 * published by the Free Software Foundation; either version 2 of
11 * the License, or (at your option) any later version.
12 *
13 * This program is distributed in the hope that it will be useful,
14 * but WITHOUT ANY WARRANTY; without even the implied warranty of
15 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
16 * GNU General Public License for more details.
17 *
18 * You should have received a copy of the GNU General Public
19 * License along with this program; if not, write to the Free
20 * Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139,
21 * USA.
22 *
23 */
24
25#ifndef __OSSIDC32_H__
26#define __OSSIDC32_H__
27
28#include <ossidc.h>
29
30#ifdef __cplusplus
31extern "C" {
32#endif
33
34int MyDevBlock(ULONG id, ULONG tout, char flag);
35
36//32 bits IDC procedures
37//16 bits pdd calls this during init. OSS_InitDriver calls init_module
38OSSRET OSS32_Initialize();
39OSSRET OSS32_Shutdown();
40
41int OSS32_CloseUNI16(void); // 12 Jun 07 SHL
42
43OSSRET OSS32_QueryDevCaps(ULONG deviceid, POSS32_DEVCAPS pDevCaps);
44OSSRET OSS32_QueryNames(ULONG deviceid, char *pszDeviceName, ULONG cbDeviceName,
45 char *pszMixerName, ULONG cbMixerName, BOOL fLongName);
46OSSRET OSS32_APMResume();
47OSSRET OSS32_APMSuspend();
48
49OSSRET OSS32_WaveOpen(ULONG deviceid, ULONG streamtype, OSSSTREAMID *pStreamId, int pcm, USHORT fileid);
50OSSRET OSS32_WaveClose(OSSSTREAMID streamid);
51OSSRET OSS32_WaveStart(OSSSTREAMID streamid);
52OSSRET OSS32_WaveStop(OSSSTREAMID streamid);
53OSSRET OSS32_WavePause(OSSSTREAMID streamid);
54OSSRET OSS32_WaveResume(OSSSTREAMID streamid);
55OSSRET OSS32_WavePrepare(OSSSTREAMID streamid);
56OSSRET OSS32_WaveSetHwParams(OSSSTREAMID streamid, OSS32_HWPARAMS *pFormatInfo);
57OSSRET OSS32_WaveAddBuffer(OSSSTREAMID streamid, ULONG buffer, ULONG size, ULONG *pTransferred, int pcm);
58OSSRET OSS32_WaveGetPosition(OSSSTREAMID streamid, ULONG *pPosition);
59OSSRET OSS32_WaveGetSpace(OSSSTREAMID streamid, ULONG *pBytesAvail);
60OSSRET OSS32_WaveSetVolume(OSSSTREAMID streamid, ULONG volume);
61
62OSSRET OSS32_MixOpen(ULONG deviceid, OSSSTREAMID *pStreamId);
63OSSRET OSS32_MixClose(OSSSTREAMID streamid);
64OSSRET OSS32_MixSetVolume(OSSSTREAMID streamid, ULONG line, ULONG volume);
65OSSRET OSS32_MixGetVolume(OSSSTREAMID streamid, ULONG line, ULONG *pVolume);
66OSSRET OSS32_MixSetProperty(OSSSTREAMID streamid, ULONG line, ULONG value);
67OSSRET OSS32_MixGetProperty(OSSSTREAMID streamid, ULONG line, ULONG *pValue);
68OSSRET OSS32_MixQueryCaps(OSSSTREAMID streamid, POSS32_MIXCAPS pCaps);
69OSSRET OSS32_MixQueryName(ULONG deviceid, char *pszMixerName, ULONG cbMixerName);
70
71OSSRET OSS32_MidiOpen(ULONG deviceid, ULONG streamtype, OSSSTREAMID *pStreamId);
72OSSRET OSS32_MidiClose(OSSSTREAMID streamid);
73OSSRET OSS32_MidiWrite(OSSSTREAMID streamid, ULONG midiByte);
74OSSRET OSS32_MidiRead(OSSSTREAMID streamid, char *buffer, ULONG bufsize, ULONG *pTransferred);
75OSSRET OSS32_MidiQueryCaps(OSSSTREAMID streamid, POSS32_MIDICAPS pCaps);
76OSSRET OSS32_MidiCommand(OSSSTREAMID streamid, ULONG Cmd, BYTE channel, BYTE param1, BYTE param2);
77
78int OSS32_ProcessMIDIIRQ(int bytes); // 12 Jun 07 SHL
79
80int OSS32_DebugString(char *buffer, ULONG size); //PS debug from uniaud16
81
82//Sets file id in current task structure
83ULONG OSS32_SetFileId(ULONG fileid);
84
85//Notifies the 16 bits MMPM/2 driver that an irq has occured. This means
86//it has to query the status of all active streams.
87int OSS32_ProcessIRQ();
88extern IDC16_HANDLER idc16_PddHandler;
89
90ULONG _cdecl CallPDD16(IDC16_HANDLER pHandler, ULONG cmd, ULONG param1, ULONG param2);
91
92#ifdef __cplusplus
93}
94#endif
95
96#endif
Note: See TracBrowser for help on using the repository browser.