Home/Support/Support Forum/Compiled Aplication size problems
Welcome to Digi Forum, where you can ask questions and receive answers from other members of the community.

Compiled Aplication size problems

0 votes

I am using NetOS 7.4.1 and Eclipse on the Digi ME.

My application has now grown so that the compiled size is over 2M as shown below.

Compressing image.uncompressed to image.compressed
Using LZSS Encoder/Decode (v2)

Input bytes: 2248296
Output bytes: 925196
Compression ratio: 59%
Build complete for project Size_test

Initially this caused the linker to provide an error about overlapping segments. I solved this by increasing MAX_CODE_SIZE to 3M in bsp/7_4/connectem/customize.ldr. This removes the error from the linker and I can now run the application under the debugger.

However once I load this image into flash the system fails to boot at all. I guess that there is some other setting that also need changing when MAX_CODE_SIZE changes, but I have not managed to decode the cryptic comments to work out what to change.

Any help sincerely appreciated
asked Apr 1, 2009 in NET+OS by rdeabill Community Contributor (142 points)

Please log in or register to answer this question.

2 Answers

0 votes
Take a look at the "MaxFileSize" in bootldr.dat. I believe this is the max file size for the image.bin file. Also take a look at the "ramAddress" in blbootldr.dat. This is the location in ram that the bootloader gets decompressed to and run from. The default "ramAddress" is 0x204000. Since your application size is 2248296 (0x224E68) bytes, when the bootloader decompresses the application firmware into ram, it will overwrite the bootloader itself. You need to increase the "ramAddress" so to a value greater than the application size.
answered Apr 2, 2009 by fyicc New to the Community (18 points)
0 votes

Thanks for that.

I have now got it working with MAX_CODE_SIZE at 3M in customixe.ldr and by changing "ramAddress" in blbootldr.dat to 0x304000. MaxFileSize is set to 0x3a0000 so I left it as it was.

It then needs a Release build to generate the bootlader (rom.bin) and once this is downloaded it all seems to work
answered Apr 2, 2009 by rdeabill Community Contributor (142 points)