Bob Ammerman [rammerman at prodigy.net] of RAm Systems says
The PIC18Cxx2 chips contain quite a few nice new features. One of the neatest is programmable access to the stack. This feature allows many powerful tricks.Notes:
- this code has _NOT_ been tested!
- all multi-byte values are little-endian
- I assume the code space never exceeds 16 bits worth (which it never will on the 242, 252, 442 or 452 chips).
Function pointers (like in "C") CBLOCK FUNCPTR:2 ; Address of function to be called ENDC movlw low(funca) movwf FUNCPTR,A movlw high(funca) movwf FUNCPTR+1,A . . rcall call_func ; Calls funca xxx: . . bra ..whereever.. call_func: push ; Make room on call stack movf FUNCPTR,W,A movwf TOSL,A movf FUNCPTR+1,W,A movwf TOSH,A return funca: . . return ; returns to "xxx:", above
Comments: