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.
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