*BSD News Article 35548


Return to BSD News archive

Newsgroups: comp.os.386bsd.bugs
Path: sserve!newshost.anu.edu.au!harbinger.cc.monash.edu.au!bunyip.cc.uq.oz.au!munnari.oz.au!spool.mu.edu!howland.reston.ans.net!cs.utexas.edu!math.ohio-state.edu!usc!nic-nac.CSU.net!charnel.ecst.csuchico.edu!csusac!csus.edu!netcom.com!jmonroy
From: jmonroy@netcom.com (Jesus Monroy Jr)
Subject: Re: FreeBSD, fd0d: hard error
Message-ID: <jmonroyCvqswn.Ktn@netcom.com>
Organization: NETCOM On-line Communication Services (408 261-4700 guest)
X-Newsreader: TIN [version 1.2 PL1]
References: <33j9hp$41l@sol.sun.csd.unb.ca> <jmonroyCvozLK.5q9@netcom.com> <bakulCvpyuw.5nB@netcom.com>
Date: Wed, 7 Sep 1994 04:38:44 GMT
Lines: 67

Bakul Shah (bakul@netcom.com) wrote:
: jmonroy@netcom.com (Jesus Monroy Jr) writes:

: >Peter Howlett (b6ps@jupiter.sun.csd.unb.ca) wrote:
: >: fd0d: hard error reading fsbn 62 of 64-71
: >: (ST0 44<abnrml,top_head> ST1 20<bad_crc> ST2<bad_crc> cyl 1 hd 1 sec 15

: >	ST0	is the register -- STATUS REGISTER 0
: >	44	is the  hex value 0x44

: >		The message returned is an incorrect status
: >		of the error.  The high nibble is 4, which 
: >		indicates that the FDC received an invalid
: >		command.  The low nibble is 4, which indicates
: >		on *some* controllers that the drive is
: >		not ready.

: High nibble == 4 says abnormal termination (it is 8 for an
: invalid command).  Bit 2 indicates the head number (the not ready
: bit is bit D3).  The error message correctly decodes ST0 bits.
:
	Yes, you are correct.  I don't have the book in
	front of me, but I remember seeing the 4 and thinking
	bit 4.... I know it doesn't make sense (what I'm saying)
	but... in essence, I beleive my analyzes is correct,
	unless, of course, someone else has the data guide 
	out and found me at error again... 

: >	
: >	To make this short, it is quite possible that one of
: >	the applications you ran decided that it could read
: >	more than 15 sectors on a track, which on a 1.2 meg
: >	diskette is not possible.   This is pointed to by
: >	the remaining registers that point to the last 
: >	successfully completed transfer,  a side effect of
: >	most FDC controllers.   

: Sectors are numbered 1 through 15 and the error message reports
: sec 15, which is a valid sector number.
:
	Yes, but the number 15 is the last correctly used
	by the FDC, which is my comment.

: One possibility is the value in the GPL byte of the read/write
: command is incorrect.  I don't have FreeBSD sources anymore but a
: cursory glance at fd.c of NetBSD reveals this value to be on the
: high side for atleast the 1.2MB floppy type.  In general the gap1
: value should be lower for higher number of sectors/track.  The
: gap1 values used in FreeBSD fd driver should be compared against
: what Linux and dos do and corrected if necessary.
:
	I'm sorry to disagree, but the GPL is not (as far as
	i remember) returned.

	If you have the data guide near by, please check the
	ST1 register... I should have decoded this but
	I didn't write the software... so you are only 
	getting my best (half-hearted) guess.

	To be as nice as I can, I not seriously concearned
	because I didn't write it.

-- 
Jesus Monroy Jr                                          jmonroy@netcom.com
Zebra Research
/386BSD/device-drivers /fd /qic /clock /documentation
___________________________________________________________________________