version 1.7, 1994/07/08 15:00:55
|
version 1.8, 1994/07/13 19:21:04
|
Line 112 int go_forth(int *image, int stack, Cell
|
Line 112 int go_forth(int *image, int stack, Cell
|
Address lp=(Address)((void *)fp-image[2]); |
Address lp=(Address)((void *)fp-image[2]); |
Cell* sp=(Cell*)((void *)lp-image[2]); |
Cell* sp=(Cell*)((void *)lp-image[2]); |
Cell* ip=(Cell*)(image[3]); |
Cell* ip=(Cell*)(image[3]); |
|
int throw_code; |
|
|
throw_ip = (Xt *)(image[4]); |
throw_ip = (Xt *)(image[4]); |
for(;stack>0;stack--) |
for(;stack>0;stack--) |
Line 119 int go_forth(int *image, int stack, Cell
|
Line 120 int go_forth(int *image, int stack, Cell
|
|
|
install_signal_handlers(); /* right place? */ |
install_signal_handlers(); /* right place? */ |
|
|
|
if ((throw_code=setjmp(throw_jmp_buf))) { |
|
static Cell signal_data_stack[8]; |
|
static Cell signal_return_stack[8]; |
|
|
|
signal_data_stack[7]=throw_code; |
|
|
|
return((int)engine(image[4],signal_data_stack+7, |
|
signal_return_stack+8,0,0)); |
|
} |
|
|
return((int)engine(ip,sp,rp,fp,lp)); |
return((int)engine(ip,sp,rp,fp,lp)); |
} |
} |
|
|