• Please review our updated Terms and Rules here

8 bit IDE (XTA) Replacement Project

I was thinking a double-size RAM card that added up to 512 of RAM, with 128K of that potentially being UMB, and JRide style memory mapped XT-IDE. You can't get the CF card out easily, but if you have the serial adapter (I do, so I guess I am biased), you can transfer files over that pretty easily. I am wondering now if maybe all the needed address lines are not available.

They’re (effectively) not, the RAM socket is hard decoded to under-640k area and the daisy-chained cards use a weird system that hard codes them to 128k each, IBM’s own 256k cards use a workaround to effectively look like two cards. You would have to tap signals on the motherboard proper and somehow trick the decoder, which is an ASIC, to sneak more RAM or a peripheral through that door. (It was one of many ideas I floated myself.)
 
Still lots of work to do but making some progress on this ST & WD all-in-one XTA interface card.

image_63468.png
 
Does anyone have an ST05X card with the resistor(s) populated on the area I have highlighted below? It is not populated on my card and would like to know the resistor value. The HD activity LEDs are driven directly by the hard drive and the current capability is not documented. I'd like to keep things simple and just use Seagate's original value.
My ST05X is a different design which has unused circuit traces for a floppy drive controller. The activity LED pin header is not installed, and neither are the resistors for it.

st05x.png
 
i have two of those Double connector cards also. Mine has a tiny smd resistor in the upper left corner. 11.jpg 12.jpg

I have to check to see if it is the same like yours.

Also have those AT/XT Seagate drives. Guessing having 3 of them.. I have enough stuff laying around.. Mostly its hard to find anything here..
 
Last edited:
Mine has a tiny smd resistor in the upper left corner.

Thanks, that is just what I was after. 220 ohm. I have the same card as VWestlife. It came out of a Tandy hard card assembly and I guess they figured that Tandy's don't have unused HD LEDs, so why confuse people with a header for one.
 
I am rather curious to know of either of the ST05X or WDXT-150 supports 2 hard drives.

From looking at the disassembly of the ST05X BIOS, it seems to support a second drive. Except as best I can tell it will never set the drive 1 (second drive) parameter table. It looks like this would not be set even if the case of a non-ST05X drive being set up first. I assume this parameter table is needed for the drive to work. The BIOS does set the number of drives in the BIOS to 2 so not sure what DOS does with that.

The WD BIOS, admittedly from a Compuadd 810 and not a WDXT-150, does not appear to be configured for two drives via one BIOS. Interesting since the WDXT-150 has an unpopulated second header. It is possible that the BIOS I have is not what is on a WDXT-150 however the rest of the handling of options in the BIOS is consistent with the WDXT-150 (BIOS and port addresses). I think the BIOS might be able to handle two drives if two WDXT-150 were installed, each with different BIOS address, port address and IRQ. The different IRQ seems to be necessary as the BIOS fully takes over the IRQ handler.
 
The layout for the XTA controller turned out to be fairly easy. I'll write the GAL logic before I order boards since that usually turns up a problem or two. Probably tweak a few things before it goes out out also.

XTA-Interface-Top-Bottom.png
 
Any hope for interleaves lower than 3:1 or is that simply as fast as 8-bit XTA can go?

If you're talking about the host adapter there's not a thing it can do to influence that, the controller is on the drives. This passes through all data and commands unmodified, it just decodes the IO/memory address it responds to and (apparently) slightly massages a couple control lines.

Theoretically a flash-based XTA replacement *drive* should be able to run at whatever the theoretically achievable DMA speed is, or about the same speed as a DMA XTIDE card, probably whichever is lower.
 
But the format utility, that sets the interleave, is in the BIOS on the host adapter, right?

Has anyone ran spinrite with one of these drives? Does it talk about the interleave and being able to change it?
 
Has anyone ran spinrite with one of these drives? Does it talk about the interleave and being able to change it?

Supposedly at least some XTA drives use sector translation, so trying to run a utility like that against one has the possibility of bricking it. 1:3 is pretty good performance for an XT class controller when you consider IBM went with 1:6 on the original XT.
 
According to this hard drive documentation:

https://stason.org/TULARC/pc/hard-drives-hdd/western-digital/WD-93024-X-22MB-3-5-HH-IDE-XT.html

