[comp.sys.ibm.pc.hardware] How to partition a drive on AT without drive table entry?

sonny@charybdis.harris-atd.com (Bob Davis) (03/15/91)

	I have an AT clone for which I am trying to partition
an MFM drive using DOS's FDISK command. Apparently FDISK only
knows to assume Cylinders and Heads for the drive as those selected
during Setup of CMOS RAM. But there is no match of Cyls/Hds available
during Setup on my machine to match my hard drive.

	Evidently my Adaptec 2372 RLL controller (with g=C800:5 BIOS
stuff) that I previously used took care of knowing how many Cyls/Hds I
specified during Low Level Formatting and used those rather than the
Drive Type 1 parameters indicated in the CMOS setup.

	Is there some way that I can partition this MFM drive without having
the right drive type in BIOS? Is there software available to do whatever
my Adaptec controller BIOS did before?

	Thanks

_____________________________________________________________________________
Bob Davis, UofALA alum \\ INTERNET: sonny@trantor.harris-atd.com  |  _   _  |
Harris Corporation, ESS \\    UUCP: ...!uunet!x102a!trantor!sonny |_| |_| | |
Advanced Technology Dept.\\ AETHER: K4VNO          |==============|_/\/\/\|_|
PO Box 37, MS 3A/1912     \\ VOICE: (407) 727-5886 | I SPEAK ONLY | |_| |_| |
Melbourne, FL 32902        \\  FAX: (407) 729-3363 | FOR MYSELF.  |_________|

coop4y44@bwdla28.bnr.ca (Takis Skagos) (03/15/91)

In article <5831@trantor.harris-atd.com>, sonny@charybdis.harris-atd.com (Bob Davis) writes:
> 
> 	I have an AT clone for which I am trying to partition
> an MFM drive using DOS's FDISK command. Apparently FDISK only
> knows to assume Cylinders and Heads for the drive as those selected
> during Setup of CMOS RAM. But there is no match of Cyls/Hds available
> during Setup on my machine to match my hard drive.
> 	Is there some way that I can partition this MFM drive without having
> the right drive type in BIOS? Is there software available to do whatever
> my Adaptec controller BIOS did before?

   On my machine there is a blank entry in my drive table that
can be set up by the user.  You might want to check that out.

						Taki

davem@nro.cs.athabascau.ca (Dave McCrady) (03/16/91)

coop4y44@bwdla28.bnr.ca (Takis Skagos) writes:

