Commit graph

24 commits

Author SHA1 Message Date
Colin Finck c2c66aff7d Git conversion: Make reactos the root directory, move rosapps, rostests, wallpapers into modules, and delete rossubsys. 2017-10-03 07:45:34 +00:00
Johannes Anderwald 9c7dc2437e - Fix build
svn path=/trunk/; revision=50878
2011-02-23 17:15:13 +00:00
Johannes Anderwald dfeb7b0d1c [PORTCLS]
- Re-add the hack for gcc

svn path=/trunk/; revision=50877
2011-02-23 15:14:12 +00:00
Johannes Anderwald 80cc7f2ee8 [PORTCLS]
- Remove the oldest hack in portcls
- Please report any regression(s)

svn path=/trunk/; revision=50850
2011-02-20 23:01:14 +00:00
Johannes Anderwald 5876e615b5 [KS]
- Fix several bugs in KsProbeStreamIrp
- If requestor is KernelMode - just save a pointer in Irp->AssociatedIrp.SystemBuffer (currently not used)
- If requestor is UserMode mark irp as buffered. Also set Flag IRP_INPUT_OPERATION when the ioctl is IOCTL_KS_READ_STREAM. This is important to propagate modifications to KSSTREAM_HEADERS (in particular DataUsed member)
- ReactOS KS can now be used in WinXP in combination with KSStudio. In order to make it fully work, ks needs to implement software bus functions
[PORTCLS]
- Rewrite internal irp queue handling
- It now supports multiple KSSTREAM_HEADERs per Irp, variable sized KSSTREAM_HEADERs per irp.
- Store the mapped virtual address not in the KSSTREAM_HEADER, as user programs will receive then invalid addresses
- Add checks whether this irp is for an sink pin or source pin
- Fix multiple bugs when the pin is looped buffer mode (How did this work before?)
- ReactOS portcls + WinXP now properly works with audio recording
[WDMAUD_KERNEL]
- Don't free associated stream header anymore
- Tested with VBox 3.2.10 + VmWare Player 3.1.2 + WinXP 

svn path=/trunk/; revision=49457
2010-11-03 11:16:33 +00:00
Johannes Anderwald 0d136362a0 [PORTCLS]
- Remove silence buffer hack
- Stub DRM Property Handler
- Before stopping the audio pin, fill the dma buffer with silence samples
- create a subdevice descriptor for instantiated pins too

svn path=/trunk/; revision=49242
2010-10-23 18:42:59 +00:00
Johannes Anderwald 4b5747df27 [PORTCLS]
- Fix check if the pin can be instantiated another time
- Remove hack to close old
- Add function FreePin to remove its old reference
- Fix memory leaks / reference leaks in WavePci pin implementation
- Fix memory / reference leaks in WavePci Close implementation

svn path=/trunk/; revision=49238
2010-10-23 12:10:56 +00:00
Jérôme Gardou af95756f02 Merge 48064 from yarotows
This had nothing to do in yarotows in the first place

svn path=/trunk/; revision=48065
2010-07-15 19:19:48 +00:00
Johannes Anderwald 309fb1c02a [PORTCLS]
- Implement a function to retrieve the current acquired mapping tag range of the miniport driver
- Call RevokeMappings when audio pin is stopped

svn path=/trunk/; revision=45862
2010-03-05 10:11:54 +00:00
Johannes Anderwald 95f5adb673 [PORTCLS]
- More cleanup
- Only copy audio bytes to common buffer when the audio pin is in the running state
- Only notify miniport when the audio pin is in the running state

svn path=/trunk/; revision=45860
2010-03-05 09:43:42 +00:00
Johannes Anderwald e3fb834a19 [PORTCLS]
- Remove dead code
- Disable last mapping failed status when a new mapping is inserted
- Notify IMiniportWavePciStream::MappingAvailable when a new mapping has arrived and the last one has failed
- Return STATUS_NOT_FOUND in IPortWavePciStream::GetMapping when no mapping is available
- Don't stop stream when no mapping is currently available 

svn path=/trunk/; revision=45859
2010-03-05 09:09:14 +00:00
Johannes Anderwald dcb1336203 [PORTCLS]
- Implement handling of enabling / disabling events
- Implement firing of events when certain position is reached
- Code not yet used as ks needs more work

