Commit graph

65005 commits

Author SHA1 Message Date
Eric Kohl 952474b7f9 [REACTOS]
- Remove the code that hides the system menu and the cancel button. Users should be able to cancel the installation process.
- Add code to reboot ReactOS after completing or cancelling the wizard. It is disabled for now.
- Remove the groupbox on the device page.
- Resize / realign the controls on the drive page.
- Replace the listbox on the drive page by a list view.

svn path=/trunk/; revision=70643
2016-01-25 22:39:26 +00:00
Amine Khaldi 2de93288c0 [VERSION] Improve the way we define ReactOS version, to allow us to mark it as SVN or as a release, and for the latter, allow us to mark it as a candidate or as the final one.
svn path=/trunk/; revision=70641
2016-01-25 18:37:20 +00:00
Amine Khaldi c8bc427d74 [I8042PRT] Apply a workaround for Dell Latitude D630. By Thomas Faber. CORE-10797
svn path=/trunk/; revision=70639
2016-01-25 18:08:06 +00:00
Eric Kohl ac19c5f29c [REACTOS]
- Fix height of the inner wizard pages.
- Do not show the header for the finish page.
- Remove the language selection page and the ReactOS logo because they have been moved to userinit.
- Start removing groupbox controls from the wizard pages. They just occupy a lot of space.
- Resize / realign the install type page and add some descriptive text to all languages.
- Allocate setup data from the heap and pass the setup data pointer to each wizard page.
- Move the drive wizard page (DriveDlgProc) to a separate file.
- Move the common declarations to a new header file.

svn path=/trunk/; revision=70638
2016-01-23 23:20:32 +00:00
Aleksey Bragin 7b1920c911 [NTOSKRNL]
- Fix a typo.

svn path=/trunk/; revision=70637
2016-01-22 09:23:21 +00:00
Alex Ionescu a68573d0c5 [BOOTLIB]: Fuck you binutils.
svn path=/trunk/; revision=70636
2016-01-21 17:08:33 +00:00
Amine Khaldi 125060988e [RTL] Revert some accidental formatting changes in r70634. NFC.
svn path=/trunk/; revision=70635
2016-01-21 16:52:31 +00:00
Alex Ionescu 445a748bf8 [RTL/NDK]: For some strange reason, we were missing LdrRelocateImage. Also we had the right type for LdrRelocateImageWithBias, but not the former. Fix that.
[BOOTLIB]: Finish the rest of the image loader. However, relocations appear to fail.

svn path=/trunk/; revision=70634
2016-01-21 16:16:12 +00:00
Alex Ionescu 55b6c66d7a [BOOTLIB]: Cleanup, less magic.
svn path=/trunk/; revision=70633
2016-01-21 15:47:14 +00:00
Alex Ionescu 953f5a4f99 [BOOTLIB]: Implement checksum calculation for PE header sum.
[BOOTLIB]: Implement most of ImgpLoadPEImage. The checksum of the mapped image file matches the checksum in the flat PE file, meaning our load loop works as designed.
Next step are relocations and we'll be done.

svn path=/trunk/; revision=70632
2016-01-21 05:16:40 +00:00
Alex Ionescu d5f06366a8 [DDK]: SVN isn't GIT alex. It's not smart enough to commit the entire tree, only the place where you right-clicked.
svn path=/trunk/; revision=70631
2016-01-20 17:01:53 +00:00
Alex Ionescu d59c799233 [ROSLOAD]: SUBSYSTEM_WINDOWS_BOOT_APPLICATION is 16, not 14.
svn path=/trunk/; revision=70630
2016-01-20 17:00:51 +00:00
Alex Ionescu 53c32a9428 [BOOTLIB]: Begin PE loader. Works so far. Next up is loading the sections, zeroing out the .bss, and computing checksum.
svn path=/trunk/; revision=70629
2016-01-20 17:00:18 +00:00
Amine Khaldi 26f25f68f5 [USETUP] Add missing Italian STRING_EXTENDED_PARTITION string. CORE-10809
svn path=/trunk/; revision=70627
2016-01-20 15:20:59 +00:00
Alex Ionescu e7cbf6ea1b [ROSLOAD]: Create directory and build rules. rosload.efi is now dropped in system32\boot just like on the Windows Setup DVD. BlImgLoadBootApplication is able to find it.
[BOOTMGR/BOOTLIB]: Fix factorings that were incorrect but not noticed when bootmgr was the only bootlib user. Now with rosload in the picture, they became obvious.
[EFISYS]: BCD should not be on the EFISYS.BIN, only on the boot volume, just like a Windows DVD.

