	.TITLE	ALPHAP		
; JEFFREY KODOSKY	ARL	JUL76
;
; SUBR
; ENTRY:	2 ARGS		<ATOM1>;<ATOM2>
; EXIT:		1 ARG		<BOOL>
; ERRORS:	NONE
; CALLS:	NONE
; R2,R3 PRESERVED
	.GLOBL	ALPHAP,ZALPHAP,.T.
ALPHAP:	MOV	(R5)+,R0	;POP ARGS
	MOV	(R5)+,R1
	BIT	#2,(R0)+
	BNE	FALSE	;IGNORE CALL IF ARGS ARE NUMERIC
	BIT	#2,(R1)+
	BNE	FALSE	;OR LIST VALUED (RETURN FALSE)
	BIT	#3,@R0
	BEQ	FALSE
	BIT	#3,@R1
	BEQ	FALSE
	MOV	-(R0),R0
	MOV	-(R1),R1
ALPHA1:	CMP	2(R0),2(R1)
	BLT	TRUE
	BGT	FALSE
	MOV	@R0,R0
	MOV	@R1,R1
	BIC	#3,R1
	BEQ	FALSE	;IF SAME UP TO NOW BUT STRING2 ENDS THEN FALSE
	BIC	#3,R0
	BEQ	TRUE	;BUT IF STRING1 ENDS FIRST THEN TRUE
	BR	ALPHA1
TRUE:	MOV	.T.,-(R5)
	JMP	@-(R4)
FALSE:	CLR	-(R5)
	JMP	@-(R4)
ZALPHAP=.-ALPHAP
	.END