> In article <5831@trantor.harris-atd.com>, sonny@charybdis.harris-atd.com (Bob
> > 
> > 	I have an AT clone for which I am trying to partition
> > an MFM drive using DOS's FDISK command. Apparently FDISK only
> > knows to assume Cylinders and Heads for the drive as those selected
> > during Setup of CMOS RAM. But there is no match of Cyls/Hds available
> > during Setup on my machine to match my hard drive.
> > 	Is there some way that I can partition this MFM drive without having
> > the right drive type in BIOS? Is there software available to do whatever
> > my Adaptec controller BIOS did before?
> 
>    On my machine there is a blank entry in my drive table that
> can be set up by the user.  You might want to check that out.
> 
> 						Taki

  You might also look into a software package called SPEEDSTOR, which
lets you build a custom configuration and writes it to CMOS .. and then 
takes care of formatting and partitioning your drive...


   Dave McCrady                 |  ersys!davem@nro.cs.athabascau.ca
+1 403-454-4054 (voice)         |  Disclaimer? Who needs a disclaimer?
+1 403-454-6093 (public USENET) |  I >own< the joint.

csgr@alpha.cs.ru.ac.za (Geoff Rehmet) (03/18/91)

In <1991Mar15.134518.10866@bwdls61.bnr.ca> coop4y44@bwdla28.bnr.ca (Takis Skagos) writes:

>In article <5831@trantor.harris-atd.com>, sonny@charybdis.harris-atd.com (Bob Davis) writes:
>> 
>> 	I have an AT clone for which I am trying to partition
>> an MFM drive using DOS's FDISK command. Apparently FDISK only
>> knows to assume Cylinders and Heads for the drive as those selected
>> during Setup of CMOS RAM. But there is no match of Cyls/Hds available
>> during Setup on my machine to match my hard drive.
>> 	Is there some way that I can partition this MFM drive without having
>> the right drive type in BIOS? Is there software available to do whatever
>> my Adaptec controller BIOS did before?

>   On my machine there is a blank entry in my drive table that
>can be set up by the user.  You might want to check that out.

Unfortunately not all machines have the user setup entry in the CMOS table,
but one way of getting your drive partitioned if you don't have a user setup
(this isn't a simple method - only do it if yoy've got no formatting and
partitioning software that will handle it) is to find someone who has a bios
with a user setup, put your hard drive into his machine, format and partition
the drive, and when your finished put the drive back into your machine.

This method worked for a friend of mine.  I would however only recommend it
as a last resort!

Cheers, Geoff. 

--
===============================================================================
 Geoff Rehmet, Botha House,    |Internet : csgr@alpha.cs.ru.ac.za 
 Private Bag 1028,             |uucp     : ..uunet!m2xenix!quagga!alpha!csgr
 Grahamstown, 6140, RSA        +----------------------------------------------

sonny@charybdis.harris-atd.com (Bob Davis) (03/19/91)

In article <1991Mar15.134518.10866@bwdls61.bnr.ca> coop4y44@bwdla28.bnr.ca (Takis Skagos) writes:
>In article <5831@trantor.harris-atd.com>, sonny@charybdis.harris-atd.com (Bob Davis) writes:
>> 
>> 	I have an AT clone for which I am trying to partition
>> an MFM drive using DOS's FDISK command. Apparently FDISK only
>> knows to assume Cylinders and Heads for the drive as those selected
>> during Setup of CMOS RAM. But there is no match of Cyls/Hds available
>> during Setup on my machine to match my hard drive.
>> 	Is there some way that I can partition this MFM drive without having
>> the right drive type in BIOS? Is there software available to do whatever
>> my Adaptec controller BIOS did before?
>
>   On my machine there is a blank entry in my drive table that
>can be set up by the user.  You might want to check that out.
>
>						Taki

	Thanks for the reply. This weekend, I heard the rumor that both
AMI and Award BIOSes have such a wild card Drive Type entry. Can
someone enlighten me on how to access and use these to specify any desired
number of Cylinders and Heads for a non-standard disk drive?

	This sounds extremely useful to me and I have never heard or
read of this before. And I HAVE read me some books...Have I ever
read me some books...And the books have failed me...and failed me...:-)

	Anyone know details about this "wild card" drive table entry?
I would be very grateful to know about this. (Ecstatic, even).

	Thanks.
_____________________________________________________________________________
Bob Davis, UofALA alum \\ INTERNET: sonny@trantor.harris-atd.com  |  _   _  |
Harris Corporation, ESS \\    UUCP: ...!uunet!x102a!trantor!sonny |_| |_| | |
Advanced Technology Dept.\\ AETHER: K4VNO          |==============|_/\/\/\|_|
PO Box 37, MS 3A/1912     \\ VOICE: (407) 727-5886 | I SPEAK ONLY | |_| |_| |
Melbourne, FL 32902        \\  FAX: (407) 729-3363 | FOR MYSELF.  |_________|

thoger@solan.unit.no (Terje Th|gersen) (03/19/91)

