Commit graph

24034 commits

Author SHA1 Message Date
Aleksey Bragin
2199ae9003 Move tests from rosapps to rostests
svn path=/trunk/; revision=26010
2007-03-06 11:10:43 +00:00
Aleksey Bragin
3e98dbd825 Adding rostests as part of the tree restructure
svn path=/trunk/; revision=26009
2007-03-06 11:01:08 +00:00
Alex Ionescu
2742ba22e8 - Implement KdpQueryMemory (KdQueryMemoryApi).
- Setting and clearing breakpoints now works! (At least the simple ones with F9/bp/bc). And they actually get hit properly.

svn path=/trunk/; revision=26007
2007-03-05 20:10:26 +00:00
Alex Ionescu
4b3c677fe7 - Fixed up KdComPortInUse so that we don't crash when using TinyKRNL/Windows kdcom.dll anymore (due to serial.sys). WinDBG should work a lot better now.
- Implemented hack so that NT-style sprintf can work.
- Implement MiCacheImageSymbols and upgrade MmLoadSystemImage to load symbols for drivers/images which have a debug section.
- Implemented a case in MiResolveImageReferences which was getting hit.
- Don't leak a section object reference each time we load a driver.
- Set the LoadedImports pointer in the loader entry, and set the proper flags after loading a driver.
- Do image notifications after loading a driver, if they're enabled.

svn path=/trunk/; revision=26006
2007-03-05 19:24:54 +00:00
James Tabor
47dae7de28 Fix RosBE build
svn path=/trunk/; revision=26005
2007-03-05 17:35:37 +00:00
Alex Ionescu
5e0491122d - Implement simple breakpoints (KdWriteBreakPointApi, KdpWriteBreakpoint, KdpAddBreakpoint).
- Stepping out with WinDBG now works, but not adding breakpoints (that's KdWriteBreakpointExApi, coming up soon).
- This was supposed to be 26000 but oh well, back porting features to a locked branch seems to have won out :)

svn path=/trunk/; revision=26004
2007-03-05 17:09:44 +00:00
Magnus Olsen
c8cf34eb84 fixed dprint1 to dprint
svn path=/trunk/; revision=26001
2007-03-05 15:17:53 +00:00
Magnus Olsen
dbd1166859 tempary fix for CreateDC("DISPLAY","DISPLAY",....) until I figout some thing better
svn path=/trunk/; revision=25998
2007-03-05 15:10:26 +00:00
Alex Ionescu
5e5311f4ae - Fix KdpSetCommonSTate to clear breakpoints.
- Allow KdpReadVirtualMemory to read SharedUserData since it's now readable.
- Allow it to read user-mode pointers as well, just not null-pointers.
- Fix KdpReportExceptionStateChange by implementing DumpTraceData. Now the crash in ndis.sys gets caught.
- Next up: implement breakpoints so that stepping out works.

svn path=/trunk/; revision=25997
2007-03-05 03:23:58 +00:00
Alex Ionescu
e707b70756 - Add proper bootcd/install freeldr.ini flags to allow KD debugging to work.
- Fix KdPollBreakIn.
- Add initial debug breakpoint code to ExpInitializeExecutive.
- WinDBG now breaks at the initial breakpoint and you can continue execution from there.
- There's still a lot of weird hangs when using WinDBG, it's far from usable.

svn path=/trunk/; revision=25996
2007-03-05 02:29:46 +00:00
Alex Ionescu
05f82784bd - Stub NtSystemDebugControl.
- Fully support _WINKD_. Change this to 1, and get kdcom.dll from Windows 2003 or TinyKRNL and you'll be able to connect to WinDBG if using the right debug settings. You can now boot to desktop with WinDBG connected and see debug messages, but not much else is supported.
- Fix bugs in KeGetBugMessageText.
- Implement KeEnterKernelDebugger.

svn path=/trunk/; revision=25994
2007-03-05 01:35:43 +00:00
Alex Ionescu
aafc3a967a - Detect if reparsing is being used during IRP completion and complain.
- Free MDLs in a safer way by not actually using the Irp->MdlAddress as we're looping through them.
- Don't leak an event for each Asynchronous API anymore.
- Handle IRP_OB_QUERY_NAME completion properly.
- handle IRP_CREATE_OPERATION with a file object present.
- Use deferred delete for File Object dereferences, to speed up I/O completion.
- Clear the I/O Stack Location when parsing completion stacks.
- Support SL_ERROR_RETURNED during completion routines.