svn path=/trunk/; revision=70626
2016-01-20 06:59:12 +00:00
Alex Ionescu 5126de14b6 [HIVEBCD/BOOTMGR]: Prep work
svn path=/trunk/; revision=70625
2016-01-20 03:53:59 +00:00
Alex Ionescu 5a21e5a50e [BOOTLIB]: Cleanups and small fixes.
svn path=/trunk/; revision=70624
2016-01-20 03:43:56 +00:00
Alex Ionescu 00d85d909c [BOOTMGR]: Cleanup, less magic, one bug fix.
svn path=/trunk/; revision=70623
2016-01-20 02:58:39 +00:00
Alex Ionescu c68737148c [BOOTLIB]: Fix build
svn path=/trunk/; revision=70622
2016-01-20 01:29:59 +00:00
Alex Ionescu adeb70e21e [BOOTLIB]: Rough sketches of BlImgLoadBootApplication, BlImgStartBootApplication, BlImgUnLoadBootApplication.
svn path=/trunk/; revision=70621
2016-01-20 01:28:50 +00:00
Pierre Schweitzer e7f66b6dad [MPR]
Import Wine commits:
- 39ec97ea9dcba270bbea31a7eaa7b842bf1beb1f, Implement WNetAddConnectionA(), WNetAddConnection2A(), WNetAddConnection3A().
- 092c60e98cec9956127145f7c8a5db88082ce7d2, Implement WNetAddConnectionW(), WNetAddConnection2W(), WNetAddConnection3W().

CORE-10032
ROSAPPS-303

svn path=/trunk/; revision=70619
2016-01-19 18:39:18 +00:00
Alex Ionescu 68e9874f36 [BOOTMGR]: Support for launching a recovery sequence.
[BOOTMGR]: Stub support for boot errors.
[BOOTMGR]: Stubplement support for device creation for boot applications (only for fully specified devices)
[BOOTMGR]: Implement support for execution transfer, including recovery mode/sequence.
[BOOTMGR]: Implement support for launching a boot entry.
[BOOTLIB]: Support for EFI Firmware device enumeration, driver attachment, and comparison.
[BOOTLIB]: Support for appending BOOLEAN or INTEGER BCD options.
Next step is the PE loader.

svn path=/trunk/; revision=70618
2016-01-19 18:21:54 +00:00
Amine Khaldi de0a6b1666 [TRANSLATIONS] Turkish translation update by Erdem Ersoy. CORE-10805
svn path=/trunk/; revision=70616
2016-01-18 19:20:44 +00:00
Alex Ionescu ac25cdec6c [BOOTMGR]: Implement support for getting the default boot entry, the current boot menu policy, and finish implementation of getting the selected boot entry.
[BOOTMGR]: Stubplement support for catching keystrokes right before boot (such as F8, F10). No key input is actually read.
Boot Manager now attempts to load the winload entry as part of BmpLaunchBootEntry.

svn path=/trunk/; revision=70615
2016-01-18 18:16:49 +00:00
Alex Ionescu 12f04d8cb1 [HIVEBCD]: Fix wrong element type for application device element.
[BOOTMGR]: Implement boot sequence population. We correctly detect our winload.efi entry in the BCD hive.
[BOOTMGR]: Document more application entry flags.
[BOOTLIB]: Document and implement BCD object description parsing. Based off BCD Reference Guide / Geoff Chappel's website.
[BOOTLIB]: Add support for appending a boot option to an entry.

