Date: Mon, 15 Oct 2018 11:59:00 +0200 From: Polytropon <freebsd@edvax.de> To: Ian Smith <smithi@exemail.com.au> Cc: questions@freebsd.org Subject: Re: FreeBSD boot manager customization for single-disk multiboot (4 x DOS) Message-ID: <20181015115900.4142cede.freebsd@edvax.de> In-Reply-To: <50139023-EF23-4464-8E99-4958CB3A3044@exemail.com.au> References: <50139023-EF23-4464-8E99-4958CB3A3044@exemail.com.au>
next in thread | previous in thread | raw e-mail | index | archive | help
On Mon, 15 Oct 2018 19:28:55 +1100, Ian Smith wrote: > I've read the thread. Manish is trying to help but his DOS > familiarity doesn’t go back far enough. I started at 2 and > used 3.3 (with Desqview), later 5.0 for years running Fidonet > mailer, BBS, message editor, DOS command space and other tasks > in 6 MiB RAM .. so had to learn how to really squeeze things > in - as did you, I gather. Correct. Started with DOS 3.3 (and its "foreign predecessors" called SCP and DCP which aren't known outside former GDR), then DOS 5.0 and 6.22 (with NDOS as COMMAND.COM replacement), and I even used Novell DOS 7 for a short time (and its UNDELETE program was really great). Oh, and I also know and still _have_ Desqview/X (with package, books, and floppies). > Correct, you cannot boot DOS from a non-primary partition. > Maybe you could use GRUB, it installs after the MBR on track > 0 side 0 so shouldn't get in the way. I think an older version of Grub might work - I don't assume today's current version is up to the task on running on such an old system. > I dont think you need to install linux to install GRUB? The smallest disk that I can use is 20 GB, so it would not be a problem due to space limitation if I installed Linux. For "logical space", it could even go into an extended partition, for example like this Whole disk: 20,000 MB prim. part. 1 = DOS 5.0 50 MB prim. part. 2 = DOS 6.22 500 MB prim. part. 3 = data exchange (FAT) 1,000 MB ext. part = { log. vol. 1 = Windows '95 2,000 MB log. vol. 2 = Windows '98 2,000 MB log. vol. 3 = Linux swap 2,000 MB log. vol. 4 = Linux ext2 12,000 MB } Disk space is not a problem. The replacement system does not accept disks bigger than 20 GB, so when I say "smallest disk", this is actually the only (!) disk I can use. :-) > That said, I don't use it myself. To add linux to the 4-DOS > mix would need an extended partition, leaving only 3 primaries > for 3 x DOS. Same deal with OS/2, with its great boot manager. Oh yes, OS/2... it wrecked my DOS installation and "shifted" the partitions (3 became 2, 2 became 1, 1 disappeared) when I tried to install it into partition 4. Luckily, with the great Norton Disk Editor (run from DOS emergency floppy), a handheld calculator, and pen & paper I could reconstruct the partition table manually and "get my data back" (as it was not overwritten, just not assigned to a partition anymore). > boot0.s MBR code is VERY tight with about ZERO free space as > I recall .. however there's code there - still was at 9.x I > think - for a 1Ķ (2 sector) version written by the same author > (Robert Nordier IIRC, I don't have a system to hand). That > should have plenty of room for more lavish labels, and may > in fact include such code? If you have a spare system you > could assemble that and test. I haven't done assembly programming for many years. I can generally understand how the boot manager works, but I don't think I'm skilled enough for modifying it (and still get a working version that can do what I expect). The detection and labeling magic is quite powerful in there. :-) > Of course you'll have a backup MBR (directed more at other readers :) Luckily, that is an easy task with dd. In DOS, C, you'd use the famous biosdisk() (prototype in dos.h!) to get the 512 bytes from the disk and store it to a file. That reminds me to one of my first exercises in lower-level C programming: Wrote a program that would modify the MBR to change the start address of the 1st active primary partition to the MBR itself, so the system would "boot into a loop". Yes, we did actually consider this both funny and educational at that time... :-) > One thing to watch is that esp. earlier versions of DOS may > want to use the first slice explicitly? I'm not sure, but I'd > start with earliest versions first, and test each as you go. Yes, I think DOS 3.3 and before specifically needed that. I'll check how DOS 5.0 will react. From older experience, I seem to remember that DOS 6.22 could be booted from a primary partition 2, 3, or 4, and depending on the content of the ramining partitions, "drive letters" would then be re-arranged (as the boot disk would always be C: as assigned by a boot manager). Interestingly, I found out that I could _maybe_ fix the power supply of the IBM Thinkpad 755C. Documentation says that it needs 20 V DC (so no 10 V DC as written on the label of the exploded power supply). I think I still have a PSU "brick" that provides 20 V DC, and making a new cable from the remains of the old PSU is not a problem. /-------\ + --- | o o | --- Signal - --- | o o | --- Ground +-------+ Documentation suggests that "+" and "-" are the ones that should be used, and _not_ connected to "S" and "G" in any way. In case you are curious, this is the relevant documentation that gave me hope to revive the TP 755C that has served me so well for decades: http://www.thinkwiki.org/wiki/Power_Connector#4-Pin_hexagon https://www.powerstream.com/lta-IBM.htm It looks like this one: http://www.thinkwiki.org/w/images/9/9f/ThinkPad755CD.jpg But instead of the optical unit, mine has the floppy disk unit installed. And as I said, having access to old-fashioned things like parallel ports, serial ports, or floppy drives sadly is _not_ optional in this special case. :-) -- Polytropon Magdeburg, Germany Happy FreeBSD user since 4.0 Andra moi ennepe, Mousa, ...
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20181015115900.4142cede.freebsd>