Git conversion: Make reactos the root directory, move rosapps, rostests, wallpapers into modules, and delete rossubsys.
[BOOT] Improve the FILE header section. Brought to you by Adam Stachowicz. CORE-10114 svn path=/trunk/; revision=69364
[FREELDR]: Make RamDiskLoadVirtualFile returning a BOOLEAN such that if we fail to load a Ram disk image, we can display an error message and abort boot. svn path=/trunk/; revision=65988
- Move from using include guards to pragma once. - Whilst this is non-standard and potentially makes the code less portable, it's supported by both gcc and msvc and should bringg increased compilation speed due to its optimized behaviour (doesn't need to invoke the preprocessor) - Patch by Amine Khaldi [amine.khaldi@reactos.org] svn path=/trunk/; revision=45685
- Add support for ram disk offset (.IMG file is a RAW image, partition starts later...) - Fix ram disk support in FreeLDR, ARC changes had broken support for booting FreeLDR (not just the Windows) from a ram disk. ARM port now initializes ramdisk as an FS device. - Fix hardcoded DISKREADBUFFER and FILESYSBUFFER values. On ARM these will be dynamically selected for each board (need to improve this through LLB). - Now FreeLDR.ini is read, and crash happens because UI routines are all NULL. svn path=/trunk/; revision=45405
[freeldr] Rework the ramdisk driver to let it be a full device, instead of a deprecated harddisk which was only available once real harddisks were disabled Add support for /RDPATH switch in WINLDR boot style svn path=/trunk/; revision=43377
FreeLDR-side of RAM Disk support for x86 based on actual NT implementation (instead of ARM-only hacks): 1) First, remove the hack in bootmgr.c that looked for a reactos.img. 2) Instead, read the command line to the kernel, and check for /RDIMAGEPATH. If found, load the ramdisk in the loader. 3) This uses the same routine as the previous hack, but enhances it with actual status and progress printouts. 4) Finally, update usetup to generate a ReactOS (RAM Disk) entry on DBG builds, under the WinLDR one. Also fixed a bug where, on MiniTUI, the text sent to UiDrawProgressBarCenter would be ignored. This patch does not result in working RAM disk support yet. To test the FreeLDR side of things, you need to create a ramdisk file: this is easy. Preferred way right now is to use qemu-img to create a standard QEMU image. Then install ReactOS on it and configure it. This is now your ramdisk. Make your image about 100MB; this is how much ReactOS requires to install right now. Now on your "official" QEMU image, you can delete everything except freeldr.sys and freeldr.ini. Or don't, if it's large enough. Now add the reactos.img to your official image. You should have at least 100MB free space. Now when you boot the ReactOS (RAM disk) entry, it should boot up until the kernel, which will panic since there's no ramdisk support yet. Note that you can't just create a QEMU image and drop files in it -- it must be properly formatted and have the ReactOS boot sector: The RAM disk isn't just a collection of files, it's an entire virtual drive, so that's why you must first officially install ReactOS on it. svn path=/trunk/; revision=35401
- Implement beginnings of Ramdisk Port Driver. Planning compatibility with ISO, SDI and WIM files and full Windows support. - New license for our code. svn path=/trunk/; revision=34170
We now support ArmDiskGetBootVolume for ramdisk only, later revisions will support NAND boot as well. The ramdisk parameter parsing had several bugs which were fixed, including support for hex parameters and using proper return values from strstr. We also rewrote command line parsing to be much simpler. It was very broken, modifying the memory contents of the command line -- this wouldn't work on systems where the command line is stored in ROM unless a copy is first made. It also broke ram disk parameters by modifying whitespaces to NULL chars for purposes of reading its own parameters, but did not put the whitespace back, terminating the command line early. Finally, we now have an integrated ramdisk parameter parsing with the new command line code. svn path=/trunk/; revision=32164
We implemented console support (through serial port), for the current board types supported (Feroceon, using UART 16550). We added a new ClockRate member to the ARM Board Block structure. We now print out the FreeLDR header after initialization to give some output to the user that we are alive. Started putting shared stuff in headers. Fixed copy/paste leftovers from file headers (wrong file names, implementation details, author). svn path=/trunk/; revision=32151
Implement ramdisk support for FreeLDR (ramdisk.c and ramdisk.h). The implementation is portable across all architectures. We also define a virual ramdisk file (hardcoded name is reactos.img, on the boot volume) for testing ramdisk support on architectures without native ramdisk support (such as x86). This could be $ We introduce two new FreeLDR command-line parameters that should be sent by non-x86 firmware: rdbase and rdsize, and a new freeldr.ini ARC path: ramdisk(0) -- this is compatible with Windows. For compatibility and status output, we use 8MB chunks for reading virtual ramdisk files (a dot is displayed for each additional 8MB chunk). Finally, for code-reuse, the ramdisk implementation will "steal" the BIOS support routines in the arch-vtable and replace them with simple memcpy wrappers. To the disk/filesystem routines in Fre$ For now, only FAT ramdisks have been tested, and a sector size of 512 bytes is implied. We also disable the FAT block cache since it wouldn't make much sense to cache RAM. $lds since the kernel won't get that far for a while. svn path=/trunk/; revision=32128