svn path=/trunk/; revision=70614
2016-01-18 16:54:44 +00:00
Alex Ionescu f3c6cefe6f [BOOTMGFW]: Implement BmEnumerateBootEntries.
[BOOTLIB]: Implement BlGetOptionGuid. All BCD option APIs should now be implemented.
[BOOTLIB]: Fix memory corruption + out-of-bounds bugs in BlAppendBootOptions, which made the BCD options remain empty.

svn path=/trunk/; revision=70611
2016-01-18 05:26:10 +00:00
Alex Ionescu 51f9487ff7 [HIVEBCD]: Implement an entire wholeseome BCD boot hive, including multiple levels of inheritance (globalsettings, dbgsettings, emssettings, bootloadersettings), plus entries for {memdiag}, {bootmgr} and {winload}.
[BOOTLIB]: Fix a bug in BCD parsing which was causing massive heap corruption. Became evident with the increased complexity of the new BCD hive.

svn path=/trunk/; revision=70610
2016-01-18 04:18:12 +00:00
Alex Ionescu ba3178b813 [CMLIB/NTOSKRNL]: Move key deletion functions to cmlib, so that UEFI boot library can use them.
[BOOTLIB]: Implement BCD element deletion (bootreg: implement key deletion)
[BOOTMGR]: Implement BL_FATAL_ERROR_BCD_ENTRIES fatal error.
[BOOTMGR]: Stubplement support for memory list data parsing (when memtest.efi will run), and stubplement support for boot persistent data blobs.
[BOOTMGR]: Stubplement boot sequence support, create stub for boot entry population.
[BOOTMGR]: Stubplement boot entry selection, create stub for boot entry enumeration.
Mostly factoring-level changes to get us closer to the needed code paths.

svn path=/trunk/; revision=70609
2016-01-17 21:48:00 +00:00
Eric Kohl f91d835c5a [USERINIT]
Add missing newline for MSVC.

svn path=/trunk/; revision=70608
2016-01-17 19:37:18 +00:00
Eric Kohl 8c9a41db96 [USERINIT]
Add two dialogs that are shown when the LiveCD is booted. The first dialog is used to select the language and keyboard layout. The second dialog is used to either start the shell or the GUI installer. Language and keyboard layout selection are still work in progress.

svn path=/trunk/; revision=70607
2016-01-17 19:20:47 +00:00
Sylvain Petreolle 9511b56f3c [FLOPPY]
Check for controller configuration status.
CORE-10761 #comment Please retest.

svn path=/trunk/; revision=70606
2016-01-17 16:59:55 +00:00
Hermès Bélusca-Maïto 8c2454ea74 [CMLIB]
- Now that both FreeLdr and MKHIVE use the regular (aka. the "NT-style public") CMLIB functions, get rid of the "old-style public" cmlib functions, with the exception of CmCreateRootNode and CmPrepareHive which remain for now due to a slight different implementation difference between NT and ours. Remove the cmtools.c file containing those old functions.
- Remove the now-deprecated VALUE_LIST_CELL structure (which was an old version of CELL_DATA:KeyList).
- When freeing hive bins (in HvpFreeHiveBins), use the storage number count stored in the hive instead of a constant value.
- Flat hives have only one storage type (they are read-only and reside only in memory).
CORE-10802
CORE-10793

svn path=/trunk/; revision=70605
2016-01-17 02:12:37 +00:00
Hermès Bélusca-Maïto 17c6bfd956 [FREELDR]
Make FreeLdr fully using the CMLIB library. CORE-10802 #resolve
CORE-10793

svn path=/trunk/; revision=70604
2016-01-17 01:42:11 +00:00
Hermès Bélusca-Maïto 660ad50bae [MKHIVE]
- Fix two warnings in GCC Linux build (in KeBugCheckEx and in a call to the helper function RepGetValueData).
- Remove two unused RTL ANSI functions.
- Fix USHORT vs. ULONG type misuage.
- Fix SIZE_T vs. ULONG usage.

svn path=/trunk/; revision=70603
2016-01-17 01:29:43 +00:00
Hermès Bélusca-Maïto 30da982e36 [MKHIVE]
- Make mkhive tool correctly initialize the Max(Value)[Name|Data]Length members of HHIVE structure. CORE-10794 #resolve
- Add default security hive descriptors to our mkhive-built registry hives. CORE-10795 #resolve
- Make MKHIVE fully using the CMLIB library. CORE-10802
CORE-10793

svn path=/trunk/; revision=70602
2016-01-17 00:50:03 +00:00
Hermès Bélusca-Maïto 5a29ec2659 [CMLIB]
- One less hardcoded number.
- Minor code formatting.

[NTOS]
- Minor code formatting (cmvalche.c).
- The key-node timestamp can usually be retrieved without using another temporary value.
- The security descriptor copy allocated for the hive can be freed after it was assigned to it.

[MKHIVE]
- Minor formatting of the source headers.
- Update the list of registry value types; add another error code (to be used later on).
- Remove now unused "ntoskrnl.h" header.

CORE-10793

svn path=/trunk/; revision=70601
2016-01-16 23:54:45 +00:00
Eric Kohl b45ce14687 [MMC]
- Prepare the 'file open', 'file save' and 'file save as' actions.
- Store the file name in the console struncture.

svn path=/trunk/; revision=70600
2016-01-16 15:17:12 +00:00
Hermès Bélusca-Maïto 2bb29d9cea [BOOTDATA]
- Add "aif" and "aiff" to the supported MCI Extensions.
- Remove an extra erroneous "rmi" entry that was wrongly marked as being of type "MPEGVideo".

svn path=/trunk/; revision=70597
2016-01-16 00:30:01 +00:00
Pierre Schweitzer a8eec26809 [MOUNTMGR]
Warn when stubling upon Winism.

svn path=/trunk/; revision=70596
2016-01-15 21:12:57 +00:00
Hermès Bélusca-Maïto 9e6cbffcd8 [FREELDR]
- Since the registry handling rewrite of Timo in r61595 all the freeldr-specific registry structures got deprecated. Remove them, as well as few other prototypes of non-existing functions.
- Use the CMLIB registry flags instead of some (already-removed) flags --> fix build.

svn path=/trunk/; revision=70594
2016-01-14 20:00:18 +00:00
Hermès Bélusca-Maïto 62e9fb7872 [CMLIB]
- Do not define _NTOSKRNL_ at compilation time, keep only the _NTSYSTEM_ define (and NASSERT).
- Remove deprecated unused private flags.
- Modify CmCreateRootNode to make it look more similar to the CmpCreateRootNode function of ntoskrnl/config/cmsysini.c, to ease future code adaptation in cmlib & mkhive and then deprecate CmCreateRootNode in favour of CmpCreateRootNode.

svn path=/trunk/; revision=70593
2016-01-14 18:03:35 +00:00
Hermès Bélusca-Maïto 5cef0d2fc2 [VFATLIB]: Comments (and DPRINT) fixes only.
svn path=/trunk/; revision=70583
2016-01-13 14:12:04 +00:00
Hermès Bélusca-Maïto 734bc29142 [CMLIB]
- Fix HBLOCK_SIZE vs. HSECTOR_SIZE mix-ups in HvpGetHiveHeader.
- Add a function to create cluster-aligned hive base blocks (HBASE_BLOCK) based on the existing code of HvpGetHiveHeader, and use it everytime we need to allocate HBASE_BLOCKs.
- Keep the actual base block size in the BaseBlockAlloc member, and use this value for the "quota" parameter when we free the blocks.
- Introduce & use a function to initialize the hive file name array (mainly used for debugging purposes).
- "HvpInitializeMemoryInplaceHive" should read "HvpInitializeFlatHive" instead since this function is used to initialize a flat hive. Memory-in-place hives are a different thing.
- Fix some memory leaks in the error paths of HvLoadHive.
- Initialize some additional hive members in HvInitialize(Hive).

