Image Map Image Map
Page 1 of 2 12 LastLast
Results 1 to 10 of 11

Thread: How to get a system to boot from a compact flash card?

  1. #1

    Question How to get a system to boot from a compact flash card?

    I have a Toshiba Tecra 510CDT.

    This thing is absolutely perfect for my purpose...playing old games.

    I have Debian 3.0 running on it, and I can run Quake 1 using svgalib, without x.org.

    I also have a PCMCIA ethernet card and I can ssh with it, surf the internet with w3m, chat on irc, edit files with vim, compile code with gcc, everything I need Honestly I could use it as a workstation at work if I wanted.

    I can also run lots of old dos games in FreeDOS.

    My only problem: my 2 gig spinning disk is starting to die.

    I dumped the contents to my modern Linux desktop with dd, and then again to a 16 gig cf card.

    However, the system will not boot from the cf card.

    The bios is very rudimentary. No place to enter cylinder info, etc, just boot order selection and that's it.

    I know for a fact that these systems can use more than 2 gigs in a disk:

    http://www.diaspoir.net/blog/mt/2004...ra_510cdt.html

    I have tried writing my Debian 3.0 image back to the spinning disk with dd, and it boots fine. I have also tried writing the freedos usb installer image to both the spinning disk and the cf. Boots fine with both from the spinning disk, won't boot either with the CF.

    I have tried two different CF to 2.5" adapters also.

    So...perhaps I can flash my bios with XTIDE? Or perhaps the CF card needs some sort of special initialization? I'm open to try anything here.

    The Tecra has a CD-ROM drive but it won't boot from it. I also have a PCMCIA floppy drive for it but it won't boot from that either. So looks like I'm stuck with just dd and a single hard drive here. (Which works for installing Linux and FreeDOS, but only to a spinning disk)

    Thank you!

  2. #2

    Default

    Try to boot DOS from a floppy disk with the CF inserted and check the geometry reported by the BIOS (MSD can show it). Then, FDISK a small partition (say, 10 MB) and FORMAT/S from that same system and try to boot. If it boots, you should be able to use Ontrack Disk Manager or some other drive overlay software for the drive.

    I have a similar problem with a Toshiba T4600C, where the BIOS does not detect my drive correctly. The Disk Manager allows me to use the complete disk, also with Linux 2.4 (I think the support was removed in later 2.6 kernels).

    Also, how does "does not boot" manifest? BIOS does recognize the disk? "Insert system disk and press a key"? "NO ROM BASIC FOUND"?

    PS: I just saw that you can't boot from floppy. It should be possible to squeeze a tiny boot sector just showing the geometry into the first sector on disk. Alternatively, try installing the XFDISK boot manager onto the drive - if the menu appears, you have a good chance. Also, it allows booting from floppy, which may work with your PCMCIA drive.

  3. #3
    Join Date
    Mar 2013
    Location
    Chaffee, MO
    Posts
    1,203

    Default

    advisorability,
    Why don't you get a couple of the Hitachi Micro Drives (4GB or 6GB on Ebay) and partition them ths same as your dd image.
    Then use dd to write your image to the Microdrive, and see if it boots.

    I use them versus the CF cards and have had good luck.

    Larry

  4. #4

    Default

    Or get a DOM -- no moving parts.
    PM me if you're looking for 3" or 5" floppy disks. EMail For everything else, Take Another Step

  5. #5
    Join Date
    Jan 2007
    Location
    Pacific Northwest, USA
    Posts
    32,231
    Blog Entries
    18

    Default

    One issue with the Hitachi micro drives is that they come in two flavors--one with the "removable" flag set in the ATA "IDENTIFY" results (bit 7, word 0) and the other as "non-removable". While this doesn't matter for older Windows variants, it starts to matter with XP and later. XP won't install to a removable drive, nor will it allow a paging file to reside on a removable drive. Some workarounds. Maybe not applicable in this case, but it's something to tuck into your bookmarks for later.

  6. #6

    Default

    Quote Originally Posted by Svenska View Post
    Try to boot DOS from a floppy disk with the CF inserted and check the geometry reported by the BIOS (MSD can show it). Then, FDISK a small partition (say, 10 MB) and FORMAT/S from that same system and try to boot. If it boots, you should be able to use Ontrack Disk Manager or some other drive overlay software for the drive.

    I have a similar problem with a Toshiba T4600C, where the BIOS does not detect my drive correctly. The Disk Manager allows me to use the complete disk, also with Linux 2.4 (I think the support was removed in later 2.6 kernels).

    Also, how does "does not boot" manifest? BIOS does recognize the disk? "Insert system disk and press a key"? "NO ROM BASIC FOUND"?

    PS: I just saw that you can't boot from floppy. It should be possible to squeeze a tiny boot sector just showing the geometry into the first sector on disk. Alternatively, try installing the XFDISK boot manager onto the drive - if the menu appears, you have a good chance. Also, it allows booting from floppy, which may work with your PCMCIA drive.
    Thank you for the help!

    Yes, it just says:
    "Insert system disk and press a key"

    Is it possible to use fdisk or cfdisk from Linux to create that small partition and do a FORMAT/S or similar?

    Or perhaps (from my linux desktop) I can create an image file , boot from freedos in virtualbox, partition this image file with dos fdisk, do FORMAT/S, then from my Linux desktop write it to the CF card with dd? Would that work?

  7. #7
    Join Date
    Sep 2008
    Location
    SE MI
    Posts
    4,127
    Blog Entries
    6

    Default

    You didn't give the specs for your CF. Try this on the CF:

    1) boot with a system floppy
    2) FDISK /MBR
    3) FORMAT X /S (where x is your HD)

    Question: Does the system see the CF when you boot from the floppy?
    Surely not everyone was Kung-fu fighting

  8. #8

    Default

    Quote Originally Posted by advisorability View Post
    Yes, it just says:
    "Insert system disk and press a key"
    That means that the BIOS was able to read and execute the MBR, the MBR successfully loaded the DOS boot code, and the boot code failed to load the system files. Probably due to an invalid geometry.

    Quote Originally Posted by advisorability View Post
    Is it possible to use fdisk or cfdisk from Linux to create that small partition and do a FORMAT/S or similar?
    Yes, but it is probably not worth it.

    Quote Originally Posted by advisorability View Post
    Or perhaps (from my linux desktop) I can create an image file , boot from freedos in virtualbox, partition this image file with dos fdisk, do FORMAT/S, then from my Linux desktop write it to the CF card with dd? Would that work?
    The important thing is that the geometry used in the partition table matches the geometry used in the FAT file system, and it must match the geometry used by the system BIOS on the target machine. Which means that you have to figure out what the BIOS thinks.

    If you know what geometry to use, you can easily force some emulators to use that specific geometry (Qemu used to support "-hdachs" for this purpose, but PCem might be better for this nowadays). If you are really desperate, you can try different combinations (the number of cylinders or tracks does not matter, so just iterate the heads between 1 and 16, and the sectors/track between 1 and 63; start with 17 or 34 sectors/track - do not exceed the disk capacity and use e.g. a 10 MB partition). Just use FORMAT/S and copy MSD.EXE to the disk, no other files.

  9. #9
    Join Date
    Apr 2015
    Location
    Austin, Texas
    Posts
    1,640

    Default

    I've found that many older systems require CHS addressing to work, which is a problem with flash media because it uses LBA. On systems where you can enter CHS information manually, you can usually fudge the numbers to get close to the capacity of the flash media and it will generally work.

    Unfortunately, it may be impossible to make a bootable flash media to replace the main hard drive. You may be able to try something like the PLOP boot loader on a floppy disk in the drive and boot to it and have it load whatever OS you have on the flash memory used as a hard drive.

    A possible workaround is some DOM modules (disk on module) have CHS emulation that the BIOS can detect and use, and those generally work. I have a small 256M DOM which has CHS emulation and works fine on even my really old systems.

  10. #10

    Default

    Quote Originally Posted by GiGaBiTe View Post
    I've found that many older systems require CHS addressing to work, which is a problem with flash media because it uses LBA. On systems where you can enter CHS information manually, you can usually fudge the numbers to get close to the capacity of the flash media and it will generally work.
    Generally, IDE devices support some form of CHS (geometry) adressing. LBA was introduced long after CHS, and while it is the better option, compatibility issues somewhat mandate CHS support. So the main issue is figuring out the geometry used by the BIOS - without being able to boot from floppy.

    Quote Originally Posted by GiGaBiTe View Post
    Unfortunately, it may be impossible to make a bootable flash media to replace the main hard drive.
    In my understanding, this doesn't seem to be the case here. But that depends on how accurate the error message was written down.

Tags for this Thread

Bookmarks

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •