Commit Graph

1405 Commits

Author SHA1 Message Date
Alexandre Julliard d1e9a09388 winmm: Add support for the MCI_INTEGER64 type.
Based on a patch by Octavian Voicu.
2010-09-29 15:22:00 +02:00
Alexandre Julliard 41a5b37b7a winmm: Use proper structure where possible to fix command string parsing on 64-bit. 2010-09-29 14:47:55 +02:00
Alexandre Julliard c2224ea8bb winmm/tests: Skip tests if MIDI cannot be opened. 2010-09-29 12:19:34 +02:00
Luca Bennati 672b2ff59f winmm: Update Italian translation. 2010-09-27 14:10:44 +02:00
Alexandre Julliard ddac146e7d winmm/tests: Fix some tests that fail on Windows with no input device. 2010-09-22 18:58:46 +02:00
Alexandre Julliard 81b8ee863e makefiles: Add a standard header for all makefiles to replace the common variable initializations. 2010-09-19 12:36:48 +02:00
Jörg Höhle b4cc03f3e3 winmm: Auto-open MCI core commands only. 2010-09-16 11:16:23 -05:00
Jörg Höhle 8fb1e3eba2 winmm: Support MCI_SOUND. 2010-09-16 11:16:23 -05:00
Jörg Höhle 294d0c9501 winmm: Implement MCIERR_DUPLICATE_ALIAS and MCIERR_DEVICE_OPEN. 2010-09-03 16:02:31 +02:00
Jörg Höhle 6b271b6d3c winmm: GetDeviceID only considers a single name per entry. 2010-09-03 16:02:31 +02:00
Jörg Höhle 565c56c61f winmm: Correctly parse the MCI Sysinfo command. 2010-09-03 16:02:31 +02:00
Jörg Höhle c6a655622c winmm/tests: Share common function dbg_mcierr. 2010-09-03 11:04:47 +02:00
Jörg Höhle d223b30bd6 winmm/tests: Add MCI parser tests. 2010-09-02 18:05:24 +02:00
Jörg Höhle 0030ef8d26 winmm/tests: MCI_STATUS returns DWORD_PTR, unlike other commands. 2010-09-02 18:05:24 +02:00
Jörg Höhle 0cf326ce55 winmm/tests: Add a few Open/Close MCI tests. 2010-09-02 18:05:23 +02:00
Jörg Höhle ec7aef8378 winmm: Always unload the MCI driver when Open fails. 2010-09-02 18:05:23 +02:00
Jörg Höhle e1fe9e4fed winmm: Close MCI device after immediate auto-open commands. 2010-09-02 18:05:23 +02:00
Jörg Höhle ef372e259a winmm: MCI open always creates an alias for subsequent commands. 2010-09-02 18:05:23 +02:00
Octavian Voicu 7f5e835c14 winmm: Replace command ids with symbolic constants in mci command resources. 2010-09-02 11:53:09 +02:00
Octavian Voicu 3324614ed3 winmm: Replace return types with symbolic constants in mci command resources. 2010-09-02 11:51:48 +02:00
Francois Gouget f8c55fdcd1 winmm: Make MCI_{MessageToString,strdupAtoW}() static and remove MCI_strdupWtoA(). 2010-08-31 14:23:47 +02:00
Anders Jonsson 8ecf937c10 winmm: Add Swedish translation. 2010-08-27 11:59:30 +02:00
Jörg Höhle ecb02ec9b7 mcicda: Access the first CD-ROM unless given a device letter. 2010-08-25 18:40:47 +02:00
Jörg Höhle 5bff616faa mcicda: Opens d, d:, d:\, d:\foo since w2k. Only d: is portable. 2010-08-25 18:40:09 +02:00
Jörg Höhle 70d8fce222 winmm/tests: Initial tests for CD audio with the MCI. 2010-08-23 15:52:47 +02:00
Maarten Lankhorst 6910b0f143 winmm: Fix fd leak on restarting timer. 2010-08-16 12:59:36 +02:00
Hwang YunSong c625e95af1 winmm: Update Korean resource. 2010-08-16 12:57:04 +02:00
Anders Jonsson 2ebe732453 winmm: Fix typo in English, Slovak resources. 2010-08-03 11:06:00 +02:00
Tim Cadogan-Cowper d6610b8b3a winmm: Wrap TRACE strings with debugstr_a/debugstr_an. 2010-07-22 10:12:06 +02:00
Alexandre Julliard b86d515ed6 dlls: Remove explicit imports of kernel32 and ntdll. 2010-07-21 17:38:36 +02:00
Michael Stefaniuc 6301f65534 winmm: Move from a per resource to a global LANGUAGE setting. 2010-07-21 13:24:00 +02:00
Igor Paliychuk d563479686 winmm: Add Ukrainian translation. 2010-07-15 11:29:16 +02:00
Michael Stefaniuc 689336043c winmm: Add the Romanian translation.
Translation by Claudia Cotună.
2010-07-13 16:28:01 +02:00
Eric Pouech e9e6845d66 winmm: Added a couple of tests for structure alignment. 2010-06-28 11:45:23 +02:00
Tim Cadogan-Cowper d650316661 winmm: Correctly calculate dwFileSize for apps installing their own IOproc. 2010-06-28 11:45:09 +02:00
Vitaly Lipatov b974852ce1 Update Russian translations. 2010-06-18 16:22:07 +02:00
Eric Pouech 258d42982c winmm: Only compute dwFileSize for MMIO objects with a DOS ioproc. 2010-06-14 14:14:15 +02:00
Sven Baars 7dafe8692f winmm: Fix Dutch translation. 2010-06-07 12:24:00 +02:00
Maarten Lankhorst 3e5f7f49fe winmm: Wake up timer after the timer list is empty. 2010-05-24 11:16:57 +02:00
Jörg Höhle 594a70f550 winmm: Have MCI drivers handle notification for MCI_OPEN.
All notifications are handled locally by the drivers.
2010-05-20 16:25:44 +02:00
Maarten Lankhorst 00eaa92945 winmm: Make timer keep a ref on winmm while it's running. 2010-05-19 11:20:37 +02:00
Jörg Höhle c89853ebe5 winmm: More MIDI boundary tests & fixes. 2010-05-19 11:17:27 +02:00
Jörg Höhle a311dff763 winmm: A NULL CALLBACK_FUNCTION is acceptable since w2k. 2010-05-19 11:17:26 +02:00
Jörg Höhle e3869300b9 winmm: WAVE/MIDI_MAPPER (-1) is a 32 bit UINT, not 16. 2010-05-19 11:17:26 +02:00
Gerald Pfeifer eab579dfcb winmm/tests: Remove two unused variables (and dead code) from check_position. 2010-05-10 18:20:36 +02:00
Gerald Pfeifer 6a6749937b winmm/tests: Remove variable start which is not really used from wave_out_test_deviceOut. 2010-05-03 15:42:05 +02:00
Paul Vriens be7c811338 winmm: Update Dutch translation. 2010-05-03 13:54:31 +02:00
Maarten Lankhorst 963102fd89 winmm: Fix handle leak in timer tests. 2010-04-26 10:22:29 -05:00
Gerald Pfeifer d623f0045a winmm: Remove variables duration and samples which are not really used from check_position. 2010-04-26 07:03:04 -05:00
Gerald Pfeifer 2af5528a0c winmm: Remove variable devID which is not really used from MMDRV_Message. 2010-04-26 07:00:32 -05:00
Jörg Höhle c662c35edc winmm: MCI_SYSINFO dwRetSize counts characters, not bytes.
MSDN says the contrary.
2010-04-16 12:39:26 +02:00
Jörg Höhle 0bc218b9db winmm: Prepare transition of MCI parser to 64bit. 2010-04-14 18:21:07 +02:00
Alexandre Julliard 36822bbd7d winmm/tests: Fix a pointer conversion warning on 64-bit. 2010-04-12 15:39:32 +02:00
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