perm filename CYCDRJ.LAP[4,LMM] blob
sn#040787 filedate 1973-05-06 generic text, type T, neo UTF8
(DEFPROP CYCDRJFNS (CYCDRJFNS ISOMERS RING DRAW LABELLER DRAWS) VALUE)
(LAP ISOMERS SUBR)
(PUSH P (C 0. 0. (QUOTE NIL) 0.))
(PUSH P (C 0. 0. (QUOTE NIL) 0.))
TAG1 (MOVEI 1. (QUOTE CL?) S)
(CALL 1. (E PRINT) S)
(CALL 0. (E READ) S)
(MOVEM 1. 0. P)
(CALL 1. (E ATOM) S)
(JUMPE 1. TAG11)
(MOVEI 1. (QUOTE "THAT CAN'T BE RIGHT - ENTER A ") S)
(CALL 1. (E PRINC) S)
(JRST 0. TAG1)
TAG11 (PUSH P 0. P)
(PUSH P (C 0. 0. (QUOTE NIL) 0.))
(PUSH P (C 0. 0. (QUOTE NIL) 0.))
TAG2 (MOVE 1. -2. P)
(JUMPE 1. TAG5)
(HLRZ@ 1. -2. P)
(MOVEM 1. -1. P)
(CALL 1. (E ATOM) S)
(JUMPN 1. TAG20)
(HRRZ@ 1. -1. P)
(CALL 1. (E NUMBERP) S)
(JUMPE 1. TAG20)
(HLRZ@ 1. -1. P)
(CALL 1. (E ATOM) S)
(JUMPE 1. TAG20)
(MOVEI 2. (QUOTE VALENCE) S)
(HLRZ@ 1. -1. P)
(CALL 2. (E GET) S)
(CALL 1. (E NUMBERP) S)
(JUMPN 1. TAG26)
(CALL 0. (E TERPRI) S)
(MOVEI 1. (QUOTE "WHAT'S THE VALENCE OF ") S)
(CALL 1. (E PRINC) S)
(PUSH P 1.)
(HLRZ@ 1. -2. P)
(CALL 1. (E PRINC) S)
(MOVEI 1. (QUOTE ?) S)
(CALL 1. (E PRINC) S)
(HLRZ@ 1. -2. P)
(PUSH P 1.)
(CALL 0. (E READ) S)
(MOVEI 3. (QUOTE VALENCE) S)
(MOVE 2. 1.)
(POP P 1.)
(CALL 3. (E PUTPROP) S)
(CALL 1. (E NUMBERP) S)
(POP P 1.)
(JUMPE 1. TAG20)
TAG26 (TDZA 1. 1.)
TAG20 (MOVEI 1. (QUOTE T) S)
(MOVEM 1. 0. P)
(JUMPE 1. TAG19)
(JRST 0. TAG13)
TAG19
TAG3
TAG4 (HRRZ@ 1. -2. P)
(MOVEM 1. -2. P)
(JRST 0. TAG2)
TAG5 (MOVE 1. 0. P)
TAG13 (SUB P (C 3. 0. 3. 0.))
(JUMPN 1. TAG1)
TAG6 (MOVEI 1. (QUOTE U?) S)
(CALL 1. (E PRINT) S)
(CALL 0. (E READ) S)
(MOVEM 1. -1. P)
(CALL 1. (E NUMBERP) S)
(JUMPE 1. TAG6)
(MOVE 2. -1. P)
(MOVE 1. 0. P)
(CALL 2. (E MOLECULES) S)
(MOVEM 1. (SPECIAL RESULTS) S)
(CALL 1. (E LENGTH) S)
(PUSH P 1.)
(MOVEI 1. (QUOTE GENERATED) S)
(CALL 1. (E NCONS) S)
(MOVEI 2. (QUOTE STRUCTURES) S)
(CALL 2. (E XCONS) S)
(POP P 2.)
(CALL 2. (E XCONS) S)
(CALL 1. (E PRINT) S)
(MOVEI 1. (QUOTE NIL))
(SUB P (C 2. 0. 2. 0.))
(POPJ P)
NIL
(LAP RING SUBR)
(PUSH P (C 0. 0. (QUOTE NIL) 0.))
(PUSH P (C 0. 0. (QUOTE NIL) 0.))
TAG1 (MOVEI 1. (QUOTE CL?) S)
(CALL 1. (E PRINT) S)
(CALL 0. (E READ) S)
(MOVEM 1. 0. P)
(CALL 1. (E ATOM) S)
(JUMPE 1. TAG11)
(MOVEI 1. (QUOTE "THAT CAN'T BE RIGHT - ENTER A ") S)
(CALL 1. (E PRINC) S)
(JRST 0. TAG1)
TAG11 (PUSH P 0. P)
(PUSH P (C 0. 0. (QUOTE NIL) 0.))
(PUSH P (C 0. 0. (QUOTE NIL) 0.))
TAG2 (MOVE 1. -2. P)
(JUMPE 1. TAG5)
(HLRZ@ 1. -2. P)
(MOVEM 1. -1. P)
(CALL 1. (E ATOM) S)
(JUMPN 1. TAG20)
(HRRZ@ 1. -1. P)
(CALL 1. (E NUMBERP) S)
(JUMPE 1. TAG20)
(HLRZ@ 1. -1. P)
(CALL 1. (E ATOM) S)
(JUMPE 1. TAG20)
(MOVEI 2. (QUOTE VALENCE) S)
(HLRZ@ 1. -1. P)
(CALL 2. (E GET) S)
(CALL 1. (E NUMBERP) S)
(JUMPN 1. TAG26)
(CALL 0. (E TERPRI) S)
(MOVEI 1. (QUOTE "WHAT'S THE VALENCE OF ") S)
(CALL 1. (E PRINC) S)
(PUSH P 1.)
(HLRZ@ 1. -2. P)
(CALL 1. (E PRINC) S)
(MOVEI 1. (QUOTE ?) S)
(CALL 1. (E PRINC) S)
(HLRZ@ 1. -2. P)
(PUSH P 1.)
(CALL 0. (E READ) S)
(MOVEI 3. (QUOTE VALENCE) S)
(MOVE 2. 1.)
(POP P 1.)
(CALL 3. (E PUTPROP) S)
(CALL 1. (E NUMBERP) S)
(POP P 1.)
(JUMPE 1. TAG20)
TAG26 (TDZA 1. 1.)
TAG20 (MOVEI 1. (QUOTE T) S)
(MOVEM 1. 0. P)
(JUMPE 1. TAG19)
(JRST 0. TAG13)
TAG19
TAG3
TAG4 (HRRZ@ 1. -2. P)
(MOVEM 1. -2. P)
(JRST 0. TAG2)
TAG5 (MOVE 1. 0. P)
TAG13 (SUB P (C 3. 0. 3. 0.))
(JUMPN 1. TAG1)
TAG6 (MOVEI 1. (QUOTE U?) S)
(CALL 1. (E PRINT) S)
(CALL 0. (E READ) S)
(MOVEM 1. -1. P)
(CALL 1. (E NUMBERP) S)
(JUMPE 1. TAG6)
(MOVE 2. 0. P)
(MOVE 1. -1. P)
(CALL 2. (E RINGS) S)
(MOVEM 1. (SPECIAL RESULTS) S)
(CALL 1. (E LENGTH) S)
(PUSH P 1.)
(MOVEI 1. (QUOTE GENERATED) S)
(CALL 1. (E NCONS) S)
(MOVEI 2. (QUOTE STRUCTURES) S)
(CALL 2. (E XCONS) S)
(POP P 2.)
(CALL 2. (E XCONS) S)
(CALL 1. (E PRINT) S)
(MOVEI 1. (QUOTE NIL))
(SUB P (C 2. 0. 2. 0.))
(POPJ P)
NIL
(LAP DRAW SUBR)
(PUSH P 1.)
(PUSH P (C 0. 0. (QUOTE NIL) 0.))
(MOVE 1. (SPECIAL RESULTS) S)
(CALL 1. (E LENGTH) S)
(MOVE 2. -1. P)
(CALL 2. (E *LESS) S)
(JUMPE 1. TAG5)
(MOVEI 1. (QUOTE (NOT THAT MANY STRUCTURES -- TRY AGAIN!!!)) S)
(CALL 1. (E PRINT) S)
(JRST 0. TAG4)
TAG5 (MOVE 2. -1. P)
(MOVE 1. (SPECIAL RESULTS) S)
(CALL 2. (E NTH) S)
(HLRZ@ 1. 1.)
(HLRZ@ 2. 1.)
(MOVEM 1. 0. P)
(CAIE 2. (QUOTE STRUC) S)
(JRST 0. TAG6)
(MOVEI 2. (QUOTE NIL))
(CALL 2. (E DRAWS) S)
(JRST 0. TAG4)
TAG6 (MOVE 1. -1. P)
(CALL 1. (E NCONS) S)
(MOVEI 2. (QUOTE STRUCTURE#) S)
(CALL 2. (E XCONS) S)
(MOVEM 1. (SPECIAL TITLE) S)
(MOVE 1. 0. P)
(CALL 1. (E PRINRAD) S)
TAG4 (MOVEI 1. (QUOTE NIL))
(SUB P (C 2. 0. 2. 0.))
(POPJ P)
NIL
(LAP LABELLER SUBR)
(PUSH P (C 0. 0. (QUOTE NIL) 0.))
(PUSH P (C 0. 0. (QUOTE NIL) 0.))
TAG1 (CALL 0. (E TERPRI) S)
(MOVEI 1. (QUOTE "ATOMS TO BE LABELLED?") S)
(CALL 1. (E PRINC) S)
(CALL 0. (E READ) S)
(MOVEM 1. 0. P)
(CALL 1. (E ATOM) S)
(JUMPE 1. TAG11)
(MOVEI 1. (QUOTE "THAT CAN'T BE RIGHT - ENTER A ") S)
(CALL 1. (E PRINC) S)
(JRST 0. TAG1)
TAG11 (PUSH P 0. P)
(PUSH P (C 0. 0. (QUOTE NIL) 0.))
(PUSH P (C 0. 0. (QUOTE NIL) 0.))
TAG2 (MOVE 1. -2. P)
(JUMPE 1. TAG5)
(HLRZ@ 1. -2. P)
(MOVEM 1. -1. P)
(CALL 1. (E ATOM) S)
(JUMPN 1. TAG20)
(HRRZ@ 1. -1. P)
(CALL 1. (E NUMBERP) S)
(JUMPE 1. TAG20)
(HLRZ@ 1. -1. P)
(CALL 1. (E ATOM) S)
(JUMPE 1. TAG20)
(MOVEI 2. (QUOTE VALENCE) S)
(HLRZ@ 1. -1. P)
(CALL 2. (E GET) S)
(CALL 1. (E NUMBERP) S)
(JUMPN 1. TAG26)
(CALL 0. (E TERPRI) S)
(MOVEI 1. (QUOTE "WHAT'S THE VALENCE OF ") S)
(CALL 1. (E PRINC) S)
(PUSH P 1.)
(HLRZ@ 1. -2. P)
(CALL 1. (E PRINC) S)
(MOVEI 1. (QUOTE ?) S)
(CALL 1. (E PRINC) S)
(HLRZ@ 1. -2. P)
(PUSH P 1.)
(CALL 0. (E READ) S)
(MOVEI 3. (QUOTE VALENCE) S)
(MOVE 2. 1.)
(POP P 1.)
(CALL 3. (E PUTPROP) S)
(CALL 1. (E NUMBERP) S)
(POP P 1.)
(JUMPE 1. TAG20)
TAG26 (TDZA 1. 1.)
TAG20 (MOVEI 1. (QUOTE T) S)
(MOVEM 1. 0. P)
(JUMPE 1. TAG19)
(JRST 0. TAG13)
TAG19
TAG3
TAG4 (HRRZ@ 1. -2. P)
(MOVEM 1. -2. P)
(JRST 0. TAG2)
TAG5 (MOVE 1. 0. P)
TAG13 (SUB P (C 3. 0. 3. 0.))
(JUMPN 1. TAG1)
TAG6 (MOVEI 1. (QUOTE U?) S)
(CALL 1. (E PRINT) S)
(CALL 0. (E READ) S)
(MOVEM 1. -1. P)
(CALL 1. (E NUMBERP) S)
(JUMPE 1. TAG6)
(MOVE 2. -1. P)
(MOVE 1. 0. P)
(CALL 2. (E MOLECULES) S)
(MOVEM 1. (SPECIAL RESULTS) S)
(CALL 1. (E LENGTH) S)
(PUSH P 1.)
(MOVEI 1. (QUOTE GENERATED) S)
(CALL 1. (E NCONS) S)
(MOVEI 2. (QUOTE STRUCTURES) S)
(CALL 2. (E XCONS) S)
(POP P 2.)
(CALL 2. (E XCONS) S)
(CALL 1. (E PRINT) S)
(MOVEI 1. (QUOTE NIL))
(SUB P (C 2. 0. 2. 0.))
(POPJ P)
NIL
(LAP DRAWS SUBR)
(PUSH P 1.)
(PUSH P 2.)
(MOVE 1. 2.)
(JUMPN 1. TAG9)
(HRRZ@ 1. -1. P)
(HRRZ@ 1. 1.)
(HLRZ@ 1. 1.)
TAG9 (MOVEM 1. 0. P)
(HRRZ@ 1. -1. P)
(HLRZ@ 1. 1.)
(PUSH P 1.)
(PUSH P (C 0. 0. (QUOTE NIL) 0.))
(PUSH P (C 0. 0. (QUOTE NIL) 0.))
TAG1 (MOVE 1. -2. P)
(JUMPN 1. TAG14)
(JRST 0. TAG8)
TAG14 (HLRZ@ 1. -2. P)
(JSP 6. SPECBIND)
(0. 0. (SPECIAL Y) S)
(MOVEM 1. -1. P)
(HRRZ@ 1. 1.)
(HRRZ@ 1. 1.)
(HLRZ@ 1. 1.)
(HLRZ@ 1. 1.)
(PUSH P 1.)
(HRRZ@ 1. -2. P)
(HLRZ@ 1. 1.)
(PUSH P 1.)
(HRRZ@ 1. -3. P)
(HRRZ@ 1. 1.)
(HRRZ@ 1. 1.)
(PUSH P 1.)
(PUSH P (C 0. 0. (QUOTE NIL) 0.))
TAG2 (MOVE 1. -1. P)
(JUMPN 1. TAG20)
(JRST 0. TAG5)
TAG20 (HLRZ@ 1. -1. P)
(MOVEM 1. (SPECIAL Y) S)
(CALL 1. (E NUMBERP) S)
(JUMPN 1. TAG23)
(JRST 0. TAG4)
TAG23 (MOVE 2. 0. P)
(MOVE 1. (SPECIAL Y) S)
(CALL 2. (E CONS) S)
(MOVEM 1. 0. P)
TAG3
TAG4 (HRRZ@ 1. -1. P)
(MOVEM 1. -1. P)
(JRST 0. TAG2)
TAG5 (MOVE 2. 0. P)
(PUSHJ P SPECSTR)
(MOVE 1. -3. P)
(CALL 2. (E CONS) S)
(MOVE 2. -2. P)
(CALL 2. (E XCONS) S)
(MOVE 2. -4. P)
(CALL 2. (E CONS) S)
(SUB P (C 4. 0. 4. 0.))
(MOVEM 1. 0. P)
TAG6
TAG7 (HRRZ@ 1. -2. P)
(MOVEM 1. -2. P)
(JRST 0. TAG1)
TAG8 (MOVE 2. 0. P)
(MOVE 1. -3. P)
(CALL 2. (E CONS) S)
(SUB P (C 5. 0. 5. 0.))
(JCALL 1. (E LAYOUT) S)
NIL