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