Implement ramdisk support for FreeLDR (ramdisk.c and ramdisk.h). The implementation...
authorReactOS Portable Systems Group <ros-arm-bringup@svn.reactos.org>
Tue, 5 Feb 2008 01:29:49 +0000 (01:29 +0000)
committerReactOS Portable Systems Group <ros-arm-bringup@svn.reactos.org>
Tue, 5 Feb 2008 01:29:49 +0000 (01:29 +0000)
commit0e6d37fe00ce8e76f069ad833c7cb76572183b21
treefe1fe15d3dff4ec69b68cc1c1a3a85efdc916e83
parent7356090407a8d013852893c02195c1a9d9d37fe4
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
reactos/boot/freeldr/freeldr/bootmgr.c
reactos/boot/freeldr/freeldr/disk/ramdisk.c [new file with mode: 0644]
reactos/boot/freeldr/freeldr/freeldr.c
reactos/boot/freeldr/freeldr/freeldr_base.rbuild
reactos/boot/freeldr/freeldr/include/freeldr.h
reactos/boot/freeldr/freeldr/include/ramdisk.h [new file with mode: 0644]
reactos/boot/freeldr/freeldr/reactos/arcname.c
reactos/boot/freeldr/freeldr/reactos/reactos.c