Modifying the .bib File to Produce a Downloadable Image (Windows Embedded CE 6.0)

1/5/2010

In the boot loader development process, you must create an Eboot.bin file that can be downloaded to flash memory by modifying the .bib file to produce an Eboot.bin file. You do this after you have created a test .bin file and verified that the download of the file works.

Note

Eboot.bin is identical to Eboot.bix, except that Eboot.bix is compressed.

For information about creating a test .bin file for download, see Creating a Test .bin File for Download.

For information about verifying that the download of the file works, see Verifying .bin File Download.

To modify the .bib file to produce an image that will download to flash memory

  1. Create a backup copy of the .bib file.

    Note

    You can use the backup copy of the .bib file if you need to build an .nb0 image for flashing through JTAG.

  2. Modify the .bib file by adding the following code to the file.

    MEMORY
        DRV_GLB  A0008000   00001000    RESERVED   ; Driver globals; 4 KB is sufficient.
        EDBG     A0010000   00020000    RESERVED   ; EthDbg buffers
    
        EBOOT    A0030000   00020000    RAMIMAGE   ; Set aside 128 KB for loader; finalize later.
        RAM      A0050000   00010000    RAM        ; Free RAM; finalize later.
    
        FCACHE   A0060000   01FA0000    RESERVED   ; Flash cache (used to store image before flashing).
    
    CONFIG
        COMPRESSION=OFF
        PROFILE=OFF
        KERNELFIXUPS=ON
    
        ;
        ; Including a ROMOFFSET produces a .bin file suitable for download from 
        ; Platform Builder to flash. ROMOFFSET must be large enough that the 
        ; base address of Eboot wraps around to 0x00000000 (assuming your flash is 
        ; mapped at this address, and the CPU fetches code from 0x00000000 
        ; after reset).
        ;
        ; EBOOT      +  ROMOFFSET   = (address to download .bin to)
        ;
        ; 0xA0030000 +  0x5FFD0000  = 0x00000000 (download to flash)
        ;
        ; In other words, the run-time address will be in RAM at 0xA0010000, but the 
        ; .bin header will cause the image to be downloaded to flash. Eboot must 
        ; relocate itself from flash to RAM at reset.
        ;
        ; !!Comment the following command out to build a .nb0 raw image file (for JTAG-flashing)!!
        ;
    ;    ROMOFFSET=5FFD0000
    
        ;
        ; These configuration options cause the JTAG-flashable .nb0 file to be generated.
        ; Because Eboot is linked to execute from RAM, these must match the 
        ; EBOOT RAMIMAGE section.
        ;
        ; !!These fields are mutually exclusive with ROMOFFSET!!
        ; !!Comment the following commands out to build a .bin file (for download from PB)!!
        ;
        ROMSTART=A0030000
        ROMWIDTH=32
        ROMSIZE=40000
    
    MODULES
    ;   Name            Path                                            Memory Type
    ;   --------------  ----------------------------------------------  -----------
        nk.exe          $(_TARGETPLATROOT)\target\$(_TGTCPU)\$(WINCEDEBUG)\Eboot.exe   EBOOT
    

See Also

Tasks

How to Develop a Boot Loader