Commit graph

31496 commits

Author SHA1 Message Date
Hervé Poussineau d1a689916c Rename makefile.auto to makefile-$(ARCH).auto
svn path=/trunk/; revision=34533
2008-07-15 20:42:08 +00:00
Ged Murphy 01824511d8 - Delete the service key along with any subkeys
- Delete the service from the internal list
- patch by Yuri Sidorov <jura at cp-lab dot com>

See issue #3523 for more details.

svn path=/trunk/; revision=34532
2008-07-15 20:41:35 +00:00
Colin Finck 2916a0bda2 Fix the mess created by SVN's inability to handle with UTF-16 files.
Remove the svn:eol-style property and set svn:mime-type to application/octet-stream, so that these files aren't modified by SVN.

svn path=/trunk/; revision=34531
2008-07-15 20:11:26 +00:00
Matthias Kupfer 10ca3b514c - Revert inf back to LF, because of damaged line endings on checkout with CRLF (under linux).
- Take care on further change, change only if you are absolutely sure, that all clients can handle it correctly!

svn path=/trunk/; revision=34530
2008-07-15 19:43:28 +00:00
Colin Finck 0c37df4fff Set svn:eol-style CRLF for all *.inf files.
These are copied without any further processing, so they should always have a CRLF line-ending.

svn path=/trunk/; revision=34529
2008-07-15 17:54:28 +00:00
Aleksey Bragin a7d600b8b8 - Save pointer to driver's section in DriverSection during driver loading.
- Fix unloading function to check if a driver to be unloaded really has DriverSection set, and if not, fail.
- Inspired by bug 3221.
See issue #3221 for more details.

svn path=/trunk/; revision=34526
2008-07-15 14:24:47 +00:00
Aleksey Bragin 81c0fbc19f Yuriy Sidorov <jura@cp-lab.com>
- Fix BSOD in NtUserWaitForInputIdle because KeWaitForMultipleObjects expects actual pointers to objects, not handles.
- Fix failure branches to have UserLeave and/or object dereference where needed.
See issue #3522 for more details.

svn path=/trunk/; revision=34525
2008-07-15 14:00:37 +00:00
Aleksey Bragin fa443b5f5b Dmitry Gorbachev
- Include greek translation into shutdown's rsrc.rc.
See issue #3487 for more details.

svn path=/trunk/; revision=34523
2008-07-15 13:48:43 +00:00
Aleksey Bragin 69bc3c08df Dmitry Gorbachev
- Don't leak critical region when going through failure return branch.
See issue #3517 for more details.

svn path=/trunk/; revision=34522
2008-07-15 13:44:14 +00:00
Aleksey Bragin 39f888f2b3 Yuriy Sidorov <jura@cp-lab.com>
- Speed-up user mode exception handling by calling RtlDispatchException() first if there is no active user mode debugger. This avoids switches to kernel mode if exception can be handled by SEH.
See issue #3485 for more details.

svn path=/trunk/; revision=34521
2008-07-15 13:32:18 +00:00
Aleksey Bragin f8f3b78fce Stefan Ginsberg <stefan__100__@hotmail.com>
- Remove a hack in the executive handle implementation, which worked around a memory corruption bug. Revision 32770 should have fixed the bug hidden by this hack.
See issue #3512 for more details.

svn path=/trunk/; revision=34520
2008-07-15 13:20:38 +00:00
Matthias Kupfer 439d1715c8 Maciej Bialas <bjauy AT tlen DOT pl>
- Updated polish version of dll/cpl/usrmgr
- See issue #3480 for more details.

svn path=/trunk/; revision=34516
2008-07-15 08:21:27 +00:00
Matthias Kupfer c4c2d12ac8 Mario Kacmar <kario AT szm DOT sk>
- Slovak translation of several inf-files
- See #3518 for more details.

svn path=/trunk/; revision=34515
2008-07-15 08:10:44 +00:00
Timo Kreuzer 1c8355690a IntRectangle:
- use coordinate transformation
- if transform is not diagonal, call IntGdiPolygon
IntRectangle/IntGdiPolygon:
- use special locking order to avoid lockups
- don't unlock objects that weren't locked
IntGdiPie:
- if transform is cheese, call IntGdiCheeseCake

svn path=/trunk/; revision=34514
2008-07-15 02:06:38 +00:00
Matthias Kupfer bed178cdf7 - Fixes country codes.
- See issue #3488 for more details.

svn path=/trunk/; revision=34513
2008-07-14 22:55:37 +00:00
Matthias Kupfer 5af61d07aa - fix some wrong country codes
- fix minor typo in German translation

