;---------------------------------------------
; PROGRAM TITLE:	HALT
;
; WRITTEN BY: Ray Penley
;
;USE THIS PROCEDURE ONLY FOR FATAL ERRORS OR TOTAL
;DISASTERS. NO FILES WILL BE CLOSED. RETURN IS TO THE
;CP/M CCP.
;
;DECLARE IN YOUR PASCAL PROGRAM AS:
;TYPE	MSTRING = STRING 255;
;	PROCEDURE HALT(MESSAGE: MSTRING); EXTERNAL;
;
;CALL AS:
;	HALT('Halted in procedure X');
;
	NAME HALT
	ENTRY HALT
HALT:
	ENTR	D,2,0
	LXI	H,1793
	PUSH	H
	LXI	B,256
	PUSH	B
	LXI	H,-256
	DADD	S
	SPHL
	XCHG
	PUSH	IX
	POP	H
	LXI	B,8
	DADD	B
	LXI	B,256
	LDIR
	LXI	B,260
	CALL	L109
;
	mvi c,0 ;CP/M code to restart
	call 5	;There is NO return from this call!
;
	EXIT	D,256

DIR
	LXI	B,260
	CALL	L109
;
	mvi c,0 ;CP/M code to restart
	call 5	;The