*BSD News Article 7139


Return to BSD News archive

Newsgroups: comp.unix.bsd
Path: sserve!manuel.anu.edu.au!munnari.oz.au!sgiblab!darwin.sura.net!jvnc.net!nuscc!ntuix!eoahmad
From: eoahmad@ntuix.ntu.ac.sg (Othman Ahmad)
Subject: Re: Finding untranslated params for IDE drives (w/ pgm)
Message-ID: <1992Oct28.023906.15320@ntuix.ntu.ac.sg>
Organization: Nanyang Technological University - Singapore
X-Newsreader: TIN [version 1.1 PL6]
References: <1992Oct27.184246.24246@fcom.cc.utah.edu>
Date: Wed, 28 Oct 1992 02:39:06 GMT
Lines: 152

A Wizard of Earth C (terry@cs.weber.edu) wrote:
: >
: >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

How do you turn it off? You can't turn it off, just like ESDI or even SCSI.
Remember that IDE can be ESDI and SCSI inside the hard-disk.
	It is something which you miss. The old expensive IDE controllers
are things of the past, it will never be required. Your old IDE controller
is junk. The bios in your IDE is just to cater for the missing geometry 
table. Now bioses come with programmable geometry tables, of type 47.
	You can't design for obsolete controllers. If their BIOSes cannot
support the programmable geometry, then upgrade the bios, do not have to
buy new IDE controllers. IDE definition is just a bunch of WIRES, and
ST506 command set.
	You cannot turn off translation in IDE disks.
: 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
IT puke out because the translation parameters can be changed.
: "zone recording" translation --- THAT'S "transparent".

It must be transparent, or else 386bsd will never work h.
What you mean by translation is to use the default" geometry. Traslation
is still done but it uses the recommended geometry which may not be
compatible to DOS. Don't worry, even if the default is not acceptable by
dos, you can still use it but with some loss in capacity.

	To find out the default geometry, use ide_conf.exe on DOS.
The program the BIOS for that geometry.

Nowadays, almost all new drives will use default geometry that DOS can use,
so do not worry. In fact this ide_conf is among the most useful utility
around. We do not have to go and hunt for the manufacturer to find out the
disk geometries.
: 
: I see four choices:
: 
: 1)	Use the whole drive for 386BSD with translation off.

No need. Just use the default.
: 
: 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".

Why bother when it is not necessary.

: 
: 3)	Set it up to operated "translated" when a DOS partition table
: 	is present and "untranslated" when one isn't.

Again no need. Why bother.
: 	
: 	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.

In ALL new drives, you do not lose any space at all. Only if you use old drives,
may be. I doubt it.

: 
: 
: 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.

Why don't you change your ide controller and bios?

Terry, please note that the endless boot happened to my drives also, but
I solved it by putting a new bootblock, either using disklabel -w -r or
preferable use os-bs?

Why don't you try this first?

I suspect, your 386bsd partition occupy the beginneing cylinders. You
intend to install DOS at higer cylinder numbers. This causes the most problem,
because wdboot, gets its subsequent sectors from sectors 2-15 . The very
first sector, sector 1, is where the bootblk is, where it is used to switch
to "PROTECTED MODE". Without this 1st sector "wdboot", it will never go to
protected mode. However when you install os-bs, you will overide this bootblk.
You need to get it from somewhere else.

install in 386bsd, actually copies wdboot to a higher partition, and let
os-bs bootstrap it.

If you fail to install "wdboot" it to higher cyclinders, you will never be
able to boot 386bsd.

disklabel(by default)  will not install it to rwd0a, only rwd0d.
I verified this.

You install it using disklabel -w -r wd0a  
The new disklabel allows you to do this, unlike the old one.

Alternatively you can use dd or even cat .
: 
: Have we hashed over this thing enough?
: 
Why don't we settle on the installation techniques suggested by me
and some others, since we have installed DOS and 386bsd in all the recent
IDE hard-disks?

	Your problem is exceptional, as a result of the desire to install
DOS at higher cyclinder numbers.

Can you settle on ide_conf, os-bs, and the installation instructions that
had been posted? At least for the time being.
At least the beginners will have something for them in the FAQ.


I'm trying to work on replacing all those with 386bsd, to make it an independent
software development.

My immediate concern is to be able to change harddisks and run 386bsd without
reprogramming the bios CMOS ram.
	os-bs uses dos partition table instead of disklabel, which stored the
default geometry on disk, instead of on the BIOS ram. In this matter, 386bsd
is superior to BIOS method, after all 386bsd comes with its own bios.


--
Othman bin Ahmad, School of EEE,
Nanyang Technological University, Singapore 2263.
Internet Email: eoahmad@ntuix.ntu.ac.sg
Bitnet Email: eoahmad@ntuvax.bitnet