svn path=/trunk/; revision=34511
2008-07-14 22:41:54 +00:00
Aleksey Bragin 0a109d92ea - Remove special ReactOS-specific PUSHORT GDT pointer (usual PKGDTENTRY works good enough now), spotted by Stefan Ginsberg.
svn path=/trunk/; revision=34508
2008-07-14 21:24:13 +00:00
Jeffrey Morlan c4a306e3f7 When duplicating a handle to a child process, only pass the actual attributes to ObpIncrementHandleCount. Spurious attributes from the object pointer were making this call fail randomly.
svn path=/trunk/; revision=34507
2008-07-14 17:42:22 +00:00
Matthias Kupfer a84f8fec2c - change svn:eol-style to LF for compatibility
- fix a problem in cpu.inf

svn path=/trunk/; revision=34506
2008-07-14 16:30:18 +00:00
Colin Finck 2951bb310c Replace uses of $(ROS_ARCH) by $(ARCH).
$(ROS_ARCH) will only work if an environment variable with the same name is set. But its value and the default value (if none was given) is stored in $(ARCH).

svn path=/trunk/; revision=34505
2008-07-14 13:06:52 +00:00
Colin Finck f400d4255f Attempt to fix Live-CD
svn path=/trunk/; revision=34504
2008-07-14 12:50:39 +00:00
Matthias Kupfer e37473874f Mario Kacmar <kario AT szm DOT sk>
- Slovak translation patch for cpu.inf and cdrom.inf
- See #3518 for more details.

svn path=/trunk/; revision=34503
2008-07-14 10:23:39 +00:00
Daniel Reimer ef31815a6a Bug 3505: Simplified Chinese Translation Patch by Zhangbing. I skipped Wordpad, because we sync this with Wine and skipped appwiz, because it fails to build.
svn path=/trunk/; revision=34501
2008-07-14 09:26:38 +00:00
James Tabor 0d418ab140 Fix boot and leave the code for research.
svn path=/trunk/; revision=34499
2008-07-14 07:39:58 +00:00
James Tabor c66063fbaa Added WH_GETMESSAGE support.
svn path=/trunk/; revision=34498
2008-07-14 07:26:13 +00:00
ReactOS Portable Systems Group 4c46f5b78e - Get rid of stubs.c, it's empty now.
svn path=/trunk/; revision=34497
2008-07-14 03:51:35 +00:00
ReactOS Portable Systems Group a4346dc05e - Implement NtSetLdrEntries, NtVdmControl, KeSaveStateForHibernate, KeQueryActiveProcessors, KeSetDmaIoCoherency, KeFlushEntireTb, KeGetRecommendedSharedDataAlignment, KeDisableInterrupts, KeInvalidateAllCaches, KeIcacheFlushCount and remove them from stubs_asm.S
svn path=/trunk/; revision=34496
2008-07-14 03:50:38 +00:00
ReactOS Portable Systems Group 4a8378a9d2 - Fix exports
svn path=/trunk/; revision=34495
2008-07-14 03:36:40 +00:00
ReactOS Portable Systems Group 26fa849ea0 - Re-organize our unimplemented function stubs according to port targets (user mode support, exceptions/SEH, driver ISRs, x86-only functionality and arch-specific Ke).
svn path=/trunk/; revision=34494
2008-07-14 03:34:07 +00:00
ReactOS Portable Systems Group 5b41066b9e - Remove this DPRINT1 too, it was used for debugging scheduling issues which are fixed now.
svn path=/trunk/; revision=34493
2008-07-14 03:20:40 +00:00
ReactOS Portable Systems Group 758134fc03 - Remove the 5-second delay in the initialization code, we've validated this works now.
svn path=/trunk/; revision=34492
2008-07-14 03:19:12 +00:00
ReactOS Portable Systems Group 69b3a4581d - Enable timer expiration code.
- Timers now work, along with full scheduling, dispatching and context switching, so our 5 second wait in init.c allows other threads to runs, then completes appropriately.

svn path=/trunk/; revision=34491
2008-07-14 03:17:57 +00:00
ReactOS Portable Systems Group 7f9d319752 - Fix context switch code. It works perfectly now.
svn path=/trunk/; revision=34490
2008-07-14 03:17:09 +00:00
ReactOS Portable Systems Group 5c0b303c18 - Remove DPRINT1s all over the context switching code.
svn path=/trunk/; revision=34489
2008-07-14 03:16:36 +00:00
ReactOS Portable Systems Group 94f7b8810b - Clean up KTRAP_FRAME and KEXCEPTION_FRAME definition.
- Add assembly offsets for KEXCEPTION_FRAME to ksarm.h.


svn path=/trunk/; revision=34488
2008-07-14 03:15:48 +00:00
ReactOS Portable Systems Group 351129dc08 - Force a 5 second wait before loading drivers, on ARM.
- Context switching doesn't really work -- but we've been lucky since we're stuck on a priority 31 thread.
- Instead of worrying about this later when the system will be fully operational, this forces us to expose these bugs, and to make sure everything works.
- This will stress our context switching, waiting, unwaiting and scheduling code on ARM but once it all works well, after 5 seconds we'll be back on track.

