Git conversion: Make reactos the root directory, move rosapps, rostests, wallpapers into modules, and delete rossubsys.
[BOOTSECTORS] Use the new header with SPDX license identifier for the ISO boot sector files I contributed to. Remove the unmaintained .asm files. svn path=/trunk/; revision=75984
[FREELDR] Lower MAX_DISKREADBUFFER_SIZE to let INT 13h, AH=42h only read a maximum of 127 sectors (instead of 128 previously). This fixes USB booting into the kernel on at least Dell Latitude D531 and Lenovo ThinkPad X61. Now CORE-13184 remains (in a VM and on real hardware, probably related to the CDFS driver) svn path=/trunk/; revision=75564
[INFLIB][FREELDR]: Introduce a (non-used) "CurrentInf" field in the INFCONTEXT structure, to make it compatible with the "standard" one defined in setupapi.h, so that it can be possible to either use our inflib or setupapi.dll in our code. This will break build inside usetup, and this will be fixed in the next commit. svn path=/trunk/; revision=75343
[FREELDR]: Report the correct number of BIOS (hard) disk drives detected, that is, without any possible extra boot drive that went enumerated afterwards. This fixes the list of disks enumerated in HKEY_LOCAL_MACHINE\HARDWARE\DESCRIPTION\System\MultifunctionAdapter\0\DiskController\0\DiskPeripheral\ and we now behave in this regards similarly to Windows 2003 & co. I thank Lesan Ilie for reporting & testing, and Serge Gautherie and Peter Hater for reviewing. This fixes a bug introduced in commit r59079. CORE-13131 svn path=/trunk/; revision=74515
[FREELDR] Set BootPartition (DH) to 0xFF in isoboot.S when booting from CD. Then check for that 0xFF value in FreeLdr to unambiguously detect CD booting instead of using BIOS functions (which don't work reliably on broken BIOSes) or checking for an MBR (which doesn't work on hybrid ISOs). CORE-12692 svn path=/trunk/; revision=74460
[FREELDR] - Simplify the implementation of the 'DiskGetBootPath' function; - Cache the retrived freeldr boot path (corresponding to a given 'FrldrBootDrive' number); - Introduce a 'DiskIsCdRomDrive' function to attempt to fix CORE-12692 . svn path=/trunk/; revision=73621
[FREELDR]: Part 3 of my local changes merging: - Remove the DiskVtbl functions (machxbox.c) of the XBOX and share them instead with those of the PC, since they are basically the same. They just however differ by which 'DiskGetPartitionEntry' function they use. To cope with this, 'DiskGetPartitionEntry' becomes a pointer to either the default function 'DiskGetMbrPartitionEntry' (which indeed assumes a MBR-layout, see partition.c), or the special function 'XboxDiskGetPartitionEntry' in the case of partitionless XBOX disks. Note that, by the way, partition.c should in the future support GPT-layout disks as well... - The boot devices pre-initialization code can also be shared as well, thus getting rid of 'XboxInitializeBootDevices', because we note that this is exactly what the (old) XBOX version of 'DetectBiosDisks' did at its beginning. - But then, we can also share 'DetectBiosDisks' XBOX code with its PC version, and also *fix* the PC code version as well! 'DetectSystem' and 'DetectBiosDisks' are therefore merged *as they should be*. Thanks to the boot devices pre-initialization code that has run before the hardware detection, 'DetectBiosDisks' can just use the cached information. - Now we correctly initialize the PC root HW system configuration key: we first create it, then, after the bios disks (floppies + HDDs) are enumerated we set the BIOS INT13h disk data to the system key's configuration data. svn path=/trunk/; revision=73618
[FREELDR]: More local changes merging, part 2/x: - Move the HW detection code specific to the PC architecture from hardware.c to machpc.c, keeping in hardware.c the code that is shared between PC and XBOX. - Move what remained of i386disk.c into pcdisk.c (specific to PC architecture) + code formatting. - Move what remained of xboxhw.c into machxbox.c (specific to XBOX architecture); we discover that some code related to disk management is actually shared with PC architecture (in hwdisk.c): hwdisk.c therefore contains disk-management routines common to both PC & XBOX. - xboxdisk.c: Code formatting only. - Cleanup in disk.c/disk.h svn path=/trunk/; revision=73616