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