Commit Graph

1302 Commits

Author SHA1 Message Date
Maarten Lankhorst 137469479c winmm: Remove timeGetTime. 2010-04-12 15:39:20 +02:00
Jörg Höhle db0df4c067 winmm: Improve MCI A/W mapping. 2010-04-12 15:38:15 +02:00
Jörg Höhle b84576fcef winmm: MCI system commands are not eligible for auto-open. 2010-04-12 15:37:44 +02:00
Jörg Höhle c31bdb98f9 winmm/tests: Add more MCI tests. 2010-04-01 18:12:41 +02:00
Jörg Höhle 4ed308f452 winmm: Improve MCI's Sysinfo string command. 2010-04-01 18:12:41 +02:00
Jörg Höhle f70b2f5493 winmm: Improve MCI's Sysinfo command. 2010-04-01 18:12:41 +02:00
Jörg Höhle e89468734d winmm: Support MCI "close all" command.
This is not yet generalized to "pause all" or "stop all".
2010-04-01 18:12:41 +02:00
Maarten Lankhorst 7d1199de72 winmm: Clean up mapper code. 2010-04-01 18:12:41 +02:00
Maarten Lankhorst d368aefdbe winmm: Clean up MMDRV_Init. 2010-04-01 18:12:40 +02:00
Maarten Lankhorst 3a96c85cfb winmm: Remove some dead code. 2010-04-01 18:12:40 +02:00
Maarten Lankhorst 4f4dd855c4 winmm: Defer loading drivers until they are requested. 2010-04-01 18:12:40 +02:00
Jörg Höhle 74ad854e41 winmm/tests: Use cpp's __LINE__ to print meaningful line numbers. 2010-03-30 14:57:51 +02:00
Francois Gouget 3428b94a8d Assorted spelling and case fixes. 2010-03-22 10:49:13 +01:00
Jörg Höhle 104cc7c28e midimap: Allow GetVolume by device identifier. 2010-03-19 13:15:44 +01:00
Maarten Lankhorst b0337ada1a winmm: Allow SND_ALIAS|SND_FILENAME in PlaySound. 2010-03-18 13:46:38 +01:00
Alexandre Julliard bef5645eb1 makefiles: Remove the no longer needed explicit separators for dependencies. 2010-03-16 13:28:19 +01:00
Jörg Höhle bafbc9820e winmm/tests: Fix up to 3 MCI test failures. 2010-03-02 16:11:05 +01:00
Gerald Pfeifer 9d8160c52a winmm/tests: Fix test condition in test_midiStream(). 2010-02-25 12:10:28 +01:00
Jörg Höhle 10b1e2ee88 winmm/tests: Fix transient notification error: messages may arrive late. 2010-02-24 15:12:30 +01:00
Jörg Höhle 9b442134cf winmm/tests: MIDIHDR tests. 2010-02-22 13:18:48 +01:00
Jörg Höhle 64b6287e83 winmm: Accept the ancient, smaller MIDIHDR. 2010-02-22 13:18:26 +01:00
Jörg Höhle a8f1d2eb2f winmm: MIDIHDR.dwOffset is set with MEVT_F_CALLBACK only.
At the same time, the change to the player loop prevents a buffer
overshoot and a (perhaps unlikely) program trace where a sequence
Suspend; Stop; midiStreamOut could send MOM_DONE twice and access
memory possibly released within a MOM_DONE DCB_FUNCTION callback.
2010-02-22 13:17:26 +01:00
Jörg Höhle 63d0aeeafa winmm: Do not access MIDIHDR past MOM_DONE DriverCallback. 2010-02-22 13:17:04 +01:00
Jörg Höhle e1cf94d9da midimap: Have GetDevCaps error out when no MIDI device is present. 2010-02-22 13:16:57 +01:00
Alexandre Julliard 6164ce2d82 makefiles: Use the standard C_SRCS variable as the list of test files.
This enables it to be auto-updated by make_makefiles.
2010-02-22 10:47:11 +01:00
Jörg Höhle a956086e18 winmm: dwBytesRecorded controls how much is played, not dwBufferLength. 2010-02-19 15:10:29 +01:00
Alexandre Julliard f7a447bada winmm/tests: Fix a couple of incorrect casts. 2010-02-16 15:50:21 +01:00
Jörg Höhle 67124e1c0b winmm: Improve initial MIDI player thread synchronisation. 2010-02-11 14:38:45 +01:00
Jörg Höhle 7bd6be0706 winmm: Fix incorrect memory useage (Valgrind w/ MIDI tests). 2010-02-11 14:38:44 +01:00
Jörg Höhle a8b8078704 midimap: Implement callback/notification. 2010-02-11 14:38:44 +01:00
Jörg Höhle a758c6a981 winmm: The 64KB buffer limit on MIDIHDR buffers applies to streams only. 2010-02-03 15:49:09 +01:00
Jörg Höhle 771a29da86 winmm/tests: Initial set of MIDI tests. 2010-02-03 15:49:01 +01:00
Jörg Höhle bc76916b90 winmm: Reset MIDIHDR flags prior to return from midiStreamOut. 2010-02-02 12:00:07 +01:00
Jörg Höhle b0d2f77cc9 winmm: Have xyzGetDevCaps return MMSYSERR_BADDEVICEID, not INVALHANDLE. 2010-02-02 11:47:19 +01:00
Jörg Höhle 06d6dd3e72 winmm: Perform stricter MIDI-related error checking. 2010-02-01 15:39:28 +01:00
Jörg Höhle f1373d57c1 winmm: midiStreamPosition can select an alternative MMTIME format. 2010-02-01 14:11:04 +01:00
Jörg Höhle ebd55d9890 winmm: The MIDI MAPPER is not available with MIDI IN. 2010-02-01 14:11:04 +01:00
Jörg Höhle 9fac9d8ffd winmm: Fix MIDI resource leaks. 2010-01-28 11:10:19 +01:00
Dmitry Timoshkov 132e646fd4 winmm: Add a bunch of new mmio tests which discover some bugs in mmio handling. 2010-01-25 13:01:55 +01:00
Eric Pouech 5cab72bc95 winmm: For MCI parsing, use 64bit compatible variables. 2010-01-25 12:52:22 +01:00
Eric Pouech c62cf2e049 winmm: In mmio manipulation, always ensure that we use a HFILE for mmio internal handlers (and not a HANDLE). 2010-01-25 12:51:55 +01:00
Eric Pouech 37afecb883 winmm: A couple of simple fixes for winmm compilation on 64bit platforms. 2010-01-25 12:51:31 +01:00
Dmitry Timoshkov 7639ea3184 winmm: Buffer size must be at least MMIO_DEFAULTBUFFER (8192) bytes.
mmioOpen() with the length of buffer set to 0 expects the buffer to be at least
MMIO_DEFAULTBUFFER (8192) bytes in size, and using buffer of smaller size can
lead to various problems when the buffer actually gets used.
2010-01-18 14:15:43 +01:00
Alexandre Julliard 18a7655234 winmm: Avoid using ReleaseThunkLock from 32-bit code. 2009-12-24 12:29:24 +01:00
Henri Verbeet 4adefb689a winmm: Use wine_dbg_sprintf() in a few debug utility functions. 2009-11-30 12:49:30 +01:00
Jörg Höhle e36db94c7c winmm: Don't stop parsing after MCI's alias keyword. 2009-11-23 13:09:53 +01:00
Jörg Höhle 11f07c6f6b winmm/tests: Introduce coherence tests among parts that may fail. 2009-11-23 13:09:50 +01:00
Jörg Höhle 7ade23e300 winmm: Enable more MCI waveaudio tests. 2009-11-16 15:18:18 +01:00
Jörg Höhle 18971c94b6 winmm/tests: Print symbolic MCIERR_ names. 2009-11-16 15:17:54 +01:00
Jörg Höhle 65011132e5 winmm: MCI_ALL_DEVICE_ID(MCIDEVICEID) is not a 16bit entity in MCI32. 2009-11-16 15:17:30 +01:00
Jörg Höhle b04178eb01 mciwave/tests: Fix a few tests including one hang on Win9X. 2009-11-13 16:30:09 +01:00
Alexandre Julliard 9a43c410f9 winmm: Use PeekMessageW instead of UserYield. 2009-11-12 23:09:20 +01:00
Jörg Höhle 23060afdcd mciwave: Play/Record return MCIERR_OUTOFRANGE as required. 2009-11-11 11:36:19 +01:00
Jörg Höhle 7c62fe4639 mciwave: Seek stops and rounds position down modulo nBlockAlign. 2009-11-11 11:35:47 +01:00
Jörg Höhle 096b774db2 mciwave: Implement Cue as no-op.
Tests show that it must not close the opened wave file.
2009-11-11 11:32:41 +01:00
Jörg Höhle 2dfd3e901b mciwave: Rework MCI notification system. 2009-11-11 11:32:24 +01:00
Jörg Höhle db921ef7dc winmm/tests: Give flaky progress test more time. 2009-11-11 11:30:22 +01:00
Jörg Höhle 6b22861bfd winmm: MCI Close all causes one notification per open driver. 2009-11-10 13:12:52 +01:00
Jörg Höhle c4b5bd44c0 mciwave: Stop must not reset current position. 2009-11-10 13:12:32 +01:00
Jörg Höhle d0e1a4f96f winmm/tests: Fix MCI test failure on Win9x/WinME. 2009-11-10 13:10:55 +01:00
Francois Gouget 6f643290cf winmm: WINMM_CheckForMMSystem() is not used, remove it. 2009-11-09 19:41:29 +01:00
Francois Gouget dff253abe6 winmm/tests: Add a trailing '\n' to an ok() call. 2009-11-09 19:41:07 +01:00
Nicolas Le Cam 556b1ca7ed winmm/tests: Skip tests when running on non-english locale. 2009-11-09 19:38:19 +01:00
Jörg Höhle de00535c13 mciwave: Allow (again) to set wave format parameters prior to recording. 2009-11-05 15:46:28 +01:00
Jörg Höhle 518f4f8cdb mciwave: Set wave format PCM is the only one accepted. 2009-11-05 15:46:19 +01:00
Jörg Höhle f177e61338 winmm: Do not crash on NULL MCI Sysinfo command output buffer pointer. 2009-11-05 15:46:14 +01:00
Jörg Höhle 4aa5f5bc10 winmm/tests: Add MCI waveaudio tests. 2009-11-05 14:45:40 +01:00
Jörg Höhle 91344ae77c winmm: Time formats hms/tmsf use leading zeroes as in 00:00:00. 2009-10-26 13:21:50 +01:00
Eric Pouech a60dd6e918 winmm: Final split of mmsystem. 2009-10-23 12:17:57 +02:00
Eric Pouech ca1a7c6bad winmm: Get rid of 16bit driver support. 2009-10-23 12:14:58 +02:00
Eric Pouech 2a581444d0 winmm: Get rid of 16bit driver support in mci. 2009-10-23 12:14:52 +02:00
Eric Pouech 14a68405d3 winmm: Simply use kernel32.{Release|Restore}ThunkLock instead of using 16bit convolutions. 2009-10-23 12:14:46 +02:00
Eric Pouech 9709d1c67f winmm: Duplicate the 16<>32 time struct conversion functions in both DLLs. 2009-10-23 12:14:40 +02:00
Eric Pouech 73c7919c87 winmm: Restrict exposure of WINE_MMTHREAD to mmsystem. 2009-10-23 12:14:35 +02:00
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