Commit graph

44258 commits

Author SHA1 Message Date
Timo Kreuzer 205fe71c5d [CRT]
Fix another typo

svn path=/trunk/; revision=49836
2010-11-28 09:53:22 +00:00
James Tabor 52a1227b43 [User32]
- Sync up with wine 1.2 rc6 menu so it will pass the tests from rev 47939.

svn path=/trunk/; revision=49834
2010-11-28 01:37:16 +00:00
Timo Kreuzer af040adf50 [CRT]
Fix typos

svn path=/trunk/; revision=49830
2010-11-28 00:10:02 +00:00
Timo Kreuzer 250e056ece revert r49824
svn path=/trunk/; revision=49827
2010-11-27 22:24:15 +00:00
Timo Kreuzer 1d70b8136a [ASM]
Merge asm related changes from cmake branch.

svn path=/trunk/; revision=49826
2010-11-27 22:12:15 +00:00
Aleksey Bragin 9ce5939959 [MPRAPI]
- Sync to Wine-1.3.8
See issue #5718 for more details.

svn path=/trunk/; revision=49825
2010-11-27 21:38:11 +00:00
Timo Kreuzer ff164c8fa4 [XML]
Silence a warning on MSVC

svn path=/trunk/; revision=49824
2010-11-27 19:02:37 +00:00
Aleksey Bragin cc202fdc31 [FREELDR]
- Conditionally enable heap-related debugging and validation checks by an MM_DBG define for all architectures. Inspired by 49744.

svn path=/trunk/; revision=49792
2010-11-25 22:03:56 +00:00
Pierre Schweitzer fb04d4fd23 [NTOSKRNL]
Fix the fix, ie fix x86.
Everything should work now ~

svn path=/trunk/; revision=49790
2010-11-24 22:51:03 +00:00
Sylvain Petreolle cea642beb3 [FREELDR]
poor little printf causes boot break, nuff said.

svn path=/trunk/; revision=49789
2010-11-24 20:55:15 +00:00
Sir Richard 5f47e1ddd0 [NTOS]: Seems like cpsr_c doesn't work in this case? Need to investigate. Put an infinite loop in the entrypoint on ARM.
svn path=/trunk/; revision=49786
2010-11-24 18:56:35 +00:00
Sir Richard a5dbee0b8f [NTOS]: STATUS_SUCCESS is not the only succesful return code.
svn path=/trunk/; revision=49785
2010-11-24 18:53:47 +00:00
Timo Kreuzer ec2d741f31 [SERVICES]
Fix a typo (|| instead of |). Found by clang.