svn path=/trunk/; revision=25993
2007-03-05 00:47:19 +00:00
Hervé Poussineau
030a4abe86 Convert text to multibyte before displaying it
svn path=/trunk/; revision=25992
2007-03-04 23:26:30 +00:00
Hervé Poussineau
abfa7fb417 Some reformatting, no code change
svn path=/trunk/; revision=25991
2007-03-04 23:18:28 +00:00
Aleksey Bragin
55a11ded1b Fix compiling in proper npfs mode.
svn path=/trunk/; revision=25989
2007-03-04 21:14:58 +00:00
Alex Ionescu
1e35f772f8 - Enable _WINKD_ in config.rbuild. Currently set to 0 and don't set it to 1 yet because it won't build yet.
- Support _WINKD_ in ntoskrnl.rbuild to build KD64 instead of KDBG/KD if it's enabled.
- Remove some incorrect kernel exports.

svn path=/trunk/; revision=25988
2007-03-04 20:52:54 +00:00
Alex Ionescu
be2645ad8a - Wrap some KDBG-specific initialization in _WINKD_ guard.
- Remove KdpDetectConflicts since our serial driver correctly uses KdComPortInUse for this (and kdcom fills it out).

svn path=/trunk/; revision=25987
2007-03-04 20:28:18 +00:00
Alex Ionescu
bf3d075381 - Add kd64.h header from branch and format it nicely.
- Add support for _WINKD_ definition to use kd64.h instead of kd.h, as well as disable usage of rossym.h
- Add KdSystemDebugControl, NtSet/QueryDebugFilterState to kdapi.c for the KD64 code.

