- Implement FatiQueryNameInformation. It doesn't work right now due to missing file names in the FCB record.
- Make a stub for FatSetFcbNames.
svn path=/trunk/; revision=43324
- Use KsProbeStreamIrp in wdmaud to probe user buffers
- Remove a few hacks which were required to pass down irps to portcls
[PORTCLS]
- Check if there is an automation table
[SYSAUDIO]
- Release file object of pin to prevent reference leak
--
- Audio stack now reacts faster as it now longer copies audio buffers in kernel mode and instead locks down the user buffers. In addition it uses less memory to do the same work.
svn path=/trunk/; revision=43321
- Implement MIXER_GETLINECONTROLSF_ONEBYID for WdmAudGetLineControls
- Clear MIXER_OBJECTF_HMIXER from Flags
- Fix a bug SetGetVolumeControlDetails which fixes retrieving current volume level (verified by sndvol32.exe from XP / mmsys.cpl ReactOS)
svn path=/trunk/; revision=43315
- disable global settings from _SYSTEM_CURSORINFO and change files accordingly
- bind and load added registry keys for SystemParametersInfo
- TODO: read and set via SystemParametersInfo still incomplete
svn path=/trunk/; revision=43307
- cleanup loading mouse properties
- add function to load and store DWORD for sysparams registry keys
- TODO: check and fix the get and set cases for sysparams for the right registry key type
svn path=/trunk/; revision=43298
- Previously there was some confusion between IRPs in PendingIrpList and InFlightRequest, InFlightRequest IRPs go from AFD to a TDI transport driver (tcpip) which are sent on behalf of AFD and are cancelled upon socket destruction (IRP_MJ_CLOSE) vs. IRPs in the PendingIrpList which go from user-mode to AFD which are sent of behalf of the user and should be cancelled when handling IRP_MJ_CLEANUP
svn path=/trunk/; revision=43296
- Check KdReceivePacket return for KdPacketReceived instead of 0 for correctness.
- Use KdpDprintf instead of setting CR2 for unhandled cases.
- Add more variables to KdDebuggerDataBlock.
svn path=/trunk/; revision=43291
- Previously we would store the largest media-specific header size and add that value when creating a packet
- Makes loopback packets smaller because they have no need for a media-specific header
- Would fix packet corruption if interfaces with different media-specific headers were installed (if we supported that)
- Makes adding support for other media types easier
svn path=/trunk/; revision=43287
KD64
- Fix some 64-bit issues and some x86 specificness.
- Sub out some KdpTrap cases more properly.
- Implement support for .crash and .reboot. Does not seem to work currently because of weird issues.
- Implement KdpDprintf to send strings directly to the debugger from inside of KD64. Use it in KdEnterDebugger instead of DbgPrint so we won't try to enter the debugger recursively.
- Implement KdUpdateDataBlock to set the KeUserCallbackDispatcher pointer in the debugger block after its address is retrieved from ntdll.
- Don't assume breakpoints are 1 byte long in portable code -- use KD_BREAKPOINT_SIZE and define it per architecture.
- KdpStub: KdEnableDebugger returns NTSTATUS, not TRUE/FALSE.
Other
- wdbgexts.h: Properly define CURRENT_KD_SECONDARY_VERSION for AMD64.
- Make PsNtosImageBase pointer-sized as it should be.
- Change the definition of KDSTATUS so it is guaranteed to be 32-bit.
- Fix a critical bug in KiRestoreProcessorControlState: it didn't clear the busy flag in the TSS before reloading the task register, resulting in a GPF if we tried to reload the same register.
- Add macros for getting and setting special purpose registers (the Program Counter and the "return register") in portable code instead of using #ifdef every time. Do likewise for setting IMAGE_FILE_MACHINE_XXX, using a new IMAGE_FILE_MACHINE_ARCHITECTURE macro.
- Don't refer to the Program Counter as "Eip" in portable code.
- Define DBG_STATUS_CONTROL_C for assembly code and use it in KeUpdateSystemTime.
svn path=/trunk/; revision=43283