Commit Graph

237 Commits

Author SHA1 Message Date
Huw Davies 65ecd7b700 wineoss: Move MODM_PREPARE and MODM_UNPREPARE to the unixlib.
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Andrew Eikum <aeikum@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-04-21 18:57:53 +02:00
Huw Davies f1a11cb53c wineoss: Move MODM_LONGDATA to the unixlib.
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Andrew Eikum <aeikum@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-04-21 18:57:50 +02:00
Huw Davies 2cc89ecc10 wineoss: Move MODM_DATA to the unixlib.
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Andrew Eikum <aeikum@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-04-21 18:57:47 +02:00
Huw Davies 4e90f801f9 wineoss: Use separate functions to handle MODM_DATA for FM synths and ports.
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Andrew Eikum <aeikum@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-04-21 18:57:44 +02:00
Huw Davies f57a3916e8 wineoss: Move MODM_OPEN and MODM_CLOSE to the unixlib.
They are both moved together because of the memory
allocated for "lpExtra".

Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Andrew Eikum <aeikum@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-04-20 16:32:48 +02:00
Huw Davies 5ebc7d78aa wineoss: Add a temporary midi_out_fm_reset syscall.
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Andrew Eikum <aeikum@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-04-20 16:32:45 +02:00
Huw Davies bbe19f20a9 wineoss: Add a temporary midi_out_fm_patch syscall.
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Andrew Eikum <aeikum@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-04-20 16:32:43 +02:00
Huw Davies e37bf4e991 wineoss: Add a temporary syscall to open and close the seq fd.
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Andrew Eikum <aeikum@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-04-20 16:31:44 +02:00
Huw Davies 53eeb1162d wineoss: Store the sequencer fd in the driver struct.
This avoids using a global variable.

Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Andrew Eikum <aeikum@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-04-20 16:31:41 +02:00
Huw Davies c4d7bfddff wineoss: Move midi_init to the unixlib.
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Andrew Eikum <aeikum@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-04-19 17:34:50 +02:00
Huw Davies ce0904f4b2 wineoss: Remove preprocessor checks for SNDCTL_SEQ_NRMIDIS.
It's been in the linux kernel since at least 2005 and in OSS's
tree since at least 2008 (In both cases it's in the first commit
in the respective repos).

Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Andrew Eikum <aeikum@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-04-19 17:34:47 +02:00
Huw Davies dbb2a75aea wineoss: Remove some unused members.
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Andrew Eikum <aeikum@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-04-19 17:34:45 +02:00
Huw Davies 1a2482be2d wineoss: Move set_volumes to the unixlib.
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Andrew Eikum <aeikum@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-04-18 21:33:18 +02:00
Huw Davies 4b469fe157 wineoss: Move is_started to the unixlib.
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Andrew Eikum <aeikum@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-04-18 21:33:16 +02:00
Huw Davies 9fa0544819 wineoss: Move get_position to the unixlib.
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Andrew Eikum <aeikum@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-04-18 21:33:13 +02:00
Huw Davies 4e32993717 wineoss: Move get_frequency to the unixlib.
Technically the lock doesn't need to be taken here since
the data is static, however doing so keeps the implementation
consistent with the others.

Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Andrew Eikum <aeikum@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-04-18 21:33:11 +02:00
Huw Davies d1ab294002 wineoss: Move get_next_packet_size to the unixlib.
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Andrew Eikum <aeikum@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-04-18 21:33:08 +02:00
Huw Davies 2bb465fca1 wineoss: Move release_capture_buffer to the unixlib.
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Andrew Eikum <aeikum@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-04-15 20:54:09 +02:00
Huw Davies c35189de91 wineoss: Move get_capture_buffer to the unixlib.
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Andrew Eikum <aeikum@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-04-15 20:54:07 +02:00
Huw Davies bc839279b8 wineoss: Move release_render_buffer to the unixlib.
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Andrew Eikum <aeikum@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-04-15 20:54:05 +02:00
Huw Davies 7a5a2db11f wineoss: Move get_render_buffer to the unixlib.
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Andrew Eikum <aeikum@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-04-15 20:54:02 +02:00
Huw Davies 9ced8cc923 wineoss: Move set_event_handle to the unixlib.
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Andrew Eikum <aeikum@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-04-15 20:54:00 +02:00
Huw Davies d0089b85c5 wineoss: Move reset to the unixlib.
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Andrew Eikum <aeikum@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-04-14 09:27:03 +02:00
Huw Davies dca18a115b wineoss: Move stop to the unixlib.
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Andrew Eikum <aeikum@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-04-14 09:27:00 +02:00
Huw Davies cc8e8bc692 wineoss: Move start to the unixlib.
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Andrew Eikum <aeikum@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-04-14 09:26:58 +02:00
Huw Davies 93cc994be8 wineoss: Move timer_loop to the unixlib.
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Andrew Eikum <aeikum@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-04-14 09:26:55 +02:00
Huw Davies ebfd2e8495 wineoss: Store the period in 100ns units.
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Andrew Eikum <aeikum@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-04-14 09:26:52 +02:00
Huw Davies cdd19e3d1c wineoss: Move get_current_padding to the unixlib.
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Andrew Eikum <aeikum@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-04-14 09:26:50 +02:00
Huw Davies 984cae317b wineoss: Move get_latency to the unixlib.
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Andrew Eikum <aeikum@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-04-14 09:26:45 +02:00
Huw Davies aa9d07e630 wineoss: Move get_buffer_size to the unixlib.
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Andrew Eikum <aeikum@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-04-14 09:26:14 +02:00
Huw Davies bc81fdbf7c wineoss: Move create_stream and release_stream to the unixlib.
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Andrew Eikum <aeikum@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-04-12 21:39:42 +02:00
Huw Davies 0562266783 wineoss: Use NtAllocateVirtualMemory() to alloc the buffers returned to the user.
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Andrew Eikum <aeikum@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-04-12 21:39:42 +02:00
Huw Davies e0ec4f8c19 wineoss: Use a pthread mutex for the stream lock.
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Andrew Eikum <aeikum@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-04-12 21:39:42 +02:00
Huw Davies 8298ca9e26 wineoss: Use the sessions lock to lock the client's data.
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Andrew Eikum <aeikum@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-04-12 21:39:42 +02:00
Huw Davies 8b7ed43d8a wineoss: Store the mute state in the stream.
Despite only mute being supported in this driver, set_stream_volumes()
is called whenever the volume info is changed to match the other drivers
and to allow a more complete volume implementation in the future.

