.TITLE ALPHAP ; JEFFREY KODOSKY ARL JUL76 ; ; SUBR ; ENTRY: 2 ARGS ; ; EXIT: 1 ARG ; 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