IDE-SD adapter question

Maciej W. Rozycki macro at linux-mips.org
Sat Jun 27 18:32:48 CDT 2020


On Sat, 27 Jun 2020, W2HX via cctech wrote:

> Peter and Maciej. Thank you very much for the input. I don't believe 
> this BIOS supports anything other than CHS. At least I don't see a way 
> to toggle between CHS and LBA. Is this what I should be looking for? An 
> option to enable LBA mode?

 IIRC some old PC BIOSes indeed had an option to switch between CHS and 
LBA, it's been a while.  It might have been on a per-drive basis, at least 
with some implementations; as usually, for bug compatibility or whatever.  
This was all hairy stuff, now that you have reminded me.

 Using Linux did help a lot back then, the system was especially ambitious 
in its early days (it has fallen a bit into routine IMO over the years; 
it's no longer hobbyists trying to make their best and squeeze out as much 
as possible from the hardware), so all that was necessary was to put all 
the boot stuff onto a partition within the first 528MB, even with fake CHS 
parameters in the BIOS setup, and forget about all the PC BIOS limitations 
as the kernel handled all automagically, including geometry discovery and 
switching between CHS and LBA as necessary (IIRC there was an override too 
for the user to pass at kernel invocation in case the firmware of a given 
drive had a bug with one of the modes or whatever).

> I am not opposed to going to CF, but I have no other computers that have 
> a CF port, thus I have no way to move files onto this 486 computer.

 CF to PATA adapters are readily available and can be used to wire CF 
media to any machine talking PATA.  I have one of those adapters that 
actually supports both a master and a slave CF device, so you can plug two 
CF devices at a time, just as with original ATA devices on a flat ribbon 
cable (from StarTech; it may not be available new anymore and I have it at 
a remote location, but I can check the P/N when I'm back at it or perhaps 
track down the original invoice in my e-mail archives if that would really 
help you).

 Of course you can bridge such an adapter to SATA or USB or whatever, just 
as with a genuine ATA device, so you should be able to wire it to a modern 
machine pretty easily.  But actual PATA adapters for PCIe used to be made 
too as I have a couple myself that I bought not so long ago so as not to 
be stuck with vintage hardware for data copying involving a PATA device, 
so tracking down one being sold shouldn't be a big deal yet.

 You might be able to track down an actual hard drive in the CF form 
factor too (branded Microdrive by IBM IIRC, a 1.8" device), though the 
choice was rather limited.  I have one of those from Seagate at 2.5GB, 
extracted from a TomTom sat nav that I upgraded to solid-state CF of a 
larger size several years ago.  I used that dual CF adapter I mentioned 
above to copy data between the two storage devices.  Those true hard 
drives ought to be pretty much compatible with anything, as they're 
ordinary magnetic devices, just smaller:

/dev/hda:

CompactFlash ATA device
	Model Number:       ST625211CF                              
	Serial Number:      [...]
	Firmware Revision:  3.04    
Standards:
	Likely used: 6
Configuration:
	Logical		max	current
	cylinders	4845	4845
	heads		16	16
	sectors/track	63	63
	--
	CHS current addressable sectors:     4883760
	LBA    user addressable sectors:     4883760
	Logical/Physical Sector size:           512 bytes
	device size with M = 1024*1024:        2384 MBytes
	device size with M = 1000*1000:        2500 MBytes (2 GB)
	cache/buffer size  = 128 KBytes (type=DualPortCache)
Capabilities:
	LBA, IORDY(cannot be disabled)
	bytes avail on r/w long: 4
	Standby timer values: spec'd by Vendor
	R/W multiple sector transfer: Max = 16	Current = 16
	Advanced power management level: disabled
	Recommended acoustic management value: 128, current value: 128
	DMA: mdma0 mdma1 *mdma2 udma0 udma1 *udma2 (?)
	     Cycle time: min=120ns recommended=120ns
	PIO: pio0 pio1 pio2 pio3 pio4 
	     Cycle time: no flow control=120ns  IORDY flow control=120ns
Commands/features:
	Enabled	Supported:
	   *	SMART feature set
	   *	Power Management feature set
	    	Write cache
	   *	Look-ahead
	   *	WRITE_BUFFER command
	   *	READ_BUFFER command
	   *	NOP cmd
	   *	CFA feature set
	    	Advanced Power Management feature set
	   *	Mandatory FLUSH_CACHE
	   *	CFA Power Level 1  (max 330mA)
HW reset results:
	CBLID- below Vih
	Device num = 0 determined by CSEL
Integrity word not set (found 0x0000, expected 0x1ca5)

> Is there anyway to add LBA mode to this machine? A new BIOS? A new ISA card? 

 You might be able to chase one of those sophisticated cards that I 
mentioned, which obviously had their own expansion BIOS hooking up into 
the PC BIOS.  I don't know though how common they are these days on the 
second-hand market.  Some old hardware seems to be unobtainium, almost 
never if at all surfacing, while other is ubiquitous.  I don't know why.

 I wouldn't bet on a PC BIOS upgrade for such a specialised machine.  They 
were supposed to be used in their supported vendor-provided configuration, 
so what would be a functional firmware upgrade good for?  A critical bug 
fix is another matter, but that would not add such a major feature as LBA 
support.

> Or am I better off considering a new motherboard altogether? Maybe more 
> of a project than I was hoping for...

 Another possibility would be a SCSI host adapter.  They have always come 
with their own expansion BIOS, so any limitations of the base machine's PC 
BIOS are not relevant.  I reckon there have been SD to SCSI adapters 
available.

> I guess a possible solution might be IDE-CF card for the 486 and maybe a 
> corresponding USB-CF for my daily PC for file transfer?

 As I noted above I think an IDE-CF adapter is probably the easiest option 
and you can use it both with your intended machine and with any other as 
well.  No need for a separate USB-CF piece to transfer data unless you 
want that too, that is.

 HTH,

  Maciej


More information about the cctalk mailing list