reactos.git
14 years ago[Unused ReactOS setup]
Aleksey Bragin [Thu, 12 Nov 2009 12:35:01 +0000 (12:35 +0000)]
[Unused ReactOS setup]
- Move duplicate code from LoadSetupData to a separate function
- Fix a bug on line 1054 of the original file: SetupData.LangCount should be SetupData.KbLayoutCount (copy-paste mistake). This would have probably gone unnoticed if SetupData.LangCount > SetupData.KbLayoutCount due to other end of section checking.
- Based on a patch from bug 4933.

svn path=/trunk/; revision=44116

14 years ago- Add inital support for PCI and ISA interrupts.
Stefan Ginsberg [Wed, 11 Nov 2009 22:29:16 +0000 (22:29 +0000)]
- Add inital support for PCI and ISA interrupts.
- Use different register allocation to be more efficient on certain systems.
- Add tables and initial code for Lazy IRQL support.

svn path=/trunk/; revision=44115

14 years ago- Fix building of cmidriver
Johannes Anderwald [Wed, 11 Nov 2009 20:43:58 +0000 (20:43 +0000)]
- Fix building of cmidriver
- Required a few hacks, which were documented as //HACK

svn path=/trunk/; revision=44113

14 years ago[rosapps]
Aleksey Bragin [Wed, 11 Nov 2009 18:19:42 +0000 (18:19 +0000)]
[rosapps]
- Avoid old crt names usage, by Caemyr/kjk_hyperion.

svn path=/trunk/; revision=44107

14 years agoforgot that one
Sylvain Petreolle [Wed, 11 Nov 2009 13:02:13 +0000 (13:02 +0000)]
forgot that one

svn path=/trunk/; revision=44105

14 years ago[12:14] <Usurp> kjk_hyperion: i dont understand where msvcrt is linked twice in crt_r...
Sylvain Petreolle [Wed, 11 Nov 2009 12:51:03 +0000 (12:51 +0000)]
[12:14] <Usurp> kjk_hyperion: i dont understand where msvcrt is linked twice in crt_regtest ?
[12:14] <kjk_hyperion> Usurp: that's right, you don't understand

svn path=/trunk/; revision=44104

14 years agomodified regtests/crt/crt_regtest.rbuild
KJK::Hyperion [Wed, 11 Nov 2009 11:12:55 +0000 (11:12 +0000)]
modified   regtests/crt/crt_regtest.rbuild
   Don't link msvcrt twice, bad things happen

modified   tests/dirdlg/dirdlg.rbuild
modified   winetests/msvcrt/msvcrt.rbuild
   More oldnames hacks

modified   tests/tcpsvr/tcpsvr.c
   Don't use close on sockets, use closesocket

svn path=/trunk/; revision=44103

14 years agoMore _CRTIMP love for non-ANSI symbols
KJK::Hyperion [Wed, 11 Nov 2009 11:11:58 +0000 (11:11 +0000)]
More _CRTIMP love for non-ANSI symbols

svn path=/trunk/; revision=44102

14 years ago- Fix problem with ASSERT & ASSERTMSG when compiled with g++
Johannes Anderwald [Wed, 11 Nov 2009 10:53:52 +0000 (10:53 +0000)]
- Fix problem with ASSERT & ASSERTMSG when compiled with g++

svn path=/trunk/; revision=44101

14 years ago[KS]
Johannes Anderwald [Wed, 11 Nov 2009 09:04:42 +0000 (09:04 +0000)]
[KS]
- Implement KsEnableEvent, KsEnableEventWithAllocator, KsDiscardEvent
[PORTCLS]
- Fix signalling the event
- DirectSound clients can now use IDirectSoundNotify interface to be notified of a position change

svn path=/trunk/; revision=44100

14 years agoreturn TRUE in ReadFile if there is nothing to read
Christoph von Wittich [Wed, 11 Nov 2009 08:29:08 +0000 (08:29 +0000)]
return TRUE in ReadFile if there is nothing to read

svn path=/trunk/; revision=44099

14 years agosync shell32 winetest to wine 1.1.32
Christoph von Wittich [Wed, 11 Nov 2009 07:36:49 +0000 (07:36 +0000)]
sync shell32 winetest to wine 1.1.32

svn path=/trunk/; revision=44098

14 years agomodified Makefile
KJK::Hyperion [Wed, 11 Nov 2009 03:41:14 +0000 (03:41 +0000)]
modified   Makefile
   Give poor pefixup its own echo line

modified   ReactOS-amd64.rbuild
modified   ReactOS-arm.rbuild
modified   ReactOS-i386.rbuild
   Set global linker flags globally
   Goodbye NTOSKRNL_SHARED

modified   tools/rbuild/backend/codeblocks/codeblocks.cpp
modified   tools/rbuild/backend/msvc/vcprojmaker.cpp
   Build fixes. I really want to delete these dead backends

modified   tools/rbuild/backend/mingw/linkers/ld.mak
   Makefile rule for the linker. Also generates the .lib and .exp for DLLs, and obsoletes a whole lot of shitty rbuild code

modified   tools/rbuild/backend/mingw/mingw.cpp
modified   tools/rbuild/backend/mingw/mingw.h
   Specify module type-specific linker flags... in the specification of flags for module types, instead of wherever
   Fix generation of project-global linker and NASM flags
   Give better names to the variables that contain names of BE-provided libraries
   Don't put quotes around the names of BE-provided libraries, GNU make doesn't support quoting in any way, shape or form and quotes around filenames actually break shit on Windows (see <http://reactos-blog.blogspot.com/2009/11/gnu-make-fails-on-windows-with-multiple.html>). Just install the BE in a path without spaces in it
   Typo: LFLAGS is the flags for lex, flags for linker come from LDFLAGS

modified   tools/rbuild/backend/mingw/modulehandler.cpp
modified   tools/rbuild/backend/mingw/modulehandler.h
modified   tools/rbuild/module.cpp
modified   tools/rbuild/rbuild.h
   Moved generation of linker and import library generation rules out of rbuild and into sub-makefiles. A lot of code deleted, nothing of value was lost
   More LFLAGS -> LDFLAGS
   Goodbye mangledsymbols and underscoresymbols attributes, they don't do shit other than complicating my life
   If we have to add an underscore in front of the entry point name for some architectures, how about we do it in a single place?

modified   tools/rbuild/backend/mingw/rules.mak
   Minor cosmetic change

svn path=/trunk/; revision=44091

14 years agomodified lib/3rdparty/mingw/mingw.rbuild
KJK::Hyperion [Wed, 11 Nov 2009 03:21:16 +0000 (03:21 +0000)]
modified   lib/3rdparty/mingw/mingw.rbuild
   oldnames is not an import library and dlltool --add-underscore is not an appropriate way to build it. Delete it for now

modified   base/applications/network/ftp/ftp.rbuild
modified   base/applications/winhlp32/winhlp32.rbuild
modified   base/services/dhcp/dhcp.rbuild
modified   dll/win32/crypt32/crypt32.rbuild
modified   dll/win32/mshtml/mshtml.rbuild
modified   dll/win32/setupapi/setupapi.rbuild
modified   dll/win32/wininet/wininet.rbuild
modified   lib/3rdparty/libxml2/libxml2.rbuild
   Workarounds for the removal of oldnames

modified   dll/directx/d3d8/d3d8.rbuild
   Use a file that actually exists

modified   dll/win32/crtdll/crtdll.rbuild
modified   dll/win32/msvcrt/msvcrt.rbuild
   "mangledsymbols" never did anything: remove it

modified   dll/win32/msvcrt/msvcrt.def
modified   lib/sdk/crt/crt.rbuild
   We don't actually implement j0/j1/jn/y0/y1/yn: _j0 calls __imp__j0, which is an alias for __imp___j0, which redirects back to _j0 in a perfect loop. Remove them for the time being

modified   lib/3rdparty/bzip2/bzip2.rbuild
   This was actually called unbzip2.dll. Who knew

svn path=/trunk/; revision=44090

14 years agoNon-ANSI names need _CRTIMP too
KJK::Hyperion [Wed, 11 Nov 2009 03:09:42 +0000 (03:09 +0000)]
Non-ANSI names need _CRTIMP too

svn path=/trunk/; revision=44089

14 years ago- Missed in previous commit: Fix VideoPortEnable/DisableInterrupt -- they should...
Stefan Ginsberg [Tue, 10 Nov 2009 23:01:42 +0000 (23:01 +0000)]
- Missed in previous commit: Fix VideoPortEnable/DisableInterrupt -- they should only fail if the driver didn't provide an ISR (documented).

svn path=/trunk/; revision=44086

14 years ago- Fix HalDisableSystemInterrupt -- it doesn't return anything.
Stefan Ginsberg [Tue, 10 Nov 2009 23:00:51 +0000 (23:00 +0000)]
- Fix HalDisableSystemInterrupt -- it doesn't return anything.
- Fix VideoPortEnable/DisableInterrupt -- they should only fail if the driver didn't provide an ISR (documented).

svn path=/trunk/; revision=44085

14 years agoFix Japanese bug #4776.
Dmitry Gorbachev [Tue, 10 Nov 2009 22:52:41 +0000 (22:52 +0000)]
Fix Japanese bug #4776.

svn path=/trunk/; revision=44084

14 years agosync shlwapi to wine 1.1.32
Christoph von Wittich [Tue, 10 Nov 2009 21:36:55 +0000 (21:36 +0000)]
sync shlwapi to wine 1.1.32

svn path=/trunk/; revision=44083

14 years agosync SHGetFileInfo and CommandLineToArgvW to wine 1.1.32
Christoph von Wittich [Tue, 10 Nov 2009 21:31:37 +0000 (21:31 +0000)]
sync SHGetFileInfo and CommandLineToArgvW to wine 1.1.32

svn path=/trunk/; revision=44082

14 years agopartial shell32 sync to wine 1.1.32
Christoph von Wittich [Tue, 10 Nov 2009 21:29:56 +0000 (21:29 +0000)]
partial shell32 sync to wine 1.1.32

svn path=/trunk/; revision=44081

14 years agofix ILCreateControlPanel and ILCreatePrinters
Christoph von Wittich [Tue, 10 Nov 2009 20:35:07 +0000 (20:35 +0000)]
fix ILCreateControlPanel and ILCreatePrinters

svn path=/trunk/; revision=44080

14 years agosync shell32/shelllink to wine 1.1.32
Christoph von Wittich [Tue, 10 Nov 2009 20:09:00 +0000 (20:09 +0000)]
sync shell32/shelllink to wine 1.1.32

svn path=/trunk/; revision=44079

14 years ago- Correct author of freeze.c (code was copied from cpu.c).
Stefan Ginsberg [Tue, 10 Nov 2009 16:42:31 +0000 (16:42 +0000)]
- Correct author of freeze.c (code was copied from cpu.c).

svn path=/trunk/; revision=44078

14 years ago- Fix missing initialization of KdComPortInUse, containing the base address of the...
Stefan Ginsberg [Tue, 10 Nov 2009 14:23:44 +0000 (14:23 +0000)]
- Fix missing initialization of KdComPortInUse, containing the base address of the port used by kdcom. The serial driver checks this variable to determine if it can use the port or if it should stay (the fuck) off. KdCom no longer hangs after serial driver initialization in second stage.

svn path=/trunk/; revision=44077

14 years ago[KS]
Johannes Anderwald [Tue, 10 Nov 2009 10:50:57 +0000 (10:50 +0000)]
[KS]
- Implement KsGenerateEvent

svn path=/trunk/; revision=44076

14 years ago- Remove ASSERT && add param checks
Johannes Anderwald [Tue, 10 Nov 2009 10:04:33 +0000 (10:04 +0000)]
- Remove ASSERT && add param checks

svn path=/trunk/; revision=44075

14 years ago[PORTCLS]
Johannes Anderwald [Tue, 10 Nov 2009 10:01:25 +0000 (10:01 +0000)]
[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

14 years agofix a preprocessor bug
Timo Kreuzer [Tue, 10 Nov 2009 01:47:09 +0000 (01:47 +0000)]
fix a preprocessor bug

svn path=/trunk/; revision=44068

14 years ago- Add KCALLOUT_FRAME to define the kernel callback stack layout during user mode...
Stefan Ginsberg [Mon, 9 Nov 2009 23:19:03 +0000 (23:19 +0000)]
- Add KCALLOUT_FRAME to define the kernel callback stack layout during user mode callbacks. Define the NextCallback and FramePointer members of the debugger data block more portably with this.
- AMD64's is a copy of x86's to match asm.h's the assembly offsets. ARM's is a stub containing two necessary members to have some offsets for the debugger data block.
- Add ARM stub for KiCallUserMode as this is referenced from the debugger data block.

svn path=/trunk/; revision=44063

14 years ago- Fix unsigned/signed compare, spotted by Christoph
Stefan Ginsberg [Mon, 9 Nov 2009 23:07:04 +0000 (23:07 +0000)]
- Fix unsigned/signed compare, spotted by Christoph

svn path=/trunk/; revision=44062

14 years ago- Implement the generic bus handler support and initialization.
Stefan Ginsberg [Mon, 9 Nov 2009 22:59:49 +0000 (22:59 +0000)]
- Implement the generic bus handler support and initialization.
- Add missing hack flags for ACPI hacks.
- Add the hack flags to the registry.

svn path=/trunk/; revision=44061

14 years ago... on the other hand, O_BINARY is a Win32 thing
KJK::Hyperion [Mon, 9 Nov 2009 22:56:06 +0000 (22:56 +0000)]
... on the other hand, O_BINARY is a Win32 thing

svn path=/trunk/; revision=44060

14 years agomodified base/shell/explorer/notifyhook/notifyhook.def
KJK::Hyperion [Mon, 9 Nov 2009 22:49:18 +0000 (22:49 +0000)]
modified   base/shell/explorer/notifyhook/notifyhook.def
modified   dll/3rdparty/mesa32/src/drivers/windows/icd/mesa.def
modified   dll/nls/idndl/idndl.def
modified   dll/nls/normaliz/normaliz.def
modified   drivers/video/font/ftfd/freetype.def
   Soon, the rbuild "dllname" attribute will have no effect for .def files (only .spec/.pspec): prepare the sources for it by specifying the DLL name in the .def files themselves with the LIBRARY directory

svn path=/trunk/; revision=44059

14 years agomodified tools/pefixup.c
KJK::Hyperion [Mon, 9 Nov 2009 22:42:17 +0000 (22:42 +0000)]
modified   tools/pefixup.c
   MinGW provides a good enough POSIX-like environment to do away with a couple platform checks/hacks
   Print error messages on stderr instead of stdout
   Don't print anything when pefixup does nothing - "no news is good news"

svn path=/trunk/; revision=44058

14 years ago- Set and check for the correct PTE write bits on x86 SMP. The MP kernel is now funct...
Stefan Ginsberg [Mon, 9 Nov 2009 22:05:36 +0000 (22:05 +0000)]
- Set and check for the correct PTE write bits on x86 SMP. The MP kernel is now functional again.

svn path=/trunk/; revision=44057

14 years ago- Fix build with neither KDBG or _WINKD_ defined -- ReactOS KD wrapper uses the safe...
Stefan Ginsberg [Mon, 9 Nov 2009 21:38:26 +0000 (21:38 +0000)]
- Fix build with neither KDBG or _WINKD_ defined -- ReactOS KD wrapper uses the safe memory routines too, so only skip kdmemsup.c if compiling for _WINKD_.

svn path=/trunk/; revision=44054

14 years ago- Fix bug introduced 18942 revisions ago
Johannes Anderwald [Mon, 9 Nov 2009 17:43:12 +0000 (17:43 +0000)]
- Fix bug introduced 18942 revisions ago

svn path=/trunk/; revision=44050

14 years agoSimple optimization in RApps. Patch by Love Nystrom. Bug #4952.
Dmitry Gorbachev [Mon, 9 Nov 2009 15:34:18 +0000 (15:34 +0000)]
Simple optimization in RApps. Patch by Love Nystrom. Bug #4952.

svn path=/trunk/; revision=44049

14 years ago- HAL uses HARDWARE_PTE, not MMPTE_HARDWARE, so remove broken SMP fix
Stefan Ginsberg [Sun, 8 Nov 2009 22:17:05 +0000 (22:17 +0000)]
- HAL uses HARDWARE_PTE, not MMPTE_HARDWARE, so remove broken SMP fix

svn path=/trunk/; revision=44033

14 years ago- Fix work around for the cmpxchg8b lock errata work around -- don't set write protec...
Stefan Ginsberg [Sun, 8 Nov 2009 21:42:28 +0000 (21:42 +0000)]
- Fix work around for the cmpxchg8b lock errata work around -- don't set write protection if the kernel hasn't set it yet. Move the code out to HalpBiosDisplayReset so we can keep track of this. Also set the correct bit on SMP systems.

svn path=/trunk/; revision=44032

14 years ago- Add freeze.c to the build too
Stefan Ginsberg [Sun, 8 Nov 2009 21:22:24 +0000 (21:22 +0000)]
- Add freeze.c to the build too

svn path=/trunk/; revision=44031

14 years ago- Move processor freeze support out from x86 cpu.c to new generic freeze.c as these...
Stefan Ginsberg [Sun, 8 Nov 2009 21:10:23 +0000 (21:10 +0000)]
- Move processor freeze support out from x86 cpu.c to new generic freeze.c as these routines are quite generic.

svn path=/trunk/; revision=44030

14 years ago- Make WinLdr's loading screen display the boot method (NT) instead of operating...
Stefan Ginsberg [Sun, 8 Nov 2009 11:52:23 +0000 (11:52 +0000)]
- Make WinLdr's loading screen display the boot method (NT) instead of operating system name (Windows).

svn path=/trunk/; revision=44027

14 years ago- Fix _WINKD_ build breakage from 44023 -- missed to commit the .rbuild change for...
Stefan Ginsberg [Sun, 8 Nov 2009 11:41:35 +0000 (11:41 +0000)]
- Fix _WINKD_ build breakage from 44023 -- missed to commit the .rbuild change for the renamed kdsup.c files

svn path=/trunk/; revision=44026

14 years ago- Disable the MiCacheImageSymbols call in MmLoadSystemImage for KD too as this hack...
Stefan Ginsberg [Sun, 8 Nov 2009 01:13:49 +0000 (01:13 +0000)]
- Disable the MiCacheImageSymbols call in MmLoadSystemImage for KD too as this hack is required for rossym rather than KDBG. Fixes detection of non-boot driver images by WinDbg.
- Add another hack to freeldr.c to make sure that HAL is the second entry in the Load Order list -- detect if it isn't and insert it as the second entry manually if it isn't.
- KdbInitialize can now assume that the 2nd entry in the Load Order list is HAL, just like ExpLoadBootSymbols and KD does, so get the Loader Entry directly instead of searching for it.
- Move KiBootTss and KiBootGdt to freeldr.c as this is where they belong -- they are not required for NTLDR/WINLDR boot style and are only used directly in freeldr.c.
- Get rid of the AcpiTableDetected variable from freeldr.c. Instead, set the AcpiTable entry to something and make PoInitSystem check for that instead to preserve the old behavior.
- Implement KdpGetFirstParameter and KdpGetSecondParameter for ARM too -- just retrieve R3/R4 here. Also rename those macros to clarify what parameters we are retrieving.
- Add MmIsSessionAddress stub and use it from KD handle session space properly in the Memory Query API, and ASSERT that we are not trying to do a copy to/from session space in MmDbgCopyMemory as we don't handle it properly. Put this in mmdbg.c for now as we don't implement session space, and it is only called from KD right now.
- Rename the 3 kdsup.c files to kdx86.c, kdx64.c and kdarm.c to differ them from each other.
- Implement KdpAllowDisable -- just check if any processor breakpoints are set on any processor in the system and disallow the disable if so. The routine is now architecture dependant, so move it to the appropriate files.
- Get rid of the MmFreeLdr* variables too. These have been deprecated for some time now.
- The ModuleObject and ImageBaseAddress parameters of MmLoadSystemImage are not optional so don't treat them as such, and don't zero initialize them as callers shouldn't rely on this.
- Set LDRP_ENTRY_NATIVE instead of LDRP_COMPAT_DATABASE_PROCESSED to mark the image as a native image. Also fix the value of LDRP_ENTRY_NATIVE.
- Fix definition of LDR_DATA_TABLE_ENTRY -- the Checksum member should be in the union too.
- Remove some unnecessary externs for stuff we now define globally in the kernel headers.
- Rename some variables in KD to better match the logic.
- Move some x86 only stuff from global ke.h and ke_x.h to the x86 dependent ke.h. Remove DR_ACTIVE_MASK as it has been deprecated/unused for a while now.

svn path=/trunk/; revision=44023

14 years ago- Add HAL PCI tables required for future work.
Stefan Ginsberg [Sun, 8 Nov 2009 00:22:29 +0000 (00:22 +0000)]
- Add HAL PCI tables required for future work.

svn path=/trunk/; revision=44022

14 years ago - Stop using the TCPLock to protect all entries into the IP lib
Cameron Gutman [Sat, 7 Nov 2009 20:41:57 +0000 (20:41 +0000)]
 - Stop using the TCPLock to protect all entries into the IP lib
 - Instead use TCPLock only to protect entries into oskittcp

svn path=/trunk/; revision=44021

14 years ago- Add defines needed by explorer-new. Fixes build.
Aleksey Bragin [Sat, 7 Nov 2009 20:18:04 +0000 (20:18 +0000)]
- Add defines needed by explorer-new. Fixes build.

svn path=/trunk/; revision=44019

14 years ago- Remove accidentally committed Wineisms. Build is fixed.
Aleksey Bragin [Sat, 7 Nov 2009 19:53:41 +0000 (19:53 +0000)]
- Remove accidentally committed Wineisms. Build is fixed.

svn path=/trunk/; revision=44015

14 years ago[comctl32]
Aleksey Bragin [Sat, 7 Nov 2009 19:42:57 +0000 (19:42 +0000)]
[comctl32]
- Fix a critical bug in TOOLTIPS_NotifyFormat. Its first parameter changed from HWND to infoPtr pointer, however the function was not updated accordingly.

svn path=/trunk/; revision=44014

14 years ago- Update commctrl.h to Wine-1.1.31.
Aleksey Bragin [Sat, 7 Nov 2009 19:34:59 +0000 (19:34 +0000)]
- Update commctrl.h to Wine-1.1.31.

svn path=/trunk/; revision=44013

14 years agoFix keyboard navigation of menus (up/down keys)
KJK::Hyperion [Sat, 7 Nov 2009 19:21:13 +0000 (19:21 +0000)]
Fix keyboard navigation of menus (up/down keys)
Patch by IJM <mailnew2ster AT mail.ru>

svn path=/trunk/; revision=44012

14 years ago - Remove TCPSleep and TCPWakeup (we make all oskittcp sockets non-blocking)
Cameron Gutman [Sat, 7 Nov 2009 18:12:58 +0000 (18:12 +0000)]
 - Remove TCPSleep and TCPWakeup (we make all oskittcp sockets non-blocking)
 - Crash ROS better in oskittcp_die

svn path=/trunk/; revision=44010

14 years agoUnbreak build
KJK::Hyperion [Sat, 7 Nov 2009 17:24:06 +0000 (17:24 +0000)]
Unbreak build

svn path=/trunk/; revision=44006

14 years agoglobally-defined CFLAGS, CXXFLAGS, etc. will now work, and override C compiler flags...
KJK::Hyperion [Sat, 7 Nov 2009 16:56:52 +0000 (16:56 +0000)]
globally-defined CFLAGS, CXXFLAGS, etc. will now work, and override C compiler flags, C++ compiler flags, etc. for all modules. Our makefile build system now a little closer to a real makefile build system

svn path=/trunk/; revision=44003

14 years agoDon't uppercase module name in _TARGET macros. This commit will amazingly not trigger...
KJK::Hyperion [Sat, 7 Nov 2009 15:20:45 +0000 (15:20 +0000)]
Don't uppercase module name in _TARGET macros. This commit will amazingly not trigger a full rebuild

svn path=/trunk/; revision=44000

14 years ago[DSOUND]
Johannes Anderwald [Sat, 7 Nov 2009 13:49:01 +0000 (13:49 +0000)]
[DSOUND]
- Add more checks IDirectSoundCapture::CreateCaptureBuffer
- Implement IDirectSoundNotify interface
- Needs work from ks / portcls to work on formats supported natively by the driver

svn path=/trunk/; revision=43997

14 years ago- Add a few constants and types required event handling
Johannes Anderwald [Sat, 7 Nov 2009 12:57:07 +0000 (12:57 +0000)]
- Add a few constants and types required event handling

svn path=/trunk/; revision=43996

14 years agoReport spoolsv service status at startup.
Sylvain Petreolle [Sat, 7 Nov 2009 11:43:06 +0000 (11:43 +0000)]
Report spoolsv service status at startup.
this fixes 1 advapi32:service test.

svn path=/trunk/; revision=43995

14 years ago[DSOUND_NEW]
Johannes Anderwald [Sat, 7 Nov 2009 03:43:56 +0000 (03:43 +0000)]
[DSOUND_NEW]
- Implement stereo to mono channel conversion
- Create a thread which performs the mixing
- Fixes messed up voice recording in Skype 3.6

svn path=/trunk/; revision=43994

14 years ago- Refactor stubbed HAL resource report slightly.
Stefan Ginsberg [Fri, 6 Nov 2009 23:55:08 +0000 (23:55 +0000)]
- Refactor stubbed HAL resource report slightly.
- Move the resource routines to their own file instead of sysinfo.c.
- Add missing members to PCIPBUSDATA.
- Kill old, unused generic.rbuild.

svn path=/trunk/; revision=43991

14 years agoWhiners...
Arch Blackmann [Fri, 6 Nov 2009 23:35:28 +0000 (23:35 +0000)]
Whiners...

svn path=/trunk/; revision=43990

14 years agoImplement printout the the state tables. It seems to work fine, but the tool doesn...
Arch Blackmann [Fri, 6 Nov 2009 22:42:26 +0000 (22:42 +0000)]
Implement printout the the state tables. It seems to work fine, but the tool doesn't yet generate the modified keys (shift+, ctrl+, etc) for each virtual key. This is the last thing that remains.

svn path=/trunk/; revision=43989

14 years ago- Fix check
Johannes Anderwald [Fri, 6 Nov 2009 17:00:20 +0000 (17:00 +0000)]
- Fix check

svn path=/trunk/; revision=43988

14 years agoImplement support for writing the virtual key to WCHAR translation for different...
Arch Blackmann [Fri, 6 Nov 2009 00:38:04 +0000 (00:38 +0000)]
Implement support for writing the virtual key to WCHAR translation for different shift states.
Only 2 shift states are supported for now, I have to add a lot more output generation code to get at least 3 states up and running.

svn path=/trunk/; revision=43985

14 years agoAdd table of shift state combinations, and add table of shift state types.
Arch Blackmann [Fri, 6 Nov 2009 00:37:06 +0000 (00:37 +0000)]
Add table of shift state combinations, and add table of shift state types.

svn path=/trunk/; revision=43984

14 years agoPrint out more state-related tables and information (still missing one large chunk...
Arch Blackmann [Thu, 5 Nov 2009 23:58:38 +0000 (23:58 +0000)]
Print out more state-related tables and information (still missing one large chunk of data). Print out the key and extended key tables for the layout. Fix up some more code.
The C source is almost fully complete for the English US test layout KLC!

svn path=/trunk/; revision=43983

14 years ago[cdfs]
Michael Martin [Thu, 5 Nov 2009 23:43:57 +0000 (23:43 +0000)]
[cdfs]
- CdfsVerifyVolume: Disable the delivery of normal Kernel APC's before acquiring resource and re-enable APC's after releasing resource. Fixes ASSERT from ntoskrnl/ex/resource.c. Noticed by Stefan.

svn path=/trunk/; revision=43982

14 years agoAdd more support for shift state output. The tool now updates CharModifiers table...
Arch Blackmann [Thu, 5 Nov 2009 19:55:57 +0000 (19:55 +0000)]
Add more support for shift state output. The tool now updates CharModifiers table based on the shift states present in the layout, building both the modification number and the key name based on the virtual key-> name table.

svn path=/trunk/; revision=43978

14 years agoGenerate modifier table. Generate extended scancode table X. Generate extended scanco...
Arch Blackmann [Thu, 5 Nov 2009 19:25:41 +0000 (19:25 +0000)]
Generate modifier table. Generate extended scancode table X. Generate extended scancode table Y.

svn path=/trunk/; revision=43977

14 years agoAdd table of modifiers.
Arch Blackmann [Thu, 5 Nov 2009 19:24:47 +0000 (19:24 +0000)]
Add table of modifiers.

svn path=/trunk/; revision=43976

14 years agoCreate layout entries for built-in non-redefined scancodes as well, based on the...
Arch Blackmann [Thu, 5 Nov 2009 19:24:24 +0000 (19:24 +0000)]
Create layout entries for built-in non-redefined scancodes as well, based on the 110-key table (mostly things like the extended keys/SpeedRacer/MediaButtons, etc).

svn path=/trunk/; revision=43975

14 years ago[shell32]
Aleksey Bragin [Thu, 5 Nov 2009 13:27:52 +0000 (13:27 +0000)]
[shell32]
- Remove extra semicolon, spotted by Gabriel.

svn path=/trunk/; revision=43973

14 years ago[shell32]
Aleksey Bragin [Thu, 5 Nov 2009 10:07:16 +0000 (10:07 +0000)]
[shell32]
Gabriel Ilardi
- Properly stub SHSetUnreadMailCountW and SHGetUnreadMailCountW to unregress Thunderbird and possibly other email clients.
See issue #4940 for more details.

svn path=/trunk/; revision=43971

14 years agoThe tool now generates 75% of a typical keyboard layout C file. Lots of stuff still...
Arch Blackmann [Thu, 5 Nov 2009 05:20:01 +0000 (05:20 +0000)]
The tool now generates 75% of a typical keyboard layout C file. Lots of stuff still missing, but most of the annoying work is done now... it just has to start filling in the dynamic data.
A full-fledged file will have ligature data, up to 8 shift states, dead keys, etc, but that's not stuff we'll have to deal with at first for simple layouts.
By tomorrow we should be able to fully process and generate latin-alphabet-based language keyboard layouts.

svn path=/trunk/; revision=43970

14 years agoNow write out the DEF file (okay that was too easy).
Arch Blackmann [Thu, 5 Nov 2009 02:04:04 +0000 (02:04 +0000)]
Now write out the DEF file (okay that was too easy).

svn path=/trunk/; revision=43967

14 years agoKbdtool can now create the resource (RC) file as well!
Arch Blackmann [Thu, 5 Nov 2009 01:57:08 +0000 (01:57 +0000)]
Kbdtool can now create the resource (RC) file as well!

svn path=/trunk/; revision=43966

14 years ago- Convert one more __invlpg to KeInvalidateTlbEntry
Stefan Ginsberg [Wed, 4 Nov 2009 22:51:00 +0000 (22:51 +0000)]
- Convert one more __invlpg to KeInvalidateTlbEntry

svn path=/trunk/; revision=43963

14 years ago- Oh snap. KDBG is not dead yet.
Stefan Ginsberg [Wed, 4 Nov 2009 22:49:46 +0000 (22:49 +0000)]
- Oh snap. KDBG is not dead yet.

svn path=/trunk/; revision=43962

14 years agoHoly shit Batman! KbdTool can now write out the keyboard layout header file! You...
Arch Blackmann [Wed, 4 Nov 2009 22:48:55 +0000 (22:48 +0000)]
Holy shit Batman! KbdTool can now write out the keyboard layout header file! You should get a Layout01.h if you run it on test.klc (in your current working directory).

svn path=/trunk/; revision=43961

14 years ago- Implement support for reading and writing physical memory for KD. The implementatio...
Stefan Ginsberg [Wed, 4 Nov 2009 22:40:18 +0000 (22:40 +0000)]
- Implement support for reading and writing physical memory for KD. The implementation uses a reserved mapping page to map the target physical address to. On x86 this page is located at virtual address 0xFFBFF000, and the PTE for this page is the last PTE of the nonpaged pool's PDE. Other architectures may need to reserve the PTE elsewhere.
- The physical memory support relies on several Mm variables and structures to be properly set up. Add a new flag, MiDbgReadyForPhysical, and set it when the debugger support can handle physical memory requests.
- Protect this page with a Memory Area to make the old Mm keep its dirty hands off it.
- Does not support I/O space or cache flags yet.
- Add generic KeInvalidateTlbEntry to invalidate a single TLB entry for a given address instead of flushing the whole TLB. Used by the debugger physical memory support as invalidating the whole TLB for every map and unmap of its debug PTE would incur significant overhead for large copies. Replace direct usage of __invlpg() with this in x86 code too.
- Fix incorrect cache flag check and set in KdpRead/WritePhysicalmemory for write combined requests. The debugger's Uncached flag was checked instead of the Write Combined flag, and the debuggers Write Combine number (0x3) was set instead of Mm's flag (0x20).
- Fix implementation of MmIsAddressValid (at least for x86; other architectures will need more checks). Just check the Address' PDE and PTE valid bits instead of using Memory Areas.
- Add missing ASSERTs to ensure the Memory Areas for paged pool, the PCR page, and the Shared User Data page are created.
- Add missing Memory Area for the 2 pages HAL currently uses for its own mappings on x86 -- previously, those pages could have been allocated by other parts of the OS, which would have resulted in serious corruptions.

svn path=/trunk/; revision=43960

14 years agoRefactoring and cleanup. Start fleshing out the output phase. Start handling exit...
Arch Blackmann [Wed, 4 Nov 2009 22:07:29 +0000 (22:07 +0000)]
Refactoring and cleanup. Start fleshing out the output phase. Start handling exit correctly. Fix a bug in DoLAYOUT. Nothing new to see here...

svn path=/trunk/; revision=43959

14 years ago- Finish the work around for the Pentium cmpxchg8b lock errata: We detected the errat...
Stefan Ginsberg [Wed, 4 Nov 2009 21:57:32 +0000 (21:57 +0000)]
- Finish the work around for the Pentium cmpxchg8b lock errata: We detected the errata and allocated the 7 first IDT entries on a write protected page, but the final piece of the work around, detecting the write fault ti the Invalid Opcode handler, was missing. Implemented this in the page fault handler to detect and dispatch the write fault to the Invalid Opcode handler.
- Fix the "fix" of un-protecting the 7 IDT entries on P5 in HAL's BIOS call code when setting the custom Invalid Opcode handler. The IDT was unprotected but the write protection wasn't reapplied after the BIOS call, breaking the work around.

Other:
- KdDebuggerEnabled is a BOOLEAN, so don't do a dword compare in KeUpdateSystemTime.
- Use better comment for the hack where we always allow page faults to be handled, even if they the fault occured with interrupts disabled.

svn path=/trunk/; revision=43958

14 years agoAdd some helpful debug output to LAYOUT parsing, and enable DoLAYOUT code. The tool...
Arch Blackmann [Wed, 4 Nov 2009 19:52:36 +0000 (19:52 +0000)]
Add some helpful debug output to LAYOUT parsing, and enable DoLAYOUT code. The tool is able to fully decode/parse the test.klc English US layout file!

svn path=/trunk/; revision=43950

14 years agoImplement getCharacterInfo so the tool can now handle most LAYOUT entries, but not...
Arch Blackmann [Wed, 4 Nov 2009 19:38:21 +0000 (19:38 +0000)]
Implement getCharacterInfo so the tool can now handle most LAYOUT entries, but not complicated ligature entries (dead keys are fine though). Also cleaned up the parsing loop of DoLAYOUT to avoid a goto, and finally added detection of SGCAP entries (in which case the tool will fail, since these are complex and not needed for now).
The main parsing loop is pretty much done, now the tool "just" has to merge the states and perform a check for duplicate entries. Then it'll be ready to generate the output files.

svn path=/trunk/; revision=43949

14 years agosync wininet with wine 1.1.32
Christoph von Wittich [Wed, 4 Nov 2009 11:16:25 +0000 (11:16 +0000)]
sync wininet with wine 1.1.32

svn path=/trunk/; revision=43948

14 years agoStarted adding support for reading the different character states and the cap data...
Arch Blackmann [Wed, 4 Nov 2009 04:49:00 +0000 (04:49 +0000)]
Started adding support for reading the different character states and the cap data (including detecting SGCAP). Now the tool has to determine the type of each character defined at every stage (dead, valid, invalid, ligature, etc...) and save the character in the appropriate slot. Dead and other keys are currently handled, as are undefined keys.
Major work remains to be done...

svn path=/trunk/; revision=43947

14 years ago- Add sanity checks
Johannes Anderwald [Wed, 4 Nov 2009 02:16:49 +0000 (02:16 +0000)]
- Add sanity checks
- Implement IDirectSoundCaptureBuffer8::Stop
- Implement changing the stream format for secondary buffers
- Silence debug flood

svn path=/trunk/; revision=43946

14 years ago[KS]
Johannes Anderwald [Wed, 4 Nov 2009 01:54:19 +0000 (01:54 +0000)]
[KS]
- Fix a bug in KsCancelIo which accessed already freed memory
[PORTCLS]
- Cancel all audio stream irps when the it is used in looped stream mode. Fixes re-opening of playback / capture devices in DSound.
- Remove dead code

svn path=/trunk/; revision=43945

14 years agoStart implementing the long task of DoLAYOUT to process the big "meat" of a KLC file...
Arch Blackmann [Tue, 3 Nov 2009 22:57:26 +0000 (22:57 +0000)]
Start implementing the long task of DoLAYOUT to process the big "meat" of a KLC file: the keyboard layout. Implement the table of recognized virtual keys (and the translation matrix). Add support for hex-entered keys (0x...).
The tool does some minimal error checking for now, and attempts to begin parsing the LAYOUT section, but fails miserably and the code won't execute unless you've enabled verbose mode. I'm just using this commit as a checkpoint for now.
Also fixed SCVK structure to use the last member as a state flag.
Finally, added definitions for LAYOUTENTRY which will keep track of each row's column's values in the LAYOUT.

svn path=/trunk/; revision=43944

14 years ago- Fix checking of flags found by Ged
Johannes Anderwald [Tue, 3 Nov 2009 22:30:36 +0000 (22:30 +0000)]
- Fix checking of flags found by Ged
- Remove unsupported DSBLOCK_FROMWRITECURSOR

svn path=/trunk/; revision=43942

14 years ago- Implement IDirectSoundCaptureBuffer8::Lock, IDirectSoundCaptureBuffer8::Unlock
Johannes Anderwald [Tue, 3 Nov 2009 22:11:43 +0000 (22:11 +0000)]
- Implement IDirectSoundCaptureBuffer8::Lock, IDirectSoundCaptureBuffer8::Unlock
- Fix pin handle leakage

svn path=/trunk/; revision=43941

14 years ago- Fix one more dsound_winetest dsound8 failure
Johannes Anderwald [Tue, 3 Nov 2009 19:20:59 +0000 (19:20 +0000)]
- Fix one more dsound_winetest dsound8 failure
- Register IDirectSound8, IDirectSoundCapture8 with COM

svn path=/trunk/; revision=43936

14 years ago[csrss]
Aleksey Bragin [Tue, 3 Nov 2009 19:18:39 +0000 (19:18 +0000)]
[csrss]
- Route unhandled messages to DefWndProc, as it's usually done for every window proc.

svn path=/trunk/; revision=43935

14 years ago[csrss]
Aleksey Bragin [Tue, 3 Nov 2009 19:03:11 +0000 (19:03 +0000)]
[csrss]
- Paint the desktop only when getting WM_ERASEBKGND message, and do nothing in WM_PAINT. This is the behavior Windows and Wine implement.
- Add WM_CLOSE stub-handler, though it doesn't change much now - all messages unhandled by the switch are going to return "0" since this proc doesn't call DefWndProcHandler.

svn path=/trunk/; revision=43934

14 years ago[DSOUND]
Johannes Anderwald [Tue, 3 Nov 2009 18:54:52 +0000 (18:54 +0000)]
[DSOUND]
- Partly implement IDirectSound8::GetCaps
- Implement IDirectSound8::Compact
- Verify if wrong guid is passed in IDirectSound8::Initialize
- Allow construction of IDirectSound8 object via CoCreateInstance
- Fix more dsound_winetest failures
- dsound_winetest dsound is now down to 31 / 178 failures

svn path=/trunk/; revision=43933

14 years ago- Partially revert 43747
Johannes Anderwald [Tue, 3 Nov 2009 11:47:06 +0000 (11:47 +0000)]
- Partially revert 43747
See issue #4936 for more details.

svn path=/trunk/; revision=43931

14 years ago- Add a few sanity checks
Johannes Anderwald [Tue, 3 Nov 2009 11:43:33 +0000 (11:43 +0000)]
- Add a few sanity checks
- Check for invalid guids passed to IDirectSoundCapture::Initialize
- Add support for creating IDirectSoundCapture object via CoCreateInstance
- Close pin handle when the capture buffer is released
- Implement IDirectSoundCaptureBuffer::GetCaps, IDirectSoundCaptureBuffer::GetCurrentPosition, IDirectSoundCaptureBuffer::GetFormat, IDirectSoundCaptureBuffer::GetStatus, IDirectSoundCaptureBuffer::Start
- Compute a compatible pin format when the format is not supported natively by the driver
- Fix shadowing of global variable (Usurp)
- Verify that directsound global info has already initialized in IDirectSound8::Initialize
- dsound now fails 49/650 on dsound_winetest test:capture (mixing needs to implemented) The remaining tests fail due to unimplemented functionality in portcls / ks / dsound

svn path=/trunk/; revision=43930

14 years ago- There is no reason to use the Kf* routines for IRQL and Spinlocks directly in HAL...
Stefan Ginsberg [Mon, 2 Nov 2009 22:54:02 +0000 (22:54 +0000)]
- There is no reason to use the Kf* routines for IRQL and Spinlocks directly in HAL -- they are defined to the Kf* versions on x86 anyway, so use the Ke* equivalents exclusively.

svn path=/trunk/; revision=43929