LC 22bit
6-122
LC 22bit Long Call
SYNTAX OPTIONS OPCODE OBJMODE RPT CYC
LC 22bit 0000 0000 10CC CCCC
CCCC CCCC CCCC CCCC
X − 4
Operands 22bit 22-bit program-address (0x00 0000 to 0x3F FFFF range)
Description Long function call. The return PC value is pushed onto the software stack,
pointed to by SP register, in two 16-bit operations. Next, the immediate 22-bit
destination address is loaded onto the PC:
temp(21:0) = PC + 2;
[SP] = temp(15:0);
SP = SP + 1;
[SP] = temp(21:16)
SP = SP + 1;
PC = 22bit;
Note: For more efficient function calls when operating with OBJMODE = 1, use the LCR and
LRETR instructions instead of the LC and LRET instructions.
Flags and
Modes
None
Repeat This instruction is not repeatable. If this instruction follows the RPT
instruction, it resets the repeat counter (RPTC) and executes only once.
Example
; Standard function call of FuncA:
LC FuncA ; Call FuncA, return address on stack
.
.
FuncA: ; Function A:
.
.
LRET ; Return from address on stack