;;; Copyright ARM Ltd 2001. All rights reserved.

;; Semihosting scatter file
;;


ROM_LOAD 0x8000
{
    ROM_EXEC 0x8000
    {
        initMMU.o (InitMMU, +FIRST)      ; Core initialisation inc TCM enable
        * (InRoot$$Sections)             ; All library sections that must be in a root region
                                         ; e.g. __main.o, __scatter*.o, * (Region$$Table)

;; in this example *(+RO) could be placed in this root region to avoid naming the root sections

        retarget.o (+RO)
    }

    RAM_Code +0
    {
        dhry_1.o (+RO)
        dhry_2.o (+RO)
        * (+RO)                          ; any remaining code inc C lib.
    }

    RAM_Data +0
    {
        * (+RW,+ZI)
    }

    HEAP +0 EMPTY 0x1000                 ; depending on application heap
    {                                    ; requirement, select size appropriately.
    }

    STACKS 0x40000 EMPTY -0x1000         ; place stack at 256KB
    {                                    ; depending on application stack
    }                                    ; requirement, select size appropriately.

    TTB 0x4000 UNINIT                    ; place translation table at 0x4000
    {
        TTB.o (+ZI)
    }
}

