• Please review our updated Terms and Rules here

XT-style controller for IDE/CF disks

Xacalite

Veteran Member
Joined
Feb 13, 2015
Messages
754
Location
Warsaw
Yes, I know about XT-IDE.
But there's one problem with it: incompatibility with classical XT MFM controllers, like that IBM/Xebec thing found in a 5160, which prevents it from working with systems that bypass BIOS, notably PC/IX and Xenix.

So I'm thinking about another approach: a controller which emulates a standard XT MFM controller (at I/O 320h, IRQ 5, DMA 3), but connects to an IDE HDD, CF card, or some other modern media.
Would this be feasible?
Or perhaps such a card already exists?
 
You'd be better off with a real MFM controller and a MFM disk emulator, that would be the better solution IMO since the MFM emulator will work with other systems. Dave Gesswein has a device that will not only read MFM drives, but also emulate one. It's a little complex if all you want to do is emulate a fresh drive, and you're not trying to pull data off an old drive.

A new MFM drive using Flash storage is a long-term project for me. I have a lot of non-PC systems that really must have MFM drives, like the AT&T UNIX PC, and other systems for which new MFM drives would make many impractical storage controllers practical again, like the RQDX3 for QBus PDP-11s.

MFM drive-only emulators exist but are closed-source and usually priced for industrial customers that need them for critical equipment; that is, usually too expensive for hobbyists.

Perhaps after the rush to get stuff done for VCF East, I can start putting more effort on a new MFM SSD. I'm not aware of any other open source projects to build such a device, aside from Dave Gesswein's project.
 
Ah, indeed, a flash drive with MFM interface seems better, good luck with that project!
Consider also support for RLL, ARLL, and maybe even ESDI - I think it should all be possible with just a software modification.
 
I'm trying to understand what's going on here. By "emulating an MFM controller," do you mean, make a new controller that interfaces with MFM drives, or just set whatever controller to the settings that the MFM controller would use? The XT-IDE can be set to I/O 320h (you need to reflash the BIOS), so that shouldn't be an issue if the 5160 is specifically looking to that range for the hard drive controller.
 
It's always, "just a software modification," right? :p
Well, I don't know how exactly you want that drive to operate, but if enconding/decoding is supposed to be performed by some modern microcontroller, then yes, different encoding = different software.
However, it seems possible not to perform any encoding/decoding, just sample the signal from the data cable, and store the sampled data - in this case, no modification would be necessary for FM/MFM/RLL/whatever...
 
I'm trying to understand what's going on here. By "emulating an MFM controller," do you mean, make a new controller that interfaces with MFM drives, or just set whatever controller to the settings that the MFM controller would use? The XT-IDE can be set to I/O 320h (you need to reflash the BIOS), so that shouldn't be an issue if the 5160 is specifically looking to that range for the hard drive controller.
IDE register set is different from that of IBM/Xebec controller, so setting XT-IDE to 320h is not enough to make it work with systems that directly access the HDC registers.
 
IDE register set is different from that of IBM/Xebec controller, so setting XT-IDE to 320h is not enough to make it work with systems that directly access the HDC registers.

Okay, so it's not the IBM 5160 that's having the trouble. I don't think I can be of any help, but I'm still trying to understand exactly what you're running. Is this an early Unix kernel that needs to address the controller directly?
 
Back
Top