Commit Graph

3807 Commits

Author SHA1 Message Date
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
3d5e125a48 - Fix FILE location in the header
svn path=/trunk/; revision=34471
2008-07-13 22:15:56 +00:00
KJK::Hyperion
ba77ba4484 Forgot a file. Fix fucking buildbot already D:<
svn path=/trunk/; revision=34464
2008-07-13 18:06:10 +00:00
KJK::Hyperion
70a54a9995 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
2008-07-13 17:54:53 +00:00
James Tabor
48885ed2c4 - 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
2008-07-13 00:21:51 +00:00
Colin Finck
f25ac715b0 - 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
2008-07-11 19:11:06 +00:00
Timo Kreuzer
793805597e Patch by Stefan Ginsberg:
fix members of UNIVERSAL_FONT_ID, based on msdn

svn path=/trunk/; revision=34415
2008-07-10 20:09:23 +00:00
Aleksey Bragin
e00d31206e Yuriy Sidorov <jura@cp-lab.com>
- Implement RtlSetUserValueHeap, RtlSetUserFlagsHeap, RtlGetUserInfoHeap functions. It is quick implementation and it works.
- It fixes "Out of memory" error in all InnoSetup based installations. A lot of software can be at least installed in ReactOS now.
- Also it fixes Delphi applications which use TMemoryStream class.
See issue #3464 for more details.

svn path=/trunk/; revision=34404
2008-07-10 09:46:25 +00:00
James Tabor
f1cf84c7f1 CS_NOKEYCVT is used to set Classname to Version when calling to register class.
svn path=/trunk/; revision=34399
2008-07-10 01:28:59 +00:00
James Tabor
6299128828 - Removed NtUserGetShellWindow, update related.
svn path=/trunk/; revision=34397
2008-07-09 22:46:17 +00:00
Aleksey Bragin
2f5cd560df Autosyncing with Wine HEAD
svn path=/trunk/; revision=34389
2008-07-09 11:20:39 +00:00
Aleksey Bragin
cc891b65c9 - Add MapVirtualKey translation types.
svn path=/trunk/; revision=34388
2008-07-09 10:27:56 +00:00
Pierre Schweitzer
ba32da0049 Synced shfolder.dll, stdole2.tlb, tapi32.dll, usp10.dll, winhttp.dll, wldap32.dll, wtsapi32.dll with Wine HEAD
svn path=/trunk/; revision=34385
2008-07-09 09:19:04 +00:00
James Tabor
5b7926d225 Cleanup headers for Prop.
svn path=/trunk/; revision=34380
2008-07-09 04:44:13 +00:00
James Tabor
2a0296d191 - Removed NtUserGetWindowThreadProcessId, updated all related. Wanting to remove this since I first joined.
- Tested with all my test apps.

svn path=/trunk/; revision=34379
2008-07-09 04:30:10 +00:00
James Tabor
dd4397b095 - Removed NtUserGetProp, updated all related.
- Tested with FF, OOo, Seamonkey, putty, etc, and standard loaded apps. We use GetProp more than anyone thinks.

svn path=/trunk/; revision=34378
2008-07-09 03:29:43 +00:00
James Tabor
ef1f9bd06c Win32k/User32:
- Removed NtUserGetSystemMetric, updated all related.
- Add GetConnected, this is needed, sometimes global pointers are initilized with zeros. This is normal.
- Fix prototype for NtUserDragDetect, and add the Esc key hit to DragDetect.

svn path=/trunk/; revision=34370
2008-07-08 18:58:07 +00:00
Aleksey Bragin
0a953de77e Autosyncing with Wine HEAD
svn path=/trunk/; revision=34369
2008-07-08 16:39:29 +00:00
Pierre Schweitzer
0fe1322cbc Synced riched20.dll with Wine HEAD
svn path=/trunk/; revision=34367
2008-07-08 10:08:54 +00:00
ReactOS Portable Systems Group
b513c98fb2 - Rewrite the low-level trap/exception/system call code from the ground up:
- Do not corrupt the stack anymore
  - Use a consistent trap frame layout (enable OldIrql and PreviousMode, and set the 0xBADB0D00 debug mark)
  - Use slower but more correct trap prolog/epilog code for now.
  - Generalize all prolog/epilog code into macros just like on x86. As a result, traps are now 6 lines of code.
