DSPRelated.com
Forums

3 ROM sections files

Started by Mario Imaguire February 26, 2008
Hi,

I have a .OUT and need to generate a 3 ROMs files:
1 - at 0x0000 = boot loader
2 - at 0x18000 = external code section 1
3 - at 0x28000 = external code section 2

=====================================
I am runing this batch for hex500, without success:
maqplas.out
-a
-memwidth 16
-map mapa_ext.txt

ROMS
{

FLASH1 : org = 00000h, len = 10000h, romwidth = 16
files = { rom_000.asc }

FLASH2 : org = 18000h, len = 08000h, romwidth = 16
files = { rom_1.asc}

FLASH3 : org = 28000h, len = 08000h, romwidth = 16
files = { rom_2.asc }

}

================================Thanks
Mario
Check Out Industry's First Single-Chip, Multi-Format, Real-Time HD Video Transcoding Solution for Commercial & Consumer End Equipment: www.ti.com/dm6467
Mario-

> I have a .OUT and need to generate a 3 ROMs files:
> 1 - at 0x0000 = boot loader
> 2 - at 0x18000 = external code section 1
> 3 - at 0x28000 = external code section 2
>
> =====================================>
> I am runing this batch for hex500, without success:

Please define "without success". What is a specific problem you are seeing other than "it doesn't work"? Is one of
the sections not loaded correctly? How did you test / check this?

One trick is to start by loading the smallest possible piece of .asm code that does nothing more than a dummy loop.
Don't include any C code. Then after Flash boot, you can connect CCS / JTAG, do a "load symbols only", and check to
see where the program counter is; i.e. whether this loop is running or not. If not then the issue is your bootloader
and you can focus on that.

-Jeff

> maqplas.out
> -a
> -memwidth 16
> -map mapa_ext.txt
>
> ROMS
> {
>
> FLASH1 : org = 00000h, len = 10000h, romwidth = 16
> files = { rom_000.asc }
>
> FLASH2 : org = 18000h, len = 08000h, romwidth = 16
> files = { rom_1.asc}
>
> FLASH3 : org = 28000h, len = 08000h, romwidth = 16
> files = { rom_2.asc }
>
> }
>
> ================================> Thanks
> Mario

Check Out Industry's First Single-Chip, Multi-Format, Real-Time HD Video Transcoding Solution for Commercial & Consumer End Equipment: www.ti.com/dm6467
Jeff,

When I use the following command file for hex500, no rom_1.asc and rom_2.asc are generated:
===============================maqplas.out
-a
-boot
-bootorg PARALLEL
-memwidth 16
-map mapa_boot.txt

ROMS
{
FLASH1 : org = 00000h, len = 10000h, romwidth = 16
files = { rom_00000.asc }
FLASH2 : org = 18000h, len = 08000h, romwidth = 16
files = { rom_1.asc }
FLASH3 : org = 28000h, len = 08000h, romwidth = 16
files = { rom_2.asc }
}
================================
But if I use 2 command files, all 3 files are generated:
== command 1 =======================maqplas.out
-a
-boot
-bootorg PARALLEL
-memwidth 16
-map mapa_boot.txt

ROMS
{
FLASH1 : org = 00000h, len = 10000h, romwidth = 16
files = { rom_00000.asc }
}
================================== command 2 =======================maqplas.out
-a
-memwidth 16
-map mapa_ext.txt

ROMS
{
FLASH2 : org = 18000h, len = 08000h, romwidth = 16
files = { rom_1.asc }
FLASH3 : org = 28000h, len = 08000h, romwidth = 16
files = { rom_2.asc }
}
====================================
Thanx,
Mario

Check Out Industry's First Single-Chip, Multi-Format, Real-Time HD Video Transcoding Solution for Commercial & Consumer End Equipment: www.ti.com/dm6467
Mario-

Well, not sure. It could possibly be a bug in hex500, or there could be a valid
documented or undocumented reason, for example when bootloader parameters are invoked
then only one output file is created.

In any case, can you not use your current output? My experience has been that ROM
files in various ASCII formats (.s, .jed etc) are fairly easy to deal with, with each
line standing on its own. We've always been able to add lines, append files
together, etc. as long we followed formatting conventions, last-line termination,
etc. Did you try this?

-Jeff
> When I use the following command file for hex500, no rom_1.asc and rom_2.asc are generated:
> ===============================> maqplas.out
> -a
> -boot
> -bootorg PARALLEL
> -memwidth 16
> -map mapa_boot.txt
>
> ROMS
> {
> FLASH1 : org = 00000h, len = 10000h, romwidth = 16
> files = { rom_00000.asc }
> FLASH2 : org = 18000h, len = 08000h, romwidth = 16
> files = { rom_1.asc }
> FLASH3 : org = 28000h, len = 08000h, romwidth = 16
> files = { rom_2.asc }
> }
> ================================> But if I use 2 command files, all 3 files are generated:
> == command 1 =======================> maqplas.out
> -a
> -boot
> -bootorg PARALLEL
> -memwidth 16
> -map mapa_boot.txt
>
> ROMS
> {
> FLASH1 : org = 00000h, len = 10000h, romwidth = 16
> files = { rom_00000.asc }
> }
> ================================> == command 2 =======================> maqplas.out
> -a
> -memwidth 16
> -map mapa_ext.txt
>
> ROMS
> {
> FLASH2 : org = 18000h, len = 08000h, romwidth = 16
> files = { rom_1.asc }
> FLASH3 : org = 28000h, len = 08000h, romwidth = 16
> files = { rom_2.asc }
> }
> ====================================>
> Thanx,
> Mario
Check Out Industry's First Single-Chip, Multi-Format, Real-Time HD Video Transcoding Solution for Commercial & Consumer End Equipment: www.ti.com/dm6467