Binary Image Builder File (Windows CE 5.0)
A binary image builder (.bib) file defines which modules and files are included in a run-time image. Makeimg.exe uses .bib files to determine how to load modules and files into the memory of a target device.
The following table shows the major sections that a .bib file can contain.
|MEMORY||Defines the physical memory available, including starting address, size, and type of memory.
This section is in the Config.bib file, in the Platform\MYBSP\Files directory.
|CONFIG||Defines configuration options for Romimage.exe to customize its output. By default, this section is in the Config.bib file. However, you are not required to include a CONFIG section in a .bib file.|
|MODULES||Specifies the object modules to be loaded into areas of memory by Romimage.exe. Object modules that are not compressed in the MODULE section execute in place.|
|FILES||Reserves a section of memory for .lib files.|
The Platform.bib file defines
- The hardware modules and files, such as driver files, for the target device
- The modules and file entries for the run-time image, such as .exe files and waveform audio (.wav) files
The Config.bib file contains the MEMORY and CONFIG sections for the run-time image. The MEMORY section of Config.bib defines the memory table for the run-time image by specifying the name, address, size, and type of the MEMORY regions within the run-time image.
When updating either Platform.bib or Project.bib to include a file, specify the following items:
- The source and run-time image file name
- The region of the MEMORY section defined as RAMIMAGE type
Each run-time image has only one RAMIMAGE region.
- The file attributes in the run-time image
Use the Address and Size parameters in the memory table to define the section of memory devoted to RAM as well as ROM. The Address parameter specifies the address where the RAM section starts. Together, the Address and the Size parameters indicate the address where the RAM section ends.
The run-time image must be defined as RAMIMAGE type. The RAM section must be defined as RAM type.
The following illustration shows the relationship between the ROMSTART and ROMSIZE keywords and the memory table parameters for the run-time image section.
The .bin files contain information about the run-time image that the boot loader uses to boot the run-time image. The .bin files are organized into logical units called records and exist only in the RAMIMAGE section of memory.
The following code example shows an entry in Project.bib. In this example, if a user-defined environment variable, IMGINCLUDEAPPS, is defined before running Makeimg.exe, Makeimg.exe includes the MyApp1.exe input file as the MyApp.exe output file. It then loads the output file in a MEMORY region named NK as a file with system and hidden attributes.
MODULES ; Name Path Memory Type ; -------------- -------------------------------------- IF IMGINCLUDEAPPS myapp.exe $(_FLATRELEASEDIR)\myapp1.exe NK SH ENDIF
The following code example shows that if IMGNODEBUGGER is not defined, Makeimg.exe includes the Myproj.exe file and loads it in the NK MEMORY region as a system file.
IF IMGNODEBUGGER ! myproj.exe $(_FLATRELEASEDIR)\myproj.exe NK S ENDIF
For more information, see MEMORY Section.
To configure the .bib files, you must specify a data format for the run-time image. After you determine a data format, define this format in the CONFIG section of the Config.bib file for your run-time image. For information, see Run-Time Image Files and CONFIG Section.
Run-Time Image Configuration Files | Run-Time Image Files | | How to Configure and Build a Run-Time Image for a CEPC | How to Decrease Run-Time Image Size on a CEPC | Make Binary Image Tool | How to Create a Device Driver
Send Feedback on this topic to the authors