• Please review our updated Terms and Rules here

Best performing storage option for a 286 Machine

Question for those familiar with the XT-IDE boot ROM:

Right now this old Adaptec BIOS will not allow more than 2 HDD total in the system. I.e. if you configure Drive C in the system CMOS Setup it will initialize one SCSI drive as D. If you configure Drive C and D in the system CMOS Setup it will print a message saying Drive C and D already installed and do nothing.
That is similar to how some old MFM controller BIOSes behaves. If 2 or more drives are already installed they will refuse to install their own drives. So that's why MODULE_MFM_COMPATIBILITY was added to XUB. This module is not in the official builds so a custom build is required (let me know if you need help with this). Also, this additional code has not been tested (at all AFAIK) - it was added for the very few people that wanted to run old MFM drives together with IDE (yes, I'm looking at you Alecv :D).

If I were to set the system CMOS to no hard drives, and use the XTIDE ROM instead, would I be able to have the Adaptec configure C and D as SCSI drives and then have the XTIDE ROM configure an IDE drive as drive E, as long as it loaded after the boot ROM on the SCSI controller?
Maybe, at least there's a chance if using MODULE_MFM_COMPATIBILITY.
So does the XTIDE ROM play nice with other disk ROMs and 3+ drives?
Yes, usually. It mostly depends on the other BIOS.
 
The cheapest fast solutionh is a 16 Bit ISA IDE adapter, IDE to CF/SD adapter and a CF or SD card. They will reach maximum of the IDE bus speed of that machine and there is no seek time for mechanical heads to reach the requested track/sector. You can leave also the SCSI adapter in for larger drives for data storage and not so performance needing applications.
 
On most IDE drives, seeking short distances is usually swamped out by rotational latency. i.e. a typical 3600 RPM drive has an average rotational latency of 30 msec. I think that characterizing latency as being solely due to seeking is a bit misleading.
 
I purchased a TL866II programmer and upgraded the BIOS and microcode on the AHA-1542B to version 3.2. This adds support for extended translation and also netted me a nice speed boost on the Atlas 10K II.

20190523_183013.jpg

Sadly, even with the new BIOS the controller is still limited to 2 total hard disks in the PC. Still getting an error with trying to use ASPIDISK.SYS to add a 3rd drive. The drive is detected and assigned a drive letter with no issue, but it's still giving me a "general failure" when trying to calculate the free space after a directory listing on the HDD handled by the ASPIDISK driver.
 
Well, if you had a yen, you could write your own DOS ASPI driver--it's not rocket science.

rather than trying to build one from the ground up, wouldn't it make more sense to try some other 3rd party ones first? as long as I load adaptec's ASPI4DOS.SYS first, any ASPI disk driver should work in theory right?
 
That is similar to how some old MFM controller BIOSes behaves. If 2 or more drives are already installed they will refuse to install their own drives. So that's why MODULE_MFM_COMPATIBILITY was added to XUB. This module is not in the official builds so a custom build is required (let me know if you need help with this). Also, this additional code has not been tested (at all AFAIK) - it was added for the very few people that wanted to run old MFM drives together with IDE (yes, I'm looking at you Alecv :D).


Maybe, at least there's a chance if using MODULE_MFM_COMPATIBILITY.

Yes, usually. It mostly depends on the other BIOS.

http://minuszerodegrees.net/xtide/XT-IDE%20-%20Basics.htm

Here, modem7 describes doing exactly what I'm trying to do (substituting MFM for SCSI), but makes no mention of building with special modules. Is it worth just trying it out of the box with the stock 12k build?

I've got an extra EEPROM here to test with so if it doesn't work, reflashing it is trivial
 
rather than trying to build one from the ground up, wouldn't it make more sense to try some other 3rd party ones first? as long as I load adaptec's ASPI4DOS.SYS first, any ASPI disk driver should work in theory right?

Sure, ASPI's ASPI. Just speaking from the experience of having written a lot of SCSI software. ASPI's a lot easier than CAM, for example, or even SPTI.
 
Tried DI1000DD.SYS and NJ32DISK.SYS - neither of them will even load the driver, just hard lock the system after enumerating the drives.

Went back to Adaptec's ASPIDISK.SYS for another go at it and found I can read from, write to, and even execute binaries on the drive handled by ASPIDISK.SYS just fine... but anytime a directory command is issued or DISKTEST.EXE is attempted to run on the ASPIDISK.SYS managed drive, system hangs for a solid minute before displaying "general failure reading from drive e" just like before.

Such a strange condition to be able to read, write, and execute but not calculate free space...:confused:

Based on previous testing, ASPIDISK.SYS works 100% when managing a disk <1GB, these errors only occur on drives using extended translation. Extended translation works flawlessly when the drive is managed by the card's BIOS. I'm starting to wonder if this is some bizarre compatibility issue between ASPIDISK.SYS and PC-DOS 2000. (I tried SETVERing the driver to 6.20 but that made no difference, I'll have to spin up a proper MS-DOS 6.2 boot floppy to test the theory)
 
I can't say; I prefer Win9x's DOS 7.1 for most things. I never had a lot of luck running PC-DOS 2000--could have been something that I'm missing.
 
Well so much for that theory - booting off a clean MS-DOS 6.2 floppy with nothing but ASPI4DOS and ASPIDISK loaded produced the same results
 
Turns out to be a case of RTFM - here's a quote from the documentation accompanying the BIOS upgrade files:

"Drives handled by the BIOS will use extended translation
provided they are over 1 Gigabyte in formatted capacity.
Drives with less than 1 Gigabyte of formatted
capacity will use standard translation regardless of
whether extended translation is enabled. Drives handled
by the disk driver ASPIDISK.SYS will continue to use
standard translation and not be capable of DOS partitions
over 1 Gigabyte."

So that sucks - can't use 1st party ASPI storage driver and the two 3rd party ones (DI1000DD.SYS and NJ32DISK.SYS) I've been able to find don't seem to execute properly on a 286
 
Well my CF-IDE adapter finally arrived on the slow boat from China today, and I was able to resolve the original premise of the thread.

The best performing storage option for a 286 machine is... a fast SCSI drive. The CF card (Sandisk Ultra II) was outclassed by the Atlas 10KII in every metric, and even by the old Barracuda in 3/4.

Didn't get a screenshot but it was hitting about 1600KB/s sustained write and 1700KB/s read. 8K random, 70% read was around 70 IOPS and sector random read hit about 100 IOPS
 
Back
Top