- Rewrite the system call interface from the ground up:
  - System calls didn't actually work: a debug print made the stack layout magical enough so that they didn't normally crush, but only slowly ate the stack.
  - Copying arguments from caller to system call was, as the comment on the original code so aptly put it, "total shit".
  - Due to ABI concerns, and to provide an actual template on how you're -supposed- to implement something like system calls on RISC processors, we now use
    a model similar to BSD, but about ten times better (with that much less code too). We'll document it later on the RosPSG Wiki.
  - This code probably contains some of the most vile-yet-elegant macro magic ever written for such low-level code as system call dispatching. 
- The result of all this is that we're at the same place as before (RamdiskAddDevice needs to be implemented by the Ramdisk guys) but with a sane low-level
  backend that isn't slowly eating away the stack, corrupting data, and basically working through random chance.
- Move timebase code from stubs.c to its own file, time.c.
- Silence multiple debug prints and fix a corrupted debug print in KiSystemStartup.


svn path=/trunk/; revision=34366
2008-07-08 09:11:44 +00:00
James Tabor
0f60c8cc54 Update the rest of the prototypes and stubs.
svn path=/trunk/; revision=34364
2008-07-08 07:38:28 +00:00
James Tabor
f7a270aa2a Update more prototypes and stubs.
svn path=/trunk/; revision=34363
2008-07-08 05:43:14 +00:00
James Tabor
e2dbf44d99 Update prototypes and stubs.
svn path=/trunk/; revision=34362
2008-07-08 05:11:40 +00:00
James Tabor
fe82a25252 Update SetLayeredWindowAttributes.
svn path=/trunk/; revision=34350
2008-07-07 05:54:36 +00:00
Colin Finck
e32689dbb6 Fix buggy MB_LEN_MAX definition according to MSVC headers
svn path=/trunk/; revision=34348
2008-07-06 22:56:19 +00:00
Aleksey Bragin
cce8a43337 - Update hlink headers from Wine HEAD.
svn path=/trunk/; revision=34342
2008-07-06 20:44:35 +00:00
Aleksey Bragin
b5668fd659 - Sync gdiplusflat.h with Wine HEAD.
svn path=/trunk/; revision=34336
2008-07-06 16:32:16 +00:00
Aleksey Bragin
7b02ecd2cf - Update test.h to the latest Wine HEAD.
svn path=/trunk/; revision=34334
2008-07-06 15:31:38 +00:00
James Tabor
b82fda4139 Add two more query window types.
svn path=/trunk/; revision=34296
2008-07-04 18:52:22 +00:00
Aleksey Bragin
97f94beafc - There is no working strsafe lib yet, so including its header is meaningless.
svn path=/trunk/; revision=34291
2008-07-04 08:45:01 +00:00
Colin Finck
57e8b1c4e5 Remove the strsafe library, it was imported from a dubious source, which is incompatible with the LGPL
svn path=/trunk/; revision=34290
2008-07-04 08:24:37 +00:00
James Tabor
709931f91a - Moved WM_ACTIVATEAPP calles before WM_NC/ACTIVATE calls.
- Implemented GetLastActivePopup, based on wine.
- Fixed DCE, pass all tests, except six clipping and one ROP check, which might be due to DCX_NORESETATTRS flag not being reset during the next GetDCEx call. <Researching>


svn path=/trunk/; revision=34289
2008-07-04 04:55:18 +00:00
Dmitry Chapyshev
56be7bf03b - Update gdiplus headers
svn path=/trunk/; revision=34250
2008-07-02 08:18:06 +00:00
ReactOS Portable Systems Group
e7756d443d - Add RAM disk support to FreeLDR and to the NTLDR emulation layer in the kernel for non-clean archs (ppc and x86)
svn path=/trunk/; revision=34204
2008-06-30 02:42:12 +00:00
ReactOS Portable Systems Group
662c3b62fe - Define NT RAM Disk device interface (100% compatible with Microsoft ramdisk.sys)
svn path=/trunk/; revision=34201
2008-06-30 02:13:53 +00:00
ReactOS Portable Systems Group
e114abfb64 - Add RAMDISK_BOOT_INITIALIZATION_FAILED bugcheck code
svn path=/trunk/; revision=34200
2008-06-30 02:11:46 +00:00
ReactOS Portable Systems Group
a2931ebaf1 atoi64 is available without MSVCRT, through ntdll or ntos
svn path=/trunk/; revision=34199
2008-06-30 02:10:41 +00:00
ReactOS Portable Systems Group
c50bcc2c12 - Implement beginnings of Ramdisk Port Driver. Planning compatibility with ISO, SDI and WIM files and full Windows support.
- New license for our code.


