X-Git-Url: http://git.jankratochvil.net/?p=reactos.git;a=blobdiff_plain;f=lib%2Fwinmm%2Fmisc%2Fstubs.c;fp=lib%2Fwinmm%2Fmisc%2Fstubs.c;h=642a7499177a0963929611d08f80d2a57221a79d;hp=8965254d21ddf34f45fbf4b5fed5b54382f141da;hb=a3df8bf1429570e0bd6c6428f6ed80073578cf4b;hpb=7c0db166f81fbe8c8b913d7f26048e337d383605 diff --git a/lib/winmm/misc/stubs.c b/lib/winmm/misc/stubs.c index 8965254..642a749 100644 --- a/lib/winmm/misc/stubs.c +++ b/lib/winmm/misc/stubs.c @@ -5,154 +5,222 @@ * Added more stubs for bochs 1.3 once again still mostly wrong * but bochs gets further now. 12-14-02 * + * [8-18-03] AG: I've added PlaySound/A/W and implemented sndPlaySoundA/W to + * call these. I've also tried to match the parameter names and types with the + * correct ones. + * */ #include +typedef UINT *LPUINT; +#include +#define NDEBUG +#include + +#define NEAR +#define FAR + +/* general constants */ +#define MAXPNAMELEN 32 /* max product name length (including NULL) */ +#define MAXERRORLENGTH 256 /* max error text length (including NULL) */ +#define MAX_JOYSTICKOEMVXDNAME 260 /* max oem vxd name length (including NULL) */ -DECLARE_HANDLE(HWAVEOUT); // mmsystem.h -UINT +// mmsystem.h ends here + +MMRESULT WINAPI -waveOutReset(HWAVEOUT hWaveOut) +waveOutReset(HWAVEOUT hwo) { + // Possible return values: + // MMSYSERR_INVALHANDLE, MMSYSERR_NODRIVER, MMSYSERR_NOMEM, MMSYSERR_NOTSUPPORTED + DbgPrint("waveOutReset stub\n"); + UNIMPLEMENTED; return 1; } -UINT WINAPI waveOutWrite(HWAVEOUT hWaveOut, LPCSTR pszSoundA, - UINT uSize) +MMRESULT WINAPI waveOutWrite(HWAVEOUT hwo, LPWAVEHDR pwh, + UINT cbwh) { + // Posible return values: + // MMSYSERR_INVALHANDLE, MMSYSERR_NODRIVER, MMSYSERR_NOMEM, WAVERR_UNPREPARED + DbgPrint("waveOutWrite stub\n"); + UNIMPLEMENTED; return 1; } +// PlaySound() needs exporting +#undef PlaySound + -WINBOOL -STDCALL -sndPlaySoundA(LPCSTR pszSoundA, UINT uFlags) +BOOL WINAPI +PlaySoundA(LPCSTR pszSound, HMODULE hmod, DWORD fdwSound) { - DbgPrint("sndPlaySoundA stub\n"); - return 1; + DbgPrint("PlaySoundA stub\n"); + UNIMPLEMENTED; + return TRUE; } -WINBOOL -STDCALL -sndPlaySoundW(LPCSTR pszSoundA, UINT uFlags) + +BOOL WINAPI +PlaySoundW(LPCWSTR pszSound, HMODULE hmod, DWORD fdwSound) { - DbgPrint("sndPlaySoundW stub\n"); - return 1; + DbgPrint("PlaySoundW stub\n"); + UNIMPLEMENTED; + return TRUE; +} + + +BOOL WINAPI +PlaySound(LPCSTR pszSound, HMODULE hmod, DWORD fdwSound) +{ + // ANSI? + return PlaySoundA(pszSound, hmod, fdwSound); +} + + +BOOL +WINAPI +sndPlaySoundA(LPCSTR lpszSound, UINT fuSound) +{ + fuSound &= SND_ASYNC | SND_LOOP | SND_MEMORY | SND_NODEFAULT | SND_NOSTOP | SND_SYNC; + return PlaySoundA(lpszSound, NULL, fuSound); } -WINBOOL -STDCALL -midiOutReset(HWAVEOUT hWaveOut) +BOOL +WINAPI +sndPlaySoundW(LPCWSTR lpszSound, UINT fuSound) +{ + fuSound &= SND_ASYNC | SND_LOOP | SND_MEMORY | SND_NODEFAULT | SND_NOSTOP | SND_SYNC; + return PlaySoundW(lpszSound, NULL, fuSound); +} + +MMRESULT +WINAPI +midiOutReset(HMIDIOUT hmo) { DbgPrint("midiOutReset stub\n"); + UNIMPLEMENTED; return 1; } -WINBOOL -STDCALL -waveOutPrepareHeader(HWAVEOUT hWaveOut, LPCSTR pszSoundA, - UINT uSize) +MMRESULT +WINAPI +waveOutPrepareHeader(HWAVEOUT hwo, LPWAVEHDR pwh, + UINT cbwh) { DbgPrint("waveOutPrepareHeader stub\n"); + UNIMPLEMENTED; + pwh->dwFlags |= WHDR_PREPARED; return 1; } -WINBOOL -STDCALL -waveOutGetErrorTextA(HWAVEOUT hWaveOut, LPCSTR pszSoundA, - UINT uSize) +MMRESULT +WINAPI +waveOutGetErrorTextA(MMRESULT mmrError, LPSTR pszText, + UINT cchText) { DbgPrint("waveOutGetErrorTextA stub\n"); + UNIMPLEMENTED; return 1; } -WINBOOL -STDCALL -waveOutOpen(HWAVEOUT* lphWaveOut, UINT uDeviceID, - const lpFormat, DWORD dwCallback, - DWORD dwInstance, DWORD dwFlags) +MMRESULT +WINAPI +waveOutOpen(LPHWAVEOUT pwho, UINT uDeviceID, + LPCWAVEFORMATEX pwfx, DWORD dwCallback, + DWORD dwCallbackInstance, DWORD fdwOpen) { DbgPrint("waveOutOpen stub\n"); + UNIMPLEMENTED; return 1; } -UINT +MMRESULT WINAPI -waveOutClose(HWAVEOUT hWaveOut) +waveOutClose(HWAVEOUT hwo) { DbgPrint("waveOutClose stub\n"); return 1; } -WINBOOL -STDCALL -midiOutClose(HWAVEOUT hWaveOut) +MMRESULT +WINAPI +midiOutClose(HMIDIOUT hmo) { DbgPrint("midiOutClose stub\n"); return 1; } -WINBOOL -STDCALL -midiOutUnprepareHeader(HWAVEOUT hWaveOut, LPCSTR pszSoundA, - UINT uSize) +MMRESULT +WINAPI +midiOutUnprepareHeader(HWAVEOUT hwo, LPMIDIHDR pwh, + UINT cbwh) { DbgPrint("midiOutUnprepareHeader stub\n"); return 1; } -WINBOOL -STDCALL -waveOutUnprepareHeader(HWAVEOUT hWaveOut, LPCSTR pszSoundA, - UINT uSize) +MMRESULT +WINAPI +waveOutUnprepareHeader(HWAVEOUT hwo, LPWAVEHDR pwh, + UINT cbwh) { DbgPrint("waveOutUnprepareHeader stub\n"); + pwh->dwFlags &= ! WHDR_PREPARED; return 1; } -WINBOOL -STDCALL -midiOutPrepareHeader(HWAVEOUT hWaveOut, LPCSTR pszSoundA, - UINT uSize) +MMRESULT +WINAPI +midiOutPrepareHeader(HMIDIOUT hmo, LPMIDIHDR lpMidiOutHdr, + UINT cbMidiOutHdr) { DbgPrint("midiOutPrepareHeader stub\n"); return 1; } -WINBOOL -STDCALL -midiOutLongMsg(HWAVEOUT hWaveOut, LPCSTR pszSoundA, - UINT uSize) +MMRESULT +WINAPI +midiOutLongMsg(HMIDIOUT hmo, LPMIDIHDR lpMidiOutHdr, + UINT cbMidiOutHdr) { DbgPrint("midiOutLongMsg stub\n"); return 1; } -UINT/*MMRESULT*/ -STDCALL -timeBeginPeriod(UINT uPeriod) -{ - DbgPrint("timeBeginPeriod stub\n"); - return 97/*TIMERR_NOCANDO*/; -} - DWORD -STDCALL +WINAPI timeGetTime(VOID) { DbgPrint("timeGetTime stub\n"); return 0; } -UINT/*MMRESULT*/ -STDCALL -timeEndPeriod(UINT uPeriod) +MMRESULT WINAPI joyGetDevCapsA(UINT uJoyID, LPJOYCAPSA pjc, UINT cbjc) +{ + DbgPrint("joyGetDevCapsA stub\n"); + return MMSYSERR_ERROR; +} + +UINT WINAPI joyGetNumDevs(void) +{ + DbgPrint("joyGetNumDevs stub\n"); + return 0; +} + +MMRESULT WINAPI joyGetPosEx(UINT uJoyID, LPJOYINFOEX pji) +{ + DbgPrint("joyGetPosEx stub\n"); + return MMSYSERR_ERROR; +} + +MCIERROR WINAPI mciSendCommandA(MCIDEVICEID mciId, UINT uMsg, DWORD dwParam1, DWORD dwParam2) { - DbgPrint("timeEndPeriod stub\n"); - return 97/*TIMERR_NOCANDO*/; + DbgPrint("mciSendCommandA stub\n"); + return MMSYSERR_ERROR; }