[comp.sys.ibm.pc] Bios upgrade for old AT

sparks@batcomputer.tn.cornell.edu (Steve Gaarder) (03/02/88)

We have an old AT (model 99) which we use as a file server with Novell
Advanced Netware 286.  We recently purchased a Miniscribe 40 Meg drive 
for it.  This drive is, I believe, a type 36.  Now we have a problem.
Our machine only supports 4-bit drive types.  This, I understand, can
be fixed by upgrading the bios.  Ok, so I called the IBM flunky here.
He told me that the upgrade was available ONLY with the purchase of a
massively overpriced IBM hard drive.  (expletives deleted)

So, folks, the question is:  what can I do to upgrade my bios?  Is there
a way to get the IBM ROMs?  Can a buy a Phoenix or other bios that will
work in my AT?  Is there a clever hack I can use?

-- 
Steve Gaarder                                         
Cornell University, 171 Hollister, Ithaca NY 14853           607-255-5389
UUCP: {cmcl2,shasta,rochester,uw-beaver}!cornell!batcomputer!sparks
BITNET: sparks@crnlthry.BITNET        ARPA: sparks@tcgould.tn.cornell.edu

gerard@tscs.UUCP (Stephen M. Gerard) (03/09/88)

In article <3903@batcomputer.tn.cornell.edu> sparks@tcgould.tn.cornell.edu (Steve Gaarder) writes:
>We have an old AT (model 99) which we use as a file server with Novell
>Advanced Netware 286.  We recently purchased a Miniscribe 40 Meg drive 
>for it.  This drive is, I believe, a type 36.  Now we have a problem.
>Our machine only supports 4-bit drive types.  This, I understand, can
>be fixed by upgrading the bios.
>So, folks, the question is:  what can I do to upgrade my bios?  Is there
>a way to get the IBM ROMs?  Can a buy a Phoenix or other bios that will
>work in my AT?  Is there a clever hack I can use?

You can solve this problem if you have access to an EPROM programmer and two
27256 EPROMs.  Basically, you have to pick out a drive table entry that you
are not likely to need, and set the values for that entry to values that
match your drive.  The drive table is composed of sixteen 16 byte entries
that specify the number of heads, cylinders, Write Precompensation Cylinder,
the landing zone, etc.  This table begins at location 0xE401 in the IBM AT
BIOS (the BIOS resides in memory at segment offset 0xF000).  After changing
the drive table, you will have to adjust the checksum byte or else your
machine will not be happy with you. :-)

If you have access to an EPROM programmer and wish to tackle the project,
write me via e-mail and I will tell you the specifics.

------------------------------------------------------------------------------
Stephen Gerard  -  Total Support Computer Systems  -  Tampa  -  (813) 876-5990
UUCP: ...{codas, gatech}!usfvax2!tscs!gerard
US-MAIL: Post Office Box 15395 - Tampa, Florida  33684-5395

gerard@tscs.UUCP (Stephen M. Gerard) (03/10/88)

In article <3903@batcomputer.tn.cornell.edu> sparks@tcgould.tn.cornell.edu (Steve Gaarder) writes:
>We have an old AT (model 99) which we use as a file server with Novell
>Advanced Netware 286.  We recently purchased a Miniscribe 40 Meg drive 
>for it.  This drive is, I believe, a type 36.  Now we have a problem.
>Our machine only supports 4-bit drive types.  This, I understand, can
>be fixed by upgrading the bios.
>So, folks, the question is:  what can I do to upgrade my bios?  Is there
>a way to get the IBM ROMs?  Can a buy a Phoenix or other bios that will
>work in my AT?  Is there a clever hack I can use?

If this article appears twice, sorry.  Our neighboring site had some news
hungar pains, and appears to have eaten this article.

You can solve this problem if you have access to an EPROM programmer and two
27256 EPROMs.  Basically, you have to pick out a drive table entry that you
are not likely to need, and set the values for that entry to values that
match your drive.  The drive table is composed of sixteen 16 byte entries
that specify the number of heads, cylinders, Write Precompensation Cylinder,
the landing zone, etc.  This table begins at location 0xE401 in the IBM AT
BIOS (the BIOS resides in memory at segment offset 0xF000).  After changing
the drive table, you will have to adjust the checksum byte or else your
machine will not be happy with you. :-)

If you have access to an EPROM programmer and wish to tackle the project,
write me via e-mail and I will tell you the specifics.

------------------------------------------------------------------------------
Stephen Gerard  -  Total Support Computer Systems  -  Tampa  -  (813) 876-5990
UUCP: ...{codas, gatech}!usfvax2!tscs!gerard
US-MAIL: Post Office Box 15395 - Tampa, Florida  33684-5395

brad@looking.UUCP (Brad Templeton) (03/13/88)

I just did some work on that 40 meg miniscribe on my old AT.  The only
thing you need that's tough is to get a low level format done on the whole
drive.  You need a low level format program (like SpeedStore and others)
that can format a drive that isn't in the list of official ones.

The dealer who sold you the drive should format it for you.  It's the
simplest way.

Anyway, with this done, the neat thing is that, once under Dos 3.3, fdisk
is the only program that looks at the cylinder number.  So, use this little
TSR provided below to temporarily change the drive descriptor to the
808 cylinders of the miniscribe (I hear some can do as many as 840, mind you)
and then use fdisk (dos 3.3) to create an extra dos partition beyond the
32 megs.  After that, the drive will still work, even set as a 32 meg
drive type code "3".

Here's the TSR.  It's really boring, and you don't need it all the time.

PROGRAM	SEGMENT	PARA	PUBLIC 'CODE'
	ASSUME 	cs:PROGRAM

TBSR	PROC

	; set up our table

	mov	al,41h		; int number for disk table
	mov	ah,37		; dos function to set vector
	push	cs
	pop	ds		; put code segment into ds
	mov	dx,offset drive + 100h
	int	21h

	; now terminate, but stay resident

	mov	dx,(lastloc-TBSR+15+256) / 16
	mov	ah,49		; TSR
	mov	al,0
	int	21h		; terminate program

drive	dw	808		; number of cylinders
	db	6		; heads
	dw	0
	dw	300		; write pre-comp
	db	0
	db	0		; control byte
	db	0,0,0		; dunno
	dw	808		; landing zone
	db	17		; sectors
	db	0


lastloc	LABEL	NEAR

TBSR	ENDP

PROGRAM	ENDS
	END
-- 
Brad Templeton, Looking Glass Software Ltd. - Waterloo, Ontario 519/884-7473

berger@clio.las.uiuc.edu (03/15/88)

I wouldn't rely on the dealer.  Even if he formats it for you, there's
no guarantee his disk controller will be compatible with yours, that
he'll use a suitable interleave factor, or that he'll enter the list
of bad sectors.  Doing it yourself is the safest way.

			Mike Berger
			Department of Statistics 
			Science, Technology, and Society
			University of Illinois 

			berger@clio.las.uiuc.edu
			{ihnp4 | convex | pur-ee}!uiucuxc!clio!berger