svn path=/trunk/; revision=34170
2008-06-29 02:58:05 +00:00
Aleksey Bragin
0cac013600 - NDK fix: ImageUsesLargePages in PEB appeared in Windows 2003 already (confirmed with SP1 though).
svn path=/trunk/; revision=34134
2008-06-27 17:26:10 +00:00
Dmitry Chapyshev
312d6d1343 - Add inetmib1 to bootcd
- Add some defines to snmp.h

svn path=/trunk/; revision=34132
2008-06-27 17:12:18 +00:00
Aleksey Bragin
43695ec25d - NDK fixes.
svn path=/trunk/; revision=34124
2008-06-27 08:23:45 +00:00
Dmitry Chapyshev
e75134e8d0 - Add some defines
svn path=/trunk/; revision=34122
2008-06-27 06:41:48 +00:00
ReactOS Portable Systems Group
7675e2b8be - Implement VidResetDisplay in BootVid-arm.
- Implement KiSaveProcessorControlState and make the appropriate changes to KPROCESSOR_STATE and KSPECIAL_REGISTERS on ARM to support this, as well as moving the ARM Register definitions from ntos to NDK.
- Implement RtlCaptureContext.
- With these changes, BSODs now work, but because of missing palette code, they are actually R(Red)SODs, which is awesome.
- Remove debug prints from system call code -- this ends up somehow corrupting the return values *sigh*. More work to be done there, defintely. We have now regressed but we have an RSOD.


svn path=/trunk/; revision=34120
2008-06-27 03:06:11 +00:00
Colin Finck
b79ef105f1 Get shell32 to compile warning-free
Patch by Stefan Ginsberg with minor modifications by me

svn path=/trunk/; revision=34073
2008-06-24 14:37:50 +00:00
James Tabor
3780af2706 Add PS_JOIN_MASK to psdk.
svn path=/trunk/; revision=34065
2008-06-24 03:17:35 +00:00
ReactOS Portable Systems Group
8df8940a6e - The CRT sync by "fireball" is incorrect and results in a broken ntos kernel. Although it may work on i386 builds, it results in a corrupted kernel anyways. On ARM, we try to hackfix around it by not including some routines that should not be in the kernel but were being imported due to the broken crt changes.
- We do not attemp to build world anymore. We have handwritten a new ARM rbuild file that only builds what we need for our current ARM work.
- HAL and FreeLDR do not seem to have an "installpath"... why not? Added one at least for our ARM stuff, so that "make install" can drop the binaries.
- Fixed some ARM DDK macro inconsistencies, allow more drivers to build.
- It is now possible to use "make install -k" to drop a completely working ARM build onto an image due to all these changes.

svn path=/trunk/; revision=34055
2008-06-23 03:57:50 +00:00
Colin Finck
8d9b815544 Add a library "host_wcsfuncs" with implementations for UTF-16 string functions needed for some host tools
Instead of copying those functions into every host tool, which needs it (as we did previously), we can now implement them all in this library and link the host tools to it.
If USE_HOST_WCSFUNCS is not defined, the "wcsfuncs.h" file will define them to the CRT functions (so this library does not create overhead, when the code is built for the target platform)

See issue #3285 for more details.

svn path=/trunk/; revision=34050
2008-06-22 20:58:56 +00:00
Colin Finck
25f5cca19d Put a comment and an #if around the lines I changed in my previous commit, because the ##__VA_ARGS__ syntax was only tested with MSVC and GCC
svn path=/trunk/; revision=34032
2008-06-19 22:03:22 +00:00
Colin Finck
460379ac3f Reapply Ged's fix, this time correctly :-)
Thanks to hackbunny for pointing out that ##__VA_ARGS__ will strip the trailing comma and this works on both GCC and MSVC.

svn path=/trunk/; revision=34031
2008-06-19 21:57:32 +00:00
Ged Murphy
d726ab1152 revert the debug macros change, the entire codebase isn't ready for it yet
svn path=/trunk/; revision=34030
2008-06-19 21:40:08 +00:00