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.

Circular Addressing in Picolo 2035

Hello: I've not get a response for a while so I'm sending again the question. I tried to use your circular addressing mode with AMODE=1, as described in SPRU430e, section 5.6.3 page 5-23 but the compiler rejects it. The error we get is below: MOV ACC,*+XAR6(AR1%++) On this line we get an error [E0011] Not Expecting C2XLP addressing mode

  • Arye,

    There are two different operating modes in the C28x depending on the setting of the AMODE bit: c28 mode, and c2xlp mode.  The assembler has a couple of directives that you need to use to tell it which mode the assembly code that follows expects the processor to be in.  These are .c28_amode and .lp_amode (see the ASM Tools User's Guide, SPRU513E, p.84).  The circular addressing you are using requires c28 mode, so try putting a .c28_amode directive before the code in question.  Note that you (the code) are responsible for changing the AMODE bit in the processor if it needs to be changed.

    I kind of wonder why the assembler is seeing c2xlp mode in the first place unless you used a .lp_amode directive because the default is c28 mode.

    Regards,

    David