*BSD News Article 7127


Return to BSD News archive

Newsgroups: comp.unix.bsd
Path: sserve!manuel.anu.edu.au!munnari.oz.au!spool.mu.edu!caen!hellgate.utah.edu!fcom.cc.utah.edu!cs.weber.edu!terry
From: terry@cs.weber.edu (A Wizard of Earth C)
Subject: Re: Finding untranslated params for IDE drives (w/ pgm)
Message-ID: <1992Oct27.184246.24246@fcom.cc.utah.edu>
Sender: news@fcom.cc.utah.edu
Organization: Weber State University  (Ogden, UT)
References: <BwLopC.82n@flatlin.ka.sub.org> <1992Oct25.112332.25964@fcom.cc.utah.edu> <Bwr5tx.76y@flatlin.ka.sub.org>
Date: Tue, 27 Oct 92 18:42:46 GMT
Lines: 74

In article <Bwr5tx.76y@flatlin.ka.sub.org> bad@flatlin.ka.sub.org (Christoph Badura) writes:
>In <1992Oct25.112332.25964@fcom.cc.utah.edu> terry@cs.weber.edu (A Wizard of Earth C) writes:
>>Terry also feels that, were the translation 100% transparent, no one
>>trying to load both DOS and 386BSD on an IDE drive would ever have
>>problems related to translation.  Terry wonders *why* the software is
>>sensitive to the "transparent" translation of cylinder boundries if
>>Christoph is right?
>
>The problems with translation come from BSD trying to run the disks in
>untranslated mode. None of the other PC unixen try to do this and they
>have no problems with DOS partitions.

This is ridiculous!  "Transparent" means I can't tell that it's there; if
I can "turn it off" it's not "transparent" -- it's damn well opaque!  Only
if I could not "turn it off" could you reasonably call it "transparent",
since there would be no way from software to puke it out.  Now the
"zone recording" translation --- THAT'S "transparent".

I see four choices:

1)	Use the whole drive for 386BSD with translation off.

2)	Use a DOS partition table and hack the hell out of things so
	that 386BSD can use it "untranslated" while everybody else
	uses it "translated".

3)	Set it up to operated "translated" when a DOS partition table
	is present and "untranslated" when one isn't.
	
	a)	This requires the ability to tell the difference between
		an IDE and a non-IDE controller do that the init routine
		can be different for IDE.

	b)	Barring this, we have to change the "init" for all wd.c
		using drives.  We lose disk space in excess of 1023
		cylinders for large MFM and RLL and ESDI drives if we
		do this.

	c)	Ask the user what kind of drive it is and encode the
		information in the boot; effectively doing (a).

4)	Set it up to operate translated at all times (see 3 b).  We still
	lose a lot of disk space this way catering to the "abnormal" way
	IDE's relate to the world.


I'm currently working on 3 (a).  If this Fails, I'll work on 3 (c), because
it is better to penalize the IDE users for picking a non-conforming drive
than it is to break all existing installations on MFM, RLL, and ESDI drives
so that they can't use the boot/kernel code without reinstalling 386BSD.
If this fails, I go for 2 and suggest 1 to anyone who asks for advice.  If
I can't make this work (no unused fields in the disk label for me to steal
to do it), I'll go (exceptionally reluctantly) for 4, breaking upgradability
of existing MFM, RLL, and ESDI installations so that new installations will
"just work".

In the case of software translations (like my old, old IDE controller in the
Everex Step/16, and yes, it has it's own BIOS) we're pretty much damned to
soloution 1.

Have we hashed over this thing enough?


					Terry Lambert
					terry@icarus.weber.edu
					terry_lambert@novell.com
---
Any opinions in this posting are my own and not those of my present
or previous employers.
-- 
-------------------------------------------------------------------------------
                                        "I have an 8 user poetic license" - me
 Get the 386bsd FAQ from agate.berkeley.edu:/pub/386BSD/386bsd-0.1/unofficial
-------------------------------------------------------------------------------