svn path=/trunk/; revision=34487
2008-07-14 01:41:44 +00:00
ReactOS Portable Systems Group a893ad634d - Increment the PC by 4 during a DebugService-style trap, just like on x86, so that we can skip the actual instruction when we're done.
- Exit the trap after a prefetch abort. DbgPrint fully works now, and we're back where we started -- RamdiskCreateDiskDevice.


svn path=/trunk/; revision=34486
2008-07-14 00:26:18 +00:00
ReactOS Portable Systems Group a8ee5682c5 - ARM instructions are 4 bytes long, not 1, so decrement the PC by four during breakpoints (so the caller gets the address of the previous instruction, just like on x86).
svn path=/trunk/; revision=34485
2008-07-14 00:24:33 +00:00
ReactOS Portable Systems Group cc7f0be786 - Also bump PC for ARM after a KD exception.
svn path=/trunk/; revision=34484
2008-07-14 00:23:43 +00:00
ReactOS Portable Systems Group 631d627fa7 - Implement KeContextToTrapFrame.
- No, we don't sanitize anything right now. There's no user-mode at this point, so it doesn't matter. If you think we should sanitize right now, you need to get out and get laid.
- So this brings us back to KiPrefetchAbortHandler's while (TRUE).
- We have to make sure the funky PC modifications are going to work well, and after that, we can exit the trap.


svn path=/trunk/; revision=34483
2008-07-14 00:04:53 +00:00
ReactOS Portable Systems Group ed3125b4e0 - Implement KeTrapFrameToContext.
- We now get to the point where we call KiDebugRoutine, which is registered as KdpEnterDebuggerException.
- KdpEnterDebuggerException reads our exception record and understands this is a BREAKPOINT_PRINT.
- It then calls the KdpServiceDispatcher.
- This, in turn, calls KdpPrintString.
- Which in turn loops the "debug providers" and calls KdpSerialPrintString.
- Which calls into KDCOM.
- And we see this on the debug log: (ntoskrnl/kd/kdio.c:191) .
- Epic Win. Need to implement KeContextToTrapFrame now.


svn path=/trunk/; revision=34482
2008-07-13 23:58:47 +00:00
ReactOS Portable Systems Group 673e2fd5fd - Okay so we've got a basic KiDispatchException, we now need KiTrapFrameToContext and KiContextToTrapFrame.
- We aren't really sure where the hell we are since we can't printf anything otherwise we'll trap again and end up in an infinite loop.
- So we're debugging with while (TRUE).


svn path=/trunk/; revision=34481
2008-07-13 23:46:50 +00:00
ReactOS Portable Systems Group 784b0af4cd - Start implementing KiPrefetchAbortHandler for BKPT instructions.
- We pretty much try to duplicate what happens on x86, and build an exception record with the right information.
- We are seeing the debug string in R1 and its length in R2, so we're on the right track.
- We call KiDispatchException now, which isn't yet implemented.
- Yup, all this work just to see a damn debug string the "*proper* NT way". Thanks, asshole.


svn path=/trunk/; revision=34480
2008-07-13 23:34:44 +00:00
ReactOS Portable Systems Group 64d7b1337b - Prefetch aborts behave like other exceptions, not like data aborts, in terms of the PC offset due to the pipeline behavior. So call TRAP_PROLOG with 0, not 1
svn path=/trunk/; revision=34479
2008-07-13 23:32:38 +00:00
ReactOS Portable Systems Group a999d87cb4 - Implement KeArmInstructionFaultStatusRegisterGet
svn path=/trunk/; revision=34477
2008-07-13 23:31:46 +00:00
James Tabor 97892224cf Separate Default Window proc from messages.
svn path=/trunk/; revision=34476
2008-07-13 23:31:00 +00:00
ReactOS Portable Systems Group f0ba3800a4 - Write a DebugService routine for ARM in the RTL library and get rid of the hack in ntoskrnl.
- Just like on x86, this routine generates a breakpoint -- on ARM this is done with BKPT followed by an index.
- We use the BREAKPOINT_PRINT index just like on x86.
- This generates a prefetch abort -- so now we implement the prefetch abort handler. Thanks to the trap macros, this was 10 lines of code.
- This calls into the real C handler, which is now unimplemented and hangs the whole system, so we've regressed way back (on purpose).


svn path=/trunk/; revision=34474
2008-07-13 22:40:36 +00:00
ReactOS Portable Systems Group 43dd8f4408 - Now that KDCOM works for printing on the serial port, get rid of the arm_kprintf file, function and hack,and use KdpSerialPrint instead (still a hack, but at least uses our components)
svn path=/trunk/; revision=34473
2008-07-13 22:17:28 +00:00
ReactOS Portable Systems Group e069d3cba6 - Implement KdPortPutByteEx and KdPortInitializeEx in KDCOM. Only supports Versatile for now, we can make this more portable later.
svn path=/trunk/; revision=34472
2008-07-13 22:16:48 +00:00
ReactOS Portable Systems Group 3d5e125a48 - Fix FILE location in the header
svn path=/trunk/; revision=34471
2008-07-13 22:15:56 +00:00