Commit Graph

1328 Commits

Author SHA1 Message Date
Eric Pouech c997bd8460 winmm: Get rid to 16=>32 mappers in winmm (they're now in mmsystem). 2009-10-23 12:14:28 +02:00
Eric Pouech 69c963c3d1 winmm: Get rid of the bFrom32 parameter in MMDRV_Alloc and MMDRV_Message. 2009-10-23 12:14:22 +02:00
Eric Pouech 32c170344a winmm: Move the 16bit management of wave out driver type to the new 16=>32 thunking scheme. 2009-10-23 12:14:15 +02:00
Eric Pouech 739f3304c8 winmm: Move the 16bit management of wave in driver type to the new 16=>32 thunking scheme. 2009-10-23 12:14:08 +02:00
Eric Pouech 2d235de320 winmm: Move the 16bit management of midi stream (for midi out driver type) to the new 16=>32 thunking scheme. 2009-10-23 12:14:01 +02:00
Eric Pouech 80b079e011 winmm: Move the 16bit management of midi out driver type to the new 16=>32 thunking scheme. 2009-10-23 12:13:55 +02:00
Eric Pouech 84efa19e90 winmm: Move the 16bit management of midi in driver type to the new 16=>32 thunking scheme. 2009-10-23 12:13:47 +02:00
Eric Pouech 8aa64672de winmm: Move the 16bit management of mixer driver type to the new 16=>32 thunking scheme. 2009-10-23 12:13:40 +02:00
Eric Pouech beeac41595 winmm: Use the new 16=>32 thunks for Aux driver type. 2009-10-23 12:13:31 +02:00
Eric Pouech 60b652cd4e winmm: Added partial infrastructure for driver management in mmsystem.c. 2009-10-23 12:13:24 +02:00
Eric Pouech 3abaed0f22 winmm: Create a real function for MMSYSTEM.timeGetTime. 2009-10-22 10:41:15 +02:00
Eric Pouech 05e625fe3f mmsystem: Create a real function for mciExecute. 2009-10-21 16:05:55 +02:00
Eric Pouech 22daf0e216 winmm: Move the 16=>32W MCI map functions to mci16.c. 2009-10-21 16:05:55 +02:00
Eric Pouech ebcbdb9cdc winmm: Simplify mciLoadCommandResource by dropping 16bit module support. 2009-10-21 16:05:55 +02:00
Marcus Meissner 8ba51495fc winmm: Handle NULL szFileName in mmioOpen16 (Coverity). 2009-10-19 11:42:53 +02:00
Marcus Meissner 6999921a6d winmm: Return error on NULL ioProc (Coverity). 2009-10-19 11:41:52 +02:00
Eric Pouech b6c7eda2d3 winmm: Get rid of WINE_TIMER_IS32 internal flag. 2009-10-19 11:41:27 +02:00
Eric Pouech 09a9c87d6b mmsystem: Cleanly separate MCI in MMSystem from WinMM code. 2009-10-19 11:38:34 +02:00
Eric Pouech 4633822cdf mmsystem: Move the 16-bit MCI functions to a new mci16.c file. 2009-10-19 11:38:10 +02:00
Eric Pouech 4587a322df winmm: Protect MCI_SYSINFO against null buffers. 2009-10-19 11:36:38 +02:00
Ken Thomases 8b086d6050 winmm/tests: Don't complain for Wine drivers that allow multiple wave-out opens. 2009-10-16 13:36:41 +02:00
Eric Pouech 99c4b22bab winmm: Transform the mmio proc kind into a boolean (to distinguish between ANSI and Unicode). 2009-10-15 12:06:18 +02:00
Eric Pouech e5b4559d2e winmm: Create real 16<>32 thunks for mmio support in MMSystem. 2009-10-15 12:06:17 +02:00
Eric Pouech f4c561746c mmsystem: Move the 16bit mmio code into a dedicated file (mmio16.c). 2009-10-15 12:06:17 +02:00
Paul Vriens 55b3a9c906 winmm/tests: Fix some test failures in Win9x and WinMe. 2009-10-14 11:50:27 +02:00
Jörg Höhle d48d923df3 winmm: MCI notification is controlled by keyword only. 2009-10-14 11:27:08 +02:00
Eric Pouech 0d5c65fef2 winmm: Reduce in MMSystem the calls to WinMM's internals. 2009-10-09 11:50:28 +02:00
Eric Pouech 5b8b9d6da7 winmm: Remove direct inclusion of winemm.h in winemm16.h. 2009-10-09 11:50:28 +02:00
Jörg Höhle ad75d9a217 winmm/tests: Correct (IMA)ADPCM test. 2009-10-06 16:13:17 +02:00
Eric Pouech dd6b7b7f36 winmm: Correctly fill the yield-data parameter in mciGetYieldProc. 2009-10-05 15:18:21 +02:00
Jörg Höhle 376f74b452 winmm: Require at least 16 bytes in the WAVE fmt header for PlaySound. 2009-10-05 15:01:04 +02:00
Eric Pouech 0ba570141d winmm: Correctly check for the installed default ioProcs. 2009-08-29 17:11:10 +02:00
Vladimir Pankratov 590bb35079 winmm: Convert the Russian resources to UTF-8. 2009-08-05 13:10:56 +02:00
Michael Stefaniuc 360478e144 winmm: Convert the German resources to UTF-8. 2009-07-09 15:24:01 +02:00
Dan Kegel ea5a6f2db5 winmm: Don't convert return string in mciSendStringA on error. 2009-07-06 14:35:27 +02:00
Frédéric Delanoy da81ee2520 winmm: Fix French translation. 2009-07-06 14:35:25 +02:00
Michael Stefaniuc 0b16b40148 winmm: Build language resource files separately.
Do not include them from an other rc file.
2009-07-03 11:28:51 +02:00
Aurimas Fišeras f404fd787f winmm: Add Lithuanian translation. 2009-07-02 11:30:13 +02:00
Gerald Pfeifer c4a0539a79 winmm: Use & instead of && for bit test in wave_out_test_deviceOut(). 2009-06-08 14:28:49 +02:00
Paul Vriens 1aa71ea39e winmm/tests: Remove an unreliable test. 2009-06-01 16:16:02 +02:00
Gerald Pfeifer d840311f24 winmm/tests: Fix test in wave_out_test_deviceOut(). 2009-05-25 14:25:50 +02:00
Alexandre Julliard 8f813fd4e4 winmm: Fix some Win64 pointer truncations issues. 2009-05-20 17:52:46 +02:00
Łukasz Wojniłowicz 6c81f8b056 winmm: Added Polish translation. 2009-05-08 13:22:40 +02:00
Detlef Riekenberg be0721d442 winmm/tests: Fix a test on win98. 2009-04-09 11:19:15 +02:00
Aric Stewart 7e8e9c41e9 winmm: SND_ALIAS and SND_ALIAS_ID overlap so when checking for SND_ALIAS_ID make sure it is SND_ALIAS_ID and not SND_ALIAS. 2009-04-02 16:28:30 +02:00
Aric Stewart c08b0a0a9d winmm: Properly cleanup in return from proc_PlaySound if system sound is not found.
Prevents hanging in Outlook 2000 on sound cleanup.
2009-04-02 16:28:30 +02:00
Eric Pouech 2dbc7d5c41 winmm: Added support for SND_ALIAS_ID in winmm.PlaySound[AW]. 2009-03-30 14:20:48 +02:00
Alexandre Julliard b0530a5fbd winmm: Make sound.drv into a stand-alone 16-bit module. 2009-03-23 20:35:00 +01:00
Francois Gouget 8f2b4954b0 winmm: Try to load the Esound driver as a last resort.
This gets sound working out of the box on Solaris.
2009-03-10 12:05:20 +01:00
Michael Stefaniuc 8fde5bf807 winmm: Remove superfluous pointer casts. 2009-02-20 18:07:42 +01:00
Michael Stefaniuc 1134008973 winmm: Remove commented out code.
The code tried to optimize the usage of the 32bit A(scii) winmm API
with a 16bit driver.
2009-02-19 12:52:21 +01:00
Alexandre Julliard 9f32c0d9d6 winmm/tests: Assume volume is not supported if waveGetOutVolume fails. 2009-02-16 12:29:11 +01:00
Alexandre Julliard 3c68ba1bad winmm/tests: Don't test upper bound on sound duration, it's not guaranteed.
Also avoid infinite waits.
2009-02-11 15:56:03 +01:00
Alexandre Julliard 7ca85aa9ea winmm: Disable system thread if poll() support is missing. 2009-02-06 22:33:06 +01:00
Michael Stefaniuc b8a5ab2924 winmm: SendDriverMessage takes LPARAM as 3rd and 4th argument. 2009-02-06 13:04:50 +01:00
Michael Stefaniuc 3415f7788c include: Change some DWORD to DWORD_PTR in mmddk.h.
This matches the DDK and removes 14 Win64 compile warnings.
2009-02-04 12:26:05 +01:00
Andrew Talbot 84666d84a5 winmm: Declare some functions static. 2009-02-02 12:11:55 +01:00
Alasdair Sinclair 986b957e4a winmm/tests: Fix missing void in empty parameter list. 2009-01-29 12:19:49 +01:00
Andrew Nguyen cb6ddfc75b winmm: Make the return behavior of waveOutPrepareHeader consistent for 16-bit and 32-bit. 2009-01-26 15:07:07 +01:00
Alexandre Julliard 023df85183 winmm/tests: Increase the timing tolerances some more. 2009-01-20 14:02:12 +01:00
Alexandre Julliard ec1b28edb0 include: Fix a number of mmsystem.h structure for Win64. 2009-01-09 18:08:29 +01:00
Alexandre Julliard 94d9cfadb0 winmm/tests: Fix handle casting warnings on 64-bit. 2009-01-03 20:15:25 +01:00
Christian Costa 6d8fdefb4a winmm: Check param in joyConfigChanged. 2009-01-02 11:53:12 +01:00
Dan Kegel a7a50e0315 winmm: Don't crash on PlaySound(... SND_ALIAS_ID). 2008-12-29 12:16:18 +01:00
Paul Vriens cb05885f5d winmm/tests: Fix a test failure on NT4 and W2K. 2008-12-23 12:51:23 +01:00
Andrew Nguyen 0135bf8a0c winmm: mixerOpen should return success with NULL dwCallback and CALLBACK_WINDOW flag. 2008-12-22 13:43:56 +01:00
Andrew Nguyen 64cf306292 winmm/tests: Refactor the mixerOpen and mixerClose tests and add a few additional test cases. 2008-12-22 13:43:42 +01:00
Andrew Nguyen 81e37d19e3 winmm/tests: Fix a mismatched failure message. 2008-12-22 13:43:33 +01:00
Vitaliy Margolen cb32c954ba winmm: Stub joyConfigChanged. 2008-12-22 10:29:06 +01:00
Andrew Talbot adb5eb9c11 winmm: Sign-compare warning fix. 2008-12-15 13:25:38 +01:00
ByeongSik Jeon 5f3287d79f *Ko.rc: Update Korean resource.
Fix the unnecessary SUBLANG_NATURAL.
Change the font size from 8 to 9.
2008-12-11 12:21:07 +01:00
Maarten Lankhorst 2233f1eb50 winmm: Some 64-bit pointer fixes. 2008-11-26 14:15:39 +01:00
Francois Gouget b3bf746ff9 Straighten out some ellipses. 2008-11-26 12:33:34 +01:00
Francois Gouget 9c5e97aa71 Assorted spelling fixes. 2008-11-24 14:25:10 +01:00
Alistair Leslie-Hughes aa50cd316c winmm: Increase tolerance range. 2008-11-12 11:49:12 +01:00
Paul Vriens 05c40e08a6 winmm/tests: Fix a test failure on Vista and W2K8. 2008-11-12 11:49:11 +01:00
Paul Vriens 47dddefbb2 winmm/tests: Fix a test failure on Vista and W2K8. 2008-11-07 13:56:08 +01:00
Paul Vriens 97802ef16b winmm/tests: Fix failure on Win9x and WinMe. 2008-11-06 15:01:07 +01:00
Michael Stefaniuc 4f199a10ad Remove the remaining casts of NULL. 2008-11-03 13:42:09 +01:00
Andrew Nguyen 71eb8e10cd winmm: Fix a potential infinite recursion bug. 2008-10-29 13:29:33 +01:00
Vitaliy Margolen 9fbe249f3c winmm: Support more joysticks. 2008-10-27 11:28:39 +01:00
Dmitry Timoshkov d40e003303 winmm: MMIO_ALLOCBUF is ignored if mmioOpen gets a valid buffer.
Existing tests show that MMIO_ALLOCBUF flag is dropped if a valid buffer
is being passed to mmioOpen, that means the buffer is valid in that case.
2008-10-21 13:22:51 +02:00
Alexandre Julliard 7f327237bf Convert remaining source files to utf-8. 2008-10-18 19:23:08 +02:00
Jeff Zaroyko bba54cd407 winmm: Fix a failing mixer test on 98 and ME. 2008-10-17 12:38:52 +02:00
Kai Blin d9145df0da winmm: Use skip() instead of trace() when skipping tests. 2008-10-14 13:41:56 +02:00
Marcus Meissner 0ff2c06c1d Fixed RegEnumKey(Ex)W buffer sizes. 2008-10-13 12:04:26 +02:00
Muneyuki Noguchi 6869b54caa winmm: Convert Japanese resource to UTF-8. 2008-10-13 11:41:33 +02:00
Dmitry Timoshkov 5d24cb4565 winmm: The buffer provided by an application is valid only in the mmioOpen(FOURCC_MEM) case. 2008-10-10 12:54:41 +02:00
Paul Vriens c0e4e2da1e winmm/tests: Fix some failures on Vista and W2K8. 2008-10-10 12:27:39 +02:00
Paul Vriens 6c0467c18c winmm/tests: Fix the failures on Win9x and WinMe. 2008-10-10 12:27:36 +02:00
Paul Vriens f4ba76e1d1 winmm/tests: Fix a test on win9x. 2008-09-08 12:49:12 +02:00
Maarten Lankhorst 6a7127bfc2 winmm: Test opening the same device twice.
Behavioral test to show that wine winmm needs fixing.
2008-08-19 13:36:16 +02:00
Jeff Zaroyko 4603c87351 winmm: Remove misleading message. 2008-08-18 17:15:56 +02:00
Christian Costa 48b459afff winmm: Implement stub for midiConnect and midiDisconnect. 2008-08-18 17:15:56 +02:00
Dan Kegel 6f164d504b winmm/tests: Test mciSendString with non-null return string buffer. 2008-07-23 13:53:56 +02:00
Huw Davies 5798b95a51 winmm: Only fill in the MIXERLINEA struct if the call to mixerGetLineInfoW succeeds. 2008-07-18 13:41:19 +02:00
Dmitry Timoshkov 4d2a2860a5 winmm: Add another test confirming that mmioDescend does set fccType of non RIFF/LIST chunks to 0. 2008-06-25 20:28:13 +02:00
Dan Kegel 97f4fbca7e winmm/tests: Initialize MIXERLINECONTROLSA before calling mixerGetLineControlsA. 2008-06-23 12:46:04 +02:00
Dmitry Timoshkov efcdb202b2 winmm: Clear the fccType in mmioDescend for a not RIFF/LIST case. 2008-06-18 17:11:27 +02:00
Dmitry Timoshkov 64cbea525b winmm: Add the tests for mmioOpen and mmioSetBuffer, make them pass under Wine. 2008-06-18 17:11:14 +02:00
Francois Gouget 414ea6eeee winmm: Remove spaces before '\n' in resource strings. 2008-06-11 20:03:08 +02:00
Matthew D'Asaro f684dac0fc mmio: Do not zero current file position whenever mmioSetBuffer is called. 2008-06-05 11:27:54 +02:00
Zac Brown d62c3197b3 winmm: msiSendStringW: Don't free substring after original string has already been freed. 2008-06-04 12:51:49 +02:00
Dan Kegel b608e39e1f winmm: Use HeapAlloc in the capture test instead of using strdup. 2008-05-26 19:46:23 +02:00
Maarten Lankhorst 72be44ee7d winmm: Fix valgrind warnings on exit. 2008-05-22 23:39:11 +02:00
Maarten Lankhorst 6589d9ab95 winmm: Use HeapAlloc in the wave test instead of using strdup. 2008-05-22 21:29:48 +02:00
Jens Albretsen f876426e87 winmm: Danish translation. 2008-05-07 12:10:16 +02:00
Francois Gouget 633ee950a1 Assorted spelling fixes. 2008-05-07 12:07:11 +02:00
Maarten Lankhorst fc777c0ed3 winmm: Make mixer test less strict so it passes with SoundMAX drivers on XP. 2008-05-06 11:25:31 +02:00
Lei Zhang d20f982433 winmm: Do not unload drivers when the process is terminating. 2008-04-29 14:57:30 +02:00
James Hawkins 4daec079c1 winmm: Remove a failing test that is driver-specific. 2008-04-25 11:33:59 +02:00
Robert Reif fa9a26921c winmm: Fix a test failure on Windows with Terminal Server. 2008-04-25 11:28:57 +02:00
Austin English 6e59cd2c34 Spelling fixes. 2008-04-22 12:20:12 +02:00
Rok Mandeljc f261e6db4d winmm: Slovenian translation: Add a string that got lost during last update. 2008-04-14 12:42:43 +02:00
Rok Mandeljc 38323f8284 winmm: Updated Slovenian translation. 2008-04-07 21:40:29 +02:00
Andrew Talbot d3e904202a winmm: Assign to struct instead of using memcpy. 2008-03-24 11:33:10 +01:00
Maarten Lankhorst 15907b5035 winmm: Fix midi deadlock by not holding lock on release. 2008-03-18 11:15:18 +01:00
Rob Shearman 48000893f9 makefiles: Simplify the use of the IMPORTLIB variable in the DLL makefiles.
Only specify the root to keep platform-specifics out of the individual 
DLL makefiles.
2008-03-04 20:55:01 +01:00
Francois Gouget dcb8dd3ce3 winmm/tests: Don't use 0x55 to avoid any confusion when running with +heap. 2008-03-03 12:07:02 +01:00
Alexandre Julliard edb91ce519 winmm/tests: Make sure the callback thread has a message queue. 2008-02-28 19:56:48 +01:00
Andrew Talbot 19c5811256 winmm: Remove unneeded casts. 2008-02-06 12:43:53 +01:00
Alexandre Julliard 9d3dcae1fb winmm: Load only one sound driver at a time. 2008-01-16 19:15:25 +01:00
Austin English 79c0bc28ff More spelling fixes. 2008-01-04 12:55:45 +01:00
Alexandre Julliard dfc0564993 winmm/tests: Don't mess with the mixer controls in non-interactive mode. 2007-12-05 13:47:30 +01:00
Aric Stewart 35ecb1b6ee winmm: Correct check for MIXER_GETLINECONTROLSF_ONEBYTYPE in mixerGetLineControlsA. 2007-11-29 15:32:03 +01:00
Michael Stefaniuc 3e8970602c dlls: Remove duplicate includes. 2007-11-19 13:54:46 +01:00
Dan Kegel 3d9b69f5a3 winmm: Avoid testing linecontrols if can't get line info. 2007-10-26 14:04:03 +02:00
Andrew Talbot 11f5ed28cb winmm: Fix some memory leaks. 2007-10-15 16:56:18 +02:00
Maarten Lankhorst d322d63b10 winmm: Set default sound driver to alsa,oss,coreaudio. 2007-10-09 17:52:46 +02:00
Americo Jose Melo c5ba90131e Update the Portuguese translation. 2007-09-13 13:28:26 +02:00
Francois Gouget cba68f4cd5 mmsystem: Better stick the the PSDK types. 2007-08-30 17:02:49 +02:00
Francois Gouget 7e8a9e3dfb winmm: Fix the mmTask*() prototypes. 2007-08-30 17:02:48 +02:00
Maarten Lankhorst 93b6f15826 winmm: Don't operate on freed data in timer. 2007-07-27 12:23:43 +02:00
Michael Stefaniuc d14da0763d winmm: Replace malloc with HeapAlloc. 2007-06-26 11:58:06 +02:00
Michael Stefaniuc cc2773008e winmm: Do not dump the version info when loading drivers. 2007-06-22 12:18:30 +02:00
Vedran Rodic f44bc89bc4 winmm: Fix PlaySound so it doesn't block when another sound is already playing. 2007-06-11 20:18:04 +02:00
Alexandre Julliard 86b40413fe winmm: Initialize the timer critical section statically. 2007-06-11 18:13:06 +02:00
Alexandre Julliard 3f20252e5e winmm: Maintain the timer list sorted by expiration time. 2007-06-11 18:11:03 +02:00
Alexandre Julliard e8af10e6b0 winmm: Convert the timer list to a standard Wine list. 2007-06-11 17:35:04 +02:00
Alexandre Julliard 1e178be862 winmm: Get rid of the WINE_MM_IDATA global structure, there's only one instance anyway. 2007-06-07 17:50:28 +02:00
Maarten Lankhorst 0383e4e499 winmm: Use unix fd's instead of win32 events to sync internal events in timer. 2007-06-07 17:20:01 +02:00
Alexandre Julliard 90d94efe10 winmm: Fix computation of sleep time until next timeout. 2007-06-07 16:22:48 +02:00
Dmitry Timoshkov 29b00e1a8c midimap: Fix compilation warnings in 64-bit mode. 2007-06-01 12:40:04 +02:00
Andrew Talbot 5f8d15027e winmm: Exclude unused headers. 2007-05-29 11:53:57 +02:00
Dmitry Timoshkov 3c9e7a7f33 wine: Switch to using 'long' for INT_PTR type for 64-bit compatibility. 2007-05-25 20:37:56 +02:00
Maarten Lankhorst e2a1bc9804 winmm: Use criticalsection for determining wether timer is synchronously killable. 2007-05-07 15:36:42 +02:00
Maarten Lankhorst 0c6a63a062 winmm: Pass the right message to hwnd from mixer callback. 2007-04-23 13:55:06 +02:00
Maarten Lankhorst 35a8ee9340 winmm: Implement CALLBACK_WINDOW. 2007-04-16 12:12:46 +02:00
Andrew Talbot 3c78748cc1 winmm: Replace inline static with static inline. 2007-03-26 12:20:10 +02:00
Jan Zerebecki ca350ad2b1 winmm: Add DebugInfo to critical sections. 2007-03-12 13:40:57 +01:00
Andrew Talbot bb9dea6b29 winmm: Replace const pointer parameters with correct pointers to const. 2007-03-07 21:56:54 +01:00
Vitaly Lipatov c8bcbdb90d Some fixes in russian resources. 2007-02-09 11:48:28 +01:00
Andrew Talbot 77250f3ce8 winmm: Declare a function static. 2007-02-05 12:33:01 +01:00
Francois Gouget aab5e5856e Don't put single quotes around '%s' when using the debugstr_*() functions. 2007-01-18 12:55:50 +01:00
Francois Gouget 6834945ece winmm/tests: Use '%u' to print GetLastError(). 2007-01-18 12:55:32 +01:00
Francois Gouget 9279edfb03 winmm/tests: Replace some '#if 0's with 'if (0)'s.
Fix the code so it compiles without warnings.
2007-01-12 11:24:33 +01:00
Alexandre Julliard dc3961bc78 wineoss: Renamed the dlls/winmm/wineoss directory to dlls/wineoss.drv. 2007-01-10 13:46:14 +01:00
Alexandre Julliard ae0380d97f winenas: Renamed the dlls/winmm/winenas directory to dlls/winenas.drv. 2007-01-10 13:45:39 +01:00
Alexandre Julliard 7fc151d612 winejack: Renamed the dlls/winmm/winejack directory to dlls/winejack.drv. 2007-01-10 13:45:03 +01:00
Alexandre Julliard 851e6d7c4f wineesd: Renamed the dlls/winmm/wineesd directory to dlls/wineesd.drv. 2007-01-10 13:44:20 +01:00
Alexandre Julliard 9402089ea9 winecoreaudio: Renamed the dlls/winmm/winecoreaudio directory to dlls/winecoreaudio.drv. 2007-01-10 13:43:27 +01:00
Alexandre Julliard f972d66263 wineaudioio: Renamed the dlls/winmm/wineaudioio directory to dlls/wineaudioio.drv. 2007-01-10 13:42:34 +01:00
Alexandre Julliard 5f0241fd91 winearts: Renamed the dlls/winmm/winearts directory to dlls/winearts.drv. 2007-01-10 13:41:40 +01:00
Alexandre Julliard 01905338ea winealsa: Renamed the dlls/winmm/winealsa directory to dlls/winealsa.drv. 2007-01-10 13:40:39 +01:00
Kai Blin 6819fa520f winmm: Remove unused variable and if check (Coverity). 2007-01-08 12:35:25 +01:00
Nick Burns 7aab8810e1 winecoreaudio: Fix race condition in drvclose. 2007-01-02 20:29:43 +01:00
Alexandre Julliard f231a70f4c joystick.drv: Renamed the dlls/winmm/joystick directory to dlls/winejoystick.drv. 2006-12-29 14:29:20 +01:00
Ken Thomases 0e52c42aa6 winecoreaudio: Report actual supported input wave formats.
Also, added some output formats that Core Audio ought to be able to handle.
2006-12-29 12:49:43 +01:00
Ken Thomases fa84451647 winecoreaudio: Implement CoreAudio_wiAudioUnitIOProc, the input callback. 2006-12-29 12:49:43 +01:00
Ken Thomases 959ec2aa44 winecoreaudio: Implement widStart. 2006-12-29 12:49:43 +01:00
Ken Thomases c47c82a20b winecoreaudio: Implement widStop. 2006-12-29 12:49:43 +01:00
Ken Thomases 335ab8c1a2 winecoreaudio: Changed widReset to stop the audio unit. 2006-12-29 12:49:43 +01:00
Ken Thomases cff4da8db8 winecoreaudio: Add mechanism for cross-thread call of widHelper_NotifyCompletions.
wodSendNotifyInputCompletionsMessage sends the kWaveInNotifyCompletionsMessage
to the message thread, which calls widHelper_NotifyCompletions.
2006-12-29 12:49:43 +01:00
Ken Thomases 9ef54e4ebe winecoreaudio: Add widHelper_NotifyCompletions.
It scans for completed input wavehdrs, removes them from the queue,
and notifies the application that they're done.
2006-12-29 12:49:42 +01:00
Ken Thomases 19c75a4ec6 winecoreaudio: Store the device ID in the WINE_WAVEOUT structure. 2006-12-29 12:49:42 +01:00
Ken Thomases 127523d7a2 winecoreaudio: Allocate/deallocate audio buffers in widOpen/widClose. 2006-12-29 12:49:42 +01:00
Ken Thomases 4b904bbf13 winecoreaudio: Do additional setup in AudioUnit_CreateInputUnit.
It now returns in an output parameter the frame count that the AU will use.
Also, initialize the Audio Unit.
2006-12-29 12:49:42 +01:00
Ken Thomases 5c489283c9 winecoreaudio: Implement widDevInterfaceSize and widDevInterface. 2006-12-29 12:49:42 +01:00
Ken Thomases 503f9be161 winecoreaudio: Implement widReset. 2006-12-29 12:49:42 +01:00
Ken Thomases 58ea6abe72 winecoreaudio: Implement widAddBuffer. 2006-12-29 12:49:42 +01:00
Ken Thomases 5432adaaac winecoreaudio: Implement widOpen and widClose. 2006-12-29 12:49:42 +01:00
Ken Thomases 30a1b29351 winecoreaudio: Add AudioUnit_CreateInputUnit to create an input audio unit. 2006-12-29 12:49:42 +01:00
Ken Thomases 8ba3daaf5c winecoreaudio: Add stub implementation of CoreAudio_wiAudioUnitIOProc.
It will serve as the input callback called when our Audio Unit has sound
data available.
2006-12-29 12:49:41 +01:00
Ken Thomases 5319b64b39 winecoreaudio: Initial implementation of widGetDevCaps. 2006-12-29 12:49:41 +01:00
Ken Thomases eccfe6e8a3 winecoreaudio: Initial stub implementation of audio input support. 2006-12-29 12:49:41 +01:00
Ken Thomases 5cbc520318 winecoreaudio: Replace pthread mutex with OSSpinLock. 2006-12-21 12:08:37 +01:00
Ken Thomases 234558c2c7 winecoreaudio: Move a memset out of a mutex-guarded section. 2006-12-21 12:01:12 +01:00
Ken Thomases acf3499916 winecoreaudio: Merge wodReset and wodHelper_Reset. 2006-12-21 12:01:02 +01:00
Ken Thomases 3ade58b0b9 winecoreaudio: Change to faster non-recursive mutex. 2006-12-21 12:00:49 +01:00
Ken Thomases d5975872af winecoreaudio: Push notify of completions from render callback to message thread.
Rather than have the Audio Unit render callback traverse the queue of wave
headers looking for complete ones, and sending a message to the message thread
for each one it finds, just send one message to tell the message thread to do
that work itself.  The render callback is called in a real-time priority
thread and is expected to return as quickly as possible.
2006-12-21 12:00:36 +01:00
Ken Thomases e24533cb6d winecoreaudio: Remove more mutexes from around Audio Unit calls. 2006-12-21 12:00:20 +01:00
Ken Thomases 0bb13dd31c winecoreaudio: Report when the render callback is just providing silence. 2006-12-21 12:00:09 +01:00
Ken Thomases 82fff94c33 winecoreaudio: Lift mutex lock/unlock out of wodHelper_PlayPtrNext to caller. 2006-12-21 11:59:53 +01:00
Ken Thomases bdbe803cb6 winecoreaudio: Leave audio unit running, except when waveout device paused. 2006-12-21 11:45:36 +01:00
Ken Thomases aef21c19c1 winecoreaudio: Eliminate unnecessary variable, unreachable code, unused retval. 2006-12-21 11:45:11 +01:00
Ken Thomases 7cecf7a40a winecoreaudio: Inline & eliminate the specializations of wodHelper_BeginWaveHdr. 2006-12-21 11:44:42 +01:00
Ken Thomases be4a17876d winecoreaudio: Specialize wodHelper_BeginWaveHdr for its two callers and simplify.
wodHelper_PlayPtrNext is only called when state == WINE_WS_PLAYING.  Also, it
clears dwPartialOffset itself.

wodWrite only calls wodHelper_BeginWaveHdr[Write] with a non-NULL lpWaveHdr
parameter.  wodWrite is not called from the Audio Unit render callback, so it
can use Wine debug channels.
2006-12-21 11:43:21 +01:00
Ken Thomases 551f7d94a3 winecoreaudio: Simplify handling of BEGIN+ENDLOOP wave headers. 2006-12-21 11:42:48 +01:00
Ken Thomases 91c5ec9616 winecoreaudio: Extract wodHelper_CheckForLoopBegin() from wodHelper_BeginWaveHdr().
This refactoring prepares the ground for subsequent refactoring of
wodHelper_BeginWaveHdr.
2006-12-21 11:42:28 +01:00
Ken Thomases a6da8f212d winecoreaudio: Create port for sending messages to the callback thread only once. 2006-12-21 11:42:12 +01:00