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