svn path=/trunk/; revision=44074
2009-11-10 10:01:25 +00:00
Johannes Anderwald 650fc71047 - Fix retrieving audio position
svn path=/trunk/; revision=43869
2009-10-31 10:38:25 +00:00
Johannes Anderwald 46c8396918 - Implement looped streaming (needed for dsound bringup)
- Implement GetPosition handler for looped streaming, WIP

svn path=/trunk/; revision=43868
2009-10-31 08:26:26 +00:00
Johannes Anderwald 25db485c93 [PORTCLS]
- Silence most dprints of portcls
- Remove dead code
- Fix a bug in PcCreateSubdeviceDescriptor

svn path=/trunk/; revision=43618
2009-10-19 18:54:01 +00:00
Johannes Anderwald ac9e8c032c - Revert accidental change
svn path=/trunk/; revision=43502
2009-10-15 20:29:04 +00:00
Johannes Anderwald 89bda0c12e - Fix various bugs such as wrong function definitions, using of uninitialized variables
- Add macros which are not present in the WDK
- Check return type of synchronized interrupt routine
- Use PcHandlePropertyWithTable IPortPinWavePci
- Remove IServiceSink implementation from IPortWaveRt as it is a hack
- Add a small hack to IResource list implementation as prefast doesnt find decl of NumberOfEntries
- Fix build

svn path=/trunk/; revision=43437
2009-10-13 12:29:41 +00:00
Johannes Anderwald 0aa48e9268 [PORTCLS]
- Store MiniportStream & pin instance in subdevice descriptor
- Simplify irp handling code in class IIrpStream
- Rewrite CPortPinWaveCyclic code to handle property request. It now uses PcHandlePropertyWithTable, which calls the supported property request handlers via a callback. The code is now a lot cleaner as KsPropertyHandler peforms input & output length checks and also handles basic support requests
- Implement a Audio position handler for CPortPinWaveCyclic
- Use the IDmaChannel::CopyFrom when copying sound bytes from an dma buffer. Fixes recording of sound with KsStudio
- Make sure that the GUID_NULL handler only adds guid which are not already present in the guid array. Fixes duplicate entries of properties of Nodes in KsStudio
- Handle Basic Support requests in a default way when the driver doesnt provide a BasicSupport handler

svn path=/trunk/; revision=43414
2009-10-12 19:20:33 +00:00
Dmitry Gorbachev 9c974bb786 Avoid GCC warnings: deprecated conversion from string constant to 'WCHAR*'.
svn path=/trunk/; revision=43302
2009-10-05 14:13:09 +00:00
Johannes Anderwald f187acf5ef - Add KSPROPSETID_Audio guid
- Allocate data format after successful initialization of IPinWaveCyclic
- Store Miniport Adapter in subdevice descriptor
- Implement GUID_NULL handler for topology nodes 
- Implement setting / retrieving properties for topology nodes

svn path=/trunk/; revision=43258
2009-10-02 21:55:53 +00:00
Johannes Anderwald 3f5443deba - Implement PcHandlePropertyWithTable
- Use PcHandlePropertyWithTable to handle IOCTL_KS_PROPERTY requests
- Remove dead code

svn path=/trunk/; revision=43223
2009-09-29 10:46:30 +00:00
Johannes Anderwald efc1228ec6 - Rewrite registering physical connection handling to support KSPROPERTY_PIN_PHYSICALCONNECTION
svn path=/trunk/; revision=43175
2009-09-27 00:50:06 +00:00
Johannes Anderwald 71333f2f32 - Add back PHYSICAL_ADDRESS workarround for IDmaChannel::PhysicalAddress
- Only define guids for gcc
- Add missing PURE interface function definitions
- Silence debug spam
- Initialize ResourceList members
- Fix calculation when allocating new resources entries
- Fix building of portcls with msvc

svn path=/trunk/; revision=43044
2009-09-13 22:13:48 +00:00
Johannes Anderwald ad2cf72549 - Convert portcls to a C++ driver
- Tested with Vbox 2.2.4 + AC97 with Winamp
- WIP, Testing recommended

svn path=/trunk/; revision=43026
2009-09-11 06:33:55 +00:00
Renamed from reactos/drivers/wdm/audio/backpln/portcls/interfaces.h (Browse further)