Reply by Michael Dunn December 11, 20072007-12-11
Hello Wim,

On 12/11/07, William C Bonner wrote:
>
> I know that similar topics have been asked about this in the recent
> past, but I was not able to find the information I wanted, either in the
> message thread or with web searching and searching the TI site directly.
>
> My current process for getting code updates into my flash is to compile
> it to a .out file with code composer studio, then use a program called
> DHex6x.exe to convert the .out file into a hex file. The DHex6x.exe
> program is a windows point and click program, and as such is a manual
> portion of my build process. I believe that I could be using the hex6x
> program directly as part of the toolset instead.
> (http://focus.ti.com/lit/ug/spru186p/spru186p.pdf) I'm using the intel
> hex file format to update my current system. Currently my entire project
> has several programs that reboot between themselves. I build three .out
> files, create three hex files with non overlapping flash regions
> specified, and then run a program that I wrote to combine the three hex
> files into a single hex file. My program also writes out the data in
> the hex files to a binary file format with accompanying XML and SHA
> signatures that I can upload to my device using zmodem, and have my
> zmodem receive program running on the DSP interpret and write to flash.
>
> My understanding is that the .out file is a COFF file. What I'd like to
> know is if there is a way to automate the conversion from COFF to what I
> can use on my DSP platform. I think I'm looking for C/C++ code that
> would allow me to interpret the three .out files directly and then write
> out a single .hex file or binary file.
The current TI '.out' file format appears to be basic COFF with DWARF debug
info added.
hex6x.exe should be able to create an ASCII-hex file [the current version
*may* be able to put it into binary format. At a minimum, you should be able
to generate 3 hex files, merge them, and then convert to binary.

Could you build your 3 projects as '.obj's and link them??

It is also feasible to parse the '.out' files yourself, if you are so
inclined [you get to pitch most of the info]. I haven't done it, but I know
some who have using the spru186 appendices and a binary viewer. I think
that hex6x was originally designed for this purpose.

mikedunn

I don't understand enough of what is happening in the Hex6x program
> currently. can someone point me to code, pseudo code, or documentation
> on what the Hex6x program is doing beyond what I've got from the spru186
> document?
>
> Thanks. Wim.

--
www.dsprelated.com/blogs-1/nf/Mike_Dunn.php
Reply by William C Bonner December 11, 20072007-12-11
I know that similar topics have been asked about this in the recent
past, but I was not able to find the information I wanted, either in the
message thread or with web searching and searching the TI site directly.

My current process for getting code updates into my flash is to compile
it to a .out file with code composer studio, then use a program called
DHex6x.exe to convert the .out file into a hex file. The DHex6x.exe
program is a windows point and click program, and as such is a manual
portion of my build process. I believe that I could be using the hex6x
program directly as part of the toolset instead.
(http://focus.ti.com/lit/ug/spru186p/spru186p.pdf) I'm using the intel
hex file format to update my current system. Currently my entire project
has several programs that reboot between themselves. I build three .out
files, create three hex files with non overlapping flash regions
specified, and then run a program that I wrote to combine the three hex
files into a single hex file. My program also writes out the data in
the hex files to a binary file format with accompanying XML and SHA
signatures that I can upload to my device using zmodem, and have my
zmodem receive program running on the DSP interpret and write to flash.

My understanding is that the .out file is a COFF file. What I'd like to
know is if there is a way to automate the conversion from COFF to what I
can use on my DSP platform. I think I'm looking for C/C++ code that
would allow me to interpret the three .out files directly and then write
out a single .hex file or binary file.

I don't understand enough of what is happening in the Hex6x program
currently. can someone point me to code, pseudo code, or documentation
on what the Hex6x program is doing beyond what I've got from the spru186
document?

Thanks. Wim.