it was possible to get 2:1 interleave using demand DMA mode with the WD Super BIOS and this drive configured accordingly.
It says "Western Digital's Super BIOS version 2.1 or greater can program the controller for DMA demand mode." Unfortunately the newest BIOS we have a copy of is 1.1. My own WDXT-150 card has 1.0 on it.

I believe the built-in SmartDrive interface in the later Tandy 1000s supports DMA mode, but I don't know what interleave it uses. I can dump my 1000RL's ROM if someone wants to try to find the XTA code in it.
 
It says "Western Digital's Super BIOS version 2.1 or greater can program the controller for DMA demand mode." Unfortunately the newest BIOS we have a copy of is 1.1. My own WDXT-150 card has 1.0 on it.
It is so strange to me that there might be a whole major version jump on an XTA BIOS. It seems to me like this would have been a modest business area for them which obviously didn't warrant ongoing investment. I wonder it the note be in error and refers to an MFM BIOS version.

It would be useful to have a copy of the 1.0 BIOS for testing.

I believe the built-in SmartDrive interface in the later Tandy 1000s supports DMA mode, but I don't know what interleave it uses. I can dump my 1000RL's ROM if someone wants to try to find the XTA code in it.

That would be extremely useful thanks.
 
I finished up my XTA interface card design and ordered boards for testing. I'll follow up when they get here and I have had a chance to build one up.

I have also spent a bit more time looking at the PS/2 Model 30 286 BIOS. I am even more convinced now that nothing like the "standard" XTA style drives. I also found where it sets up the drive parameters and it looks like it supports the standard AT drive types up to type 37. The drive time is determined by reading from the drive which is great. The code where the it computes the drive type number is quite complicated and I have not yet determined whether it can actually select from any of the 37 types. If it can, type 9 is a massive 117,504,000 bytes. Bigger anyway than the 40 megs we are going to get with XTA. A solid state replacement should be able to best-fit a drive type to the size of the installed SD card.

If someone would like to figure out the IBM drive protocols and emulate in PCem, that would be super helpful :). The PS/2 Model 30 286 is already configured in PCem, it just needs implementation of the hard drive. ghidra work so far for the PS/2 Model 30 286 BIOS is located here: https://github.com/JayesonLS/8bit-ide-analysis/tree/master/PS2_Mode30_286_Ghidra
 
Hmmm, I started off on this thread thinking that folks owning systems with integrated XTA support were looking for an XTA drive substitute. It turns out that I was wrong--it seems that people are looking for an XTA interface (too brain-dead to call it a controller) board for systems that don't support XTA.

Given such a drive, and needing to retrieve data from it, I'm still of the opinion that it could be done with a bidirectional printer port and a bit of software--and maybe a bit of hardware (<$10 worth).
 
Hmmm, I started off on this thread thinking that folks owning systems with integrated XTA support were looking for an XTA drive substitute. It turns out that I was wrong--it seems that people are looking for an XTA interface (too brain-dead to call it a controller) board for systems that don't support XTA.

Given such a drive, and needing to retrieve data from it, I'm still of the opinion that it could be done with a bidirectional printer port and a bit of software--and maybe a bit of hardware (<$10 worth).

I am wondering if it is possible to move the XTA interface solution posts into another thread. There does seem to be two conversations woven together.

I am not sure how much of a demand for an interface solution. I think perhaps VWestlife was just wanting to understand how XTA might map into the XT-IDE ecosystem. What I didn't answer earlier, is that it would be possible to hook an XTA drive up to an XT-IDE, or a standard ATA interface, with a modified cable and an updated XT-IDE BIOS. The modified cable would be needed to avoid shorting signals to ground. Maybe you could be careful with the code to always drive 0's as needed but it sounds like trouble to me. The BIOS changes would be significant - I am not very familiar with ATA but the XTA registers/protocols do not look to be very similar. Plus the different XT-IDE variants have different register arrangements.

For what demand there might be for an interface solution, I do think it would go beyond the need to get data off old drives. I know I am not the only person who loves the sounds from a working stepper motor drive. For the solid state XTA replacement drive, I was seriously considering adding a stepper motor for appropriate sounds and timing. I guess I am again. I mean listen to these chirps: https://www.youtube.com/watch?v=sGEjB5yd5rA
 
Hmmm, I started off on this thread thinking that folks owning systems with integrated XTA support were looking for an XTA drive substitute.
Same here. I have a Comoodore PC20-III that has been equipped with a XT-IDE + CF but would not say 'no' to a XTA variant.
 
Back
Top