From owner-freebsd-hackers Mon Oct 30 00:46:26 1995 Return-Path: owner-hackers Received: (from root@localhost) by freefall.freebsd.org (8.6.12/8.6.6) id AAA12492 for hackers-outgoing; Mon, 30 Oct 1995 00:46:26 -0800 Received: from godzilla.zeta.org.au (godzilla.zeta.org.au [203.2.228.19]) by freefall.freebsd.org (8.6.12/8.6.6) with ESMTP id AAA12456 for ; Mon, 30 Oct 1995 00:46:10 -0800 Received: (from bde@localhost) by godzilla.zeta.org.au (8.6.9/8.6.9) id TAA14176; Mon, 30 Oct 1995 19:39:00 +1100 Date: Mon, 30 Oct 1995 19:39:00 +1100 From: Bruce Evans Message-Id: <199510300839.TAA14176@godzilla.zeta.org.au> To: bde@zeta.org.au, msmith@atrad.adelaide.edu.au Subject: Re: boot disk.... Cc: hackers@freebsd.org, lenzi@cwbone.bsi.com.br, terry@lambert.org Sender: owner-hackers@freebsd.org Precedence: bulk >> Drivers only need to know about the BIOS translation so that they can >> report it to fdisk so installers can get the geometry right. This is >The BIOS geometries for all BIOS-recognised disks would theoretically be >passed in in the kernel environment block. (the same techniqe would be >used for passing in the name of the root device, any userconfig tweaks, >the _real_ memory size as determined using the "correct" technique(s), etc.) Yes, this is already done, but it isn't used because the translation of BIOS drives to device numbers (soon to be names) isn't known, especially for specially configured SCSI devices, and the memory size is only correct up to 64MB. >> remarkably complicated, especially for handling of disks not covered >> by the BIOS, and still not handled right. The stage 2 bootstrap >If the disk isn't covered by a BIOS, then there's no translation involved, >and no need for alternative geometry to be passed in. You forget old MFM drives :-). The ending C/H/S hack to support these may have to be supported forever, and it works for all drives with a correctly initialized FreeBSD slice. fdisk should enforce it >> fbsdboot should _be_ a DOS program and be built as a FreeBSD program. >> Then it would be easier to add extensions to it. >If you have any magic techniqes for converting a FreeBSD binary into DOS >EXE format, I'm keen 8) I currently use the GNU toolchain and the DJGPP >libraries as a cross-development platform for much of our DOS work. Use .COM format and .org 0x100 or maybe .space 0x100 to pad the header, and strip the header after building it. Oops, I forgot about 32-bitness. The techniques used in biosboot only work if DOS is in real mode. Bruce