perm filename CYCDRC.LAP[3,LMM] blob sn#037499 filedate 1973-04-22 generic text, type T, neo UTF8
(DEFPROP CYCDRCFNS (CYCDRCFNS SORTLN SRTLNA) VALUE) 

(LAP SORTLN SUBR) 
       (PUSH P (C 0. 0. (QUOTE NIL) 0.)) 
       (PUSH P (C 0. 0. (QUOTE NIL) 0.)) 
       (PUSH P (C 0. 0. (QUOTE NIL) 0.)) 
       (PUSH P (C 0. 0. (QUOTE NIL) 0.)) 
       (PUSH P (C 0. 0. (QUOTE NIL) 0.)) 
       (PUSH P (C 0. 0. (QUOTE NIL) 0.)) 
       (PUSH P (C 0. 0. (QUOTE NIL) 0.)) 
       (PUSH P (C 0. 0. (QUOTE NIL) 0.)) 
       (MOVEI 1. (QUOTE 1.)) 
       (MOVEM 1. -7. P) 
       (PUSH P (C 0. 0. (QUOTE NIL) 0.)) 
 TAG1  (MOVE 2. (SPECIAL NMX) S) 
       (MOVE 1. -8. P) 
       (CALL 2. (E *GREAT) S) 
       (JUMPN 1. TAG4) 
       (MOVE 1. -8. P) 
       (CALL 1. (E CONN) S) 
       (CALL 1. (E LENGTH) S) 
       (PUSH P 1.) 
       (MOVE 1. -9. P) 
       (CALL 1. (E TMP) S) 
       (POP P 1.) 
       (PUSHJ P NSTR) 
 TAG2 
 TAG3  (MOVEI 2. (QUOTE 1.)) 
       (MOVE 1. -8. P) 
       (CALL 2. (E *PLUS) S) 
       (MOVEM 1. -8. P) 
       (JRST 0. TAG1) 
 TAG4  (SUB P (C 1. 0. 1. 0.)) 
       (PUSH P (SPECIAL PATSELECT) S) 
       (PUSH P (C 0. 0. (QUOTE NIL) 0.)) 
 TAG5  (MOVE 1. -1. P) 
       (JUMPE 1. TAG8) 
       (HLRZ@ 1. -1. P) 
       (MOVEM 1. -9. P) 
       (HLRZ@ 1. 1.) 
       (CALL 1. (E TMP) S) 
       (MOVEI 1. (QUOTE 20.)) 
       (PUSHJ P NSTR) 
 TAG6 
 TAG7  (HRRZ@ 1. -1. P) 
       (MOVEM 1. -1. P) 
       (JRST 0. TAG5) 
 TAG8  (SUB P (C 2. 0. 2. 0.)) 
       (CLEARM 0. 0. P) 
       (MOVEI 2. (QUOTE 10.)) 
       (MOVE 1. (SPECIAL NMX) S) 
       (CALL 2. (E *TIMES) S) 
       (CLEARM 0. -5. P) 
       (MOVEM 1. -6. P) 
 TAG9  (MOVEI 1. (QUOTE 0.)) 
       (CLEARM 0. -3. P) 
       (MOVEM 1. -2. P) 
       (PUSH P (SPECIAL LINE) S) 
       (PUSH P (C 0. 0. (QUOTE NIL) 0.)) 
 TAG10 (MOVE 1. -1. P) 
       (JUMPE 1. TAG13) 
       (HLRZ@ 1. -1. P) 
       (MOVEM 1. -3. P) 
       (MOVE 2. -2. P) 
       (CALL 2. (E MEMBER) S) 
       (JUMPN 1. TAG12) 
       (HLRZ@ 1. -3. P) 
       (HLRZ@ 1. 1.) 
       (CALL 1. (E TMP) S) 
       (PUSH P 1.) 
       (HLRZ@ 1. -4. P) 
       (HRRZ@ 1. 1.) 
       (CALL 1. (E TMP) S) 
       (POP P 2.) 
       (CALL 2. (E *PLUS) S) 
       (MOVEM 1. -6. P) 
       (MOVE 2. -4. P) 
       (CALL 2. (E *GREAT) S) 
       (JUMPE 1. TAG33) 
       (MOVE 1. -6. P) 
       (MOVE 2. -3. P) 
       (MOVEM 1. -4. P) 
       (MOVEM 2. -5. P) 
 TAG33 
 TAG11 
 TAG12 (HRRZ@ 1. -1. P) 
       (MOVEM 1. -1. P) 
       (JRST 0. TAG10) 
 TAG13 (SUB P (C 2. 0. 2. 0.)) 
       (MOVE 1. -5. P) 
       (JUMPE 1. TAG35) 
       (MOVE 2. 1.) 
       (HLRZ@ 1. -3. P) 
       (HLRZ@ 1. 1.) 
       (CALL 2. (E MEMBER) S) 
       (JUMPN 1. TAG35) 
       (HLRZ@ 2. -3. P) 
       (HLRZ@ 2. 2.) 
       (HLRZ@ 1. -3. P) 
       (HRRZ@ 1. 1.) 
       (CALL 2. (E CONS) S) 
       (HRLM@ 1. -3. P) 
 TAG35 (MOVE 3. -6. P) 
       (MOVE 2. -5. P) 
       (HLRZ@ 1. -3. P) 
       (HLRZ@ 1. 1.) 
       (CALL 3. (E SRTLNA) S) 
       (MOVE 3. -6. P) 
       (MOVE 2. 1.) 
       (MOVEM 1. -5. P) 
       (HLRZ@ 1. -3. P) 
       (HRRZ@ 1. 1.) 
       (CALL 3. (E SRTLNA) S) 
       (MOVEI 2. (QUOTE -10.)) 
       (MOVEM 1. -5. P) 
       (MOVE 1. -6. P) 
       (CALL 2. (E *PLUS) S) 
       (MOVE 2. 0. P) 
       (MOVEM 1. -6. P) 
       (MOVE 1. -3. P) 
       (CALL 2. (E CONS) S) 
       (MOVEM 1. 0. P) 
       (CALL 1. (E LENGTH) S) 
       (MOVE 2. (SPECIAL LLN) S) 
       (CALL 2. (E *LESS) S) 
       (JUMPN 1. TAG9) 
       (MOVE 1. 0. P) 
       (CALL 1. (E REVERSE) S) 
       (MOVEM 1. (SPECIAL LINE) S) 
       (SUB P (C 8. 0. 8. 0.)) 
       (POPJ P) 
       NIL 

(LAP SRTLNA SUBR) 
       (PUSH P 1.) 
       (PUSH P 2.) 
       (PUSH P 3.) 
       (CALL 2. (E MEMBER) S) 
       (JUMPE 1. TAG5) 
       (MOVE 1. -1. P) 
       (JRST 0. TAG1) 
 TAG5  (MOVE 1. -2. P) 
       (CALL 1. (E TMP) S) 
       (MOVE 2. 0. P) 
       (CALL 2. (E *PLUS) S) 
       (PUSH P 1.) 
       (MOVE 1. -3. P) 
       (CALL 1. (E TMP) S) 
       (POP P 1.) 
       (PUSHJ P NSTR) 
       (MOVE 2. -1. P) 
       (MOVE 1. -2. P) 
       (CALL 2. (E CONS) S) 
 TAG1  (SUB P (C 3. 0. 3. 0.)) 
       (POPJ P) 
       NIL