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.
svn path=/trunk/; revision=35402
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
- Truly separate i8042BasicDetect from i8042DetectKeyboard and i8042DetectMouse: It now only does the CTRL_SELF_TEST, any other specific detections are done in their respective functions
- Only set KEYBOARD_PRESENT and MOUSE_PRESENT, when all respective detections completed successfully
Might fix bug #3550
svn path=/trunk/; revision=35387