We recommend to generate reset ()S12Z safety manual.
However, this is application problem, you can do anything you want.
Theoretically as common solution, keeping in mind that some registers can be write once, stack has some value I can:
1) Go to the start of the code _Startup();
see file Start12.c in the project:
__EXTERN_C void _Startup(void) {
__asm {
LD S, #__SEG_END_SSTACK-1 /* initialize SP */
Do not forget to define the function in the module where you call it from.
void _Startup(void);
2) Go to any function I want to continue. (good to think about stack.... asm LD S, #your value or re-initialization to the beginning value , asm LD S, #__SEG_END_SSTACK-1 /* initialize SP */)
3) Go to anywhere you want to continue asm JMP ..... still you have to think about consequences to previous process.
Best regards,
Ladislav