• Please review our updated Terms and Rules here

XT Hard Drive shows 1701 error on ROM low level format utility

tezza

Veteran Member
Joined
Oct 1, 2007
Messages
4,731
Location
New Zealand
Hi Guys,

I got passed an IBM XT the other day and I'm just working on it.

The hard drive will show a directory but that's about all. I won't boot.

Going into Debug g=C800:6 shows the message..

1701 (20)
1 Hard Disk

..and then it hangs. I know 1701 is the POST error for hard disk parity failure.

Can I assume the drive is toast?

Tez
 
Not sure at all Chuck although it's the drive that was installed in the machine. Mind you, that doesn't necessarily means someone else didn't add it and failed to set the correct dip switches on the disk controller...

I'll continue to investigate....
 
Hmm.. I checked the dip switches of the card (found config info on the web) and it seems to match what it should.

I started to look at this XT this weekend. It's the first item in this haul, which I've now got to after working through the System 80 stuff.

At first the machine was dead as a doornail. Some poking around on the 256/640k motherboad revealed a shorted tantalum cap. This was replaced and the thing roared into life. It now boots fine on floppy A but the second floppy doesn't work (the machine doesn't even recognise it) and there is also this hard drive issue.

Re: the hard drive I don't know if it's the hard drive or the hard drive controller. After fiddling with the dip switches on the controller a bit, I moved them back to their original positions. The machine says there is a hard drive attached during boot but if I try to move to c: the machine now tells me that c: is not a recognised drive?? On the same settings before I experimented it at least recognised the drive and I could list a directory. I've checked all cables and the like so I'm not sure what's going on.

Another hard drive was given to me at the same time. I think this was the original on in the machine. it's a full-height behemoth. I tried to configure the card to recognise this one, but it couldn't. I have its specs. Again, the system told me a hard drive was attached during the boot process but when it came to access it I couldn't. Debug threw up the 1710 error and DOS told me the drive didn't exist on the system.

I'll keep at it. The floppy controller is an 8-bit one and there is no CMOS in the machine. I might look for a similar floppy controller in on the other machines I snagged. I need to determine if it's the drive or the controller that's the issue here.

Tez
 
Last edited:
Tez, remember that on most old MFM drives, there's the issue of "terminators". I've seen one system where two drives had been installed and the one with the terminators installed removed.

Fortunately, there are quite a few diagnostic tools as well (e.g. SpinRite), so you're not completely out of luck. Remember too, that a hard drive puts quite a load on these old PSUs, so check your voltages with the drive spinning.
 
I got passed an IBM XT the other day and I'm just working on it.

The hard drive will show a directory but that's about all. I won't boot.

Going into Debug g=C800:6 shows the message..

1701 (20)
1 Hard Disk

..and then it hangs.

If it still has the original Xebec controller installed, then there is no low-level format utility in ROM. You were supposed to use IBM's Advanced Diagnostics disk to do the format, but there are other low-level format utilities available. Also make sure the DIP switches or jumpers on the controller are set to match the size and parameters of the hard drive you have installed. I believe there were two models of the Xebec controller; the original one which only supported the 10 MB drive, and then a later version which supported either 10 or 20 MB drives.

If it has an aftermarket controller installed, such as Western Digital or Seagate, then of course you can ignore everything I just said above. Most aftermarket controllers do have a low-level format utility in ROM, but the command to access it varies. The most common I've seen and used is g=c800:5 (not :6) in DEBUG.
 
Hi,

No it's a third party controller with it's own BIOS. It's name escapes me right now. When I get home I'll post the specs.

One question someone might be able to answer. I've got the XT technical manual which describes those dip switches on the mainboard. The manual seem to be largely for the 64/256 boards. Are those switches the same for both a 64/256 and 256/640k (MkII) board? I have the latter.

I unplugged the second floppy disk as it wasn't working, but did not alter that switch on the mainboard to say I have 1 floppy drive now not two. I wonder if this would lead to a situation where the C: drive is listed as absent, even though the machine could see it before (perhaps before I unplugged drive B)?

