Commit Graph

447 Commits

Author SHA1 Message Date
Eric Pouech 2b0e56c8d8 Now only storing thread id for mci tasks (16 bit htask is now gotten
from WOW functions).
2002-10-29 21:44:23 +00:00
Eric Pouech 5e81d9a7ba - finish mmio separation
- no longer storing function pointers in global IData
2002-10-29 21:26:00 +00:00
Eric Pouech 1563fab4db Move low level multimedia message mapping out of 32 bit code. 2002-10-28 20:53:10 +00:00
Eric Pouech fdb623335a Move MCI message mapping out of 32 bit code. 2002-10-28 20:51:36 +00:00
Eric Pouech 894eedf5d3 Move driver message mapping out of 32 bit code. 2002-10-28 20:44:26 +00:00
Eric Pouech cfcc9e1094 Fixed mciSendString debug reporting when an error occurs (spotted by
Erland Lewin).
2002-10-28 20:05:25 +00:00
Andreas Mohr 6e256c72fe - fix some pselling
- enhance some TRACEs
2002-10-25 19:09:02 +00:00
Eric Pouech 1e3e87d430 Simplify the global internal data handling. 2002-10-25 19:00:12 +00:00
Eric Pouech fb8bad49d9 Unify the constant used for error codes reporting mapping functions
success/failures.
2002-10-25 03:51:40 +00:00
Vincent Béron d1d586e2a9 Bring some French resources in sync with English ones. 2002-10-23 23:34:32 +00:00
Eric Pouech b3854da29a Keep on moving 16 bit code out of winmm, now only using linear
addresses for buffers.
2002-10-21 18:21:26 +00:00
Alexandre Julliard 6fa2ac693e Removed DECLARE_OLD_HANDLE. Fixed a few remaining warnings. 2002-10-19 17:20:02 +00:00
Alexandre Julliard b34fb35b31 Fixed warnings caused by conversion to -DSTRICT. 2002-10-18 23:48:57 +00:00
Alexandre Julliard 23bb3715f7 Added support for building certain dlls with -DSTRICT.
Added -DWINE_NO_STRICT flag to dlls that don't support STRICT yet.
2002-10-18 23:46:28 +00:00
Alexandre Julliard 0ca051e555 Fixed wownt32.h to make it usable from inside Wine, and use it to
avoid some duplication of the handle conversion macros.
2002-10-17 16:43:42 +00:00
Malte Starostik 41a9b1bba6 Initialize winearts's volume level to full, so applications that don't
set the volume are audible.
2002-10-17 01:19:22 +00:00
Michael Stefaniuc 9444dd2541 Compile fix when all handles are converted to a void*. 2002-10-15 21:00:05 +00:00
Eric Pouech 240f09391a Keep on moving 16 bit code out of winmm. 2002-10-10 23:28:22 +00:00
Eric Pouech 46c49c6d79 Removed no longer needed list of instance data. 2002-10-10 22:47:25 +00:00
Francois Gouget 6f670b13f5 The NAS headers and libraries are sometimes stored in the X
directories.
2002-10-10 17:54:27 +00:00
Eric Pouech 57e6ba7009 Started putting all 16 bit code in separate files. 2002-10-10 03:43:53 +00:00
Eric Pouech 580235504d Fixed some multi-sound card related bugs. 2002-10-09 20:37:09 +00:00
Alexandre Julliard 6ac4da7efb Fixed file descriptor corruption. 2002-10-09 18:15:05 +00:00
Eric Pouech dcb44969b9 Added support for several soundcard.
Remove non full duplex mode in code.
OSS Commercial doesn't properly handle SNDCTL_DSP_RESET, so close/open
device to workaround this issue (by Ove Kaaven).
2002-10-07 18:23:40 +00:00
Eric Pouech 60f21c3d58 Got rid of recursion in sub device opening. 2002-10-07 18:22:57 +00:00
Eric Pouech b4ba9fa7df Let wave(Out|In)Open call the wave mapper when the low level device
doesn't handle the wave descriptor.
2002-10-07 18:22:41 +00:00
Alexandre Julliard beb1fb16f3 Removed error message that confuses users. 2002-10-03 19:43:10 +00:00
Alexandre Julliard c728efc3c9 Added --disable-win16 configure option. 2002-10-02 02:34:09 +00:00
Alexandre Julliard e969027104 Fixed warnings. 2002-10-02 01:34:17 +00:00
Jerry Jenkins e944bbb954 Modified volume_effect8 for taking unsigned data as signed data, and
wodPlayer_WriteMaxFrags because of wrong data length which lead to
strange noise and volume control working incorrectly.
2002-09-17 01:29:26 +00:00
Patrik Stridvall 9c1de6de30 Moved all the content of the DDK files ntdef.h and ntddk.h to
winternl.h.
2002-09-12 22:07:02 +00:00
Alexandre Julliard dd0bdbe44e Removed the __uint* types from basetsd.h since they don't exist under
Windows. Fixed a few other issues with type definitions.
2002-09-12 17:29:12 +00:00
Michael Stefaniuc 025c0b716b Prepare dlls/{comctl32,gdi,msvideo,setupapi,shell32,twain,winmm} for
the conversion of HWND to a void*.
2002-09-06 19:41:17 +00:00
David D. Hagood d6b6509301 Fixed Linux 2.2 event API code. 2002-09-04 18:43:05 +00:00
Marco Pietrobono 0e79a4128c Use alsa/asoundlib.h instead of sys/asoundlib.h if possible. 2002-08-29 01:51:31 +00:00
Ove Kaaven 9fd3538b45 Tweaks to improve playback performance and reduce sound glitches:
- wodGetPosition does not send an update message to the player thread;
this reduces the accuracy of the readout from byte-accuracy to near
fragment-accuracy, but we save 2-4 context switches and kernel
scheduling penalties.
- if FeedDSP runs out of data, do not flush output buffers before
notifications are sent and given the chance to provide more sound data.
Do not flush before we're down to the last fragment.
- messages to the player thread are signaled using Unix pipes instead
of Win32 synchronization primitives, to avoid having the player thread
wait for the wineserver (and context switches from/to it) before the
it can feed more data to the sound card.
- ring buffer size is increased from 30 to 192 to support some games
that fires 128 messages at once to determine DMA buffer size.
2002-08-26 21:49:42 +00:00
Patrik Stridvall d016f819f1 Added include protection for unistd.h and sys/time.h. 2002-08-17 00:43:16 +00:00
Michael Stefaniuc c8ff4da2ac Convert HMMIO to a void*. 2002-08-09 19:51:01 +00:00
Patrik Stridvall 4325554aef Fixed some issues found by winapi_check. 2002-08-09 01:07:29 +00:00
Michael Stefaniuc ec7d7b72b2 - Convert HDRVR to a void*.
- Fix declaration of DriverCallback().
2002-08-09 01:02:25 +00:00
Michael Stefaniuc c414344e2a Convert HMIXER, HMIXEROBJ to a void*. 2002-08-03 00:14:43 +00:00
Michael Stefaniuc bacc1b3b58 - Converted HWAVE, HWAVEIN, HWAVEOUT to void*.
- Fixed some HMIDI{IN,OUT}16 to HANDLE conversions.
- midiOutCacheDrumPatches16 called itself recursively in an infinite
  loop.
