reactos.git
8 years agoGive kernel32 a little bit of extra space to see if it makes the hybrid server not...
Stefan Ginsberg [Sun, 13 Sep 2015 11:40:12 +0000 (11:40 +0000)]
Give kernel32 a little bit of extra space to see if it makes the hybrid server not crash.

svn path=/trunk/; revision=69215

8 years agoDefine __RELFILE__ the same for an -O0 build so the tests don't get edgy when compari...
Stefan Ginsberg [Sun, 13 Sep 2015 11:08:16 +0000 (11:08 +0000)]
Define __RELFILE__ the same for an -O0 build so the tests don't get edgy when comparing it to our optimized builds.

svn path=/trunk/; revision=69214

8 years ago[RAPPS][RAPPS_NEW]
Thomas Faber [Sun, 13 Sep 2015 06:34:23 +0000 (06:34 +0000)]
[RAPPS][RAPPS_NEW]
- Don't redefine the default "Application" facility in the .mc file. Fixes MSVC warning

svn path=/trunk/; revision=69213

8 years ago[MSVC]
Thomas Faber [Sun, 13 Sep 2015 06:22:58 +0000 (06:22 +0000)]
[MSVC]
- Silence warning LNK4104 (Export of symbol 'X' should be PRIVATE) where appropriate

svn path=/trunk/; revision=69212

8 years ago[COMMAND]
Hermès Bélusca-Maïto [Sun, 13 Sep 2015 01:18:50 +0000 (01:18 +0000)]
[COMMAND]
- Fix the GCC macro for structure declaration, so that referencing an offset to the structure doesn't fail anymore (ie. doing "mov dx, offset MyStruct" doesn't assemble to "mov dx, 0x100").
This fixes NTVDM not being able to start any DOS app. Reported by Aleksander Rechitskiy.
CORE-9677 CORE-9679 #resolve
CORE-9678

[NTVDM]
- Fix newline in DPRINT.

svn path=/trunk/; revision=69211

8 years ago[KDBG] Don't bring down the kernel either when int2c-ing from user mode
Stefan Ginsberg [Sat, 12 Sep 2015 22:01:10 +0000 (22:01 +0000)]
[KDBG] Don't bring down the kernel either when int2c-ing from user mode

svn path=/trunk/; revision=69210