The implementation will eventually move to the unixlib.

Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Andrew Eikum <aeikum@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-04-12 21:39:42 +02:00
Huw Davies 8fc9bdff00 wineoss: Use the stream ptr to indicate the init state.
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Andrew Eikum <aeikum@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-04-12 21:39:42 +02:00
Huw Davies d4a2f4d44b wineoss: Move get_mix_format to the unixlib.
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Andrew Eikum <aeikum@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-04-11 18:19:00 +02:00
Huw Davies 12c7f79afd wineoss: Move the stream creation to AudioClient_Initialize().
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Andrew Eikum <aeikum@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-04-11 18:18:58 +02:00
Huw Davies 98624b1825 wineoss: Don't cache the oss_audioinfo in the client.
The retrieval on endpoint creation is left in for debugging
purposes.

Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Andrew Eikum <aeikum@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-04-11 18:18:55 +02:00
Huw Davies a465ecd745 wineoss: Move is_format_supported to the unixlib.
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Andrew Eikum <aeikum@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-04-11 18:18:52 +02:00
Huw Davies f9f3ece6ca wineoss: Introduce a stream structure.
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Andrew Eikum <aeikum@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-04-11 18:18:49 +02:00
Huw Davies 13d69651f6 wineoss: Use the global lock to lock the session.
Mainly for simplicity.

Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Andrew Eikum <aeikum@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-04-11 18:18:46 +02:00
Huw Davies aca2193671 wineoss: Dynamically size the devnode array.
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Andrew Eikum <aeikum@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-04-11 18:18:44 +02:00
Huw Davies 9ff920cdd9 wineoss: Explicitly store the channel count in the client.
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Andrew Eikum <aeikum@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-04-11 18:18:41 +02:00
Huw Davies ab12c81feb wineoss: Move get_endpoint_ids to the unixlib.
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Andrew Eikum <aeikum@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-04-05 20:44:44 +02:00
Huw Davies d416b200a8 wineoss: Move get_ossdevice_from_guid() earlier in the file.
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Andrew Eikum <aeikum@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-04-05 20:44:41 +02:00
Huw Davies 61d4000e38 wineoss: Add a helper to open the device.
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Andrew Eikum <aeikum@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-04-05 20:44:38 +02:00
Huw Davies 47dafdc746 wineoss: Pass a buffer to oss_clean_devnode().
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Andrew Eikum <aeikum@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-04-05 20:44:34 +02:00
Huw Davies 13a1f17f88 wineoss: Introduce a test_connect syscall.
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Andrew Eikum <aeikum@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-04-05 20:44:31 +02:00
Alexandre Julliard f0cd33c69e include: Add support for defining Win32 types as 'long' where possible.
Add -DWINE_NO_LONG_TYPES to modules that still have compilation
warnings with long types.

Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-01-27 20:38:22 +01:00