Commit Graph
31673 Commits
Author SHA1 Message Date
Timo Kreuzer 3a0c3db1e0 convert external debug output from message boxes to real debug output on serial
svn path=/branches/ros-amd64-bringup/; revision=34747
2008-07-24 16:44:01 +00:00
Samuel Serapion 222bbb2c4a libwine:
-use InterlockedExchangeAdd instead of interlocked_xchg_add
libxml2:
-WINSOCKETAPI already defined in config.h no need to redefine
mingw_base:
-rework _fmode refernces to allow ros64 programs to work on win64.
-temporarily hack _wenviron to allow programs to work on win64.
-aling stack to 16bytes
oskit:
-remove inline asm per suggestion by arty

svn path=/branches/ros-amd64-bringup/; revision=34745
2008-07-24 14:32:35 +00:00
Timo Kreuzer 9e84c59b5c add ntoskrnl_amd64.def. For some reason amd64 kernel does not export KeQuerySystemTime and atm I don't know what else should be used, so I added it to the def.
svn path=/branches/ros-amd64-bringup/; revision=34744
2008-07-24 14:31:35 +00:00
Timo Kreuzer fdcebd5143 hal:
fix HalRequestIpi prototype, comment out IO access functions for amd64, add hal_amd64.def and a tiny amd64/hal_generic.c

svn path=/branches/ros-amd64-bringup/; revision=34743
2008-07-24 14:26:53 +00:00
Timo Kreuzer 01f51087d5 add a stubbed version of kdcom for amd64
svn path=/branches/ros-amd64-bringup/; revision=34742
2008-07-24 14:17:43 +00:00
Timo Kreuzer 0088ce62be - make bootvid build for PLATFORM=PC instead of ARCH=i386 to share the files between i386 and amd64
- fix ULONG <-> pointer casts
- add bootvid_amd64.def

svn path=/branches/ros-amd64-bringup/; revision=34741
2008-07-24 14:15:12 +00:00
Timo Kreuzer af63b172fe strip off stdcall decoration from amd64 entry points
svn path=/branches/ros-amd64-bringup/; revision=34740
2008-07-24 13:32:59 +00:00
Timo Kreuzer 7ccff652ba ddk: update AMD64 intrinsic Interlocked functions
svn path=/branches/ros-amd64-bringup/; revision=34739
2008-07-24 13:03:31 +00:00
Timo Kreuzer a9c1627517 - add some files, I forgot to commit
- add media directory to build
now we load some files and then stop due to missing fastfat.sys

svn path=/branches/ros-amd64-bringup/; revision=34738
2008-07-24 12:27:40 +00:00
Timo Kreuzer 040bc2a3c6 - mark special pages
- move some definitions to arch/amd64.h

svn path=/branches/ros-amd64-bringup/; revision=34735
2008-07-24 11:32:40 +00:00
Timo Kreuzer 61f395c536 - create 512 2 MB pages first, so we have a max of 1 GB available memory. This gets us much further through hardware detection. the setup screen loads and then it stops with "failed to load the ANSI codepage file"
svn path=/branches/ros-amd64-bringup/; revision=34733
2008-07-24 10:26:15 +00:00
Samuel Serapion da25b896fd Fix Implicit declaration warnings.
code->commit->????->profit!

svn path=/branches/ros-amd64-bringup/; revision=34730
2008-07-24 08:10:16 +00:00
Timo Kreuzer 5f3d8cbe06 forgot this one: a stubbed out loader.c copied from i386
svn path=/branches/ros-amd64-bringup/; revision=34728
2008-07-24 02:30:36 +00:00
Timo Kreuzer ceaa5e63d3 Implement a LoaderEntry, a function to setup a pagetable, a function to switch to long mode, a function to switch to real mode, Int386 to call interrupts, add some defines for amd64, enable full debug output.
now setupldr should compile, and start it's work. It boots into long mode, reads the memory layout from bios and finally crashes, because the page table is limited to a single page of 2MB atm

svn path=/branches/ros-amd64-bringup/; revision=34727
2008-07-24 02:27:00 +00:00
Timo Kreuzer 9ee9e193f1 - implement _alloca (untested), ChainLoadBiosBootSectorCode, SoftReboot
- copy drvmap.S, i386cpu.S, i386idt.S, i386pnp.S, i386trap.S, mb.S

svn path=/branches/ros-amd64-bringup/; revision=34726
2008-07-24 02:18:44 +00:00
Timo Kreuzer bc5810d71a freeldr:
- add amd64 to rbuild files
- add include/amd64 and arch/amd64 and copy some files from i386, maybe we can later share some of them between those architectures
- convert fathelp.asm to fathelp.S so we can link it. Content stays the same as for i386

svn path=/branches/ros-amd64-bringup/; revision=34725
2008-07-24 01:48:44 +00:00
Timo Kreuzer b0ef62e022 freeldr:
- use strtoull for reading a pointer
- use %p in a debugprint instead of cast to int

svn path=/branches/ros-amd64-bringup/; revision=34724
2008-07-24 01:34:28 +00:00
Timo Kreuzer 52521c8876 freeldr:
- fix several ULONG to pointer casts

svn path=/branches/ros-amd64-bringup/; revision=34723
2008-07-24 01:25:43 +00:00
Timo Kreuzer 25248671ed freeldr:
- make SectionId a ULONG_PTR
- same for some Loaderblock members

svn path=/branches/ros-amd64-bringup/; revision=34722
2008-07-24 01:22:30 +00:00
Timo Kreuzer 27c15e2b72 comment out 2 unneeded libs, that don't compile
svn path=/branches/ros-amd64-bringup/; revision=34721
2008-07-24 01:07:48 +00:00
Timo Kreuzer 9a787689f7 - rename _toul to _toulptr and make it return an ULONG_PTR
svn path=/branches/ros-amd64-bringup/; revision=34720
2008-07-24 01:06:22 +00:00
Timo Kreuzer 318a837c35 last fixes for crt. Those are messing with handles and casting between 32 and 64 bit. I'm not sure if it's correct, probably not...
crt and libcntpr now compile warning free on amd64

svn path=/branches/ros-amd64-bringup/; revision=34719
2008-07-24 00:58:16 +00:00
Timo Kreuzer 267c44c1b1 - int -> intptr_t
- unsigned long -> uintptr_t
- #undef _MINGW_IMPORT in ctype.c, to avoid warnings

svn path=/branches/ros-amd64-bringup/; revision=34718
2008-07-24 00:54:12 +00:00
Timo Kreuzer 8a9b9256be Patch from Samuel Serapion ("encoded", samdwise51 at gmail dot com):
- fix prototypes of _findfirst, _findnext, _findclose, _findfirsti64, _findnexti64 _wfindfirst, _wfindnext, _wfindfirst64, _wfindnext64, strndup, 
- fix a number of pointer to int casts

svn path=/branches/ros-amd64-bringup/; revision=34717
2008-07-24 00:20:01 +00:00
Timo Kreuzer 31e3f10a45 rtl:
- amd64/add debug_asm.S (FIXME)
- cast AtomName to ULONG_PTR instead of ULONG
- RtlQueryProcessdebugInformation(): cast teb->Cid.UniqueProcess to ULONG_PTR for assignment to Pid. (should ProcessId parameter be ULONG_PTR, too?)
- vs(w)nprintf: cast argument to ULONG_PTR instead of unsigned long for a %p
- comment out some inlined Interlocked functions that shouldn't be there anyway
Now rtl can be compiled

svn path=/branches/ros-amd64-bringup/; revision=34716
2008-07-23 23:56:37 +00:00
Timo Kreuzer cc5298d837 comment out a few libs for now that don't build
svn path=/branches/ros-amd64-bringup/; revision=34715
2008-07-23 23:40:33 +00:00
Timo Kreuzer e7311c8d53 recyclebin:
- DWORD -> SIZE_T and SIZE_T -> DWORD

svn path=/branches/ros-amd64-bringup/; revision=34714
2008-07-23 23:37:01 +00:00
Timo Kreuzer bd414d2f91 fix NtCurrentTeb()
svn path=/branches/ros-amd64-bringup/; revision=34713
2008-07-23 23:28:07 +00:00
Timo Kreuzer 08ca7e8b0f fix KeGetCurrentPrcb() inline function
svn path=/branches/ros-amd64-bringup/; revision=34712
2008-07-23 23:18:45 +00:00
Timo Kreuzer 68c4fc0511 add amd64 ketypes.h and mmtypes.h copied from x86
svn path=/branches/ros-amd64-bringup/; revision=34711
2008-07-23 23:17:46 +00:00
Timo Kreuzer 07a47f0686 update some loader structs ULONG -> ULONG_PTR / SIZE_T
svn path=/branches/ros-amd64-bringup/; revision=34710
2008-07-23 23:03:57 +00:00
Timo Kreuzer 536ae9a084 add size_t definition to _mingw.h (ported from mingw)
svn path=/branches/ros-amd64-bringup/; revision=34709
2008-07-23 23:00:47 +00:00
Timo Kreuzer 630562934e fix LIST_ENTRY() macro for 64 bits
svn path=/branches/ros-amd64-bringup/; revision=34708
2008-07-23 22:56:10 +00:00
Timo Kreuzer 40969b4e16 winddk.h:
- add InterlockedCompareExchangePointer and InterlockedExchangePointer
- add intrinsic port and register access functions

svn path=/branches/ros-amd64-bringup/; revision=34707
2008-07-23 22:53:04 +00:00
Timo Kreuzer 5d199fcb97 - fix ENUMRESLANGPROC, ENUMRESNAMEPROC and ENUMRESTYPEPROC
- add Interlocked functions for pointers

svn path=/branches/ros-amd64-bringup/; revision=34706
2008-07-23 22:49:16 +00:00
Timo Kreuzer a7d12287a5 - fix IMAGE_FIRST_SECTION macro
- implement GetCurrentFiber(), NtCurrentTeb() and YieldProcessor()


