reactos.git
14 years agoCommit my test suite I used for verifying the behaviours of wctomb, wcstombs and...
Colin Finck [Wed, 16 Jul 2008 22:08:58 +0000 (22:08 +0000)]
Commit my test suite I used for verifying the behaviours of wctomb, wcstombs and WideCharToMultiByte and writing the reimplementations for ReactOS on request of Stefan

svn path=/trunk/; revision=34558

14 years ago- Remove 2 wrong versions of wctomb and 2 wrong versions of wcstombs
Colin Finck [Wed, 16 Jul 2008 21:40:09 +0000 (21:40 +0000)]
- Remove 2 wrong versions of wctomb and 2 wrong versions of wcstombs
- Implement new versions of wctomb and wcstombs, which consider the language set by setlocale() and work according to all behaviours I could find when testing under WinXP SP2.
  This was tested with an own test suite (which I can commit as well if anyone is interested)
- Do a real conversion to MultiByte characters using wctomb in fputwc and vfwprintf. (verified under WinXP SP2)
- Set 'MSVCRT___lc_codepage' and 'MSVCRT___lc_collate_cp' to 1252 by default ("C" locale) and not the current active codepage (which might not work with i.e. Eastern codepages)
- Add a new check for 'MultiByteCount < 0' to WideCharToMultiByte (also verified under WinXP SP2)
- Change MB_LEN_MAX back to 2, the value 5 only applies to newer CRT's (msvcrt only handles single-byte and double-byte characters)
- Don't compile the Wine-imported 'wcscpy_s', it isn't available in msvcrt

svn path=/trunk/; revision=34557

14 years agoadd new Slovak keyboard layout to first stage setup list
Matthias Kupfer [Wed, 16 Jul 2008 21:21:21 +0000 (21:21 +0000)]
add new Slovak keyboard layout to first stage setup list

svn path=/trunk/; revision=34556

14 years agoFLOATOBJ is a structure only on x86 in kernelmode, for usermode drivers and other...
Timo Kreuzer [Wed, 16 Jul 2008 21:12:27 +0000 (21:12 +0000)]
FLOATOBJ is a structure only on x86 in kernelmode, for usermode drivers and other architectures it's a FLOAT. Update winddi.h accordingly.

svn path=/trunk/; revision=34555

14 years agoPatch by Stefan Ginsberg:
Timo Kreuzer [Wed, 16 Jul 2008 20:16:30 +0000 (20:16 +0000)]
Patch by Stefan Ginsberg:
- remove XFORM members from DC structure and use MATRIX instead. Use MatrixS2XForm and XForm2MatrixS for intermediate conversion.
- this is a temporary solution (still using fpu) until I'm finished with FLOATOBJ rewrite + XFOROMOBJ api (soon)

svn path=/trunk/; revision=34554

14 years agoDC_AllocDc:
Timo Kreuzer [Wed, 16 Jul 2008 19:48:19 +0000 (19:48 +0000)]
DC_AllocDc:
- Set DC's iGraphicsMode to GM_COMPATIBLE when creating a DC
NtGdiRectangle:
- only exclude bottom/right pixels if dc is GM_COMPATIBLE
- fix indentation

svn path=/trunk/; revision=34553

14 years agoAdd MATRIX accelerator flag MX_SCALE and set it in XForm2MatrixS, when off-diagonal...
Timo Kreuzer [Wed, 16 Jul 2008 18:57:23 +0000 (18:57 +0000)]
Add MATRIX accelerator flag MX_SCALE and set it in XForm2MatrixS, when off-diagonal elements are zero.

svn path=/trunk/; revision=34552

14 years ago- Fix CurrentWnd when it has a NULL, see Bug 3527.
James Tabor [Wed, 16 Jul 2008 16:12:44 +0000 (16:12 +0000)]
- Fix CurrentWnd when it has a NULL, see Bug 3527.

svn path=/trunk/; revision=34550

14 years agoDmitry Gorbachev
Aleksey Bragin [Wed, 16 Jul 2008 16:02:32 +0000 (16:02 +0000)]
Dmitry Gorbachev
- Fix a problem in VgaIsPresent: Content of the Address Register goes to the Data Register, and vice versa. It also writes content of the Map Select Register (which is number 4) into the Bit Mask Register (number 8).
See issue #2125 for more details.

svn path=/trunk/; revision=34549

14 years agoFix build, broken in r34546
Colin Finck [Wed, 16 Jul 2008 14:33:47 +0000 (14:33 +0000)]
Fix build, broken in r34546
Reminder: Never apply patches twice (and test the latest changes before committing) :-)

svn path=/trunk/; revision=34547

14 years agoMario Kacmar <kario AT szm DOT sk>
Matthias Kupfer [Wed, 16 Jul 2008 13:41:23 +0000 (13:41 +0000)]
Mario Kacmar <kario AT szm DOT sk>
- Slovak keyboard layout (QWERTY) added.
- See #3528 for more details.

svn path=/trunk/; revision=34546

14 years ago- Implement freeaddrinfo and getaddrinfo.
Ged Murphy [Wed, 16 Jul 2008 12:49:15 +0000 (12:49 +0000)]
- Implement freeaddrinfo and getaddrinfo.
- Implement bare boned getprotobyname and getprotobynumber.
- Make winsock functions return proper error codes instead of success (will help to identify any probs with network apps)
- patch by Yuri Sidorov <jura at cp-lab dot com>

For future reference, freeaddrinfo and getaddrinfo should really call GetAddrInfoW and FreeAddrInfoW which should do the work, but our umode network layers are a mess anyway and by no means XP compatible
See issue #3523 for more details.

svn path=/trunk/; revision=34545

14 years agoFix build.
James Tabor [Wed, 16 Jul 2008 02:07:55 +0000 (02:07 +0000)]
Fix build.

svn path=/trunk/; revision=34542

14 years agoSorry for commit my test tree,,,, good for testing Bug 2451.
James Tabor [Wed, 16 Jul 2008 02:06:05 +0000 (02:06 +0000)]
Sorry for commit my test tree,,,, good for testing Bug 2451.

svn path=/trunk/; revision=34541

14 years agomake does like tabs, right? Fix build.
James Tabor [Wed, 16 Jul 2008 01:22:26 +0000 (01:22 +0000)]
make does like tabs, right? Fix build.

svn path=/trunk/; revision=34540

14 years agoIncrement a console's initial screen buffer's reference count *after* calling CsrInit...
Jeffrey Morlan [Wed, 16 Jul 2008 00:24:54 +0000 (00:24 +0000)]
Increment a console's initial screen buffer's reference count *after* calling CsrInitConsoleScreenBuffer (which sets the reference count to 0). Fixes bug 3524.

svn path=/trunk/; revision=34539

14 years agoMario Kacmar <kario AT szm DOT sk>
Matthias Kupfer [Tue, 15 Jul 2008 22:29:42 +0000 (22:29 +0000)]
Mario Kacmar <kario AT szm DOT sk>
- Slovak translation of several inf-files
- See #3518 for more details.

svn path=/trunk/; revision=34537

14 years agoRevert r34533 (except the nice indentation in the Makefile) for unbreaking trunk.
Colin Finck [Tue, 15 Jul 2008 22:04:16 +0000 (22:04 +0000)]
Revert r34533 (except the nice indentation in the Makefile) for unbreaking trunk.

This change is also not compatible with current cleaning scripts in RosBE and on the Buildslaves (which only delete "makefile.auto"), leading to possibly unclean builds if the generated makefile wouldn't be deleted.
The ultimate goal would be putting the generated makefiles into the intermediate directories, so we also save one cleaning step.

svn path=/trunk/; revision=34536

14 years agoFixed typos spotted by "jeanmichel" <jeanmichel.123@free.fr>
Pierre Schweitzer [Tue, 15 Jul 2008 21:05:20 +0000 (21:05 +0000)]
Fixed typos spotted by "jeanmichel" <jeanmichel.123@free.fr>
See issue #618 for more details.

svn path=/trunk/; revision=34535

14 years agoRename makefile.auto to makefile-$(ARCH).auto
Hervé Poussineau [Tue, 15 Jul 2008 20:42:08 +0000 (20:42 +0000)]
Rename makefile.auto to makefile-$(ARCH).auto

svn path=/trunk/; revision=34533

14 years ago- Delete the service key along with any subkeys
Ged Murphy [Tue, 15 Jul 2008 20:41:35 +0000 (20:41 +0000)]
- 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

