Op 21-3-2012 20:53, Travis Siegel schreef: > I'm not a dos boot expert, but my understanding was that dos assigns > drive letters, so if you're the boot manager, you should be able to > install drives any letter you like, regardless of where they fall in > the actual boot chain. I've seen programs from time to time that did > fiddle with boot sequence (such as boot around) but it required a > valid floppy in drive a that it could patch to force boot from > another drive.
GRUB/GRUB4DOS seem to have all kinds of ways to map drives almost anyway you like. > However, if you're the controlling process at boot time, I see no > reason why you couldn't assign any device of your choice to drive C: > whether it's the first hd or the third usb stick, but again, I'm no > expert in dos boot code, so I could be completely wrong here, but > since dos must get it's boot sequence from somewhere, and device > assignment happens in the kernel (not in bios) you shouldn't have > trouble assigning any letter you like. > I know bios assigns the boot sequence, but afaik, it does not dictate > drive letter assignments after that point. BIOS typically assigns 0x00 to the floppydrive you booted from, and 0x80 to the drive you booted from. Some bootloaders and bootprocedures can shift this a little bit, like the El-Torito disk emulation modes implementing int13 and thus pushing physical storage drives a bit further ( floppy becomes 0x01 when using floppy emulation, harddisk becomes 0x81 when using harddisk emulation). The DOS kernel is responsible for mapping partitions (with a recognised filesystem, thus only various versions of FAT) to driveletters. Multiple disks and partitioning scheme (MBR, primary partitions and logical partitions) come into play here as well. As the FreeDOS kernel can be modified, I guess you can alter: * bootsector if needed (0x81 if you insist though 0x80 should do) * drive assignment in kernel (start at D: but allow C: afterwards?) * search for \(FD)CONFIG.SYS on same partition (filesystem) as the kernel is located instead of A:\(FD)CONFIG.SYS or C:\(FD)CONFIG.SYS * same for COMMAND.COM (if no CONFIG.SYS or no SHELL(HIGH)= line) and AUTOEXEC.BAT (same reasons) I guess. The simple way is trying above with floppy first, with first floppydrive getting B: assigned instead of A:. Do note that lots of scripts expect A: or C: though. Bernd ------------------------------------------------------------------------------ This SF email is sponsosred by: Try Windows Azure free for 90 days Click Here http://p.sf.net/sfu/sfd2d-msazure _______________________________________________ Freedos-devel mailing list [email protected] https://lists.sourceforge.net/lists/listinfo/freedos-devel
