	.TITLE	CTRL/C
; DAVID	R.WARNER,JR	ONU
;			COLL OF LAW	AUG 80
;
; UTILITY:	CTRL/C TRAP HANDLER
; ENTRY:	NO ARGS
; EXIT:		NO ARGS -- JUMP TO LSPXT
; ERRORS:	NONE
; CALLS:	NONE
;
; NOTE:		THIS ROUTINE IS IMPLEMENTED UNDER RSTS TO FORCE
;		AN EXIT THROUGH LISP RATHER THAN DESTRUCTIVE ABORT
;		IF CTRL/C IS TYPED
;
	.GLOBL	CTRLC,LSPXT
CTRLC:	.PRIV
	EMT + ^O 26		; .TTRST -- RESET CTRL/O
	MOV	CCSTOR,SP	; COLLAPSE STACK
	MOV	CCSTOR + 2,R0	; RESTORE R0 TO VALUE AT FIRST CALL TO MAINLOOP
	MOV	CCSTOR + 4,R1	; RESTORE R1 		"
	MOV	CCSTOR + 6,R2	; RESTORE R2		"
	MOV	CCSTOR + 10,R3	; RESTORE R3		"
	MOV	CCSTOR + 12,R4	; RESTORE R4		"
	MOV 	CCSTOR + 14,R5	; RESTORE R5		"
	JMP	LSPXT
	.NLIST	BEX
ZCTRLC =.-CTRLC
	.PSECT	DATAB
CCSTOR::.WORD 0,0,0,0,0,0,0	; STORE SP & R0-R5  BEFORE 1ST CALL TO MAINLOOP
	.EVEN
	.LIST	BEX
	.END
