help,why my cf card can't boot?

my cf card works fine,but suddenly it can’t boot, before I fdisk the cf card to type79,but now it becames to nonqnx(255),I change it to type79 and dinit it,but it also can’t boot,why?I found the cyliber and head is different than before,why?

Bloody PCs!

It’s all because of the brain-dead CHS scheme adopted by early IDE/ATA devices and in particular the PC’s BIOS. I really don’t know what to recommend any more, there doesn’t seem to be any garantee that one BIOS will see it the same way as another, and then a particular OS is going to have it’s own way also.

To get it to work on a single setup you will have to know what the BIOS perceives the CHS layout is arranged as (This can be difficult if the BIOS menus don’t list such details). And then force QNX’s devb-eide driver to map it’s view to the same layout (With the parameter, disk translation=:) so that when you fdisk the disc you get a match.

That’ll setup the partition table with the same CHS number ranges as BIOS so that the bootloader will load the OS image from the correct blocks.

PS: Remember to erase the old partition table (fdisk -z /dev/???) when changing the geometry.

evanh,now I use one harddisk with qnx system to initial my cf card,as you said,I should “slay devb-eide” first,and then use restart it with disk option,but when I slay the devb-eide,I can’t start devb-eide,Is it right,please tell me how to do?by the way,can I change the heads and sectors in “fdisk”?

now my cf card is looked as “hd0”, heads is 16,sectors is 32,could you tell me how to map it ?

Don’t slay the first copy of devb-eide, that’ll stop your HDD and QNX. Only slay the second copy of devb-eide, that you have run for the CF card specifying a different ioport address and IRQ.

You can not do this if the IDE controller is mapped to the same ioports as the CF slot. You will have to use another boot device, eg: FDD, SCSI, or use a laptop or similar that has separate ioports.

Nope, fdisk doesn’t have control of the imaginary CHS totals for the disc, only the number of used cylinders.

I presume you got that from “fdisk /dev/hd0 info”. If so then it’s of no use.

Do you have any BIOS menus for setting the prefered geometry?

I get the info(heads and sectors) from BIOS menu,Could you tell me how apply it to CF card using devb-eide?

another CF card,I can’t delete the partition(dos and nonqnx),for I can delete them in fdisk and save,but when I reuse fdisk,they came back,why?

evanh,CF is OK when I format it using my digital camera.anyway,thanks a lot

Yep, windoze will usually straighten things up too. Good to see you got it booting.

What CHS totals are reported on the working card with “fdisk /dev/hd0 info”?