Doing this makes me remember how much fun it was (-NOT) with all this non-plug and play-type PC technology in the 1980s! I love my vintage computers but I don't have any kind of hankering to return to the "old" days in this respect anyway!

I'll continue the investigation tonight. Ideally I'd like to get the full height hard drive going as this makes the machine look more "authentic" somehow.:) It's incredibly huge, heavy and generally impressive!

Tez
 
Just a related query...if going into Debug g=C800:6 shows the message..

1701 (20)
1 Hard Disk

this would indicate the System has found some kind of HD config routine, yes? Other common address calls for this kind of thing just seem to hang.

Terry
 
No, it's more probable that you're simply re-entering the HD BIOS initialization code. Get us the controller model and we can go from there. The 20 code is for a general failure.
 
In DEBUG you can type d c800:0 to get a view of what's in the controller ROM. Usually if there is a low-level format utility you will see some text relating to it. Otherwise if you only see a bunch of machine language code with no intelligible ASCII text, then the controller probably does not have a low-level format utility in ROM.
 
No, it's more probable that you're simply re-entering the HD BIOS initialization code. Get us the controller model and we can go from there. The 20 code is for a general failure.

Ok, thanks. Yes, I'll post up the HD controller model and the specs of the two drives I'm trying to get it to recognised tonight. The fact that I used to be able to get a directory on the C drive of the one it came fitted with gives me hope that with the low level format this drive should be ok. Both it and the other (large) drive seem to spin up ok with no alarming bangs, knocks or grinding sounds..so that has to be a good thing, right? :D

Tez
 
In DEBUG you can type d c800:0 to get a view of what's in the controller ROM. Usually if there is a low-level format utility you will see some text relating to it. Otherwise if you only see a bunch of machine language code with no intelligible ASCII text, then the controller probably does not have a low-level format utility in ROM.

Good advice. I'll try that, thanks.
 
Hi Guys,

Right. Progress.

First the 2nd floppy drive is now going. For some reason the motherboard dip switches were set to only one floppy drive?? The 2nd drive seems to work ok so I don't know why this was done?

Second, Floppies_only, good tip! The Hard Drive main cable had a dogey pin. I didn't need to try another cable to find it, I could see it when I inspected the cable. A replacement cable is now in place and the machine now always recognises Drive C.

Third, now with the cable fixed I have found the disk formatting program. It is at C800:5. BTW The Hard Disk controller card is a Data Technology Corp DTC5150CX . The BIOS is BXD07. Switch info is at
http://stason.org/TULARC/pc/hard-di...Y-CORPORATION-Two-MFM-ST506-412-driv-186.html

When the disk formatting program is activated it says..
Hard Disk Formatting Utility V3.0

"This program will erase all data on the specified hard disk.
Enter a hard disk number (1 to 8 ) or press "q" to quit:"

Err..and this is where I've got to. It seems there is a table of sorts (in the Controller manual?) listing 8 types of drive? Anyone have that information?

The drive connected to the controller is the good old Seagate ST-225. 4 heads, 615 cylinders, 20MB.
http://stason.org/TULARC/pc/hard-drives-hdd/seagate/ST225-21MB-5-25-HH-MFM-ST412.html

That the ST-225 is supported by the card is suggested by the dip switch settings for the BXD07 BIOS. The first setting (Drive type 0) is for a 20MB/4 cylinder/613 drive which seems like my ST-255 (but 613 not 615?).

I don't know which number to select though. I thought drives 1 to 8 might correspond to "Drive type" in the BXD07 switch table but I'm asked to enter a disk number "1 to 8" and there are 16 drive types there! Also, they start with 0 not one.

I'm not in a great hurry so I thought I'd see if anyone has any ideas before I give it a go (probably by pressing 1). Is there anyway you can read these tables by peeking at the bios with debug? Can I stuff hard hard drives up by making the wrong selection here?

One last thing. The large HD I have. It's a Quantum Q540. 8 heads, 512 Cylinders. The thing is massive!

Tez
 
