Author: ros-arm-bringup Date: Sat Aug 16 21:35:30 2008 New Revision: 35402
URL: http://svn.reactos.org/svn/reactos?rev=35402&view=rev Log: Make RAM disk support work on x86 as well (it is now generic):
1) Don't assert if loaded from setup. On NT this means special things, but we don't care about that for now. 2) Add to txtsetup.sif along with the other core FS drivers. This will eventually allow installing from ramdisk as well (and later, over the network) 3) Add to hivesys_i386.inf so that the driver is initialized.
RAM disk now works flawlessly on x86 -- just make sure to follow the previous instructions, and add <size of your RAM disk> to your total memory available to ReactOS.
Modified: trunk/reactos/boot/bootdata/hivesys_i386.inf trunk/reactos/boot/bootdata/txtsetup.sif trunk/reactos/drivers/storage/class/ramdisk/ramdisk.c
Modified: trunk/reactos/boot/bootdata/hivesys_i386.inf URL: http://svn.reactos.org/svn/reactos/trunk/reactos/boot/bootdata/hivesys_i386.... ============================================================================== --- trunk/reactos/boot/bootdata/hivesys_i386.inf [iso-8859-1] (original) +++ trunk/reactos/boot/bootdata/hivesys_i386.inf [iso-8859-1] Sat Aug 16 21:35:30 2008 @@ -24,6 +24,10 @@ HKLM,"SYSTEM\CurrentControlSet\Control\Class{4D36E975-E325-11CE-BFC1-08002BE10318}","Installer32",0x00000000,"NetCfgx.dll,NetClassInstaller" HKLM,"SYSTEM\CurrentControlSet\Control\Class{4D36E975-E325-11CE-BFC1-08002BE10318}","NoDisplayClass",0x00000000,"1" HKLM,"SYSTEM\CurrentControlSet\Control\Class{4D36E975-E325-11CE-BFC1-08002BE10318}","NoInstallClass",0x00000000,"1" + +HKLM,"SYSTEM\CurrentControlSet\Control\Class{9D6D66A6-0B0C-4563-9077-A0E9A7955AE4}",,0x00000000,"Ramdisk" +HKLM,"SYSTEM\CurrentControlSet\Control\Class{9D6D66A6-0B0C-4563-9077-A0E9A7955AE4}","Class",0x00000000,"Ramdisk" +HKLM,"SYSTEM\CurrentControlSet\Control\Class{9D6D66A6-0B0C-4563-9077-A0E9A7955AE4}","Icon",0x00000000,"-5"
; Default computer name settings HKLM,"SYSTEM\CurrentControlSet\Control\ComputerName",,0x00000012 @@ -1025,6 +1029,13 @@ HKLM,"SYSTEM\CurrentControlSet\Services\fastfat","Start",0x00010001,0x00000000 HKLM,"SYSTEM\CurrentControlSet\Services\fastfat","Type",0x00010001,0x00000002
+; RAM Disk class driver +HKLM,"SYSTEM\CurrentControlSet\Services\RamDisk","ErrorControl",0x00010001,0x00000000 +HKLM,"SYSTEM\CurrentControlSet\Services\RamDisk","Group",0x00000000,"Boot File System" +HKLM,"SYSTEM\CurrentControlSet\Services\RamDisk","ImagePath",0x00020000,"system32\drivers\ramdisk.sys" +HKLM,"SYSTEM\CurrentControlSet\Services\RamDisk","Start",0x00010001,0x00000000 +HKLM,"SYSTEM\CurrentControlSet\Services\RamDisk","Type",0x00010001,0x00000002 + ; EXT2 Filesystem driver HKLM,"SYSTEM\CurrentControlSet\Services\Ext2fs","ErrorControl",0x00010001,0x00000000 HKLM,"SYSTEM\CurrentControlSet\Services\Ext2fs","Group",0x00000000,"Boot File System"
Modified: trunk/reactos/boot/bootdata/txtsetup.sif URL: http://svn.reactos.org/svn/reactos/trunk/reactos/boot/bootdata/txtsetup.sif?... ============================================================================== --- trunk/reactos/boot/bootdata/txtsetup.sif [iso-8859-1] (original) +++ trunk/reactos/boot/bootdata/txtsetup.sif [iso-8859-1] Sat Aug 16 21:35:30 2008 @@ -33,6 +33,7 @@ scsiport.sys=,,,,,,x,,,,,,4 uniata.sys=,,,,,,,,,,,,4 fastfat.sys=,,,,,,x,,,,,,4 +ramdisk.sys=,,,,,,x,,,,,,4 ext2.sys=,,,,,,x,,,,,,4
[HardwareIdsDatabase]
Modified: trunk/reactos/drivers/storage/class/ramdisk/ramdisk.c URL: http://svn.reactos.org/svn/reactos/trunk/reactos/drivers/storage/class/ramdi... ============================================================================== --- trunk/reactos/drivers/storage/class/ramdisk/ramdisk.c [iso-8859-1] (original) +++ trunk/reactos/drivers/storage/class/ramdisk/ramdisk.c [iso-8859-1] Sat Aug 16 21:35:30 2008 @@ -2284,7 +2284,7 @@ // // Are we being booted from setup? Not yet supported // - ASSERT (!KeLoaderBlock->SetupLdrBlock); + //ASSERT(!KeLoaderBlock->SetupLdrBlock); }
// @@ -2308,6 +2308,7 @@ PCHAR BootDeviceName, CommandLine; PDEVICE_OBJECT PhysicalDeviceObject = NULL; NTSTATUS Status; + DPRINT1("RAM Disk Driver Initialized\n");
// // Query ramdisk parameters @@ -2399,7 +2400,7 @@ // // Installing from Ramdisk isn't supported yet // - ASSERT(!KeLoaderBlock->SetupLdrBlock); + //ASSERT(!KeLoaderBlock->SetupLdrBlock);
// // Are we reporting the device