You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
399 lines
9.8 KiB
399 lines
9.8 KiB
/* Copyright (c) 1998-1999 Microsoft Corporation
|
|
Thunked entry points to DMUSIC16.DLL
|
|
*/
|
|
|
|
enablemapdirect3216 = true;
|
|
|
|
typedef unsigned short USHORT;
|
|
typedef short SHORT;
|
|
typedef unsigned long ULONG;
|
|
typedef long LONG;
|
|
typedef unsigned int UINT;
|
|
typedef int INT;
|
|
typedef unsigned char UCHAR;
|
|
typedef LONG LPARAM;
|
|
typedef LONG LRESULT;
|
|
|
|
typedef void *LPVOID;
|
|
typedef UCHAR BYTE;
|
|
typedef USHORT WORD;
|
|
typedef ULONG DWORD;
|
|
typedef UINT HANDLE;
|
|
typedef WORD HANDLE16;
|
|
typedef DWORD HANDLE32;
|
|
typedef int BOOL;
|
|
typedef char *LPSTR;
|
|
typedef char *LPCSTR;
|
|
typedef BYTE *PBYTE;
|
|
typedef BYTE *LPBYTE;
|
|
typedef DWORD *LPDWORD;
|
|
typedef WORD *LPWORD;
|
|
|
|
typedef DWORD HRESULT;
|
|
|
|
typedef HANDLE HWND;
|
|
typedef HANDLE HINSTANCE;
|
|
typedef HANDLE HTASK;
|
|
|
|
/**********************************************/
|
|
typedef UINT VERSION;
|
|
typedef UINT MMRESULT;
|
|
typedef DWORD MCIERROR;
|
|
typedef UINT MCIDEVICEID;
|
|
typedef UINT *LPUINT;
|
|
typedef HANDLE HMMIO;
|
|
typedef DWORD FOURCC;
|
|
typedef char *HPSTR;
|
|
/*typedef DWORD DRVCALLBACK;*/
|
|
typedef void *LPMMIOPROC;
|
|
typedef void *LPDRVCALLBACK;
|
|
typedef void *LPTIMECALLBACK;
|
|
typedef void *YIELDPROC;
|
|
|
|
typedef struct tagMMTIME {
|
|
UINT wType;
|
|
BYTE hour;
|
|
BYTE min;
|
|
BYTE sec;
|
|
BYTE frame;
|
|
BYTE fps;
|
|
BYTE dummy;
|
|
} MMTIME;
|
|
typedef MMTIME *LPMMTIME;
|
|
|
|
typedef struct tagDRVCONFIGINFO {
|
|
DWORD dwDCISize;
|
|
LPCSTR lpszDCISectionName;
|
|
LPCSTR lpszDCIAliasName;
|
|
} DRVCONFIGINFO;
|
|
typedef DRVCONFIGINFO *LPDRVCONFIGINFO;
|
|
|
|
typedef HANDLE HSOUNDEVENT;
|
|
typedef HSOUNDEVENT *LPHSOUNDEVENT;
|
|
|
|
typedef HANDLE HMREGNOTIFY;
|
|
|
|
typedef HANDLE HWAVE;
|
|
typedef HANDLE HWAVEIN;
|
|
typedef HANDLE HWAVEOUT;
|
|
typedef HWAVEIN *LPHWAVEIN;
|
|
typedef HWAVEOUT *LPHWAVEOUT;
|
|
typedef void *LPWAVECALLBACK;
|
|
|
|
typedef struct tagWAVEHDR {
|
|
LPBYTE lpData;
|
|
DWORD dwBufferLength;
|
|
DWORD dwBytesRecorded;
|
|
DWORD dwUser;
|
|
DWORD dwFlags;
|
|
DWORD dwLoops;
|
|
LPBYTE lpNext;
|
|
DWORD reserved;
|
|
} WAVEHDR;
|
|
typedef WAVEHDR *LPWAVEHDR;
|
|
|
|
typedef struct tagWAVEOUTCAPS {
|
|
WORD wMid;
|
|
WORD wPid;
|
|
VERSION vDriverVersion;
|
|
char szPname[32];
|
|
DWORD dwFormats;
|
|
WORD wChannels;
|
|
DWORD dwSupport;
|
|
} WAVEOUTCAPS;
|
|
typedef WAVEOUTCAPS *LPWAVEOUTCAPS;
|
|
|
|
typedef struct tagWAVEINCAPS {
|
|
WORD wMid;
|
|
WORD wPid;
|
|
VERSION vDriverVersion;
|
|
char szPname[32];
|
|
DWORD dwFormats;
|
|
WORD wChannels;
|
|
} WAVEINCAPS;
|
|
typedef WAVEINCAPS *LPWAVEINCAPS;
|
|
|
|
typedef struct tagWAVEFORMAT {
|
|
WORD wFormatTag;
|
|
WORD nChannels;
|
|
DWORD nSamplesPerSec;
|
|
DWORD nAvgBytesPerSec;
|
|
WORD nBlockAlign;
|
|
} WAVEFORMAT;
|
|
typedef WAVEFORMAT *LPWAVEFORMAT;
|
|
|
|
typedef struct tagPCMWAVEFORMAT {
|
|
WAVEFORMAT wf;
|
|
WORD wBitsPerSample;
|
|
} PCMWAVEFORMAT;
|
|
typedef PCMWAVEFORMAT *LPPCMWAVEFORMAT;
|
|
|
|
typedef struct tagWAVEFORMATEX {
|
|
WORD wFormatTag;
|
|
WORD nChannels;
|
|
DWORD nSamplesPerSec;
|
|
DWORD nAvgBytesPerSec;
|
|
WORD nBlockAlign;
|
|
WORD wBitsPerSample;
|
|
WORD cbSize;
|
|
} WAVEFORMATEX;
|
|
typedef WAVEFORMATEX *LPWAVEFORMATEX;
|
|
|
|
typedef HANDLE HMIDI;
|
|
typedef HANDLE HMIDIIN;
|
|
typedef HANDLE HMIDIOUT;
|
|
typedef HMIDIIN *LPHMIDIIN;
|
|
typedef HMIDIOUT *LPHMIDIOUT;
|
|
typedef void *LPMIDICALLBACK;
|
|
typedef WORD PATCHARRAY[128];
|
|
typedef WORD *LPPATCHARRAY;
|
|
typedef WORD KEYARRAY[128];
|
|
typedef WORD *LPKEYARRAY;
|
|
|
|
typedef struct tagMIDIOUTCAPS {
|
|
WORD wMid;
|
|
WORD wPid;
|
|
VERSION vDriverVersion;
|
|
char szPname[32];
|
|
WORD wTechnology;
|
|
WORD wVoices;
|
|
WORD wNotes;
|
|
WORD wChannelMask;
|
|
DWORD dwSupport;
|
|
} MIDIOUTCAPS;
|
|
typedef MIDIOUTCAPS *LPMIDIOUTCAPS;
|
|
|
|
typedef struct tagMIDIINCAPS {
|
|
WORD wMid;
|
|
WORD wPid;
|
|
VERSION vDriverVersion;
|
|
char szPname[32];
|
|
DWORD dwSupport;
|
|
} MIDIINCAPS;
|
|
typedef MIDIINCAPS *LPMIDIINCAPS;
|
|
|
|
typedef struct tagMIDIHDR {
|
|
LPBYTE lpData;
|
|
DWORD dwBufferLength;
|
|
DWORD dwBytesRecorded;
|
|
DWORD dwUser;
|
|
DWORD dwFlags;
|
|
LPBYTE lpNext;
|
|
DWORD reserved;
|
|
} MIDIHDR;
|
|
typedef MIDIHDR *LPMIDIHDR;
|
|
|
|
typedef struct tagAUXCAPS {
|
|
WORD wMid;
|
|
WORD wPid;
|
|
VERSION vDriverVersion;
|
|
char szPname[32];
|
|
WORD wTechnology;
|
|
DWORD dwSupport;
|
|
} AUXCAPS;
|
|
typedef AUXCAPS *LPAUXCAPS;
|
|
|
|
typedef HANDLE HMIXER;
|
|
typedef HMIXER *LPHMIXER;
|
|
|
|
typedef HANDLE HMIXEROBJ;
|
|
typedef HMIXEROBJ *LPHMIXEROBJ;
|
|
|
|
typedef struct tagMIXERCAPS {
|
|
WORD wMid;
|
|
WORD wPid;
|
|
VERSION vDriverVersion;
|
|
char szPname[32];
|
|
DWORD fdwSupport;
|
|
DWORD cDestinations;
|
|
} MIXERCAPS;
|
|
typedef MIXERCAPS *LPMIXERCAPS;
|
|
|
|
typedef struct tagMIXERLINE {
|
|
DWORD cbStruct;
|
|
DWORD dwDestination;
|
|
DWORD dwSource;
|
|
DWORD dwLineID;
|
|
DWORD fdwLine;
|
|
DWORD dwUser;
|
|
DWORD dwComponentType;
|
|
DWORD cChannels;
|
|
DWORD cConnections;
|
|
DWORD cControls;
|
|
char szShortName[16];
|
|
char szName[64];
|
|
DWORD dwType;
|
|
DWORD dwDeviceID;
|
|
WORD wMid;
|
|
WORD wPid;
|
|
VERSION vDriverVersion;
|
|
char szPname[32];
|
|
} MIXERLINE;
|
|
typedef MIXERLINE *LPMIXERLINE;
|
|
|
|
typedef struct tagMIXERCONTROL {
|
|
DWORD cbStruct;
|
|
DWORD dwControlID;
|
|
DWORD dwControlType;
|
|
DWORD fdwControl;
|
|
DWORD cMultipleItems;
|
|
char szShortName[16];
|
|
char szName[64];
|
|
DWORD dwReserved1[6];
|
|
DWORD dwReserved2[6];
|
|
} MIXERCONTROL;
|
|
typedef MIXERCONTROL *LPMIXERCONTROL;
|
|
|
|
typedef struct tagMIXERLINECONTROLS {
|
|
DWORD cbStruct;
|
|
DWORD dwLineID;
|
|
DWORD dwControlID;
|
|
DWORD cControls;
|
|
DWORD cbmxctrl;
|
|
LPMIXERCONTROL pamxctrl;
|
|
} MIXERLINECONTROLS;
|
|
typedef MIXERLINECONTROLS *LPMIXERLINECONTROLS;
|
|
|
|
typedef struct tagMIXERCONTROLDETAILS {
|
|
DWORD cbStruct;
|
|
DWORD dwControlID;
|
|
DWORD cChannels;
|
|
DWORD cMultipleItems; /*HWND hwndOwner;*/
|
|
DWORD cbDetails;
|
|
LPVOID paDetails;
|
|
} MIXERCONTROLDETAILS;
|
|
typedef MIXERCONTROLDETAILS *LPMIXERCONTROLDETAILS;
|
|
|
|
typedef struct tagMIXERCONTROLDETAILS_LISTTEXT {
|
|
DWORD dwParam1;
|
|
DWORD dwParam2;
|
|
char szName[64];
|
|
} MIXERCONTROLDETAILS_LISTTEXT;
|
|
typedef MIXERCONTROLDETAILS_LISTTEXT *LPMIXERCONTROLDETAILS_LISTTEXT;
|
|
|
|
typedef struct tagMIXERCONTROLDETAILS_BOOLEAN {
|
|
LONG fValue;
|
|
} MIXERCONTROLDETAILS_BOOLEAN;
|
|
typedef MIXERCONTROLDETAILS_BOOLEAN *LPMIXERCONTROLDETAILS_BOOLEAN;
|
|
|
|
typedef struct tagMIXERCONTROLDETAILS_SIGNED {
|
|
LONG lValue;
|
|
} MIXERCONTROLDETAILS_SIGNED;
|
|
typedef MIXERCONTROLDETAILS_SIGNED *LPMIXERCONTROLDETAILS_SIGNED;
|
|
|
|
typedef struct tagMIXERCONTROLDETAILS_UNSIGNED {
|
|
DWORD dwValue;
|
|
} MIXERCONTROLDETAILS_UNSIGNED;
|
|
typedef MIXERCONTROLDETAILS_UNSIGNED *LPMIXERCONTROLDETAILS_UNSIGNED;
|
|
|
|
typedef struct tagJOYCAPS {
|
|
WORD wMid;
|
|
WORD wPid;
|
|
char szPname[32];
|
|
UINT wXmin;
|
|
UINT wXmax;
|
|
UINT wYmin;
|
|
UINT wYmax;
|
|
UINT wZmin;
|
|
UINT wZmax;
|
|
UINT wNumButtons;
|
|
UINT wPeriodMin;
|
|
UINT wPeriodMax;
|
|
UINT wRmin;
|
|
UINT wRmax;
|
|
UINT wUmin;
|
|
UINT wUmax;
|
|
UINT wVmin;
|
|
UINT wVmax;
|
|
UINT wCaps;
|
|
UINT wMaxAxes;
|
|
UINT wNumAxes;
|
|
UINT wMaxButtons;
|
|
char szRegKey[32];
|
|
char szOEMVxD[260];
|
|
} JOYCAPS;
|
|
typedef JOYCAPS *LPJOYCAPS;
|
|
|
|
typedef struct tagMIDIPACKITEM {
|
|
DWORD cbStruct;
|
|
DWORD dwDelta;
|
|
DWORD dwEvent;
|
|
DWORD cbLongEvent;
|
|
LPBYTE lpLongEvent;
|
|
} MIDIPACKITEM;
|
|
typedef MIDIPACKITEM *LPMIDIPACKITEM;
|
|
|
|
typedef struct tagMMCKINFO {
|
|
FOURCC ckid;
|
|
DWORD cksize;
|
|
FOURCC fccType;
|
|
DWORD dwDataOffset;
|
|
DWORD dwFlags;
|
|
} MMCKINFO;
|
|
typedef MMCKINFO *LPMMCKINFO;
|
|
|
|
typedef struct tagMMIOINFO
|
|
{
|
|
DWORD dwFlags;
|
|
FOURCC fccIOProc;
|
|
LPMMIOPROC pIOProc;
|
|
UINT wErrorRet;
|
|
HTASK htask;
|
|
LONG cchBuffer;
|
|
HPSTR pchBuffer;
|
|
HPSTR pchNext;
|
|
HPSTR pchEndRead;
|
|
HPSTR pchEndWrite;
|
|
LONG lBufOffset;
|
|
LONG lDiskOffset;
|
|
DWORD adwInfo[3];
|
|
DWORD dwReserved1;
|
|
DWORD dwReserved2;
|
|
HMMIO hmmio;
|
|
} MMIOINFO;
|
|
typedef MMIOINFO *LPMMIOINFO;
|
|
|
|
typedef struct tagTIMECAPS {
|
|
UINT wPeriodMin;
|
|
UINT wPeriodMax;
|
|
} TIMECAPS;
|
|
typedef TIMECAPS *LPTIMECAPS;
|
|
|
|
void dmUntileBuffer(DWORD dwTilingInfo)
|
|
{
|
|
}
|
|
|
|
DWORD dmTileBuffer(DWORD dwFlatMemory, DWORD dwLength)
|
|
{
|
|
}
|
|
|
|
MMRESULT OpenLegacyDevice(UINT id, BOOL fIsOutput, BOOL fShare, HANDLE *ph)
|
|
{
|
|
}
|
|
|
|
MMRESULT CloseLegacyDevice(HANDLE h)
|
|
{
|
|
}
|
|
|
|
MMRESULT ActivateLegacyDevice(HANDLE h, BOOL fActivate)
|
|
{
|
|
}
|
|
|
|
MMRESULT MidiOutSubmitPlaybackBuffer(HANDLE hMidiOut, DWORD pbBuffer, DWORD cbBuffer, DWORD msStartTime, DWORD rtStartTimeLow, DWORD rtStartTimeHigh)
|
|
{
|
|
}
|
|
|
|
MMRESULT MidiInSetEventHandle(HANDLE hMidiIn, DWORD hEvent)
|
|
{
|
|
}
|
|
|
|
MMRESULT MidiInRead(HANDLE hMidiIn, DWORD pbBuffer, DWORD *cbBuffer, DWORD *msStartTime)
|
|
{
|
|
}
|
|
|
|
MMRESULT MidiInThru(HANDLE hMidiIn, DWORD dwFrom, DWORD dwTo, HANDLE hMidiOut)
|
|
{
|
|
}
|
|
|
|
|
|
|