svn path=/trunk/; revision=70582
2016-01-13 01:40:58 +00:00
Hermès Bélusca-Maïto 36a7330eee [CMLIB]: Better fix for r70580.
svn path=/trunk/; revision=70581
2016-01-12 22:22:18 +00:00
Hermès Bélusca-Maïto c63d2718c5 [CMLIB]: Fix host-tool compilation (+ add a comment).
svn path=/trunk/; revision=70580
2016-01-12 22:17:39 +00:00
Hermès Bélusca-Maïto ab7ca4116c [CMLIB]
- Fix some structure definitions to match Win2k3 symbols (define also _SECURITY_DESCRIPTOR_RELATIVE for the host-tools so that the CM_KEY_SECURITY structure is always correctly defined).
- Complete other structure definitions with respect to the NT version defined at compile time; http://msdn.mirt.net/ was used as the source of information.
- Add the definition of CM_BIG_DATA for supporting big valued keys (see also http://www.msuiche.net/2009/06/07/windows-vista-and-later-registry-secrets/ for what they are).

[NTOS]
- Move CM functions defined in the CMLIB out of the internal ntoskrnl headers.

svn path=/trunk/; revision=70579
2016-01-12 21:37:36 +00:00
Pierre Schweitzer cae19acb7a [ROSVBOXMGMT]
Let's add hacks to glue hacks together:
In case rosvboxmgmt is started with its current directory not being the directory where it is along with hackssign_client.exe, then autoassign fails finding the hackssign client executable and thus, fails assigning drive letter.
This is what happens when you starts rosvboxmgmt on boot with shell.
So, when using autoassign, first look for the location of rosvboxmgmt and set our current directory there.

This fixes rosvboxmgmt autoassign not working on boot.

CORE-10032
ROSAPPS-303

svn path=/trunk/; revision=70578
2016-01-11 22:41:32 +00:00
Hermès Bélusca-Maïto 658e9e13b3 [DESK.CPL]
Resolution selection improvement patch by Mark Jansen:
- Fix a bug that allowed only a subset of resolutions to be visible.
- Update the preview on the fly when dragging the resolution slider.
- Fix a bug that prevented the monitor preview from properly invalidating the preview, leaving the old preview partially visible.
Needs to be included in 0.4 branch.
CORE-10786

svn path=/trunk/; revision=70577
2016-01-11 20:52:44 +00:00
Eric Kohl 30862b5020 [vfatlib]
- Use a single wipe function (FatWipeSectors) for FAT12, FAT16 and FAT32.
- Code has been reviewed by Hermès and me. Ready for merge into 0.4.

svn path=/trunk/; revision=70576
2016-01-11 20:44:06 +00:00
Hermès Bélusca-Maïto d0eb702ec2 [NTOS:CONFIG]
Remove a very old hack (that dated back from the Configuration Manager rewrite): now the hives are already correctly loaded in memory, therefore there is no need to call CmCreateRootNode after creating a hive, because the root node is subsequently initialized with calls to CmpCreateLinkNode. The comment saying that calls to CmCreateRootNode can be removed when CmpCreateLinkNode is used, is now in order. This means we correctly parse & mount the hives. The CmCreateRootNode function is now only used in the 'mkhive' tool in order to create file hives, since this tool needs to create new hives from nowhere (that's why also our bootloaders do not need this function: they only load & parse existing hive files).

The fact that this hack remained caused us hidden troubles: some hives (SAM, SOFTWARE) had "two" root keys: a first one that was unused (which was created by this hackish call), and the second one which was the one used (and was created by CmpCreateLinkNode as expected).

svn path=/trunk/; revision=70575
2016-01-11 00:37:44 +00:00