This discussion has been locked.
You can no longer post new replies to this discussion. If you have a question you can start a new discussion

XE SROM sections

Hi,

I'm trying to use SROM sections on a XE164 as described in Keil application note APNT_138. The linker does its job relocating the sections (as noted in the listing file (*.m66), but I can't copy the code to RAM because the symbols the linker is supposed to generate apparently don't exist. I get the following linker errors:

linking...
*** ERROR L127: UNRESOLVED EXTERNAL SYMBOL
    SYMBOL:  _PR_BAGENT_l_
    MODULE:  .\obj.debug\SROM.obj (SROM)
*** ERROR L127: UNRESOLVED EXTERNAL SYMBOL
    SYMBOL:  _PR_BAGENT_s_
    MODULE:  .\obj.debug\SROM.obj (SROM)
*** ERROR L127: UNRESOLVED EXTERNAL SYMBOL
    SYMBOL:  _PR_BAGENT_t_
    MODULE:  .\obj.debug\SROM.obj (SROM)
[...]

"BAGENT" is the name of my user class. It is located in "User Sections" (uVision 3) as follows:

?PR?[filename]%BAGENT (0xe0f000)[!]

On the XE this location should be in PSRAM.

In "User Classes" SROM is defined as follows:

SROM(0xc90000,0xc9f000)

This should be within the topmost flash module of the XE.

Do I have to define something else to get the linker to generate the symbols?