When I create a hex file for a C file the addresses are not in order. Is there an option in uVision to make sure they are in order? The addresses are fine when I use an assembly file.
As Jon said, the Intel Hex format makes no requirement about the ordering of records. You might want to review this discussion: http://www.8052.com/forum/read.phtml?id=12160
If you want to sort a HEX file, take a look at the following knowledgebase article: http://www.keil.com/support/docs/1236.htm Jon
I just did a lottle research and found a cool utility called the HEX Workshop. You can download an evaluation version with a 30-day evaluation period. This program does a bunch of cool stuff. * It imports Intel HEX and Motorola S-Record Files * It exports Intel HEX-80, HEX-286, and HEX-386 files * It exports Motorols S-Record files * It creates BINARY files * It can create a C file with the data entered into an array. This is kinda cool if you create fonts for an LCD panel or other similar stuff. * Oh yeah, it sorts Intel HEX files, as well. Take a look at the following knowledgebase article for more info: http://www.keil.com/support/docs/2217.htm Jon
I have a HexSort Utility to sort Intel Hex files. It takes unsorted Hex File, Sorts and then saves with a new name. If anybudy need it. email me at roboconsystems@yahoo.com. Its 100% free and more user friendly than HexWorkshop.
Or a simple batch file containing:
sort /+4 %1 | sed -e "/:000000/h" -e "/:000000/d" -e "$G"
SRecord is another useful utility for manipulating flash/PROM programmer files in a variety of formats. See http://srecord.sourceforge.net
horse and cart. Is it not putting the cart before the horse to change a file that adhere to the standard in order to use equipment that does not adhere to the standard. If a "programmer" (in quotes, because calling it that is an insult to other devices with that name) can not handle .hex files that adhere to the standard, but do not go beyond, then the programmer should be fixed or trashed, not the file sorted. Every extra step you add to the process makes failure more likely. Erik