svn path=/trunk/; revision=25986
2007-03-04 19:54:39 +00:00
Alex Ionescu
f7577eaeb7 - Enable stubs in kdcom to actually be exported (to simplfiy compatibility with KD Branch, which won't be needed soon thanks to a build flag).
- Enable call to KdDebuggerInitialize1 even in trunk, since it doesn't do anything.
- Make i8042prt stop using a reactos-only kernel export hack (KdpServiceDispatcher),and use KdSystemDebugControl instead, which is the NT version and fully-exported.
- Implement a stub KdSystemDebugControl and export it.

svn path=/trunk/; revision=25985
2007-03-04 19:20:03 +00:00
Alex Ionescu
12e7593f24 - Fix a bug in KeQueryPerformanceCounter which was reading the flags in ESI instead of ECX.
- Fix a bug in KeQueryPerformanceCounter which wasn't handling the possibility of an invalid counter value.
- Don't disable/enable interrupts in HalpInitializeClock and HalCalibratePerformanceCounter. Instead, save the flags, disable, and then restore flags, so that if interrupts were disabled initially, they'll remain that way.
- Make KeUpdateRunTime and KeUpdateSystemTime support KPRCB->SkipTick.
- Atomically check for DPC routine active by referencing fs. Also update Debug DPC time.
- Add support for detecting break-in during KeUpdateSystemTime.
- DPC Routine active is a BOOLEAN, not a ULONG. Fix the check in KeUpdateRunTime since this might've messed up a lot of things.
- Temporarily disable DbgBreakPoint during DbgPrint.
- Hang in KeQueryPerformanceCounter while WinDBG is connected is now fixed, as well as DbgPrint support. WinDBG can now remain connected and show all the DebugPrints! (But GUI doesn't boot -- yet).

svn path=/trunk/; revision=25984
2007-03-04 19:06:34 +00:00
Eric Kohl
3e6fa8fd31 Translate german resources.
svn path=/trunk/; revision=25983
2007-03-04 18:47:12 +00:00
Eric Kohl
2f8a2c2ac1 - Show disables and selected menu items.
- User the caption font to display the window text.

svn path=/trunk/; revision=25982
2007-03-04 18:41:47 +00:00
Magnus Olsen
78674981d1 split up all testcase to own file. the size are growning
svn path=/trunk/; revision=25981
2007-03-04 11:57:44 +00:00
Magnus Olsen
5b73c362ba adding so dump can decoding pCallBackFlags[0] so we do not need calc out what hardware acclations DD_CALLBACKS support.
svn path=/trunk/; revision=25980
2007-03-04 11:45:29 +00:00
Eric Kohl
9039b97b9f Users can now set bold or italic fonts.
svn path=/trunk/; revision=25978
2007-03-03 21:03:22 +00:00
Magnus Olsen
2c81a2df18 partly implement NtGdiDdReenableDirectDrawObject
this give us bit more closer getting hardware accalertions working. 

svn path=/trunk/; revision=25977
2007-03-03 20:19:56 +00:00
Alex Ionescu
c44e8d2c89 - Fix another typo in CommonDispatchException (with yet another critical flaw as a result). Sometimes, exceptions would incorrectly be detected as coming from user-mode even though CS was kernel mode. When creating the KTRAP_FRAME, the kernel would then add the Ring 3 RPL_MASK (3) (because it believed we're in usermode) to the kernel-mode CS, creating the invalid CS of 0xB, which would lead into a GPF during the iretd.
- Re-enable DebugPrint since this now works.

svn path=/trunk/; revision=25976
2007-03-03 19:49:36 +00:00
Alex Ionescu
a195100319 - Fix critical bugs in DR_TRAP_FIXUP, TRAP_PROLOG and TRAP_EPILOG which would either cause infinite loops during exceptions or corruption of the correct code path when dealing with debug registers.
- Fix a bug in KiRecordDr7 setting the new DR7 mask.
- Make KiEspToTrapFrame thread-safe by raising to APC_LEVEL to make sure a thread/set context doesn't corrupt the state.
- Fix thread-safe IRQL Code in KeContexToTrapFrame/KeTrapFrameToContext.
- Fix KiDispatchException to properly handle KI_EXCEPTION_ACCESS_VIOLATION and convert it back to STATUS_ACCESS_VIOLATION which is what the system expects.
- Also fix the way we do bugchecks so the the trapframe gets properly put as a parameter.
- Make KiDebugService call into KiTrap3 to share code (merge from kd-branch).
- Changes to the KdpEnterDebuggerException hack we have to handle this change.
- Temporarily disable DebugPrint functionality (sorry, I'm onto a big bug here!)

svn path=/trunk/; revision=25975
2007-03-03 17:24:58 +00:00
Magnus Olsen
037363f05d NtGdiDdQueryDirectDrawObject
1. fixed some return code it get right. 

svn path=/trunk/; revision=25973
2007-03-03 16:31:28 +00:00
Eric Kohl
7368a5b0d4 - Let the user edit the font size directly.
- Remove the useless "NOT CBS_SIMPLE" window style from the font size combobox.

svn path=/trunk/; revision=25970
2007-03-03 12:44:09 +00:00
Sylvain Petreolle
827a4b1699 downloader fixes:
remove downloader.xml from bootcd
fix paths in .rbuild

svn path=/trunk/; revision=25969
2007-03-03 11:41:28 +00:00
Alex Ionescu
27065dc629 - Remove DbgPrint committed in FreeLDR by accident.
- Fix a hack in DbgLoadImageSymbols.

svn path=/trunk/; revision=25967
2007-03-03 05:44:58 +00:00
Alex Ionescu
523822a169 - Copy the entire drivers in memory, not just their mappable sections, since WinDBG (and probably other things) use "SizeOfImage" in the header to figure out when the image ends, but we map considerably less, creating overlaps.
svn path=/trunk/; revision=25966
2007-03-03 05:41:14 +00:00
Alex Ionescu
af68f5e42d - Remove KD APIs from stub HAL, they've been in kdcom for a while (merge from kd-branch).
- DebugPrint/DebugPrompt should have an int3 after the int2d, and the int2d handler should ++ the trap frame's EIP to compensate (merge from kd-branch).
- Remove KDB symbol hooks (merge from kd-branch).
- Make PSEH compialble in MSVC again after Greatlord's break.
- Fix KiSaveProcessorControlState/KiRestoreProcessorControlState (merge from kd-branch).
- Disable GDB hook/hacks (merge from kd-branch).
- Add KD64 directory from kd-branch with SharedUserData access enabled (no other code changed). It's not currently compiled though, just putting it here.

svn path=/trunk/; revision=25965
2007-03-03 04:39:25 +00:00
Sylvain Petreolle
61ea6949b7 fix build
svn path=/trunk/; revision=25964
2007-03-02 22:04:21 +00:00
Aleksey Bragin
545cea09f9 Don't spam debug log with that message, it seems it's normal.
svn path=/trunk/; revision=25961
2007-03-02 21:11:16 +00:00
Christoph von Wittich
913d1938ee some configuration changes for debug builds
svn path=/trunk/; revision=25960
2007-03-02 21:04:41 +00:00
Christoph von Wittich
e3a80a5990 fix the msvc backend on linux hosts
svn path=/trunk/; revision=25959
2007-03-02 20:53:41 +00:00
Alex Ionescu
f5751896c4 -Fix build
svn path=/trunk/; revision=25958
2007-03-02 20:40:48 +00:00
Christoph von Wittich
46921a9a8f fix a crash in the msvc8 backend
svn path=/trunk/; revision=25957
2007-03-02 20:30:12 +00:00
Alex Ionescu
ae80dd6422 - Fix various ntoskrnl/wdk compilation issues in rossym, cmlib, kdcom, rtl.
- Rename one more duplicated file in the kernel which wasn't caught previously.
- pseh, rossym, cmlib, kdcom, bootvid, rtl compile & link, and ntoskrnl is now down to only 23 linker errors.

svn path=/trunk/; revision=25956
2007-03-02 19:52:29 +00:00
Alex Ionescu
7815967299 - Do massive renames in the ntoskrnl tree to make sure we don't have multiple files with the same name (this makes msvc very, very, sad).
- Add _IN_KERNEL_ define for WDK compatibility when using resstr.h
- The entire kernel can now be compiled with MSVC (read this sentence carefully before throwing out the champagne).

svn path=/trunk/; revision=25954
2007-03-02 18:25:23 +00:00
Magnus Olsen
e48040833f adding a small debugprint to detect if pseh going into a endless loop, if we see same msg from it repate it self whole time, we known then pseh have gone into endless loop.
svn path=/trunk/; revision=25953
2007-03-02 17:49:47 +00:00
Maarten Bosma
6a00d9d64a Lester Kortenhoeven (lester(at)kortenhoeven(dot)de): Implement scripting.
svn path=/trunk/; revision=25952
2007-03-02 17:27:39 +00:00
Alex Ionescu
794a97e498 - More MSVC fixes.
svn path=/trunk/; revision=25948
2007-03-02 16:28:34 +00:00
Alex Ionescu
9efff39376 - Fix multiple WDK compatibilities issues.
- Fix MSVC warnings and incompatibilities.

svn path=/trunk/; revision=25947
2007-03-02 16:26:45 +00:00
Christoph von Wittich
7270b49222 fix mkhive on x86_64 hosts
svn path=/trunk/; revision=25946
2007-03-02 15:57:34 +00:00
Alex Ionescu
b15fa5308e - Rewrite a dirty, reverse-engineered function written by dwelch (David Welch) 7.1 years ago in revision 965. We must agressively continue to hunt down such reversed code by previously tainted ReactOS developers who have thankfully left/been kicked out since then.
svn path=/trunk/; revision=25945
2007-03-02 07:37:45 +00:00
Alex Ionescu
5ba38d0494 - Don't depend on LD variables anymore for Mm.
- Update KrnlFun.c
- Make pushlock.c compile with msvc/wdk.
- Fix definition of HIGH_LEVEL_ENTRIES which was way too small (and thus always 0) which caused frees/allocates in the 3rd-level table not to work properly. MSVC statically detected this, it's unlikely we were hitting this in ROS at the moment but it would've been a bad bug to catch later, yay msvc.

svn path=/trunk/; revision=25944
2007-03-02 07:23:19 +00:00
Alex Ionescu
ba689f332a - Fix some rtl warnings on /W3.
svn path=/trunk/; revision=25943
2007-03-02 07:21:33 +00:00