CW08 3.1 5.0 and 5.1 on S08GT60 - Compile link and debug Bootloader and Application code together

cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

CW08 3.1 5.0 and 5.1 on S08GT60 - Compile link and debug Bootloader and Application code together

Jump to solution
1,208 Views
jhaee
Contributor I

Hi,
I have an application in a HCS08GT60 and a bootloader as two separate targets in my CW project. The two outputs are then merged into one .sx (.s19) file for download to the target. This al works fine for me; however I would like to be able to debug the complete device with both application and bootloader. Code wise this is no problem since the code is in different sections of the flash. However with the RAM it is different the stack and static ram is located in overlapping sectors (the application needs the entire RAM). is it possible to make a link (linker file) that knows that the bootloader and the Application does not run at the same time and allows for the bootloaders ram and application ram to overlap?

CW08 3.1 5.0 and 5.1

--
Alban Edit: added CW version + target to message subject

Message Edited by Alban on 2007-03-29 12:01 PM

Labels (1)
Tags (1)
0 Kudos
1 Solution
317 Views
CompilerGuru
NXP Employee
NXP Employee
I see other problems in the setup of building the two parts of the application at once than the RAM sharing, for example runtime code used by the compiler could become shared too. Basically any global object could cause a unwanted dependency, having two apps avoids all such problems from the start.
I think for a loader/app setup, having two separately built elf files is the right setup.

If you want to try it anyway, the linker supports the PAGED segment type which can be used for multiple segments at the same address range, however PAGED segments are non initialized, just like NO_INIT. The only difference to NO_INIT is that for PAGED no overlapping is being checked.

Daniel

View solution in original post

0 Kudos
1 Reply
318 Views
CompilerGuru
NXP Employee
NXP Employee
I see other problems in the setup of building the two parts of the application at once than the RAM sharing, for example runtime code used by the compiler could become shared too. Basically any global object could cause a unwanted dependency, having two apps avoids all such problems from the start.
I think for a loader/app setup, having two separately built elf files is the right setup.

If you want to try it anyway, the linker supports the PAGED segment type which can be used for multiple segments at the same address range, however PAGED segments are non initialized, just like NO_INIT. The only difference to NO_INIT is that for PAGED no overlapping is being checked.

Daniel
0 Kudos