In article <5854@trantor.harris-atd.com> sonny@charybdis.harris-atd.com (Bob Davis) writes:
   In article <1991Mar15.134518.10866@bwdls61.bnr.ca> coop4y44@bwdla28.bnr.ca (Takis Skagos) writes:
   >In article <5831@trantor.harris-atd.com>, sonny@charybdis.harris-atd.com (Bob Davis) writes:
   >> 
   >> 	I have an AT clone for which I am trying to partition
   >> an MFM drive using DOS's FDISK command. Apparently FDISK only
   >> knows to assume Cylinders and Heads for the drive as those selected
   >> during Setup of CMOS RAM. But there is no match of Cyls/Hds available
   >> during Setup on my machine to match my hard drive.
   >> 	Is there some way that I can partition this MFM drive without having
   >> the right drive type in BIOS? Is there software available to do whatever
   >> my Adaptec controller BIOS did before?
   >
   >   On my machine there is a blank entry in my drive table that
   >can be set up by the user.  You might want to check that out.
   >
   >						Taki

	   Thanks for the reply. This weekend, I heard the rumor that both
   AMI and Award BIOSes have such a wild card Drive Type entry. Can
   someone enlighten me on how to access and use these to specify any desired
   number of Cylinders and Heads for a non-standard disk drive?

AMI BIOS' will tell you 'strike DEL to enter Setup / Diagnostics' on
bootup. On Award types you strike Ctrl-Alt-Esc on bootup.

Re doing this in software, here's a *really* quick and dirty way of
doing it : You know all those interrups?  They all have a 4-byte entry
down in low dos memory.  When the machine executes an interrupt, these
entries are used as a jump table.  Now, a lot of interrupts are never
used, (the BASIC-vectors on a non-IBM machine come to mind), which
leaves us with a little bit of "free" memory down there.  On my old
Sperry/IT semi-AT compatible, i wrote a small (10 turbo-pascal lines)
program which put the drive-table entry for my harddisk into this
area, and set Int 41h vector (which is the vector that's assigned to
point to the drive table for HD 1) to point to the table.  

I probably left lot of people shocked out there now, but this worked
like a charm for close to two years.  The advantage of doing it like
this is that you don't need a RAM-hogging TSR or need to figure out
how to write a device-driver.  Of course, you'd better be sure that
those interrupts you are zapping really aren't used.  I'm afraid I
don't remember which ints I decided were safe.  The machine still ran
Windows 3.0, WP, TP 5.5, TC 2.0, TCPP 1.0, + a lot of games etc, etc,
with the table installed.

Send me a note, if you want the code.  (If you send me your
drive-parameters, I might even modify it for you..)

Regards,

 -Terje

--
____________________________________________________________________________
thoger@solan.unit.no       |                 Institute of Physical Chemistry
THOGER AT NORUNIT.BITNET   | Div. of Computer Assisted Instrumental Analysis
                           |               Norwegian Institute of Technology

martin@dell.co.uk (Martin Jackson) (03/19/91)

You can try a program called DISK MANAGER by ONTRACK, it alows you to format
and partition the drive then, if the drive has more then 1024 cyl then it copiesSWBIOS to the first partition. When the drive boots up it loads the program, then alowing you to use the complete drive.

--
[ ** The views express above are my =OWN= and not of my employer ** ]
Martin Jackson, Dell Computer Corp. (UK) | Email address
Bracknell, Berkshire, RG12 1RW           | Domain: martin@dell.co.uk
Tel: +44-344-860456                      | Uucp: ...!ukc!delluk!martin

rcollins@altos86.Altos.COM (Robert Collins) (03/20/91)

>In <1991Mar15.134518.10866@bwdls61.bnr.ca> coop4y44@bwdla28.bnr.ca (Takis Skagos) writes:
>
>>In article <5831@trantor.harris-atd.com>, sonny@charybdis.harris-atd.com (Bob Davis) writes:
>>> 
>>> 	I have an AT clone for which I am trying to partition
>>> an MFM drive using DOS's FDISK command. Apparently FDISK only
>>> knows to assume Cylinders and Heads for the drive as those selected
>>> during Setup of CMOS RAM. But there is no match of Cyls/Hds available
>>> during Setup on my machine to match my hard drive.
>>> 	Is there some way that I can partition this MFM drive without having
>>> the right drive type in BIOS? Is there software available to do whatever
>>> my Adaptec controller BIOS did before?
>
>>   On my machine there is a blank entry in my drive table that
>>can be set up by the user.  You might want to check that out.
>
>Unfortunately not all machines have the user setup entry in the CMOS table,
>but one way of getting your drive partitioned if you don't have a user setup
>(this isn't a simple method - only do it if yoy've got no formatting and
>partitioning software that will handle it) is to find someone who has a bios
>with a user setup, put your hard drive into his machine, format and partition
>the drive, and when your finished put the drive back into your machine.
>

Sorry, but I tried to stay out of these things until I see that nobody is
being too helpful, or until the responses aren't the obvious solutions.

As mentioned, not all BIOS's support a user-definable drive type.  So upon
discovery of such a feature, I wouldn't get too excited about using it
unless you have a BIOS that supports this feature.  Let's assume that the
BIOS in question doesn't support a user-definable drive type.  How then
can we support this drive.  There are at least two obvious solutions, but
both require a minimal understanding of the role of the disk parameter
table and how it is accessed.

Method 1:  Modify the disk drive parameter table in your BIOS.  To do this
you need to make a soft-copy of your BIOS.  Debug is suitible for this simply
by executing the following commands:
-n bios.bin
rbx 1
rcx 0
w f000:0
q

That will write the BIOS in a disk file called BIOS.BIN.  Next you need to
modify the disk drive parameter table.  The table is located (in every
AT-compatible BIOS) beginning @ offset E401.  If you wanted your drive
to appear at entry #26, you would modify the table beginning at address
(E401h + 26*16) = E5A1h.  Each table entry has to following format
(followed by an example for a Micropolis 1325a):
	DW	MAX_CYL	; Maximum number of cylinders:	3FFh
	DB	MAX_HD	; Maximum number of heads:	8
	DW	?	; Not used			0
	DW	WPC	; Start of write precomp cyl:	FFFFh
	DB	?	; Not used 			0
	DB	CTRL	; Control byte:			0
			;  bit7 = Disable retries
			;  bit6 = Disable retries (same as above)
			;  bit3 = More than 8 heads
	DB	?	; Not used			0
	DW	?	; Not used			0
	DW	LZ	; Landing Zone			3FFh
	DB	N_SEC	; # of sector/track		11h
	DB	?	; Reserved			0

Simply modify this table to suit your drive specifications.  Next you
need to checksum the BIOS.  From the DOS prompt, execute the following
debug script:
C> debug bios.bin
-m cs:100 l8000 8000:0
-m cs:8100 l8000 8000:8000
-a 
-mov ax,8000
-mov ds,ax
-xor ax,ax
-xor cx,cx
-mov ds:[ffff],0
-lodsb
-add ah,al
-loop $-3
-neg ah
-mov ds:[ffff],ah
-int 3
-
-g
-rbx 1
-rcx 0
-w 8000:0
-q

This routine will calculate and modify the BIOS checksum.  Now all you need
to do is burn the ROM(s).  If you BIOS is two ROMs then you will need to
split the file into even and odd components.  Then find an EPROM burner
and burn your ROMs.

Method 2:  If you can't do method 1 for any reason, then here is an alternate
method.  INT41 and INT46 are pointers to your current hard drive parameter 
table entries.  INT41 points to device 80's table, and INT46 points to device
81's table entry.  If you had drive type 26 selected for device 80, then
INT41 would point to F000:E51A.  This pointer is used by LLformat routines
to get the parameters used to format the drive.  So, you can write a very
simple TSR that has a resident portion in memory with a hard drive parameter
table entry in it.  The initialization code for the TSR simply changes
the INT41 (or INT46) vector to point to the data table.  Upon powerup you
set the BIOS drive type to the closest one that fits your drive (less
cylinders, but same number of heads).  Execute the TSR, and LLformat the
drive.  Now put the TSR in your AUTOEXEC.BAT file.  Since you chose a
BIOS entry that is close to your drive, you will be able to boot from the
drive.  Furthermore, since you executed the TSR upon booting you will
have no software incompatibilities with programs that uses the drive
parameter tables.



-- 
"Worship the Lord your God, and serve him only."  Mat. 4:10
Robert Collins                 UUCP:  ...!sun!altos86!rcollins
HOME:  (408) 225-8002
WORK:  (408) 432-6200 x4356

