• Please review our updated Terms and Rules here

Compact Flash to IDE controller help

btrains

Member
Joined
May 6, 2012
Messages
26
So I have picked up a CF to IDE controller card that uses a floppy power plug. I have a 2 GB CF card plugged in. It is formatted as FAT. I could get my 486 to recognize it as a slave drive, and the BIOS auto detect the correct size aand information for the card.

I wasn't able to xcopy my C: drive to the flash card. It would give a write failure. I was able to use a Win 98 computer and plug the 486s HDD in as a slave to copy the contents over to the 98 PC. I was then able to recopy everything from the 98 PC to the CF Card. I plugged the CF adapter in as a single/master drive in the 486, and it sits there and does nothing. I've already changed the BIOS to recognize the CF drive as the only drive, but nothing happens.

I do not have a copy of DOS 6 or Win 3.1, so I can't do a new install. Is there anyway to trick this CF card into believeing it had a clean install put on it?
 
Many CF cards do not behave correctly as slaves. If you have two IDE channels, try putting the CF as a master on the second channel.

Also, if there are jumpers on the adapter, how do you have them set?
 
My motherboard uses an expansion card for IDE, floppy, COM, Printer, etc. It only has one 40 pin IDE slot, but uses a master/slave IDE cable. I have the CF card plugged into the master location on the IDE cable. The jumpers on the CF adapter are set as: 1. Master, 2. +3.0 volts, and 3. 40 pin IDE (has 44 pin IDE for laptops as well).
 
I've seen the same behavior with my 486's. The BIOS will auto-detect the drive (as if it knows how big it should be), but then in DOS, calls to format the CF drive, or write to it, will fail when the drive is more than 504 MB.

I do not have this issue on the affected 486 machines with CF cards that are 256 MB or less.
I also do not have this issue with the same CF card on other older machines that do BIOS translation to get to capacities over 504 MB.

You may want to check out XT-IDE Universal BIOS to act as a BIOS extension and allow your PC to use larger drive capacities. You'll either need a burned ROM of this BIOS and install it in a network card ROM-BIOS socket (if you have one). Alternatively, pearce_jj [look him up on here] has been working on a ROM card that just hosts BIOS extensions (and can be flashed with XT-IDE Universal BIOS).

As a last resort, you might be able to use drive-overlay software to get around this limit. This would be loaded in your config.sys file (if you can get DOS to load from the CF card) or if you are intending to boot from another drive / device.
 
few questions -

1. How did you copy the files? Did you make an image of the orginal drive and use that on the cf, or did you use xcopy etc...

2. Do you know the exact drive settings? Have you verified them on a more modern pc? Use auto settings, then after rebooting go back in and write down the settings. Put those same settings into the bios of the pc u wish to use the cf on. Don't rely on the earlier machine to detect it correctly.

3. Have you done an fdisk /mbr on the drive after formatting? First format with "/s" option, then fdisk with the "/mbr" option. Make sure to copy fdisk to the new drive first, and run it off that after formatting. It will save you from having to know the fixed disk number.

4. Are you using a 40 or 80 wire ide cable?

5. What format is it currently in, you say fat, but not what type, is it fat-16 or fat-32?

6. What model / brand CF are you using? Is it a sandisk? If so you will need the dma tool.

I use CF/ Microdrives in quite a few machines, and sometimes it can be a pain to get going but its worth the effort imho. If you need an image of a bootdisk send me a pm, ill whip one up with what you'll need on it. =)
 
Last edited:
Sorry it took so long to reply, busy few days. To answer in order:

1. I tried to xcopy on the 486 from C: to the cf card, but I would receive a "A serious disk error has occurred while writing to drive D:\. Press R to retry." And then it would sit there until I reset the computer. I had to manually remove the harddrive and place it in a Pentium II running Win98. I then had to drag and drop the entire HDD into a folder on the PIIs harddrive. Once I did that, I was able to swap the 486 HDD with the cf card and then xcopy the folder on the Win98 HDD onto my cf card. Upon installing the cf card back in the 486, the computer would sit idle and do nothing once past the memory test and BIOS screen.

As a side note, I've been running this 486s harddrive without a jumper because it will not boot up if the jumper is in the Master position. And it wont start DOS in slave. It will only function properly in either cable select or no jumper at all.

2. The cf card settings have been verified using a partition program on my Windows XP desktop. The BIOS settings for the original 486s drive are correct too, verified by the factory label on the drive itself.

3. I've tried to type fdisk /mbr, but nothing happens and a new prompt appears. The /s option is not valid for my version of fdisk.

4. This 486 uses 40 wire IDE. I have other 40 wire cables, as well as 80. Should I try putting 80 wire on the 486, or should I throw a 40 in the Pentium II and try initializing this cf card again on 40 wire?