svn path=/branches/ros-amd64-bringup/; revision=34705
2008-07-23 22:45:52 +00:00
Timo Kreuzer 60e9de3ce1 Implement _InterlockedAnd64, _InterlockedOr64, _interlockedbittestandreset64, _interlockedbittestandset64 and gs-segment-adressing functions
- as amd64 shares most of the intrinsics of x86, implement them in intrin_x86.h

svn path=/branches/ros-amd64-bringup/; revision=34704
2008-07-23 22:27:50 +00:00
Timo Kreuzer 923a014a4c fix inline versions of integer <-> pointer conversion functions
svn path=/branches/ros-amd64-bringup/; revision=34703
2008-07-23 22:24:04 +00:00
Timo Kreuzer e5f02915a1 ndk:ldrtypes.h : convert LDR_RESOURCE_INFO members from ULONG to ULONG_PTR
svn path=/branches/ros-amd64-bringup/; revision=34702
2008-07-23 22:21:41 +00:00
Timo Kreuzer 0612cc0e7b create rbuild files and strip everything from build, except freeldr.
svn path=/branches/ros-amd64-bringup/; revision=34701
2008-07-23 22:14:10 +00:00
Timo Kreuzer f339a8396c Make ncitool create syscall stubs for amd64. We use the same as for x86 for now.
svn path=/branches/ros-amd64-bringup/; revision=34700
2008-07-23 22:00:43 +00:00
James Tabor ca0afa576e - Fix show window call and add message calls for future hook support.
svn path=/trunk/; revision=34698
2008-07-23 21:18:48 +00:00
James Tabor d7c9b915da Enable message filter hooks and add call hook support for debug hook.
svn path=/trunk/; revision=34697
2008-07-23 20:24:49 +00:00
James Tabor 2ca130fb8b - Fix NtUserCallMsgFilter to use SEH. Add support for system commands related to hooks.
svn path=/trunk/; revision=34696
2008-07-23 19:59:20 +00:00
Aleksey Bragin 3383fdae0a - Partly revert 24104: "I do not known if I done right in NtGdiRealizePalette step2, step2 is not tested." - if you don't know, don't do at all!
Memory DC "supports drawing operations on a bitmap" according to MSDN, so why changing device's palette? I think it was not done for a reason, and if you can't test, don't touch before you have a test application.
- Reformat another part of 24104, and include warning messages too, to track palette failures.
- Put two mandatory debug prints to see when the code is being hit (one to memory managed DC case, and another one to the code commented out by Jim).
- Tested with abiword, FF 1.5 and 2.0, openoffice 2.0 installer, in 8, 24 and 32 bit color modes, no problem arised, and no debug messages flood happened.

svn path=/trunk/; revision=34695
2008-07-23 18:20:32 +00:00
Jeffrey Morlan 4246bf6783 - Implement handle access checking on all console functions.
- OpenConsoleW: Fourth parameter is actually share mode (passing a number from 0 to 2 will usually give ERROR_SHARING_VIOLATION on Windows)
- CreateFileW: Move CONIN$/CONOUT$ handling after dwCreationDisposition checks (it must be valid, even though it doesn't matter which it is); pass FILE_SHARE_READ|FILE_SHARE_WRITE to OpenConsoleW (dwShareMode is ignored).
- CloseConsoleHandle, CsrReleaseObject, CsrVerifyObject: Remove IsConsoleHandle checks - Windows ignores lower 2 bits of handle for closing and verifying.
- SetConsoleMode: Remove IsConsoleHandle check - it's redundant, since the same check is done in CsrGetObject.
- CsrIsConsoleHandle, CsrReleaseObjectByPointer: Clean up a bit.
- CsrFreeConsole: Remove the process from the console's list.

svn path=/trunk/; revision=34694
2008-07-23 16:21:46 +00:00
Aleksey Bragin dd1b21d54b - Revert 20424 and do a proper fix: Check if pool allocation succeeded right after allocation, not at the end of the function, when the pointer has been used quite a few times already.
svn path=/trunk/; revision=34693
2008-07-23 15:18:25 +00:00
Christoph von Wittich 981b8ac8ca fix all kernel32 version winetests
svn path=/trunk/; revision=34692
2008-07-23 11:19:01 +00:00
James Tabor 0868fdb45d - Fixed CallNextHookEx, now we do make the callback. Q, how to reload it at the end of the list? Fix for bug 3549.
- Tested with Opera 9.51(still breaks when getting the page see bug 3465), FF, Seamonkey, Abiword, and the rest of our applications.

svn path=/trunk/; revision=34691
2008-07-22 23:46:31 +00:00
Art Yerkes e115c9270c Patch by Cameron Gutman (aicommander <at> gmail <dot> com)
Fixed my mistake leaving TCPConnect on a failure path without releasing the
TCP lock.

svn path=/trunk/; revision=34690
2008-07-22 23:11:46 +00:00