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

const far support in 8.06

I upgraded Keil C PK51 from 7.1 to 8.06, then my project can't be rebuilt, some functions are missing:
?C?ISTOPTR:
?C?CSTOPTR:
?C?LSTKOPTR:
?C?LSTOPTR:

Where can I find those functions?

I'm using M8051EW Extended Linker, "far" memory type support, Code banking, the banked const data are located in:
HCONST ( B0:0x4000-B0:0xFFFF, B8:0x4000-B8:0xFFFF, B9:0x4000-B9:0xFFFF, BA:0x4000-BA:0xFFFF, BC:0x4000-BC:0xFFFF,BD:0x4000-BD:0xFFFF,BE:0x4000-BE:0xFFFF, BF:0x4000-BF:0xFFFF)

Parents
  • Just sent the request.

    It seems the new compiler/linker added:
    ; ?C?CLDXPTR, ?C?CSTXPTR ; load/store BYTE (char) in extended memory *
    ; ?C?ILDXPTR, ?C?ISTXPTR ; load/store WORD (int) in extended memory *
    ; ?C?PLDXPTR, ?C?PSTXPTR ; load/store 3-BYTE PTR in extended memory *
    ; ?C?LLDXPTR, ?C?LSTXPTR ; load/store DWORD (long) in extended memory

    which are not required in Keil 7.X.

    I can find those sample functions in XBANKING.A51, but I can't find other new functions.

Reply
  • Just sent the request.

    It seems the new compiler/linker added:
    ; ?C?CLDXPTR, ?C?CSTXPTR ; load/store BYTE (char) in extended memory *
    ; ?C?ILDXPTR, ?C?ISTXPTR ; load/store WORD (int) in extended memory *
    ; ?C?PLDXPTR, ?C?PSTXPTR ; load/store 3-BYTE PTR in extended memory *
    ; ?C?LLDXPTR, ?C?LSTXPTR ; load/store DWORD (long) in extended memory

    which are not required in Keil 7.X.

    I can find those sample functions in XBANKING.A51, but I can't find other new functions.

Children