5. This cf card has been formatted (several times now, by me) in the FAT16 system. It has a maximum storage of 1900 or so Mbytes.

6. This cf is a Transcend 2GB 133x card.
 
Whats the date of the BIOS? (should be on the bottom of the POST screen) I've seem some Phoenix BIOS allow funky CHS geometry to show a drive above 504MB, even in DOS. Despite that, it would fail to properly read/write to it without a BIOS card or drive overlay to provide it with real LBA translation. I have a 8GB Transcend x133 card and it works fine in a 486 with a SIIG I/O card with a translating BIOS chip.
 
Your 486 IO board will almost certainly be using 5V signalling, so set the CF card to 5V. As said many don't work properly as slaves.

I'd suggest making a DOS system disk (format /s then copy fdisk and format onto it too) and also extract this utility onto it. Next remove the HDD, set the CF cards as master, and boot from the floppy. Run wipedisk to clear off the first 128 sectors of the CF card - hopefully this will work. Then reboot, again from the floppy, and use fdisk then format /s. After that with a bit of luck the system will boot from the CF card :)

Hope that helps.
 
As a side note, I've been running this 486s harddrive without a jumper because it will not boot up if the jumper is in the Master position. And it wont start DOS in slave. It will only function properly in either cable select or no jumper at all.

3. I've tried to type fdisk /mbr, but nothing happens and a new prompt appears. The /s option is not valid for my version of fdisk.
For many drives the Master jumper means exactly that -- you need to have a Slave attached. WD drives are an exception, however. What type of drive do you have?

The /s option that twolazy referred to was for the format command, not the fdisk command. It puts the system files on the disk so that it is bootable. Of course you need to have that partition already setup as Primary/Active in fdisk.
 
My 486 is running with a Western Digital Caviar 1210.

Also, I wiped the partition on another computer, and reset the cf card as FAT16 with a 1900 MB size. I plugged it back into the 486, and ran "format d: /s" it was able to format the cf card but gave an insufficient memory warning and said it couldn't make an unformat disk. It then began to copy system files, but the "Attention: A serious disk error has occurred while writing to drive d:. Press r to retry" error came up.

I'm beginning to think I'm trying to do the impossible...

My BIOS are AMIBIOS from 11/11/92.
 
Last edited:
Here's my latest attempt.

I took the WD drive out of the 486, jumpered it as master, and placed it as master in my Pentium II. I placed the cf card in slave mode at the slave position in this PII. I was able to boot into DOS. I did a format /s and it copied the files over. Then I placed fdisk on this card. I plugged the cf card back in to the 486 as master, and it proclaimed operating system not found. So I went back to the PII, and did an xcopy /s /e. The entire drive was copied to the cf card.

After the xcopy, I was able to boot into DOS on this PII using the cf card only. It wouldn't start Win 3.1 though. It gave a garbled error message and booted back to the prompt (I'm assuming driver errors, or too fast a computer for 3.1 to play nice).

I plugged the cf card back into the 486, and it gave me all types of hard drive errors. It said error reading disk 1, and said press f1 prob continue. Obviously it didn't load or anything since my 486 just can't read my cf card. Is the card too fast? I've jumpered my 486 down to 20 MHz to be compatible with some old software I am using.

Also, one of the things that runs in the autoexec.bat is a DOS version of Norton Disk Doctor. It has never found problems with my WD drive, but since I've been messing around with this cf card, the cf card will (when I can get it to boot as a slave, or master - on the PII) give an error message that there are partitions no longer working, and then gives the option to fix them. So I do that, and it claims to fix them and requires a restart. I restart the computer and then it runs Disk Doctor again, which, once again finds the same screwed up partitions that it just claimed to fix.

I've really screwed something up now!
 
Last edited:
11/11/92 BIOS won't support a drive larger then 504MB. Unless something like EZ-Drive or Ontrack Disk Manager is installed, or you have one of those IDE LBA BIOS cards, the drive will NOT work properly in that 486.
 
So if I plug this cf card into a different computer, wipe it again, and build a partition of less than 504 Mb, and then do my xcopy dance, it may work?
 
Or an XTIDE or Universal 8-bit ISA ROM Boards or something of that nature. I suspected we would come to this conclusion for some time now. FDISKing that CF to a 504 mb partition would surely confirm this. You should try this, btrains, so you'll know for sure exactly what's up.
 
I tried formatting as a 502 MB drive. But I don't know the csh of the drive as a 502 MB drive. The BIOS still assumes it to be a 1900 MB drive.

None of these options are working. I am not comfortable with and have been advised against burning EEPROM chips or building XTIDE cards.
 
Hmm...will these values work? Got those by telling the Bochs Disk Image Creation tool to make a 502 MB disk.

cyl=1019
heads=16
sectors per track=63
total sectors=1027152
 
Back
Top