Shop OBEX P1 Docs P2 Docs Learn Events
Boot mechanism from SD card - ideas ?? — Parallax Forums

Boot mechanism from SD card - ideas ??

Cluso99Cluso99 Posts: 18,069
edited 2010-01-11 10:55 in Propeller 1
I am currently defining a boot mechanism for my RamBlade board. I have mentioned this previously.

I intend to use a small loader in eeprom that only knows the location (propeller pins) of the SD card (or microSD card). It will perform the following...
  1. The SD card will be checked for FAT16 (maybe also·FAT32 later)
    • If not found the propeller will stop
  2. The SD card will be searched for a filename "AUTOEXEC.BAT"
    • If AUTOEXEC.BAT is not found, continue at Step 5
  3. The first sector of AUTOEXEC.BAT will be read
    • It should contain a "filename.BIN" and·optional·parameters (filename = valid file name)
    • If a valid filename.BIN is not found, or the file does not exist, continue at Step 5
  4. The·binary file "filename.BIN" will be located
    • The file will be·loaded into hub ram
    • The parameters (32 bytes) will be loaded into hub ram at $7FE0
    • The prop will then execute the binary in hub ram
  5. Otherwise, the binary file "BOOTPROP.BIN" will be located, loaded into hub ram, and executed
  6. It "BOOTPROP.BIN" was not found, the propeller will stop

Why have I included some parameters? So that I can pass options such as...
  • If a serial port exists, what pins they are on, and baudrate
  • If a keyboard exists, what pin(s) they are on
  • If a video exists, what pin(s) they are on
  • Xtal frequency
I have a specific case in my RamBlade as the pins are not the normal serial P30/P31. I also want to be able to load files directly to the SD card from the PC, so that a USB or PropPlug is not required. Therefore, I have to be able to tell the prop via configuration parameters on the SD card, what to do. Obviously, the parameters will be specific to the binary being loaded.
I do not have the luxury of knowing what is attached to the RamBlade for I/O when the SD card is being loaded.
Are there any comments on this method? Any flaws? Does this sound like it is usable for other projects? Any suggestions (without unnecessarily complicating the boot proceedure)?

▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
Links to other interesting threads:

· Home of the MultiBladeProps: TriBlade,·RamBlade,·SixBlade, website
· Single Board Computer:·3 Propeller ICs·and a·TriBladeProp board (ZiCog Z80 Emulator)
· Prop Tools under Development or Completed (Index)
· Emulators: CPUs Z80 etc; Micros Altair etc;· Terminals·VT100 etc; (Index) ZiCog (Z80) , MoCog (6809)
· Search the Propeller forums·(uses advanced Google search)
My cruising website is: ·www.bluemagic.biz·· MultiBladeProp is: www.bluemagic.biz/cluso.htm

Comments

Sign In or Register to comment.