Anyone considered bridging to the SD with a
http://dosonchip.com/ ?
Alternatively, the partition idea.
Any PC OS will recognise multiple partitions on a usb mass storage device.
To the OS, there is no fundamental difference between a USB flash drive and a USB to SATA device connected to a harddrive.
They are both USB Mass Storage class devices. It's extremely rare to have a NON-USB flashcard drive, even internal ones on desktop PCs are connected via USB.
Some linux based netbooks with SDIO are exceptions to this rule.
Disks can contain four primary partitions, or three primary partitions and an extended partition to act as a container for further filesystems.
http://en.wikipedia.org/wiki/Master_boot_recordThe MBR is 512 bytes long. It is always the first sector on disk, or Sector 0.
It defines the partition table and has an magic number to identify the end of it (0xAA55).
I would suggest an 8MB raw partition at the beginning of the device, followed by a FAT filesystem partition filling the rest of the device.
Contained within this 8MB, would be:
A signature (0x55 0x5A 0x45 0x42 0x4F 0x58) (UZEBOX)followed by a configuration table, and padded to 512 bytes. This would be Sector 1.
Sector 2-10: Boot code.
Sector 10-100: FAT12/16/32 filesystem support code
Sector 100+: Menu system
This would be the easiest to bootstrap all you would need for the amtel while keeping a minimal amount of code in it's flash:
Verify_Sector_1_Signature(Load_Sector_2_From_Mass_Storage(dev.storage.mass))
Initial formatting of a card would occur from a PC program that would verify the existence of a completely empty FAT filesystem on a card (to prevent data loss), write a new MBR & partition table, Write the 8MB Raw partition, and ask the host OS to format the new second partition on the device with the FAT filesystem.
Also, remember, there is a whole boatload of SD-connected devices, from cameras to wifi adapters.
http://en.wikipedia.org/wiki/Secure_Digital_card#SDIO"SDIO cards are fully compatible with SD Memory Card host controller (including mechanical, electrical, power, signaling and software). When an SDIO card is inserted into a non SDIO-aware host, it will cause no physical damage or disruption to device or host controller. SPI bus topology is mandatory for SDIO, unlike SD Memory. Most of the SD Memory commands are not supported in SDIO. SDIO cards can contain 8 separate logical cards, though at the moment this is at most a memory and IO function."
Good luck, hope this is helpful!