Last edited:
I have a DTC5150CX but I presently can't locate it.

The ST-225 is not directly supported by the BXD07 BIOS, but either of the two entries for '612 cylinders / 4 heads' will do. WPC was important back when business data was stored on the drives, but for what you're doing, you can ignore WPC. And 3 cylinders is not much to sacrifice.

And so it should be a matter of setting the switches for the desired entry and entering "1" when asked, "Enter a hard disk number (1 to 8 )".

Is there anyway you can read these tables by peeking at the bios with debug?
Yes. The drive table in the BXD07 BIOS starts at offset 283h. So if your card's ROM is set to start at C800:0, look at the bytes starting at C800:283
According to information I have, each entry is:

2 bytes: cylinder count
1 byte: head count
2 bytes: RWC
2 bytes: WPC
1 byte: ECC burst
1 byte: step rate
1 byte: drive-ready timeout
1 byte: format timeout
1 byte: general timeout
1 byte: always 00
1 byte: always 00
1 byte: always 00
1 byte: always 00

What I'm seeing matches the BXD07 drive table on stason.org

Can I stuff hard hard drives up by making the wrong selection here?
Well, asking the drive to step past it's maximum cylinder can result in horrible sounds when that happens. Depends on the drive. I would think that the engineers allowed for that to happen infrequently. Still, something to be avoided.
 
I just happen to have the manual for the controller. When you format, you want drive 1--the manual repeats the same crazy 1-8 prompt that you describe and then goes on to say that one should enter 1 or 2.

The type setting with the later BXD BIOS is a bit weird as it allows one to split a drive in half and allow it to appear as two drives. For your ST-225, you want to set the switches as follows:

on-off-on-off-on-on-on-on. If you set 1,2,5,6 off, the controller will split the drive in half. For a single-drive system, switches 3578 = 1256. Crazy, I know.
 
Thanks Guys,

Chuck, just a double check before I do this tonight. Are you sure you don't mean switches 3478 = 1256? You may have doubled up a 5? This is what the settings at
http://stason.org/TULARC/pc/hard-di...Y-CORPORATION-Two-MFM-ST506-412-driv-186.html
would suggest.

Also, it's BIOS BXD07, not BXD06 (there are two tables in the specs sheet, they are quite different for the two BIOSes). Your switch arrangement suggests you might be referring to BXD06, which would be correct for the drive (listed as Drive type 2) in the spec.

However, in BXD07 table, the ST-255 config is listed as Drive type 0, and providing the switches 3,4,7 and 8 are all ON it should be right for a 20MB/4/612 drive. The other switches (1256) are only important if you have another HD connected (the card does take two drives), right?

My original settings were off-on-on-on-off-on-on-on which would make switches 3,4,7 and 8 exactly right for an ST-255 under BIOS BXD07 (but not BXD06). Certainly I can read a directory and access some files with this setting so I suspect it's correct as it's set now.

Is this the right interpretation? You are the one with the manual, but I'm wondering if it maybe covers only BXD06 and not the newer BXD07 BIOS?

Tez
 
No worries. I'll do the low-level formatting tonight and let you know how it goes.

As mentioned before, I'd love to get the Q540 monster drive in there (35MB, 8 heads, 512 cylinders). The irony is this drive appears supported by BXD06 but not BXD07! It appears on the table for the former as drive type zero.

I guess I might be able to format it under the "Reserve for non-standard" switch setting assuming the low-level format program will then ask me the appropriate questions. Perhaps also in this case I'll also need to select "drive type 8" at the prompt (as it's the 8th entry in the table)?

Tez
 
....in this case I'll also need to select "drive type 8" at the prompt (as it's the 8th entry in the table)?

Although...thinking on it more....it seems in your manual it advises you select 1 or 2 Chuck, I would assume for either the first or second drive attached. My feeling is this is likely to be the same even for the later BIOS? I wonder why selections 3 to 8 are in there then? Maybe the software is some kind of generic program that as also used for a HD controller that could handle up to 8 drives??

Tez
 
Back
Top