14 years agoFix the mess created by SVN's inability to handle with UTF-16 files.
Colin Finck [Tue, 15 Jul 2008 20:11:26 +0000 (20:11 +0000)]
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

14 years ago- Revert inf back to LF, because of damaged line endings on checkout with CRLF (under...
Matthias Kupfer [Tue, 15 Jul 2008 19:43:28 +0000 (19:43 +0000)]
- 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

14 years agoSet svn:eol-style CRLF for all *.inf files.
Colin Finck [Tue, 15 Jul 2008 17:54:28 +0000 (17:54 +0000)]
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

14 years ago- Save pointer to driver's section in DriverSection during driver loading.
Aleksey Bragin [Tue, 15 Jul 2008 14:24:47 +0000 (14:24 +0000)]
- 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

14 years agoYuriy Sidorov <jura@cp-lab.com>
Aleksey Bragin [Tue, 15 Jul 2008 14:00:37 +0000 (14:00 +0000)]
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

14 years agoDmitry Gorbachev
Aleksey Bragin [Tue, 15 Jul 2008 13:48:43 +0000 (13:48 +0000)]
Dmitry Gorbachev
- Include greek translation into shutdown's rsrc.rc.
See issue #3487 for more details.

svn path=/trunk/; revision=34523

14 years agoDmitry Gorbachev
Aleksey Bragin [Tue, 15 Jul 2008 13:44:14 +0000 (13:44 +0000)]
Dmitry Gorbachev
- Don't leak critical region when going through failure return branch.
See issue #3517 for more details.

svn path=/trunk/; revision=34522

14 years agoYuriy Sidorov <jura@cp-lab.com>
Aleksey Bragin [Tue, 15 Jul 2008 13:32:18 +0000 (13:32 +0000)]
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

14 years agoStefan Ginsberg <stefan__100__@hotmail.com>
Aleksey Bragin [Tue, 15 Jul 2008 13:20:38 +0000 (13:20 +0000)]
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

14 years agoMaciej Bialas <bjauy AT tlen DOT pl>
Matthias Kupfer [Tue, 15 Jul 2008 08:21:27 +0000 (08:21 +0000)]
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

14 years agoMario Kacmar <kario AT szm DOT sk>
Matthias Kupfer [Tue, 15 Jul 2008 08:10:44 +0000 (08:10 +0000)]
Mario Kacmar <kario AT szm DOT sk>
- Slovak translation of several inf-files
- See #3518 for more details.

svn path=/trunk/; revision=34515

14 years agoIntRectangle:
Timo Kreuzer [Tue, 15 Jul 2008 02:06:38 +0000 (02:06 +0000)]
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

14 years ago- Fixes country codes.
Matthias Kupfer [Mon, 14 Jul 2008 22:55:37 +0000 (22:55 +0000)]
- Fixes country codes.
- See issue #3488 for more details.

svn path=/trunk/; revision=34513

14 years ago- fix some wrong country codes
Matthias Kupfer [Mon, 14 Jul 2008 22:41:54 +0000 (22:41 +0000)]
- fix some wrong country codes
- fix minor typo in German translation

svn path=/trunk/; revision=34511

14 years ago- Remove special ReactOS-specific PUSHORT GDT pointer (usual PKGDTENTRY works good...
Aleksey Bragin [Mon, 14 Jul 2008 21:24:13 +0000 (21:24 +0000)]
- Remove special ReactOS-specific PUSHORT GDT pointer (usual PKGDTENTRY works good enough now), spotted by Stefan Ginsberg.

svn path=/trunk/; revision=34508

14 years agoWhen duplicating a handle to a child process, only pass the actual attributes to...
Jeffrey Morlan [Mon, 14 Jul 2008 17:42:22 +0000 (17:42 +0000)]
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

14 years ago- change svn:eol-style to LF for compatibility
Matthias Kupfer [Mon, 14 Jul 2008 16:30:18 +0000 (16:30 +0000)]
- change svn:eol-style to LF for compatibility
- fix a problem in cpu.inf

svn path=/trunk/; revision=34506

14 years agoReplace uses of $(ROS_ARCH) by $(ARCH).
Colin Finck [Mon, 14 Jul 2008 13:06:52 +0000 (13:06 +0000)]
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

14 years agoAttempt to fix Live-CD
Colin Finck [Mon, 14 Jul 2008 12:50:39 +0000 (12:50 +0000)]
Attempt to fix Live-CD

svn path=/trunk/; revision=34504

14 years agoMario Kacmar <kario AT szm DOT sk>
Matthias Kupfer [Mon, 14 Jul 2008 10:23:39 +0000 (10:23 +0000)]
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

14 years agoBug 3505: Simplified Chinese Translation Patch by Zhangbing. I skipped Wordpad, becau...
Daniel Reimer [Mon, 14 Jul 2008 09:26:38 +0000 (09:26 +0000)]
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

14 years agoFix boot and leave the code for research.
James Tabor [Mon, 14 Jul 2008 07:39:58 +0000 (07:39 +0000)]
Fix boot and leave the code for research.

svn path=/trunk/; revision=34499

14 years agoAdded WH_GETMESSAGE support.
James Tabor [Mon, 14 Jul 2008 07:26:13 +0000 (07:26 +0000)]
Added WH_GETMESSAGE support.

svn path=/trunk/; revision=34498

14 years ago- Get rid of stubs.c, it's empty now.
ReactOS Portable Systems Group [Mon, 14 Jul 2008 03:51:35 +0000 (03:51 +0000)]
- Get rid of stubs.c, it's empty now.

svn path=/trunk/; revision=34497

14 years ago- Implement NtSetLdrEntries, NtVdmControl, KeSaveStateForHibernate, KeQueryActiveProc...
ReactOS Portable Systems Group [Mon, 14 Jul 2008 03:50:38 +0000 (03:50 +0000)]
- Implement NtSetLdrEntries, NtVdmControl, KeSaveStateForHibernate, KeQueryActiveProcessors, KeSetDmaIoCoherency, KeFlushEntireTb, KeGetRecommendedSharedDataAlignment, KeDisableInterrupts, KeInvalidateAllCaches, KeIcacheFlushCount and remove them from stubs_asm.S

svn path=/trunk/; revision=34496

14 years ago- Fix exports
ReactOS Portable Systems Group [Mon, 14 Jul 2008 03:36:40 +0000 (03:36 +0000)]
- Fix exports

svn path=/trunk/; revision=34495

14 years ago- Re-organize our unimplemented function stubs according to port targets (user mode...
ReactOS Portable Systems Group [Mon, 14 Jul 2008 03:34:07 +0000 (03:34 +0000)]
- 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

14 years ago- Remove this DPRINT1 too, it was used for debugging scheduling issues which are...
ReactOS Portable Systems Group [Mon, 14 Jul 2008 03:20:40 +0000 (03:20 +0000)]
- Remove this DPRINT1 too, it was used for debugging scheduling issues which are fixed now.

svn path=/trunk/; revision=34493

14 years ago- Remove the 5-second delay in the initialization code, we've validated this works...
ReactOS Portable Systems Group [Mon, 14 Jul 2008 03:19:12 +0000 (03:19 +0000)]
- Remove the 5-second delay in the initialization code, we've validated this works now.

svn path=/trunk/; revision=34492

14 years ago- Enable timer expiration code.
ReactOS Portable Systems Group [Mon, 14 Jul 2008 03:17:57 +0000 (03:17 +0000)]
- 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

14 years ago- Fix context switch code. It works perfectly now.
ReactOS Portable Systems Group [Mon, 14 Jul 2008 03:17:09 +0000 (03:17 +0000)]
- Fix context switch code. It works perfectly now.

svn path=/trunk/; revision=34490

14 years ago- Remove DPRINT1s all over the context switching code.
ReactOS Portable Systems Group [Mon, 14 Jul 2008 03:16:36 +0000 (03:16 +0000)]
- Remove DPRINT1s all over the context switching code.

svn path=/trunk/; revision=34489

14 years ago- Clean up KTRAP_FRAME and KEXCEPTION_FRAME definition.
ReactOS Portable Systems Group [Mon, 14 Jul 2008 03:15:48 +0000 (03:15 +0000)]
- Clean up KTRAP_FRAME and KEXCEPTION_FRAME definition.
- Add assembly offsets for KEXCEPTION_FRAME to ksarm.h.

svn path=/trunk/; revision=34488

14 years ago- Force a 5 second wait before loading drivers, on ARM.
ReactOS Portable Systems Group [Mon, 14 Jul 2008 01:41:44 +0000 (01:41 +0000)]
- 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

14 years ago- Increment the PC by 4 during a DebugService-style trap, just like on x86, so that...
ReactOS Portable Systems Group [Mon, 14 Jul 2008 00:26:18 +0000 (00:26 +0000)]
- 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

14 years ago- ARM instructions are 4 bytes long, not 1, so decrement the PC by four during breakp...
ReactOS Portable Systems Group [Mon, 14 Jul 2008 00:24:33 +0000 (00:24 +0000)]
- 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

14 years ago- Also bump PC for ARM after a KD exception.
ReactOS Portable Systems Group [Mon, 14 Jul 2008 00:23:43 +0000 (00:23 +0000)]
- Also bump PC for ARM after a KD exception.

svn path=/trunk/; revision=34484

14 years ago- Implement KeContextToTrapFrame.
ReactOS Portable Systems Group [Mon, 14 Jul 2008 00:04:53 +0000 (00:04 +0000)]
- 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

14 years ago- Implement KeTrapFrameToContext.
ReactOS Portable Systems Group [Sun, 13 Jul 2008 23:58:47 +0000 (23:58 +0000)]
- 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

14 years ago- Okay so we've got a basic KiDispatchException, we now need KiTrapFrameToContext...
ReactOS Portable Systems Group [Sun, 13 Jul 2008 23:46:50 +0000 (23:46 +0000)]
- 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

14 years ago- Start implementing KiPrefetchAbortHandler for BKPT instructions.
ReactOS Portable Systems Group [Sun, 13 Jul 2008 23:34:44 +0000 (23:34 +0000)]
- 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

14 years ago- Prefetch aborts behave like other exceptions, not like data aborts, in terms of...
ReactOS Portable Systems Group [Sun, 13 Jul 2008 23:32:38 +0000 (23:32 +0000)]
- 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

14 years ago- Implement KeArmInstructionFaultStatusRegisterGet
ReactOS Portable Systems Group [Sun, 13 Jul 2008 23:31:46 +0000 (23:31 +0000)]
- Implement KeArmInstructionFaultStatusRegisterGet

svn path=/trunk/; revision=34477

14 years agoSeparate Default Window proc from messages.
James Tabor [Sun, 13 Jul 2008 23:31:00 +0000 (23:31 +0000)]
Separate Default Window proc from messages.

svn path=/trunk/; revision=34476

14 years ago- Write a DebugService routine for ARM in the RTL library and get rid of the hack...
ReactOS Portable Systems Group [Sun, 13 Jul 2008 22:40:36 +0000 (22:40 +0000)]
- 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

14 years ago- Now that KDCOM works for printing on the serial port, get rid of the arm_kprintf...
ReactOS Portable Systems Group [Sun, 13 Jul 2008 22:17:28 +0000 (22:17 +0000)]
- 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

14 years ago- Implement KdPortPutByteEx and KdPortInitializeEx in KDCOM. Only supports Versatile...
ReactOS Portable Systems Group [Sun, 13 Jul 2008 22:16:48 +0000 (22:16 +0000)]
- Implement KdPortPutByteEx and KdPortInitializeEx in KDCOM. Only supports Versatile for now, we can make this more portable later.

svn path=/trunk/; revision=34472

14 years ago- Fix FILE location in the header
ReactOS Portable Systems Group [Sun, 13 Jul 2008 22:15:56 +0000 (22:15 +0000)]
- Fix FILE location in the header

svn path=/trunk/; revision=34471

14 years ago- Get rid of a really-early debug print, since it's done before KdInit and thus will...
ReactOS Portable Systems Group [Sun, 13 Jul 2008 22:15:23 +0000 (22:15 +0000)]
- Get rid of a really-early debug print, since it's done before KdInit and thus will never be seen.

svn path=/trunk/; revision=34470

14 years ago- Uncomment the check to see if we came from kernel or user mode, since we can now...
ReactOS Portable Systems Group [Sun, 13 Jul 2008 22:14:43 +0000 (22:14 +0000)]
- Uncomment the check to see if we came from kernel or user mode, since we can now do this after the major trap fixes

svn path=/trunk/; revision=34469

14 years agomore correct fix by Alex
Christoph von Wittich [Sun, 13 Jul 2008 19:14:39 +0000 (19:14 +0000)]
more correct fix by Alex

svn path=/trunk/; revision=34467

14 years agofix handle table calculations
Christoph von Wittich [Sun, 13 Jul 2008 18:22:18 +0000 (18:22 +0000)]
fix handle table calculations
now we can create 4186000 handles instead of 4100
and VLC doesn't BSOD anymore

svn path=/trunk/; revision=34466

14 years agoForgot a file. Fix fucking buildbot already D:<
KJK::Hyperion [Sun, 13 Jul 2008 18:06:10 +0000 (18:06 +0000)]
Forgot a file. Fix fucking buildbot already D:<

svn path=/trunk/; revision=34464

14 years agomodified dll/win32/kernel32/misc/lang.c
KJK::Hyperion [Sun, 13 Jul 2008 17:54:53 +0000 (17:54 +0000)]
modified   dll/win32/kernel32/misc/lang.c
modified   dll/win32/kernel32/kernel32.def
   Stubbed out GetLocaleInfoEx

modified   include/psdk/winnls.h
   Added some Vista and later NLS defines to the SDK

modified   dll/nls/idndl/idndl.rbuild
   Correctly set a NULL entry point for idndl.dll

modified   dll/nls/idndl_redist/idndl_redist.rbuild
modified   dll/nls/normaliz_redist/normaliz_redist.rbuild
   Give unique names to the redistributable versions of idndl.dll and normaliz.dll

Everything else
   Scattered NLS modules in the appropriate locations, as per standard source tree layout

svn path=/trunk/; revision=34463

14 years ago- support of [Strings.LanguageID]-sections for inf-files added in setupapi
Matthias Kupfer [Sun, 13 Jul 2008 13:46:54 +0000 (13:46 +0000)]
- support of [Strings.LanguageID]-sections for inf-files added in setupapi
- inf-files with multi language support are strongly recommended to be in utf-16 encoding (with byte order mark)
- at the moment only inf-files for second stage setup can contain translations (due to limitations of inflib)
- some of the inf files for hardware installation (/media/inf) are converted to utf-16 and contain a basic German translation in the [Strings.0407] section
- for more details read /reactos/branches/matthias-i18n/media/inf/README
- TODO: for other/further languages add other translations in new string sections

svn path=/trunk/; revision=34461

14 years agoAdd part of a patch by Daniel Verkamp, see bug 3441.
James Tabor [Sun, 13 Jul 2008 12:08:54 +0000 (12:08 +0000)]
Add part of a patch by Daniel Verkamp, see bug 3441.

svn path=/trunk/; revision=34457

14 years ago- Separate KDCOM into i386 and ARM versions.
ReactOS Portable Systems Group [Sun, 13 Jul 2008 08:47:07 +0000 (08:47 +0000)]
- Separate KDCOM into i386 and ARM versions.
- Stub out ARM version.
- Eventually the arm_kprintf hack will go away and true serial debugging output will be done through kdcom just like on x86.
- Fix formatting of bootvid.rbuild.

svn path=/trunk/; revision=34456

14 years ago- Does now fire off a DPC when quantum has ended this works good now after have the...
ReactOS Portable Systems Group [Sun, 13 Jul 2008 08:28:05 +0000 (08:28 +0000)]
- Does now fire off a DPC when quantum has ended this works good now after have the major trap fixes been done earlier.

svn path=/trunk/; revision=34455

14 years ago- Make sure this is XIP (Execute in Place) boot and not ramdisk boot before warning...
ReactOS Portable Systems Group [Sun, 13 Jul 2008 08:20:02 +0000 (08:20 +0000)]
- Make sure this is XIP (Execute in Place) boot and not ramdisk boot before warning the user. Silences an incorrect debug print during ramdisk boot.

svn path=/trunk/; revision=34454

14 years ago- Implement RamdiskCreateRamdisk which validates parameters before calling RamdiskCre...
ReactOS Portable Systems Group [Sun, 13 Jul 2008 07:37:36 +0000 (07:37 +0000)]
- Implement RamdiskCreateRamdisk which validates parameters before calling RamdiskCreateDiskDevice (stub).
- Implement RamdiskDeviceControl which only supports FSCTL_CREATE_RAM_DISK for now (the kernel's attempt to create the RAM disk).
- Need to implement RamdiskCreateDiskDevice.

svn path=/trunk/; revision=34453

14 years ago- Implement IRP_MN_QUERY_DEVICE_TEXT/BUS_INFORMATION/CAPABILITIES for FDOs (just...
ReactOS Portable Systems Group [Sun, 13 Jul 2008 07:33:31 +0000 (07:33 +0000)]
- Implement IRP_MN_QUERY_DEVICE_TEXT/BUS_INFORMATION/CAPABILITIES for FDOs (just forward to the attached device).
- Implement IRP_MN_QUERY_RESOURCES/RESOURCE_REQUIREMENTS for FDOs and PDOs (immediately complete the IRP and exit).
- We now get to RamdiskDeviceControl -- the kernel is attempting to create the ramdisk.

svn path=/trunk/; revision=34452

14 years ago- Remove incorrect check in RamdiskPnp -- we should only early-quit if the device...
ReactOS Portable Systems Group [Sun, 13 Jul 2008 07:16:24 +0000 (07:16 +0000)]
- Remove incorrect check in RamdiskPnp -- we should only early-quit if the device is removed, not uninitialized, otherwise we'll never get initialized.
- Add support for IRP_MN_SURPRISE_REMOVAL.
- Handle IRP_MN_QUERY_ID for FDO (it is the first IRP we receive).
- Handle IRP completion for FDOs and forward if necessary.

svn path=/trunk/; revision=34451

14 years ago- Add device state information.
ReactOS Portable Systems Group [Sun, 13 Jul 2008 07:02:48 +0000 (07:02 +0000)]
- Add device state information.
- Start implementing RamdiskPnp -- enough to fail requests until our device state is appropriate.
- Implement RamdiskOpenClose.

svn path=/trunk/; revision=34450

14 years ago- Implement RamdiskAddDevice.
ReactOS Portable Systems Group [Sun, 13 Jul 2008 04:23:59 +0000 (04:23 +0000)]
- Implement RamdiskAddDevice.
- Fix uninitialized pointer in DriverEntry.
- Add hack for ReactOS plug and play manager bug.
- Fix broken assert.
- Now in RamdiskPnp.

svn path=/trunk/; revision=34449

14 years ago- Remove debug code.
ReactOS Portable Systems Group [Sun, 13 Jul 2008 04:22:54 +0000 (04:22 +0000)]
- Remove debug code.

svn path=/trunk/; revision=34448

14 years ago- Add ramdisk class.
ReactOS Portable Systems Group [Sun, 13 Jul 2008 04:22:42 +0000 (04:22 +0000)]
- Add ramdisk class.

svn path=/trunk/; revision=34447

14 years ago- To whom it may concern: thanks for completly fucking up mkhive support with your...
ReactOS Portable Systems Group [Sun, 13 Jul 2008 02:32:24 +0000 (02:32 +0000)]
- To whom it may concern: thanks for completly fucking up mkhive support with your "fix". It broken make install and livecd on i386 AND ARM.
- Made the necessary changes to make it work properly by fixing mkhive and rbuild.

svn path=/trunk/; revision=34446

14 years ago- Only print out debug data for aborts if we can't handle them. Makes the debug log...
ReactOS Portable Systems Group [Sun, 13 Jul 2008 01:58:23 +0000 (01:58 +0000)]
- Only print out debug data for aborts if we can't handle them. Makes the debug log easier to read.

svn path=/trunk/; revision=34445

14 years ago- Do NOT prepend _ to ARM entrypoints.
ReactOS Portable Systems Group [Sun, 13 Jul 2008 01:56:20 +0000 (01:56 +0000)]
- Do NOT prepend _ to ARM entrypoints.
- Because of some ridiculously stupid design in LD, it seems if it cannot find a given entrypoint, it SILENTLY ASSUMES you meant "Hi LD, please use my base address as my entrypoint".
- As such, all our drivers were linked with the start address as the base address... for the RAMDisk driver, this ended up being RamdiskAddDevice.
- When we started implementing RamdiskAddDevice, noticed that DriverEntry wasn't actually getting called. Adding debug prints changed which function was called.
- Wasted a week, thanks LD.

svn path=/trunk/; revision=34444

14 years agoThe rest of rev 34442.
James Tabor [Sun, 13 Jul 2008 00:24:05 +0000 (00:24 +0000)]
The rest of rev 34442.

svn path=/trunk/; revision=34443

14 years ago- Started NtUserRegisterClassExWOW and now using the fnIDs. Nothing is used but the...
James Tabor [Sun, 13 Jul 2008 00:21:51 +0000 (00:21 +0000)]
- Started NtUserRegisterClassExWOW and now using the fnIDs. Nothing is used but the IDs. I tested with these changes for over 60 days.
- Implemented NtUserMessageCall, moved our first victim over to use it. This is for bug 2451.

svn path=/trunk/; revision=34442

14 years agoThis did not fix bug 3503 but only hid the problem. Added note about Firefox, polls...
James Tabor [Sat, 12 Jul 2008 23:49:51 +0000 (23:49 +0000)]
This did not fix bug 3503 but only hid the problem. Added note about Firefox, polls IsInsideMessagePumpHook when Min/Max.

svn path=/trunk/; revision=34441

14 years agodon't deref NULL pointer
Christoph von Wittich [Sat, 12 Jul 2008 13:47:06 +0000 (13:47 +0000)]
don't deref NULL pointer

svn path=/trunk/; revision=34439

14 years agoFix FF again. Sorry, I need to research this more.
James Tabor [Sat, 12 Jul 2008 12:04:03 +0000 (12:04 +0000)]
Fix FF again. Sorry, I need to research this more.

svn path=/trunk/; revision=34438

14 years agodon't return success in getaddrinfo
Christoph von Wittich [Sat, 12 Jul 2008 10:49:13 +0000 (10:49 +0000)]
don't return success in getaddrinfo
fixes a crash in divx installer

svn path=/trunk/; revision=34437

14 years agofix a typo
Christoph von Wittich [Sat, 12 Jul 2008 09:39:30 +0000 (09:39 +0000)]
fix a typo

svn path=/trunk/; revision=34435

14 years ago- Fix problem with share pointer. See bug 3503. It seems to be a problem with ntdll...
James Tabor [Sat, 12 Jul 2008 01:00:58 +0000 (01:00 +0000)]
- Fix problem with share pointer. See bug 3503. It seems to be a problem with ntdll and msvcrt.

svn path=/trunk/; revision=34433

14 years ago- Christoph von Wittich spotted a condition when co_MsqPostKeyboardMessage was called...
James Tabor [Fri, 11 Jul 2008 23:07:31 +0000 (23:07 +0000)]
- Christoph von Wittich spotted a condition when co_MsqPostKeyboardMessage was called from KeyboardThreadMain, the thread was unlocked when waiting in co_MsqSendMessage. The problem; UserLeave was called before waiting on an event. I added checks to verify locking and if not, lock the thread. I'm not sure ATM if co_MsqPostKeyboardMessage should have full locking since it is only used by input.c.
- Added IdlePing to wakeup process threads before waiting on events, it look like the right place to put them.

svn path=/trunk/; revision=34430

14 years ago- Port Wine's WideCharToMultiByte implementation for conversion to a codepage to...
Colin Finck [Fri, 11 Jul 2008 19:11:06 +0000 (19:11 +0000)]
- Port Wine's WideCharToMultiByte implementation for conversion to a codepage to ReactOS. (with comments :-))
  It adds support for DefaultChar, UsedDefaultChar and the flag WC_NO_BEST_FIT_CHARS.
  WC_COMPOSITECHECK is also supported by the Wine implementation, but I don't have an idea how to port it to ReactOS, as we don't seem to have composition tables. I left FIXME's for this flag in the appropriate blocks, this is why some of the code might look badly structured/unoptimized at the moment.
  As we completely rely on the NLS tables for the conversion now, this commit might trigger some bugs there. I already found out that the CP950 table doesn't map Unicode 0 back to MultiByte 0 (but 254), using Windows' c_950.nls it works correctly. Other tables could be buggy as well, c_1252.nls worked flawlessy for me though.
- Added comments to the CPTABLEINFO structure based on documentation from http://www.ping.uio.no/~ovehk/nls/

svn path=/trunk/; revision=34426