svn path=/trunk/; revision=49783
2010-11-24 18:30:12 +00:00
Sir Richard 889287242f [NTOS]: Fix 16-bit interlocked operations on ARM (GCC doesn't provide built-ins). ARM should build now.
svn path=/trunk/; revision=49782
2010-11-24 18:19:42 +00:00
Sir Richard ae6d759f4c [NTOS]: Some more ARM build and linker fixes, moving some of the new x86 C code into ARM. This should really be shared later.
[NTOS]: Totally broke thread context switching on ARM for now. It's a Good Thing.

svn path=/trunk/; revision=49781
2010-11-24 17:49:52 +00:00
Sir Richard a19af9c7cb [NDK]: Fix definition of ARM PTE/PDE structure.
[NTOS]: Fix up ARM code to match recent ARM3 changes.
[NTOS]: Do not use initguid inside every single file to zillionplicate the GUIDs! Why doesn't the x86 linker catch this?!!?
[ARMDDK]: Define some spinlock functions.

svn path=/trunk/; revision=49780
2010-11-24 17:26:30 +00:00
Pierre Schweitzer 85adb4ff80 [NTOSKRNL]
That's not because ARM will rule the world on a day that you're obliged to break x86 build.
Fixed build. Will it work? Only God knows.

svn path=/trunk/; revision=49779
2010-11-24 17:24:54 +00:00
Sir Richard 1a6196d960 [NTOS]: Add MiGetPteOffset for ARM. All of the kernel compiles, but does not link yet.
svn path=/trunk/; revision=49778
2010-11-24 16:09:19 +00:00
Sir Richard d3036c6ebf [CONFIG]: Instead of having 4 template rbuild configuration files that must be kept in-sync, maybe there should be a generic one that they all inherit from?
[CONFIG]: Add new property settings that exist in x86, but not ARM because nobody added them there. For example, nor cc, nor cache were being built on ARM, because NEWCC was undefined (which isn't treated as 0 by rbuild).
How I long for CMAKE.

svn path=/trunk/; revision=49777
2010-11-24 16:08:54 +00:00
Sir Richard 0a30393880 [ARMDDK]: Oh, right, forgot how this was laid out. should fix ARM build.
svn path=/trunk/; revision=49775
2010-11-24 15:41:28 +00:00
Sir Richard 2a91ad3419 [NTOS]: Fix incorrect assumptions that a PDE == PTE which have crept up throughout new ARM3 code.
[NTOS]: Fix a couple more unportable directly "Hard" PTE field accesses, instead of using portable MI macros.
[NTOS]: Cleanup some of the pool code that had really messed up PDE vs PTE.
[NTOS]: Define the number of page directoty levels for ARM.
[NTOS]: Comment out some ARM3 code that won't be needed now that most of the x86 code is in C.
Fixes all but one build error.

svn path=/trunk/; revision=49774
2010-11-24 15:21:45 +00:00
Sir Richard bb8885c1d7 [PSDK/NDK]: Fix KPCR/KIPCR for ARM to match x86 more closely. Add KeGetTickCount for ARM.
svn path=/trunk/; revision=49773
2010-11-24 15:18:24 +00:00
Giannis Adamopoulos 8379e12418 [win32k]
-move several user stubs in ntstubs.c

svn path=/trunk/; revision=49772
2010-11-24 14:52:23 +00:00
Sir Richard b145be7aef [NTOS]: Errr... wow! Another one caught by ARM GCC. I can swear x86 GCC used to catch these. Did someone change warning settings? Anyhow, fix a *f++ which increments the pointer, not the value INSIDE the pointer (*f)++. Fixes MiDeleteSystemPageableVm.
svn path=/trunk/; revision=49771
2010-11-24 14:47:08 +00:00
Sir Richard bae9b1d587 [NTOS]: Erm, why is it that the ARM compiler detects this obvious bug, but x86 does not? Fix missing ShareCount zeroing when unlocking an MDL.
svn path=/trunk/; revision=49770
2010-11-24 14:39:23 +00:00
Giannis Adamopoulos 4ef8ef5ae9 [win32k]
- Remove some unused functions

svn path=/trunk/; revision=49769
2010-11-24 14:13:12 +00:00
Sir Richard aa3c437ea1 [ARMLLB]: Delete deprecated folder
[ARMLLB]: Add missing UART functionality for ZOOM2. Leverages existing CPORT library.

svn path=/trunk/; revision=49768
2010-11-24 14:07:56 +00:00
Timo Kreuzer 4d2bf9c918 [KERNEL32]
Revert r49761 on Pierre's request

svn path=/trunk/; revision=49767
2010-11-24 12:35:51 +00:00
Daniel Reimer 44af886a1c Updates for Rapps Download Database.
svn path=/trunk/; revision=49766
2010-11-24 08:56:20 +00:00
Pierre Schweitzer 531a052d9e [KERNEL32]
- Added real implementation of SetLastError() (instead of forwarding to NTDLL)
- Implemented BaseSetLastNTError()
- Renamed Basep8BitStringToCachedUnicodeString() to Basep8BitStringToStaticUnicodeString() and sightly changed its implementation
- Fixed implementation of LoadLibraryExA() & DisableThreadLibraryCalls() using those changes
This is matching w2k3 implementation. This is of course a WIP.

svn path=/trunk/; revision=49761
2010-11-23 23:39:58 +00:00
Pierre Schweitzer 92967f5f41 [NTOSKRNL]
Forgotten comments...

svn path=/trunk/; revision=49759
2010-11-23 20:05:33 +00:00
Pierre Schweitzer 1ab061dba1 [NTOSKRNL]
- Implemented FsRtlPTeardownPerFileObjectContexts(), FsRtlLookupPerFileObjectContext(), FsRtlInsertPerFileObjectContext(), FsRtlRemovePerFileObjectContext()
- Stubplemented IoGetFileObjectFilterContext(), IoChangeFileObjectFilterContext()
- Add support of per file object filter context to IopDeleteFile()
As ReactOS doesn't support file objects extensions, this doesn't work (blame Aleksey) - yet

svn path=/trunk/; revision=49758
2010-11-23 20:01:04 +00:00
Sir Richard c70bf13d93 [FREELDR]: Fix RAM layout assumptions in ARM code.
svn path=/trunk/; revision=49757
2010-11-23 17:54:11 +00:00
Sir Richard e79eaea9b3 [FREELDR]: For *every single heap allocation*, there was code to request an entire *heap statistic run*! This is ridiculous and slows heap allocations tremendously. Additionally, it also assumes bstats was linked in, which it might not be if the flag wasn't set in bheap.c. Only enable this code if a special MM_DBG define is set.
[FREELDR]: Done originally for ARM, but I think x86 will appreciate the benefit too (and x86 can now go ahead and disable all those ridiculous debug settings that are turned on by default in bheap.c).

svn path=/trunk/; revision=49756
2010-11-23 17:29:40 +00:00
Sir Richard 7ca4b3879b [FREELDR]: Cleanup firmware table setup and add support for being booted from a ZOOM2 ARMLLB, and set the correct file system buffer address for that board.
svn path=/trunk/; revision=49755
2010-11-23 17:27:22 +00:00
Sir Richard 15696106fe [FREELDR]: Use PaToVa to set the Hive and NLS data pointers, instead of assuming that KSEG0_BASE | Pa is the correct answer for all architectures.
svn path=/trunk/; revision=49754
2010-11-23 17:26:31 +00:00
Sir Richard 3cba3193a4 [FREELDR]: Headless/EMS support is an x86-specific feature (at least for now, until the code is made portable).
svn path=/trunk/; revision=49753
2010-11-23 17:25:37 +00:00
Sir Richard ba4d24ea04 [FREELDR]: VaToPa/PaToVa are assuming all architectures have VA at PA | KSEG0_BASE. This is not the case. On ZOOM2, DDR RAM starts at 0x80000000 for example, so KSEG0 == VA == PA. Use an ifdef do handle this.
svn path=/trunk/; revision=49752
2010-11-23 17:24:59 +00:00
Sir Richard 77b3701cfd [FREELDR]: Define FreeLoader module for ARM. Differences with x86 are mostly due to the fact "bootloader" was unfortunately made an x86-specific module type, so we have to use "kernel" to get around that, which thankfully has remained portable.
svn path=/trunk/; revision=49751
2010-11-23 17:23:47 +00:00
Sir Richard 883b9b56b8 [FREELDR]: Put ARM boot code in .init section to guarantee it goes first in the file, as per the linker script.
svn path=/trunk/; revision=49750
2010-11-23 17:22:33 +00:00
Sir Richard 74e7e1825e [FREELDR]: Add more keycodes.
svn path=/trunk/; revision=49749
2010-11-23 17:21:52 +00:00
Sir Richard 28169472e5 [FREELDR]: Add linker script for ARM as well. We drop the relocation section as it shouldn't be needed.
svn path=/trunk/; revision=49748
2010-11-23 17:21:30 +00:00
Sir Richard 7b5b2fa5d2 [NTOS]: Don't put boot.s in "arch" anymore, it's part of "boot" now.
svn path=/trunk/; revision=49747
2010-11-23 17:20:20 +00:00
Sir Richard 14e2c790ab [FREELDR]: Set load address for ZOOM2, and differentiate Beagle vs ZOOM2.
svn path=/trunk/; revision=49746
2010-11-23 17:19:52 +00:00
Sir Richard 262a3a7945 [FREELDR]: Add startup file for ARM builds as well, so that _start can be the first function in the file.
svn path=/trunk/; revision=49745
2010-11-23 17:19:22 +00:00
Sir Richard 492d30fecb [FREELDR]: On ARM, don't turn on maximum, hyper, ultra-slow debugging and analysis features for the heap. This, for example, reduces FreeLoader's size by 32KB+ and speeds up boot by entire seconds, as the entire heap isn't zeroed out on startup.
[FREELDR]: May I humbly suggest you do the same on x86?!

svn path=/trunk/; revision=49744
2010-11-23 17:17:32 +00:00
Sir Richard b363fcdc3b [ARMLLB]: Split up support between OMAP3 Beagle and ZOOM2.
[ARMLLB]: Implement ZOOM2 ARMLLB board support package. TWL4030 read/write implemented (through basic I2C on the HS interface), RTC and Keypad Matrix implemented (through TWL4030), NEC WVGA Panel Initialization (through basic SPI interface on the MBPSI), basic clock setup and GPIO access for DSS/DISPC, setup DSS/DISPC for output on the NEC panel. UART implemented through Quad-UART NS16550 compatible chip (using CPORTlib).
[ARMLLB]: Requires having been booted through x-loader+uboot as a kernel image. Will work on directly booting from NAND later.

svn path=/trunk/; revision=49743
2010-11-23 17:14:41 +00:00
Sir Richard 0b05db72cf [ARMLLB]: Although the soothing BSOD blue color is nice for LLB debugging, we'd really prefer to have black so it looks more natural on the eyes when booting to FreeLoader. As such, make the default backcolor black, but keep the old blue color for early testing, if enabled with a define.
svn path=/trunk/; revision=49742
2010-11-23 16:50:35 +00:00
Sir Richard 00c2cfbe36 [ARMLLB]: We made certain assumptions in the "generic" files that are actually board-specific. For example, Versatile does indeed return a strange ULONG as the RTC time (seconds since 1970, I think), but TWL4030 on the ZOOM2 is normal and returns BCD RTC values just like the PC CMOS. Therefore, most of the "Generic" time.c code should move to versatile later. For now, use an IFDEF.
[ARMLLB]: Likewise, not all platforms have a PS/2 controller like the Versatile. ZOOM2 for example has a keypad, so the generic "input" file shouldn't assume keyboard-only. As such, most of the code there should also be made specific, but for now, use an ifdef.

svn path=/trunk/; revision=49741
2010-11-23 16:49:28 +00:00
Sir Richard cc0c432e7b [ARMLLB]: Include FreeLoader's keycode mappings (which don't seem standard) in ARMLLB, so we can do correct keypad to keycode translation.
[ARMLLB]: Include ReactOS's standard debug.h, which lets us un-redefine DbgPrint, and also gives us goodies like ASSERT and DPRINT1.

svn path=/trunk/; revision=49740
2010-11-23 16:46:30 +00:00