2002-08-02 19:02:49 +00:00
Alexandre Julliard 526531eb6c Create at most one glue file for a single dll.
Avoid the intermediate .tmp.o file when building programs.
2002-08-01 18:36:58 +00:00
Robert Lunnon 2a91e3f99b Preliminary audio driver for Solaris Libaudioio. 2002-08-01 18:22:38 +00:00
Alexandre Julliard 7cae201e3f Authors: Eric Pouech <eric.pouech@wanadoo.fr>, Michael Stefaniuc <mstefani@redhat.com>
Convert HMIDI, HMIDIIN, HMIDIOUT, HMIDISTRM to void*.
2002-08-01 18:17:51 +00:00
Nicolas Escuder 2a0dd0be05 Speed and buffer improvement, code clean up, and fix some bug
on close / reset waveout.
2002-07-31 17:23:47 +00:00
Alexandre Julliard 04b5a86c46 Merged the NAS driver written by Nicolas
Escuder <n.escuder@alineanet.com>.
2002-07-30 02:44:19 +00:00
Chris Morgan 6ecade7c84 Some dos VGA error handling. Misc TRACE changes. 2002-07-29 23:51:57 +00:00
Gerald Pfeifer 22780c814d Fixed format string. 2002-07-29 23:29:23 +00:00
Alexandre Julliard 13f2a17eb2 Convert HTASK to void* (based on a patch by Michael Stefaniuc). 2002-07-28 23:48:27 +00:00
Patrik Stridvall a3868218d0 Fixed some issues found by winapi_check. 2002-07-19 00:30:16 +00:00
Rok Mandeljc 3fb4b81379 Added Slovenian resources. 2002-07-10 03:03:46 +00:00
Eric Pouech 80884be68c Fixed another PlaySound bug (when SND_LOOP is requested). 2002-07-08 19:35:08 +00:00
Eric Pouech e3bd1361f1 Fixed a few compilation warnings. 2002-07-08 19:34:49 +00:00
Gregg Mattinson 7c4cb515b6 Cast void* to char* for pointer arithmetic. 2002-07-03 21:10:43 +00:00
Eric Pouech 34865e4c27 Fixed some more configuration issues. 2002-07-03 01:14:52 +00:00
Alexandre Julliard 958732d21c Fixed warnings. 2002-07-02 02:09:39 +00:00
Alexandre Julliard f92b7c06c2 Added some ALSA configure checks. 2002-06-28 18:31:01 +00:00
Eric Pouech a120ce015c Created an ALSA driver (with the help of David Hammerton and Marco
Pietrobono).
2002-06-28 17:40:16 +00:00
Eric Pouech d075eff2e9 Ensured full duplex mode is only used with same parameters in in/out
streams.
Some more work towards multiple audio cards support.
2002-06-28 17:31:31 +00:00
Eric Pouech 64284a8767 Fixed flags handling in sndPlaySound. 2002-06-25 02:58:48 +00:00
Alexandre Julliard 77afd6c47e Made some more spec file entries optional or unnecessary.
Fixed a few DLLName/DLLFileName mismatches.
2002-06-21 19:15:45 +00:00
Eric Pouech 7efd615e4f Fixed another regression in PlaySound. 2002-06-04 00:51:38 +00:00
Steven Edwards fb24f71e5b Porting fixes. 2002-06-04 00:50:11 +00:00
Alexandre Julliard 7cae558bdc Removed some more trailing whitespace. 2002-06-01 02:55:48 +00:00
Vincent Béron 9a62491660 Removed trailing whitespace. 2002-05-31 23:06:46 +00:00
Eric Pouech 4664903d1e Some other synchronisation issues. 2002-05-29 19:04:41 +00:00
Eric Pouech c22256a01c Check for NULL ptr in midiStreamOut. 2002-05-29 00:31:00 +00:00
Sander van Leeuwen f81982aeed mixerGetControlDetailsW: translate strings for
MIXER_GETCONTROLDETAILSF_LISTTEXT option.
2002-05-28 22:40:40 +00:00
Alexandre Julliard 261e28a775 Removed some unnecessary imports. 2002-05-23 02:46:10 +00:00
Patrik Stridvall 5e6943f421 Fixed some issues found by winapi_check. 2002-05-22 01:55:18 +00:00
Eric Pouech 48b98159ce Fixed hang in PlaySound in error cases; added registry lookup for sounds. 2002-05-22 01:52:31 +00:00
Steven Edwards 48ac89b627 Add check for <sys/ioctl.h>. 2002-05-19 22:25:02 +00:00
Alexandre Julliard 2ab7625934 Removed most imports of ntdll since we no longer import Wine internal
functions from there.
2002-05-17 03:37:12 +00:00
Eric Pouech ff8a62d8fe Fixed hangs when playing an ASCII resource. 2002-05-16 20:28:26 +00:00
Johan Gill b4f3cc9507 lpmmioinfo can sometimes, proven in the read case, be NULL. 2002-05-16 18:27:52 +00:00
Alexandre Julliard ad53383f9b Added winebuild support for generating a .dbg.c file containing the
debug channels definitions.
Made win32 the default type for spec files.
Ignore C compiler in winebuild so we can simply pass it $(DEFS).
Removed type win32 and debug_channels from spec files.
Fixed winebuild to always generate correct C identifiers (reported by
Vincent Béron).
2002-05-14 20:54:58 +00:00
Eric Pouech b93f1114de Better behavior of PlaySound (error handling, synchronization).
Removed some unnecessary tests about windows handles.
2002-05-12 03:10:26 +00:00
Alexandre Julliard 67371bcc8d Added -res option to specify resources on winebuild command-line.
Added -exe mode to generate a .spec.c for an exe without having to
provide a .spec.
Removed some no longer needed spec files.
Removed .dll extension in makefiles import specifications.
2002-05-11 23:06:32 +00:00
Eric Pouech 8be2e3d489 Let MCI drivers support the session instance loading mechanism (NULL
lParam2 in MCI_OPEN).
2002-05-11 23:02:55 +00:00
Eric Pouech bf98cf8404 Created session instance for installable drivers.
Now properly freeing library upon driver exit.
2002-05-11 22:55:29 +00:00
Alexandre Julliard 32459912dc Moved imports specification from the .spec into the Makefile so that
it can be used on platforms that don't build a .spec.c file.
2002-05-09 00:05:48 +00:00
Alexandre Julliard 140e7222e0 Removed more code at Hidenori's request. 2002-05-05 19:40:57 +00:00
Eric Pouech 90b71b5191 Fixed multi-thread access to local variables (mainly fd for
/dev/dsp).
God rid of obsolete macro.
Fixed some slight init issues.
2002-04-22 22:35:30 +00:00
Eric Pouech ef1f015652 Fixed a mismatch in wavein 16/32 mapping.
Relaxed some tests about buffer lengths.
2002-04-22 22:34:26 +00:00
Hidenori Takeshima 5d8b982b6b Added resources for Japanese. 2002-04-08 20:13:27 +00:00
Hidenori Takeshima dc31501ed2 Fixed an overflow in calculating times. 2002-04-08 20:10:10 +00:00
Eric Pouech a1e57324e4 More robust and less time consuming playback. 2002-04-01 21:02:49 +00:00
Eric Pouech 3209f949b3 Fixed size of buffers in conversion. 2002-04-01 21:02:27 +00:00
Vincent Béron 847dda4ea0 Changes some handle definitions to the proper type. 2002-03-25 20:53:35 +00:00
Chris Morgan cf5bfc44b1 wodOpen() should return MMSYSERR_ALLOCATED if the device is already
allocated.  Allow for multiple audio devices. Fix wodPlayer_reset as
with aRts we cannot cancel audio data already written to the server.
Rename some functions. Cleanup unused code.
2002-03-25 20:52:42 +00:00
Chris Morgan cc9e3ccd2a Fix range in aRts 8bit volume code. 2002-03-22 00:12:31 +00:00
Chris Morgan 9b0ba7ca2b Added aRts driver. 2002-03-21 01:38:19 +00:00
Alexandre Julliard c1bfca04e1 Changed builtin dlls file names to make it clear they are not normal
Unix libraries, and install them in $libdir/wine instead of $libdir to
avoid name conflicts in /usr/lib.
2002-03-20 22:19:06 +00:00
Alexandre Julliard 0799c1a780 Added LGPL standard comment, and copyright notices where necessary.
Global replacement of debugtools.h by wine/debug.h.
2002-03-09 23:29:33 +00:00
Patrik Stridvall 651a8ba880 Added some defines for compatibility with Windows headers. 2002-02-15 19:12:35 +00:00
Patrik Stridvall 57e5784c21 Move __stdcall/__cdecl to the right place. 2002-02-02 18:42:11 +00:00
Dimitrie O. Paun 693cca5d4d Make FIXMEs more grep-able. 2002-01-29 03:12:19 +00:00
Patrik Stridvall 74e4d21ebe Avoid wildcards in .cvsignore. 2002-01-29 03:05:12 +00:00
Andreas Mohr bfbe3b5c62 Fixed ==/!= mismatch. 2002-01-29 02:56:50 +00:00
Francois Gouget 54697dd302 Print the strerror instead of just the errno. 2002-01-21 18:00:42 +00:00
Eric Pouech f65c7d546d Now using the NT CD interface. 2002-01-13 01:46:12 +00:00
Eric Pouech 738669a709 Fixed the wodReset implementation, internal messages priority, full
duplex code, wait algorithm for feeding the OSS buffer.
2002-01-12 21:15:08 +00:00
Eric Pouech d0d7764ac0 Fix potential memory issue. 2002-01-10 18:21:07 +00:00
Alexandre Julliard 851297919b Use MapLS/UnMapLS instead of SEGPTR_* macros. 2001-12-24 20:30:24 +00:00
Eric Pouech d547450b35 Added full-duplex capability.
Added missing init for wave-in.
Fixed pause behavior in wave-out.
Added message-ring deletion.
Added experimental full-duplex capability.
2001-12-21 20:28:43 +00:00
Eric Pouech 090629242b Fixed another bunch of bugs (mainly linked to operations where file
pointer was past the end of file).
2001-12-21 20:28:09 +00:00
Eric Pouech 37083176e8 Thawed some freezes.
Cleaned up time and notification handling.
Typos fixes (Gerard).
Added breakloop support.
2001-12-14 22:44:29 +00:00
Eric Pouech d585e7a2a4 Fixed bugs in output functions (write).
Rewrote some parts for better DLL separation.
Fixed some prototypes.
Fixed mmioAdvance in write mode.
2001-12-04 19:40:28 +00:00
Simon Britnell 5ba7438df1 Fix a loop playing failure and a problem with choppy sound. 2001-11-19 02:10:50 +00:00
Eric Pouech d45f041ec2 Fixed wave(In|Out)Open when called with WAVE_MAPPED flag; some minor
16/32 API call ordering.
2001-11-13 21:58:32 +00:00
Eric Pouech fa7a8c6306 Fixed some race conditions in notification vs. operation
synchronization using the same in process message ring in waveIn as in
waveOut.
2001-11-12 15:55:37 +00:00
Simon Britnell 78bae03241 Cleaned up the wodPlayer functionality to make it easier to follow.
Changed notification to be calculated from bytes played rather than
time elapsed.
2001-11-09 20:26:59 +00:00
François Gouget 1425941e29 Fix the #include order for config.h.
Add #include "config.h" directives where needed.
2001-11-06 20:57:11 +00:00
Eric Pouech 2f9eb3b0cb Fixed dst / src lines implementation.
Added mux/mixer control for master rec.
Added framework for multiple mixers.
2001-11-05 23:53:48 +00:00
Francois Gouget 3bb9a36ee0 Spelling, grammar and a bit of comment formatting fixes. 2001-10-22 19:04:32 +00:00
Francois Gouget b60c4ce0f0 Don't print NULL strings (crashes on Solaris).
Small code maintainability tweak in ShellExecuteExA.
Two typo fixes in winmm.
2001-10-14 16:15:05 +00:00
Francois Gouget 588ff3743a Documentation updates (mainly thru vs. through). 2001-08-21 17:07:17 +00:00
Eric Pouech 96c514bdf8 Replaced memset by hand made equivalent to work around some buggy
memset implementations.
2001-08-18 16:09:41 +00:00
Eric Pouech 7321bfa006 Fixed error message and return value in case of bogus 'open all' mci
string command. Minor 32/16 optimizations and cosmetic fixes.
2001-08-15 17:40:03 +00:00
Andreas Mohr da920ee9b9 Spelling fixes. 2001-08-09 21:16:55 +00:00
Alexandre Julliard 1922c72b8a Removed unnecessary inclusion of heap.h. 2001-07-25 00:43:29 +00:00
Alexandre Julliard 5f728cae70 Removed HEAP_strdupA. 2001-07-24 21:45:22 +00:00
Patrik Stridvall bc38d6bfde - Made sure that the files that contains the declarations
of the implementated functions are included.
- Corrected mismatching prototypes.
- Cleaned up the include section.
2001-07-20 18:00:00 +00:00
Patrik Stridvall 33929be46f - Made sure that the files that contains the declarations
of implementated functions are included.
- Corrected mismatching prototypes.
- Cleaned up the include section.
2001-07-18 21:04:23 +00:00
Patrik Stridvall 044855c6ec Documentation fixes. 2001-07-11 18:56:41 +00:00
Patrik Stridvall 01d5e5b071 Documentation fixes. 2001-07-02 19:59:40 +00:00
Patrik Stridvall a274dd9105 Fixed some issues found by winapi_check. 2001-07-02 01:22:10 +00:00
Patrik Stridvall 83eb6b83a5 Fixed some issues found by winapi_check. 2001-06-28 18:02:05 +00:00
Patrik Stridvall 3ca9823941 Documentation ordinal fixes. 2001-06-20 23:03:14 +00:00
Patrik Stridvall 8b216b3d02 Documentation ordinal fixes. 2001-06-19 18:20:47 +00:00
Eric Pouech 05b85c3290 Fails mapper opening when no midi out devices are present. 2001-06-19 18:15:53 +00:00
Eric Pouech 3c39af2e75 Fixed bugs in output functions (ascend, createChunk).
Cleaned up trace messages.
Fixed some mmioOpen file name parsing.
2001-06-19 18:15:30 +00:00
Patrik Stridvall c01c1933bf Fixed some issues found by winapi_check. 2001-06-19 03:36:23 +00:00
Patrik Stridvall 172cd1b967 Fixed some issues found by winapi_check. 2001-06-11 20:16:11 +00:00
Marcus Meissner 9db72e3b58 Alias and Device Type are case insensitive. 2001-06-11 20:12:39 +00:00
Huw D M Davies 738e2461f0 Attempt to write fragments and check whether we can notify the client
after every message.
2001-05-29 20:52:23 +00:00
Andreas Mohr c2bc22b91c Spelling fixes. 2001-05-24 18:44:25 +00:00
Eric Pouech beea615126 Made midi mapper more robust.
Added channel to device/channel mapping.
Removed midiIn mapping (it doesn't exist on Windows).
2001-05-22 19:20:53 +00:00
Eric Pouech d80b4337cc Now loading the default setting for low level drivers from registry. 2001-05-22 19:19:50 +00:00
Eric Pouech 8606971607 Fixed open requests in case of error (if the physical device failed to
open, the ACM stream was left opened).
Added mapping search for waveIn devices.
2001-05-21 18:32:17 +00:00
Francois Gouget e76218dd61 Add '\n' at the end of traces. 2001-05-09 17:31:31 +00:00
Bang Jun-Young d52e89ac36 Call OSS_MidiInit() only if HAVE_OSS_MIDI is defined. 2001-05-07 18:16:57 +00:00
Bang Jun-Young 31031abaa1 Include missing errno.h. 2001-05-07 18:16:38 +00:00
James Hatheway cf459ac76d PlaySoundA should return TRUE when it stops playing sound. 2001-04-25 19:51:32 +00:00
James Hatheway 8290c3e1e7 Make sure to return our variable with the correct return value. 2001-04-20 18:28:38 +00:00
Eric Pouech 1b9e33df0c Fixed callback parameters (bogus hWave); added acm conversion for
waveIn.
2001-04-13 22:28:06 +00:00
Eric Pouech b24ed627eb Allow MCI_SET to change waveFormat for recording.
Fixed buffer handling on recording end.
Fixed size of recorded data in mmio file.
2001-04-13 22:27:11 +00:00
Eric Pouech 7a3ec5d705 Fixed some buffers issue in recording.
Zeroed unnecessary second parameter for WIM_DATA notification.
2001-04-13 22:26:51 +00:00
James Hatheway d73c906328 - MCI_SAVE should overwrite its destination file.
- widClose() is sometimes failing... MCI (in WAVE_mciRecordCallback)
  shouldn't queue up buffers if it knows we are no longer recording.
2001-03-23 23:39:28 +00:00