This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

CCS/UCD3138064: Using startup codes from CCS runtime libary

Part Number: UCD3138064

Tool/software: Code Composer Studio

 Currently we are using load.asm which did not support initialized variable for C environment. Some customers may not understand difference and their program may have trouble. Have we ever tried to use startup codes from CCS standard run-time library?   

  • Actually our normal load.asm does support auto-initialized variables for the C environment. 

    It's the code that starts with:

    ;*------------------------------------------------------
    ;* PERFORM AUTO-INITIALIZATION.  IF CINIT IS -1, THEN
    ;* THERE IS NONE.
    ;*------------------------------------------------------
    ;  BL $c_int00
    ;  BL $c_int00
     LDR r0, c_cinit

    We do leave this feature out in the bootloader load.asm, that may be what you see.  That should be the only place it is left out.  It's left out in the bootloader because we are trying to fit it into the 2K space.  There we also leave out things like going to user mode and initializing several of the stack values.

    Initially on the first UCD parts, I tried using the standard run time library.  It was very large, and by default included code for initializing not only full C, but also C++.

    I think it was several Kbytes.  I don't think it initialized all the stacks, either.  That was with CCS 3.3.  We haven't revisited it since. 

    Load.asm does leave out initialization for heap.  Heap didn't seem like a good idea for our relatively small RAM, and it still doesn't.