8 years ago- Make KDBG handle assertion failures/int2C the same way as breakpoints/int3 (that...
Stefan Ginsberg [Sat, 12 Sep 2015 21:44:48 +0000 (21:44 +0000)]
- Make KDBG handle assertion failures/int2C the same way as breakpoints/int3 (that is, ignore them from user-mode by default) for the time being until an internal prompt-routine is implemented.

svn path=/trunk/; revision=69209

8 years ago[NTVDM]: Reenable the mouse driver that I disabled by error in my previous commit.
Hermès Bélusca-Maïto [Sat, 12 Sep 2015 20:25:45 +0000 (20:25 +0000)]
[NTVDM]: Reenable the mouse driver that I disabled by error in my previous commit.

svn path=/trunk/; revision=69208

8 years ago[INTL]
Eric Kohl [Sat, 12 Sep 2015 20:24:10 +0000 (20:24 +0000)]
[INTL]
Set the system default language and codepages.
CORE-10075

svn path=/trunk/; revision=69207

8 years ago[NTVDM]: Fix parentheses. Thanks GCC.
Hermès Bélusca-Maïto [Sat, 12 Sep 2015 20:13:22 +0000 (20:13 +0000)]
[NTVDM]: Fix parentheses. Thanks GCC.

svn path=/trunk/; revision=69206

8 years ago[KDBG]: Add new command "reboot" that does exactly what it says.
Stefan Ginsberg [Sat, 12 Sep 2015 20:10:43 +0000 (20:10 +0000)]
[KDBG]: Add new command "reboot" that does exactly what it says.

svn path=/trunk/; revision=69205

8 years ago[NTVDM]
Hermès Bélusca-Maïto [Sat, 12 Sep 2015 20:09:25 +0000 (20:09 +0000)]
[NTVDM]
- Add support for DOS VDM reentry, i.e. the fact that a DOS app can start a 32-bit app, which in turn can start another DOS app, ad infinitum...
CORE-9711 CORE-9773 #resolve
- Add a small COMMAND.COM which is, for now, completely included in NTVDM. This COMMAND.COM is needed in order to support reentrancy. The fact that I chose to put it inside NTVDM is that any user can use instead his/her own COMMAND.COM, while retaining the possibility to perform VDM reentrancy (on Windows, if you remove the COMMAND.COM in windows\system32 and replace it with your own, you will break VDM reentrancy on windows' ntvdm).
CORE-5221 #resolve #comment I choose for the moment an internal COMMAND.COM, but you can recompile NTVDM to use it externally instead.

Global remarks:
- Quite a few DPRINTs were added for diagnostic purposes (since DOS reentrancy is a new feature), to be sure everything behaves as expected when being used with a large panel of applications. They will be removed when everything is OK.
- Support for current directories and 16/32-bit environment translation (in ntvdm + basevdm-side) remain to be implemented.

Other changes:
- Improve a bit the VDM shutdown code by gathering it at one place (there's still room for other improvements).
- Add suppport for properly pausing/resuming NTVDM.
- Bufferize some console events before dispatching.

Have fun ;^)

svn path=/trunk/; revision=69204

8 years ago[NTVDM]: Add a diagnostic dprint to check why some apps seem to fail allocating memory.
Hermès Bélusca-Maïto [Sat, 12 Sep 2015 18:13:53 +0000 (18:13 +0000)]
[NTVDM]: Add a diagnostic dprint to check why some apps seem to fail allocating memory.

svn path=/trunk/; revision=69203

8 years ago[Win32k]
James Tabor [Sat, 12 Sep 2015 17:29:16 +0000 (17:29 +0000)]
[Win32k]
- Fix Alpha Blending while using layered windows in lower bit modes. See CORE-10167.

svn path=/trunk/; revision=69202

8 years ago[KERNEL32]
Hermès Bélusca-Maïto [Sat, 12 Sep 2015 16:23:32 +0000 (16:23 +0000)]
[KERNEL32]
GetNextVDMCommand function:
- Avoid using deep nested levels of indentation.
- Fix the error check conditions (+ status value) for the CsrClientCallServer call to make it compatible with what windows' basesrv can return to us.

[BASESRV]
- Remove some useless "NTAPI" from functions.
- Factor out some code used for creating and destroying console records, and for the destruction of the pair of event handles.
- Use "IsListEmpty" when needed.
- Fix BaseSrvFillCommandInfo so that it returns the needed lengths (even if the user-given lengths are zero) and set the expected status error in case the buffer lenghts are too small (not STATUS_BUFFER_TOO_SMALL but STATUS_INVALID_PARAMETER because it's what kernel32 error check expects, for windows compat; see above).
- Fix initialization of new DOS records: no need to create a new one if there is one already free (status VDM_READY).
- Fix the loop that searches for a valid DOS record containing command information available as well as the conditions in which case our caller needs to wait in GetNextVDMCommand call.

NOTE: The internal state flags of the DOS records have normally nothing to do with the VDM state flags we report back to the user.

CORE-8247 CORE-9711 CORE-9773

svn path=/trunk/; revision=69201

8 years ago[KERNEL32]: Code formatting; use the real size of structure members when computing...
Hermès Bélusca-Maïto [Sat, 12 Sep 2015 16:03:53 +0000 (16:03 +0000)]
[KERNEL32]: Code formatting; use the real size of structure members when computing the needed buffer lengths.

svn path=/trunk/; revision=69200

8 years ago[INTL]
Eric Kohl [Sat, 12 Sep 2015 15:25:36 +0000 (15:25 +0000)]
[INTL]
- Read the current user locale when the CPL is created.
- Modify the user locale and update the examples when the user selects a new language.
- Save the user locale only if the user changed the settings.
CORE-10074

svn path=/trunk/; revision=69199

8 years ago[PEFILE:APITEST]: Validate IMAGE_SCN_MEM_NOT_PAGED flag for PE files. By Mark Jansen...
Hermès Bélusca-Maïto [Sat, 12 Sep 2015 13:08:47 +0000 (13:08 +0000)]
[PEFILE:APITEST]: Validate IMAGE_SCN_MEM_NOT_PAGED flag for PE files. By Mark Jansen. CORE-10160

svn path=/trunk/; revision=69198

8 years ago[Win32k]
James Tabor [Sat, 12 Sep 2015 12:54:05 +0000 (12:54 +0000)]
[Win32k]
- Fix some composition drawing while using layered windows. See CORE-10155 and CORE-10157.

svn path=/trunk/; revision=69197

8 years ago[NTOSKRNL]
Daniel Reimer [Sat, 12 Sep 2015 11:31:43 +0000 (11:31 +0000)]
[NTOSKRNL]
Fix 1 unresolved external on ARM build.

svn path=/trunk/; revision=69196

8 years ago[ADVAPI32] Order the exports and make sure the list matches our target (Windows Serve...
Amine Khaldi [Sat, 12 Sep 2015 11:16:34 +0000 (11:16 +0000)]
[ADVAPI32] Order the exports and make sure the list matches our target (Windows Server 2003 Sp2). CORE-8174

svn path=/trunk/; revision=69195

8 years ago[SERVICES] Improve the FILE header section. Brought to you by Adam Stachowicz. CORE...
Amine Khaldi [Sat, 12 Sep 2015 10:58:07 +0000 (10:58 +0000)]
[SERVICES] Improve the FILE header section. Brought to you by Adam Stachowicz. CORE-10114

svn path=/trunk/; revision=69194

8 years ago[KERNEL32] Order the exports and make sure the list matches our target (Windows Serve...
Amine Khaldi [Sat, 12 Sep 2015 10:50:28 +0000 (10:50 +0000)]
[KERNEL32] Order the exports and make sure the list matches our target (Windows Server 2003 Sp2). CORE-8174

svn path=/trunk/; revision=69193

8 years ago[FREELDR]
Thomas Faber [Sat, 12 Sep 2015 10:06:39 +0000 (10:06 +0000)]
[FREELDR]
- Add missing asm dependency to freeldr_common

svn path=/trunk/; revision=69192

8 years ago- "::" instead of "REM" inside a if () in batch is evil and can cause a really nice...
Daniel Reimer [Sat, 12 Sep 2015 09:51:25 +0000 (09:51 +0000)]
- "::" instead of "REM" inside a if () in batch is evil and can cause a really nice mess from time to time.
- Changing one "exit" to "exit /b" was not nice from me in the past.
ARM build now prepares host tools nicely again and you can build em. ARM build itself dies very early due to ..\..\boot\freeldr\freeldr\arch\arm\boot.S(9) : fatal error C1083: Cannot open include file: 'ksarm.h': No such file or directory

svn path=/trunk/; revision=69191

8 years ago[MSGINA]
Pierre Schweitzer [Sat, 12 Sep 2015 09:21:11 +0000 (09:21 +0000)]
[MSGINA]
Addendum to r69186

svn path=/trunk/; revision=69190

8 years ago[BOOTMGFW]
Alex Ionescu [Sat, 12 Sep 2015 08:57:42 +0000 (08:57 +0000)]
[BOOTMGFW]
- Additional El Torito support. We now parse the EFI, BOOT directories, and find/open the BCD file, and get a handle to it!

svn path=/trunk/; revision=69189

8 years ago- Fix some broken stuff involving DPRINT. Thought I had tested this, sorry for build...
Stefan Ginsberg [Fri, 11 Sep 2015 20:42:49 +0000 (20:42 +0000)]
- Fix some broken stuff involving DPRINT. Thought I had tested this, sorry for build break!

svn path=/trunk/; revision=69188

8 years agoFix over a hundred thousand warnings by:
Stefan Ginsberg [Fri, 11 Sep 2015 20:18:12 +0000 (20:18 +0000)]
Fix over a hundred thousand warnings by:
- Disabling C4214 (nonstandard extension used : bit field types other than int), a somewhat overzealous warning for a "nonstandard" extension we rely on all over.
- Defining inactive DPRINT and friends for MSVC using __noop (no not __nop, __noop. See  https://msdn.microsoft.com/en-us/library/s6btaxcs.aspx) to get at a whole bunch of C4127 (conditional expression is constant).
- Remove the last of the exported DriverEntry from dxg and dxgthk. There is no need in anyw way to export them -- dxg exports DxDdStartupDxGraphics to Win32k for initialization purposes and dxgthk is just a forwarder. Linking to a DriverEntry is to begin with is a pretty bad idea. Say goodbye to the last of LNK4216.

svn path=/trunk/; revision=69187

8 years ago[TRANSLATIONS]
Sylvain Petreolle [Fri, 11 Sep 2015 19:30:29 +0000 (19:30 +0000)]
[TRANSLATIONS]
Translate remaining French strings in msgina.dll

svn path=/trunk/; revision=69186

8 years ago- Fix a thousand warnings
Stefan Ginsberg [Fri, 11 Sep 2015 18:02:58 +0000 (18:02 +0000)]
- Fix a thousand warnings

svn path=/trunk/; revision=69185

8 years ago[USER32] Reorder the exports, add missing ones and make sure the list matches our...
Amine Khaldi [Fri, 11 Sep 2015 14:41:23 +0000 (14:41 +0000)]
[USER32] Reorder the exports, add missing ones and make sure the list matches our target (Windows Server 2003 Sp2). CORE-8174

svn path=/trunk/; revision=69184

8 years ago[GDI32] Order the exports and make sure they match our target (Windows Server 2003...
Amine Khaldi [Fri, 11 Sep 2015 13:29:37 +0000 (13:29 +0000)]
[GDI32] Order the exports and make sure they match our target (Windows Server 2003 Sp2). CORE-8174

svn path=/trunk/; revision=69183

8 years ago[WIN32K:NTUSER]
Thomas Faber [Fri, 11 Sep 2015 07:31:06 +0000 (07:31 +0000)]
[WIN32K:NTUSER]
- Probe parameters in NtUserGetLayeredWindowAttributes
- Don't call UserGetWindowObject without holding the user lock

svn path=/trunk/; revision=69182

8 years ago[BOOTMGFW]
Alex Ionescu [Fri, 11 Sep 2015 04:33:24 +0000 (04:33 +0000)]
[BOOTMGFW]
- Hey Arch, your buddies gave you ETFS support for native EFI boot, of course reading sector 0 is all zeroes, you're not on FAT, you idiot! ETFS has data at sector 16 and 17.
- Implement beginning of ETFS support. We correctly mount the reactOS boot cd as ETFS and open the root directory entry!

svn path=/trunk/; revision=69181

8 years ago[CDFS_NEW]
Alex Ionescu [Fri, 11 Sep 2015 04:02:21 +0000 (04:02 +0000)]
[CDFS_NEW]
- Resurrect back 7 years later (revert commit 34622).
- Add correct MS-PL (Public) License. Not added to build/used, but I need some of the headers/data structures in here.
- Source: https://github.com/Microsoft/Windows-driver-samples/blob/master/filesys/cdfs

svn path=/trunk/; revision=69180

8 years ago[Win32SS]
James Tabor [Fri, 11 Sep 2015 02:34:11 +0000 (02:34 +0000)]
[Win32SS]
- Hackplement Layered Window Support from wine.
- See CORE-1576 for more information. Three days work, ReactOS needs more support for playing with GDI bits.

svn path=/trunk/; revision=69179

8 years ago[BOOTMGFW]
Alex Ionescu [Thu, 10 Sep 2015 23:13:31 +0000 (23:13 +0000)]
[BOOTMGFW]
- Implement Block I/O read operations & related functions. Code needs cleanup, TBD.
- Unfortunately, I wish I could say it works, but it seems like all we get back are zeroes (from EFI itself). I suspect we are reading from the wrong device -- will have to investigate for a bit.

svn path=/trunk/; revision=69178

8 years ago[MOUNTMGR]
Sylvain Petreolle [Thu, 10 Sep 2015 22:06:10 +0000 (22:06 +0000)]
[MOUNTMGR]
Declare MountmgrReadNoAutoMount.

svn path=/trunk/; revision=69177

8 years ago[MOUNTMGR]
Pierre Schweitzer [Thu, 10 Sep 2015 21:41:20 +0000 (21:41 +0000)]
[MOUNTMGR]
Move DriverEntry() and MountmgrReadNoAutoMount() to INIT_SECTION

svn path=/trunk/; revision=69176

8 years ago[FASTFAT]
Pierre Schweitzer [Thu, 10 Sep 2015 21:35:15 +0000 (21:35 +0000)]
[FASTFAT]
Move VfatInitFastIoRoutines to the INIT section

svn path=/trunk/; revision=69175

8 years ago[USETUP]
Eric Kohl [Thu, 10 Sep 2015 21:28:37 +0000 (21:28 +0000)]
[USETUP]
Fix the GeoID for most languages.
CORE-10073 #resolve

svn path=/trunk/; revision=69174

8 years ago- Add some globals WinDbg expected to find when using !sysptes and !vm. Unused but...
Stefan Ginsberg [Thu, 10 Sep 2015 19:47:45 +0000 (19:47 +0000)]
- Add some globals WinDbg expected to find when using !sysptes and !vm. Unused but makes the debugger happy

svn path=/trunk/; revision=69173

8 years ago[Win32k]
James Tabor [Thu, 10 Sep 2015 14:27:14 +0000 (14:27 +0000)]
[Win32k]
- Trap out right button double clicks. See CORE-6754.

svn path=/trunk/; revision=69172

8 years ago[USER32] check the XOR flag in ocr_cross.cur and ocr_ibeam.cur. Patch by Vort CORE...
Robert Naumann [Thu, 10 Sep 2015 13:26:33 +0000 (13:26 +0000)]
[USER32] check the XOR flag in ocr_cross.cur and ocr_ibeam.cur. Patch by Vort CORE-6168

svn path=/trunk/; revision=69171

8 years agoFix the FSDs to use the INIT_SECTION-style and add the alloc_text-s required for...
Stefan Ginsberg [Thu, 10 Sep 2015 12:00:28 +0000 (12:00 +0000)]
Fix the FSDs to use the INIT_SECTION-style and add the alloc_text-s required for MSVC. Please make sure to add section declarations for both compilers for any new functions!

svn path=/trunk/; revision=69170

8 years ago[KMTESTS:MM]
Thomas Faber [Thu, 10 Sep 2015 11:16:53 +0000 (11:16 +0000)]
[KMTESTS:MM]
- Add some more reserved mapping tests for special pool tags and unaligned addresses
- Validate MDL pages in MmMdl test

svn path=/trunk/; revision=69169

8 years ago[KMTESTS:MM]
Thomas Faber [Thu, 10 Sep 2015 09:58:02 +0000 (09:58 +0000)]
[KMTESTS:MM]
- Add a test for MmAllocateMappingAddress/MmMapLockedPagesWithReservedMapping
CORE-10147

svn path=/trunk/; revision=69168

8 years ago[BOOTMGFW]
Alex Ionescu [Thu, 10 Sep 2015 05:24:50 +0000 (05:24 +0000)]
[BOOTMGFW]
- UNIX strikes again.

svn path=/trunk/; revision=69167

8 years ago[BOOTMGFW]:
Alex Ionescu [Thu, 10 Sep 2015 05:19:50 +0000 (05:19 +0000)]
[BOOTMGFW]:
- Implement read/offset-read frontend interface.

svn path=/trunk/; revision=69166

8 years ago[BOOTMGFW]
Alex Ionescu [Thu, 10 Sep 2015 04:01:41 +0000 (04:01 +0000)]
[BOOTMGFW]
- Implement initial File I/O routines.
- We now die on attempting to mount the FAT volume.

svn path=/trunk/; revision=69165

8 years ago[USER32]: Use FIXME instead of DbgPrint (so that we can get the line of the source...
Hermès Bélusca-Maïto [Thu, 10 Sep 2015 00:39:18 +0000 (00:39 +0000)]
[USER32]: Use FIXME instead of DbgPrint (so that we can get the line of the source file together).

svn path=/trunk/; revision=69164

8 years ago[REGEDIT]
Thomas Faber [Wed, 9 Sep 2015 22:01:49 +0000 (22:01 +0000)]
[REGEDIT]
- Properly walk CM_RESOURCE_LIST contents
CORE-10146

svn path=/trunk/; revision=69163

8 years ago[BOOTDATA]
Eric Kohl [Wed, 9 Sep 2015 20:17:25 +0000 (20:17 +0000)]
[BOOTDATA]
Add missing default locale values.

svn path=/trunk/; revision=69162

8 years ago[WIN32SS] Fix the fix by removing the correct parameter. The NtUserChangeDisplaySetti...
Stefan Ginsberg [Wed, 9 Sep 2015 19:56:22 +0000 (19:56 +0000)]
[WIN32SS] Fix the fix by removing the correct parameter. The NtUserChangeDisplaySettings syscall is expected to make use of the lParam pointer (which must be NULL unless the CDS_VIDEOPARAMETERS flag is set).

svn path=/trunk/; revision=69161

8 years ago[EFISYS]: Add 'bcd_hive' as a dependency.
Hermès Bélusca-Maïto [Wed, 9 Sep 2015 19:48:15 +0000 (19:48 +0000)]
[EFISYS]: Add 'bcd_hive' as a dependency.
[FATTEN]: Fix help message. Functions with no parameters are void. Remove an hardcoded array size.

svn path=/trunk/; revision=69160

8 years ago[WIN32SS] Fix NtUserChangeDisplaySettings, I accidently removed one (unused) param...
Stefan Ginsberg [Wed, 9 Sep 2015 19:38:36 +0000 (19:38 +0000)]
[WIN32SS] Fix NtUserChangeDisplaySettings, I accidently removed one (unused) param too much (parameter count should be 4 after all), and it seems code relied on this check.

svn path=/trunk/; revision=69159

8 years ago[WIN32SS] Fix NtGdiOpenDCW and NtUserChangeDisplaySettings to have the correct amount...
Stefan Ginsberg [Wed, 9 Sep 2015 19:12:48 +0000 (19:12 +0000)]
[WIN32SS] Fix NtGdiOpenDCW and NtUserChangeDisplaySettings to have the correct amount of parameters by removing two more unused/deprecated/ignored parameters. NtUserEnumDisplayMonitors is the only remaining one now, which needs to do a usermode callback to get rid of its extra parameter.

svn path=/trunk/; revision=69158

8 years ago[EFI]
Alex Ionescu [Wed, 9 Sep 2015 18:45:51 +0000 (18:45 +0000)]
[EFI]
- Case sensitivity?

svn path=/trunk/; revision=69157

8 years ago[EFI]
Alex Ionescu [Wed, 9 Sep 2015 18:43:09 +0000 (18:43 +0000)]
[EFI]
- Add BCD creation.
- Add BCD to bootcd, and also to EFISYS.BIN. Verified the BCD is now present on the EFI partition.

svn path=/trunk/; revision=69156

8 years ago- Implement BmpFwGetApplicationDirectoryPath and most of BmFwInitializeBootDirectoryPath.
Alex Ionescu [Wed, 9 Sep 2015 18:09:04 +0000 (18:09 +0000)]
- Implement BmpFwGetApplicationDirectoryPath and most of BmFwInitializeBootDirectoryPath.
- Implement boolean, integer, and string BCD reading.
- Fix a more bugs.
- We are now ready to open the BCD hive!

svn path=/trunk/; revision=69155

8 years ago[PEFILE_APITEST] Introduce tests that load ntoskrnl.exe and validate various section...
Amine Khaldi [Wed, 9 Sep 2015 17:27:36 +0000 (17:27 +0000)]
[PEFILE_APITEST] Introduce tests that load ntoskrnl.exe and validate various section flags. Created by Mark Jansen in light of r68930. CORE-10106

svn path=/trunk/; revision=69154

8 years ago[BOOTMGFW]
Alex Ionescu [Wed, 9 Sep 2015 16:50:05 +0000 (16:50 +0000)]
[BOOTMGFW]
- Fix more device I/O bugs.
- Silence some dbgprints.
- Implement DiskOpen and DiskClose.
- Refactor block cache in its own file.
- We successfully open our boot device (which appears as a floppy, as expected with the new UEFI boot)!

svn path=/trunk/; revision=69153

8 years ago- Consistently check for KDBG via if-def, not if (like we do for _WINKD_), everywhere.
Stefan Ginsberg [Wed, 9 Sep 2015 16:06:38 +0000 (16:06 +0000)]
- Consistently check for KDBG via if-def, not if (like we do for _WINKD_), everywhere.

svn path=/trunk/; revision=69152

8 years agoSigh missed this one.
Stefan Ginsberg [Wed, 9 Sep 2015 15:40:38 +0000 (15:40 +0000)]
Sigh missed this one.

svn path=/trunk/; revision=69151

8 years ago- After reviewing, updating and tweaking the base modules (ntos, hal, ntdll, kernel32...
Stefan Ginsberg [Wed, 9 Sep 2015 15:35:49 +0000 (15:35 +0000)]
- After reviewing, updating and tweaking the base modules (ntos, hal, ntdll, kernel32, advapi32, gdi32, user32, shell32, win32k) we should now be as (in)compatible with Windows 2003 Service Pack 1 as with Service Pack 2, so finally report our version as "NT Build 3790.3959" (SP2). Thanks to Thomas and Hermes for assistance.

See CORE-6611 and CORE-7889

svn path=/trunk/; revision=69150

8 years ago[BOOTMGFW]
Alex Ionescu [Wed, 9 Sep 2015 14:59:29 +0000 (14:59 +0000)]
[BOOTMGFW]
- Fix a bunch of bugs

svn path=/trunk/; revision=69149

8 years agoSome of this sneaked past in my last commit, so commit the rest:
Stefan Ginsberg [Wed, 9 Sep 2015 14:00:43 +0000 (14:00 +0000)]
Some of this sneaked past in my last commit, so commit the rest:
- Wrap some KDBG-only stuff into KDBG-define so we don't have KdSystemDebugControl being called needlessly on KD-builds.

svn path=/trunk/; revision=69148

8 years ago[WIN32K]
Stefan Ginsberg [Wed, 9 Sep 2015 13:49:39 +0000 (13:49 +0000)]
[WIN32K]
- Reorder some more driver exports to alphabetical order.
- Remove NtGdiFlushUserBatch and NtUserQueryUserCounters from syscall list (unused, and not compatible).
- Move and add some debug-only syscalls to the end of the syscall list.
- Fix parameter count of UserValidateTimerCallback, UserValidateHandleSecure, and UserChangeDisplaySettings to match what is compatible, by removing unused or ignored parameters. NtGdiOpenDCW, NtUserEnumDisplayMonitors and NtUserSetCursorIconData still have the wrong numbers.
- Add "stray" NtGdiMakeObjectXferable and "NtDxEngGetRedirectionBitmap" syscall stubs.
- The syscalls should now be compatible with 2K3 SP2 in their order, but not in their argument count (or, most likely, their actual parameters). This means a Windows 2k3 gdi32 or user32 should crash somewhat later now that half of the syscalls' order is not in disarray.

svn path=/trunk/; revision=69147

8 years ago[APPLICATIONS] Improve the FILE header section. Brought to you by Adam Stachowicz...
Amine Khaldi [Wed, 9 Sep 2015 13:13:35 +0000 (13:13 +0000)]
[APPLICATIONS] Improve the FILE header section. Brought to you by Adam Stachowicz. CORE-10114

svn path=/trunk/; revision=69146

8 years agoFixie fixie
Stefan Ginsberg [Wed, 9 Sep 2015 11:24:34 +0000 (11:24 +0000)]
Fixie fixie

svn path=/trunk/; revision=69145

8 years ago[NTOS] Fix broken NtSetSystemEnvironmentValueEx stub which had the wrong amount of...
Stefan Ginsberg [Wed, 9 Sep 2015 11:21:02 +0000 (11:21 +0000)]
[NTOS] Fix broken NtSetSystemEnvironmentValueEx stub which had the wrong amount of parameters.
[NDK] Add define guard for HalEndSystemInterrupt because it is no longer compatible with Windows, and add back the old definition. Fix NtSetSystemEnvironmentValueEx prototype.
[KERNEL32] Export SetFileCompletionNotificationModes (MSDN and headers documents it as Vista-only, but this is not entirely correct).

svn path=/trunk/; revision=69144

8 years ago[FATTEN]
Pierre Schweitzer [Wed, 9 Sep 2015 07:05:17 +0000 (07:05 +0000)]
[FATTEN]
CORE-10140

svn path=/trunk/; revision=69143

8 years ago[BOOTMGFW]
Alex Ionescu [Wed, 9 Sep 2015 05:48:50 +0000 (05:48 +0000)]
[BOOTMGFW]
- 1.5KLOC code dump of current device block I/O handling. Totally untested and broken, just a checkpoint for now.
- Implement most of Hash Table Utility Functions.
- Implement parts of Block Allocator.
- Finish Implementation of Generic Table Utility Functions.
- Fix some EFI device emulation code.
- Temporarily disable freeing from heap while I figure out what's corrupting it.

svn path=/trunk/; revision=69142

8 years ago[CDMAKE]
Alex Ionescu [Wed, 9 Sep 2015 04:58:25 +0000 (04:58 +0000)]
[CDMAKE]
- Fix Build on VS2015

svn path=/trunk/; revision=69141

8 years ago[FATTEN]
David Quintana [Wed, 9 Sep 2015 03:01:14 +0000 (03:01 +0000)]
[FATTEN]
* Allow customizing the 8-letter volume label from the FAT header.
* Make the efisys.bin have EFIBOOT as a label.
* Improve a bit the help text.

svn path=/trunk/; revision=69140

8 years agoOMGWTFBBQ!!!! We can now boot our ISOs on UEFI systems!!
Hermès Bélusca-Maïto [Wed, 9 Sep 2015 02:11:49 +0000 (02:11 +0000)]
OMGWTFBBQ!!!! We can now boot our ISOs on UEFI systems!!
Thanks gigaherz for the "fatten" utility!, and others for testing.

[CDMAKE]
- Add multi-boot CD support, following El-Torito specification, such that we can the usual ISO boot sector on BIOS-based PCs, and the UEFI loader on UEFI-based PCs.
- Load segment should be stored in little endian.
- Fix the computation of the sector count (count in 512 byte sectors and rounded up).
- Rework the command-line options to make them more compatible with CDIMAGE / OSCDIMG.
CORE-10120

[BOOTDATA]
- Activate the UEFI boot support for our ISOs.

svn path=/trunk/; revision=69139

8 years ago[FATTEN]
David Quintana [Wed, 9 Sep 2015 01:38:21 +0000 (01:38 +0000)]
[FATTEN]
* "struct tm" uses years offset on 1900, so we only have to offset by 80 years to make it into a FAT year.

svn path=/trunk/; revision=69138

8 years ago[FATTEN]
David Quintana [Wed, 9 Sep 2015 01:33:27 +0000 (01:33 +0000)]
[FATTEN]
* WHO ATE THAT 'b'?! WHO?!
* The jump instruction is 3 bytes long, not 2 (and dequick&dirtied a bit while at it).

svn path=/trunk/; revision=69137

8 years ago[FATTEN]: static'ify a variable; do not hardcode array lengths.
Hermès Bélusca-Maïto [Wed, 9 Sep 2015 00:52:01 +0000 (00:52 +0000)]
[FATTEN]: static'ify a variable; do not hardcode array lengths.

svn path=/trunk/; revision=69136

8 years ago[FATTEN]
David Quintana [Wed, 9 Sep 2015 00:49:47 +0000 (00:49 +0000)]
[FATTEN]
* Change the number of FAT copies stored by the formatting code to 2.
* Implement /BOOT command, to apply a boot sector to the image (FAT12/16 only, for now).
* Make use of the command above to finally get the generated efisys.bin loading in 7zip as a floppy.

svn path=/trunk/; revision=69135

8 years ago[HAL] Remove seemingly deprecated HalPutDmaAdapter. Also reorder exports slightly...
Stefan Ginsberg [Tue, 8 Sep 2015 23:42:24 +0000 (23:42 +0000)]
[HAL] Remove seemingly deprecated HalPutDmaAdapter. Also reorder exports slightly towards alphabetical order.

svn path=/trunk/; revision=69134

8 years ago- While we are at it, remove a bunch of kernel exports that shouldn't exist. KiEoiHel...
Stefan Ginsberg [Tue, 8 Sep 2015 22:58:28 +0000 (22:58 +0000)]
- While we are at it, remove a bunch of kernel exports that shouldn't exist. KiEoiHelper stays for now.

svn path=/trunk/; revision=69133

8 years ago[FATTEN]
David Quintana [Tue, 8 Sep 2015 22:20:37 +0000 (22:20 +0000)]
[FATTEN]
* Fix the breakage I commited. Hopefully.

svn path=/trunk/; revision=69132

8 years ago[FATTEN]
David Quintana [Tue, 8 Sep 2015 22:01:05 +0000 (22:01 +0000)]
[FATTEN]
In a failed attempt at getting 7-zip to recognize the fat images,
* Updated the fatfs backing library to v0.11a,
* Changed the default cluster size to 1 for floppy-sized images (< 4096 sectors) and 8 otherwise (4096 was an invalid value), and
* Changed the fatfs formatting code to generate FAT12 filesystems more windows-like.
I see no reason to discard the changes, so here they are.

svn path=/trunk/; revision=69131

8 years ago[NTOS] Add in MmDoesFileHaveUserWritableReferences, seemingly new to 2k3 SP2. MSDN...
Stefan Ginsberg [Tue, 8 Sep 2015 20:42:21 +0000 (20:42 +0000)]
[NTOS] Add in MmDoesFileHaveUserWritableReferences, seemingly new to 2k3 SP2. MSDN reports this as "Vista and later" but this is not entirely correct it seems.

svn path=/trunk/; revision=69130

8 years agoFix build (TM)
Stefan Ginsberg [Tue, 8 Sep 2015 20:19:10 +0000 (20:19 +0000)]
Fix build (TM)

svn path=/trunk/; revision=69129

8 years ago[NTOS] STUB ALL THE EXPORTS. We should now have all the exports expected by a 2k3...
Stefan Ginsberg [Tue, 8 Sep 2015 20:14:39 +0000 (20:14 +0000)]
[NTOS] STUB ALL THE EXPORTS. We should now have all the exports expected by a 2k3-ish kernel (except for a few amd64-specific ones). Add some missing explicit cdecl to the Verifier stubs, and don't return STATUS_SUCCESS (0) from the ABIOS stubs.
[NDK] Add a few types needed by the PfxXxx routines.

This should fix absolutely nothing.

svn path=/trunk/; revision=69128

8 years ago[FATTEN]
Pierre Schweitzer [Tue, 8 Sep 2015 20:04:04 +0000 (20:04 +0000)]
[FATTEN]
Let's try not to leak memory...
So, close what's been opened in case of an error
And in a general way, close files we opened

CORE-10140 #resolve #comment Fixed with r69127

svn path=/trunk/; revision=69127

8 years ago[SHELL32] Add missing Icons for ZIP/JAZ drives, webbrowser and rename. Patch by Lee...
Robert Naumann [Tue, 8 Sep 2015 20:03:54 +0000 (20:03 +0000)]
[SHELL32] Add missing Icons for ZIP/JAZ drives, webbrowser and rename. Patch by Lee Schroeder. CORE-9889 CORE-9968

svn path=/trunk/; revision=69126

8 years ago[MESA] Add missing xdk dependency for mesa_x86. CORE-9586
Amine Khaldi [Tue, 8 Sep 2015 19:24:26 +0000 (19:24 +0000)]
[MESA] Add missing xdk dependency for mesa_x86. CORE-9586

svn path=/trunk/; revision=69125

8 years ago[FREETYPE] Sync up to 2.6.0. CORE-10072
Amine Khaldi [Tue, 8 Sep 2015 19:23:01 +0000 (19:23 +0000)]
[FREETYPE] Sync up to 2.6.0. CORE-10072

svn path=/trunk/; revision=69124

8 years agoOops forgot to hit save one last time.
David Quintana [Tue, 8 Sep 2015 15:57:47 +0000 (15:57 +0000)]
Oops forgot to hit save one last time.

svn path=/trunk/; revision=69123

8 years ago[BOOTMGFW]
David Quintana [Tue, 8 Sep 2015 15:56:33 +0000 (15:56 +0000)]
[BOOTMGFW]
* Add stubs for unimplemented platforms, so the compilation succeeds even if it can't possibly work.

svn path=/trunk/; revision=69122

8 years ago[TRANSLATION] Update Russian translation. Patch by Kudratov Olimjon CORE-10058 #resol...
Robert Naumann [Tue, 8 Sep 2015 15:48:18 +0000 (15:48 +0000)]
[TRANSLATION] Update Russian translation. Patch by Kudratov Olimjon CORE-10058 #resolve #comment Committed in r69121. Thank you!

svn path=/trunk/; revision=69121

8 years ago[FATTEN]
David Quintana [Tue, 8 Sep 2015 15:30:32 +0000 (15:30 +0000)]
[FATTEN]
* Do not allow "/" as a parameter prefix in unixes.

svn path=/trunk/; revision=69120

8 years ago[EFISYS][BOOTMGFW]
David Quintana [Tue, 8 Sep 2015 15:26:34 +0000 (15:26 +0000)]
[EFISYS][BOOTMGFW]
* Compute and use a "platform short name" in the EFI filenames.

svn path=/trunk/; revision=69119

8 years ago[Win32k]
James Tabor [Tue, 8 Sep 2015 14:18:56 +0000 (14:18 +0000)]
[Win32k]
- Fix non-client paint. See CORE-10101.

svn path=/trunk/; revision=69118

8 years ago[APITESTS] Add missing xdk dependency. CORE-9586
Amine Khaldi [Tue, 8 Sep 2015 12:51:53 +0000 (12:51 +0000)]
[APITESTS] Add missing xdk dependency. CORE-9586

svn path=/trunk/; revision=69117

8 years ago[UXTHEME] Revert Wine Commit 2b650fa as it breaks themed Explorer Toolbar Separators...
Amine Khaldi [Tue, 8 Sep 2015 12:47:33 +0000 (12:47 +0000)]
[UXTHEME] Revert Wine Commit 2b650fa as it breaks themed Explorer Toolbar Separators. CORE-9636 and Wine Bug #38538.

svn path=/trunk/; revision=69116