coop4y44@bwdla28.bnr.ca (Takis Skagos) (03/20/91)

In article <5854@trantor.harris-atd.com>, sonny@charybdis.harris-atd.com (Bob Davis) writes:
> 	Thanks for the reply. This weekend, I heard the rumor that both
> AMI and Award BIOSes have such a wild card Drive Type entry. Can
> someone enlighten me on how to access and use these to specify any desired
> number of Cylinders and Heads for a non-standard disk drive?
> 	Anyone know details about this "wild card" drive table entry?
> I would be very grateful to know about this. (Ecstatic, even).

  Hi.  The BIOS in my machine is AMI (I don't have the dates handy
though, sorry).  Just go into 'setup' (with my machine I press <delete>
during the POST) and select the easy setup and go to the where the
hard drive selection stuff is.  On my machine the blank drive entry
is the last one.  All I have to do is modify the fields of the
description.  It is all pretty easy.  I hope this helps a bit ... but
remember that my description of what to do may differ for different
BIOSes.  Good luck!

						Taki
 

phil@brahms.amd.com (Phil Ngai) (03/20/91)

In article <5831@trantor.harris-atd.com> sonny@trantor.harris-atd.com (Bob Davis) writes:
|
|	I have an AT clone for which I am trying to partition
|an MFM drive using DOS's FDISK command. Apparently FDISK only
|knows to assume Cylinders and Heads for the drive as those selected
|during Setup of CMOS RAM. But there is no match of Cyls/Hds available
|during Setup on my machine to match my hard drive.

I recommend you buy a WD 1006V-SR2. This will RLL your drive
and let you specify the geometry. Despite all the fear and
doubt you will hear, I personally have had very good experience
with RLLing Seagate drives like the 251 and the 4096. If it
works with Seagate, it will probably work with most disks.
If it doesn't work, new disks are getting really cheap anyway.

In the way of software, you can use Disk Manager or Speedstor.


--
The Macintosh makes it easy to do sloppy work.

oneel@heawk1.rosserv.gsfc.nasa.gov ( Bruce Oneel ) (03/20/91)

Ok, I purchased this used computer and it seems to have a WD 1006
controller running a st238 (a st251 but rlled).  Where does one
acquire either Disk Manager or Speedstor?  Who sells them?

Thanks!!!

bruce
--
| Bruce O'Neel              | internet : oneel@heasfs.gsfc.nasa.gov|
| Code 664/STX              |     span : lheavx::oneel             |
| NASA/GSFC                 |compuserve: 72737,1315                |
| Greenbelt  MD 20771       |  AT&Tnet : (301)-286-1119            |

phil@brahms.amd.com (Phil Ngai) (03/21/91)

oneel@heawk1.rosserv.gsfc.nasa.gov ( Bruce Oneel ) writes:

>Ok, I purchased this used computer and it seems to have a WD 1006
>controller running a st238 (a st251 but rlled).  Where does one
>acquire either Disk Manager or Speedstor?  Who sells them?

If you have a WD1006V-SR2 and a 251 type of disk, you don't need
DM or SS, since the WD has its own BIOS for LLformat, just go
into debug and g=cc00:5 or something like that.

--
The Macintosh makes it easy to do sloppy work.

davem@nro.cs.athabascau.ca (Dave McCrady) (03/21/91)

oneel@heawk1.rosserv.gsfc.nasa.gov ( Bruce Oneel ) writes:

> Ok, I purchased this used computer and it seems to have a WD 1006
> controller running a st238 (a st251 but rlled).  Where does one
                                ^^^^^
    Wrong ... the rll'd st251 is called an st277.  The 238 is an 
rll'd st225 .. about 31 mb.

> acquire either Disk Manager or Speedstor?  Who sells them?
> 
  Any software shop worthy of the name ...


   Dave McCrady                 |  ersys!davem@nro.cs.athabascau.ca
+1 403-454-4054 (voice)         |  Disclaimer? Who needs a disclaimer?
+1 403-454-6093 (public USENET) |  I >own< the joint.