@L}5 _$% l0$)$$Hȱ$ UhL" `e$$%`$%`  R@P!( L(1   Y I`  d  Ld M * @  $ % CC$$)ǥ%1 Udߥ$9%: !0 S$% DD˙`  }J)Lr d M * @  $ % CC$$)%1 Udߥ$9%: !0 S$%} DD˙`  }J)Lr J  ((  p L ()   J}NjL= ( L 0q A    IB JC;? D W } LL  ` W )LA!  ߰")-݆ p" } $G@LL 08`Q")<2Q0 -G$Ș݆ UL# ; p8(()(0ʥ)NQ` }$GȘ݆LU )L ݆ L GȘ ݆LL )W>Z   HH)H }p h  hyhy D L> L JJ    ! LA*` BF }7'8  M HN H` 8 Z  \LdJJ!"! GFE@F (!L }EE !E^ ^ E E7EȩEdE/EȩE  D } .L }  ;F d  ;?F7F? ( .   Z D LL d } . D  L    p  E` , d)  D L) 0BM݊L݉} ML  N݆ L NLML [ TEqEHȱEqEh 0Gȹ G} HLL GɛL  LFREE SECTORS G) *Gȩ GȽG GȌ*jj >G}Ǡ C8jJ3j2CD( C202C ԠBX` N 1? l LlD:RAMDISK},.COMLu L1 L ;LHL1  T`  `8  ɐ     `TU  } L ? .  t`GBJ ~DEHI B V0dV!}QDEHI VF9 ,0 ,0 s0hhL  L` H hDHEh"}ǢDEL8HI4 0 HI,0 0  9 .G VLO#},0 L4*IJ`llD1:AUTORUN.SYSNEED MEM.SAV TO LOAD THIS FILE.D8:MEM.SAV J y08 B|DEHI$}G V0 0`B;DEL`?<0LV`@ʆ v s? F0Ξ05: [ BDEHI%}% VY8 B V  @  /DE `E:D8:DUP.SYSERROR-SAVING USER MEMORY ON DISKTYPE Y TO &}STILL RUN DOS B;DE J  (` 9 V⪍ ઍ  -'}ǔLLu ÝDEHILV 9 .l 9 .l  `` s$B BH(}qI|DE V BLV nB,DE JLV B V BLVDEIʩ BꭝLu ]~)}Ǫ D  C D     )16CS S)  C)D1 p p *}0 C9DI pCDL~CiCDiD` DD˙` d J)L !+}D L(( LL()  L| L( S LH 0p n  ,} CY?  q  L L  ` )-}ǝ `A! d߰")-݆ "  $G@LLL&0") $G%.}DžH0 3S8`G ȱG ȱG   Gȭ Gȭ GG}GHiH8(()) G$H% `(0/}ǥ)8` d)L ݆ & LGȘ ݆LL d  ! LL d)N>Q  HH)0}  hyhyB q L> Lm JJ  Ln*` dB%'1}ǰ8  H H` 1 { LL   !L     Hh SY?  q  1L2}  !? S   q 1 L   Ll  Lg E`L   !L)  q 1L3}) `L0AM݊L݉ ML  N݆LLLNLMLHG!@4}1F GȱGLLEEȩÑEȑEEȑE Ed E7EȩE  q5} L !,0,0SGɛ L 1 !L EHEh W G gLLSROTCES EERF 6}G G) *Gȩ GȽG GȌd q q G`  8   0G  `D7}7DžCEDC0X:Ȣ Y ȱC* ? 0.. , 0%n ?A[ 0 : L`L  `, 0`Y8}`piH n0)բY? 08`0 9}  0$L GGȽG L `8L`L:}Nj8`  05G)݁,G)ȱGȱGHh0})Hh` B! 8`8iiiLE`;}ǠE8FEh( l0`ɃLL L8^~jj8jHi hEEEiEȱEiE` dTE<} H8EEȱEEȩEh J E8   . m  i`LI!)E1FR=}1LJ舩9GIH`LJJ`HGHh l`>} S gL   8 rii `дCDCG W  ?}#C  Lq` X٨`DOS( ySYS IIIIIIIIIIIIIIIC`0 ߩ0}}~@}  %|+-3J||||DOS PVDOSDOS[ `SYS sx}~A}}~B} CDOS SYS~C}V 0`BDELV !B D}`LVUQ   ]   TU J ]L!T  #      TU E} L ? .  t`GBJ V~DEHI B V0dVF}QDEHI VF9 ,0 ,0 s0hhL  L` H hDHEhG}ǢDEL8HI   0 HI,0 0  9 .G VLOH}G,0 L4*IJ`llD1:AUTORUN.SYSNEED MEM.SAV TO LOAD THIS FILE.D1:MEM.SAV J y08 B|DEHII}I V0 0`B;DELV䌚 !B y`@ʆ v s? F0Ξ05: [ BDEHIJ} VY8 B V  @  /DE `E:D1:DUP.SYSERROR-SAVING USER MEMORY ON DISKTYPE Y TO K}STILL RUN DOS B;DE J V (` 9 V⪍ ઍ  -L}ǔLLu DEHILV 9 .l 9 .l  `` s$B VBHM}I|DE V BLV nB,DE J V* \*` B V BLVDEHI BLVLN}Ǫ1u H232435; 1 ;  hh@2 e1i1LHҍ 00) 08 109hh@ Ҡ2eO})1i1232435ޥ<<823Z8 109hh@ Ҡ2e]"" *2HH"+" U' # # E#L" B#,"C" * Щ*D"Z"& B( 1 *8["q" 0 * # Q}* * #r"" E# * E#""3 U' *Į"" # # E#L""" & * #λ& &""R}`0j`8` """0ģ` &"# #` & 3#`#+# * &L&˥ȥʈ`,#A# &̥ͥȑS}̈`B#W# * P#L# * X#`X#o#ɕơL# "L'p##( ;2HH( * &## X#, & "$## #HHT} & X#hhL### #. * # X#hh)L*## L*& *`## *ɕ#$ .L1"0j$&$U}DZ̨̪ &`'$=$`( ;2HHH>$U$HHH o) #ȥ̥V$l$̄m$$0> * #*BDx**EHILVE** *R ** B**HIDE Ve} **` c4 ٥ *`**:8j *+…栩Ʃ :++©`+++`,+C+xԆf}Q +r2D+Z+ O+腼([+q+ͱ$ ) Ir++IUȀŢȆǤ++8ʆ$g}++Ǒ̄ȥȑ̈L+IL+++X`++j +,++Ɠ$,,Ih} jȱ,.,ܤ +, +,M/,F,`Iȱ̥̅G,^, ̤چˆ͘jӱ_,u,$Ъʑ̥ ʆȱ̪i}v,,̥ʆˆˆ ,,нj#ʪ$вȱ ,,ʥ L,LK,$̾,,Џ̪Iȱㆷ,,̥ j}̐ȦˆL~,,-` * "--L&` * "L&L7"-3- & * o)4-J-` & " Kk}-b- *`hhhL7"c-z-88 A- #L-{-- A-( "` #--` &05` &-- m4 *섍l}G 4 `ڥ-- *0ąˤ`-- &5 "1ͱ̅ȱ̅-. & #ᤝ &.. #L-`L# & ".6m}m.L**LP# * "07.L. &"M.d.L'ȱ " *򤅦`e.|.ȑ`ơ`}.. **P0*n})1*Ɠ..L**0*11*L** **..L** **L** BL... * 0 * "( &*..EDBԝJ Vԩ./o} L3L7" 0ԅ // * 0ԅ 0 * "݈/6/ &*EDBJ7/L/ԝKL. *&B .M/c/*LԽM 3p}Ǜd/z/*Nԩ 3L)-{// *%B 0*ԝLՑ//M 0*)NL.// " & #// &Lq}/``// 0 0?0pB/0>D0EJK .00# *' 60L&p E0#Ɉ020ɛ * *30I0r}L0p .L**D1:*.*BJ0a0DEIHL.b0y0p* .# 0z00` *'* .Ɛ00 U' & " U' $s}İ00者Ʃ .pL.` .00ʈ 0) 00)Ԣ`*0L"/S:01 c4LѦ *' *'11t}DŽ *' %141!҆ф & #51K1 &҄ % &L1c1 &҄Ѥ` L7" &d1y1j &u}Ǥz11L1ѪѨφ҄ &j11 &ĝݠ`*11BHI V0` .11`8` & "0ģ11 v}*` L7"12 1L# 1L3# )22 & & 272 )L2 &L&XԠơ82O2L7"xԤ¥ w}2P2g2ˆĈׄºr2r2h22x2h22hXԤ`xԘ22r22222x}r2r222м 2L28822ȥ͑̊򨥗ȥ̤̈́23` ,+&&e3$3e…8凅ԥ刅y} %3;3L3} *L**Ʃ*<3S3  (L\(T3k3 ؐ`hh 3L!)l33DŽ &ȄǠԑȑ33z}Lj`ћ33䂐 ,+ ơL7"33L7" y3i`33 30ȱ0 *)33 *`ȱ{}34󅝩4'4L " & #(4>4 &L4`?4V4 " & #䤙 &W4n4L?4|}ǜ` &0LFڠo44ȱՠ`44 &0LFڠȱ44` c4 4 fڲ44L3 c4 L3 c4 44L}}P3 c4 4L` 4L344 40`` 044ԍ4L**45 0) 0T 5+5 0 )L** G5,5C54 L*~}CP* G5`B .D5[5L** 0ԅUՅV 0ԅT4\5r5` 0) 0ԅs55 0T 0Ҋ55L** 0Ԧխ} 55L**UVL** 055ԅԄ L3 c4 ٦ԥ55 c4 ٥Ԡ` c456 4 L3 c4 4 (L366 c4 f}J $ 6-6 D `L3ơr2.6D6#L" &E6[6Ԣp** .# \6r6 6` E#s66} &; *' $ 666 & ' 6 & #Մ66 6 ' 666 E#*pL. #' * E#66) *L#( * #L}#L7"66 &* " c4 ٥67ԅƞ0Ɲ &7,7`8f & &-7D7` &` &E7[7$0} &ěङ$0\7s7L& Ӎө Ӎ 0t77)jӰ)J77JJJԩ Ly3 077)`L**} &77L**j0 & )77 ( \( )78 &L&L7"88 & &0j &808}DZ (L\(18G8 &+ * *H8_8 E#` & $`8u8 )-L$ԅ * "v88 8 L3 *}ȍ88 &`NILT().88'QUOTELAMBDANLAMBDA88SUBRNSUBRRESETRETURN88MACROEVAL#GETD#88CAR,CDR }-PRINT@#89PRIN1'.PRIN2K#CONS-9,9APPEND2SETx-DEFINEf--9B9EQ-STICK_7STRIG7C9X9READS'QUOTE*COND-Y9p9SUBR},BAKTRACE18APPLY*q99P8READA'XIO/NOTE99?/POINTy/RPLACA199RPLACD1UNPACK7PACK997PLOT'5COL4DRAW559}9SETCOL4SOUND`5TAB599PEEK5POKE5ATOM.#9:-+4SUB4*5/5INT:%:6>4EXP4LOG4@6&:;:LISTc.CLOSE}.OPEN.<:S:LOADa0DIR/SAVE<6IN#T:j:{.PR#.ASSOC7MEMBERk::7LAST8LENGTHf8PROGN::/DEFINEQa-SETQk-::RESET}r.BREAK%"NEW"::OBLIST/GR0TERPRI$*::PROG0GO]1RETURN#MEM::2PAGE(3READC23OR4:;AND54S= }; ; *L;#% !;6;6  D<7;M; *8 (N;d;˱+e;|;Ȅ}dž˱Рڢ8};; ( "+++;; "ܢ8 ;;; 3#;; 3# 3# 3# ;;;} ;襬;< L< ( < <˪!<7<L<˱L<8>> INTER-LISP/65 < "))) (QUOTE EX)) (RETUR} N (QUOTE EXIT) (POKE 128 63) (COND ((EQ X (QUOTE T)) (GO T)) ((MEMBER X COMMANDS) (APPLY* X)) ((PRIN2 (LIST (QUOTE ILL) (Q}UOTE COMMAND-->) X)) (TERPRI))) (GO LOOP))))(DEFINEQ E '(LAMBDA NIL ((LAMBDA (X) (PROGN (SETQ S-EXP (COND ((EVAL X)) (T (PO}WKE 128 0) (PRIN1 (QUOTE -->)) (PRINT X) (SET X (GETLST (GETCMD (QUOTE "> "^) (GO T))) (READ))))(DEFINEQ E}F '(LAMBDA NIL ((LAMBDA (X) (PROGN (SETQ S-EXP (COND ((GETD X)) (T (POKE 128 0) (PRIN1 (QUOTE -->)) (PRINT X) (DEFINE}# X (GETLST (GETCMD (QUOTE "> "*) (GO T))) (READ))))(DEFINEQ H '(LAMBDA NIL (PRIN1 (LIST (QUOTE COMMANDS:) COMMAND}pS))))(DEFINEQ L '(LAMBDA NIL ((LAMBDA (FILE) (PROGN (LOAD FILE) (PRIN1 (QUOTE "--> ")) (PRINT (EVAL FILEt) (GETCMD }(QUOTE "> "))(DEFINEQ S '(LAMBDA NIL (PROGN (SAVE (EVAL (GETCMD (QUOTE "> "))) (GETCMD (QUOTE "> "))) }(PRINT (QUOTE ))(DEFINEQ C '(LAMBDA NIL (DIR (READ))))(SETQ X 'S)(DEFINEQ X '(LAMBDA NIL (PROGN (PASTE CURR (RE}AD) (READ)) (PSET CURR))))(DEFINEQ PASTE '(LAMBDA (X Y Z) (COND ((EQUAL X)) ((ATOM X)) ((EQUAL (CAR X) Y) (RPLACA X Z) (PAS}:TE (CDR X) Y Z)) (T (PASTE (CAR X) Y Z) (PASTE (CDR X) Y Z>))(DEFINEQ EQUAL '(LAMBDA (X Y) (COND ((ATOM X) (EQ X Y)) ((AT}COM Y) (EQ X Y)) ((AND (EQUAL (CAR X) (CAR Y)) (EQUAL (CDR X) (CDR YI))(DEFINEQ GETCMD '(LAMBDA (X) (PROGN (POKE 128 0) }(TERPRI) (PRIN1 X) (READ))))(DEFINEQ MAPCAR '(LAMBDA (X FN) (COND ((EQ X) NIL) (T (CONS (APPLY* FN (CAR X)) (MAPCAR (CDR X)} FN))(SETQ COMMANDS '(A D B P R DEL I G LI RE PP PRE C E EF X S L H PU LOCK UNLOCK))(DEFINEQ PSET '(LAMBDA (L) (PRINT}C (CAR (SETQ CURR L))(DEFINEQ SETP '(LAMBDA (FUNCTION) (COND ((ATOM (APPLY* FUNCTION CURR)) (PRINT (QUOTE ))) };(T (SETQ PREV (CONS CURR PREV)) (PSET (APPLY* FUNCTION CURR@)y)(DEFINEQ R '(LAMBDA NIL (PRINT (CAR (RPLACA CURR (READ})}))(SETQ A '(A))(DEFINEQ A '(LAMBDA NIL (SETP (QUOTE CDR))))(DEFINEQ D '(LAMBDA NIL (SETP (QUOTE CAR))))(DEFINEQ B '(L}sAMBDA NIL (COND ((EQ (CDR PREV)) (PRINT (QUOTE )) (PSET CURR)) (T (PSET (CAR PREV)) (SETQ PREV (CDR PREVx))(D}9EFINEQ LI '(LAMBDA NIL (PSET (RPLACA CURR (LIST (CAR CURR>))(DEFINEQ RE '(LAMBDA NIL (COND ((ATOM (CAR CURR)) (PRIN1 (QU}vOTE )) (TERPRI)) (T (PROG NIL (NCONC (CAR CURR) (CDR CURR)) (PSET (CONZ CURR (CAR (CAR CURR)) (CDR (CAR CURR})}))(DEFINEQ CONZ '(LAMBDA (X Y Z) (RPLACA (RPLACD X Z) Y)))(DEFINEQ PRE '(LAMBDA NIL (PSET (RPLACA CURR (CONS (READ) (LIST} (CAR CURR))(DEFINEQ I '(LAMBDA NIL (PROG NIL (RPLACD CURR (CONS (READ) (CDR CURR))) (A))))(DEFINEQ DEL '(LAMBDA NIL}U (PROG NIL ((LAMBDA (X) (COND ((EQ CURR X) (CONZ CURR (CAR (CDR CURR)) (CDR (CDR CURRY) ((EQ CURR (CDR X)) (RPLACD X (CDR C}URR))) (T (RPLACA X (CDR CURR") (CAR PREV)) (B))))(DEFINEQ G '(LAMBDA NIL (PROG (X Y) (SETQ Y CURR) L (SETQ X (GETCMD (Q}xUOTE "> "))) (COND ((EQ X (QUOTE A)) (COND ((EQ (CDR Y)) (PRINT (QUOTE ))) (T (PRINT (CAR (SETQ Y (CDR Y})})) ((EQ X (QUOTE G)) (RETURN (COND ((EQ CURR Y) (LI)) (T (CONZ CURR (CONS (CAR CURR) (CDR CURR)) (CDR Y)) (RPLACD Y NIL) (PRI} NT (CAR CURR)3 (T (RETURN (PRINT (QUOTE 8) (GO L))))(DEFINEQ PP '(LAMBDA NIL (PPRINT S-EXP 2)))(DEFINEQ P '}(LAMBDA NIL (PPRINT (CAR CURR) 2)))(DEFINEQ PPRINT '(LAMBDA (X IND) (PROG (TFLG) (PPAUX X IND) (TERPRI))))(DEFINEQ PPAUX }'(LAMBDA (X INDTN) (COND ((ATOM X) (PRIN2 X) (SETQ TFLG)) ((ATOM (CAR X)) ((LAMBDA (Y) (COND (Y (MULTARGS X INDTN (CDR Y))) (}R(PROGN (PRIN1 LPAR) (PRIN2 (CAR X)) (PPARGS (CDR X) INDTN) (PRIN1 RPAR) (SETQ TFLGW) (ASSOC (CAR X) FORMATS))) (((LAMBDA (}IND1) (PROGN (PRIN1 LPAR) (SETQ TFLG T) (PPAUX (CAR X) IND1) (TABRET INDTN) (PPARGS (CDR X) IND1) (PRIN1 RPAR) (SETQ TFLG))) }(+ INDTN ))(DEFINEQ MULTARGS '(LAMBDA (X INDTN L) ((LAMBDA (INDTN2) (PROGN (TABRET INDTN) (PRIN1 LPAR) (PRIN2 (CAR X)) (}GPRIN1 BLANK) (PPAUX (CAR (CDR X)) INDTN2) (COND ((CDR (CDR X)) (MAPCAR (CDR (CDR X)) (QUOTE (LAMBDA (Y) (PROG NIL (TABRET IND}TN2) (PPAUX Y INDTN2)F (PRIN1 RPAR) (SETQ TFLG))) (+ INDTN (CAR LJ))(DEFINEQ PPARGS '(LAMBDA (X INDTN) (PROG NIL LOO}P (COND ((EQ X) (RETURN))) (PRIN1 BLANK) (PPAUX (CAR X) INDTN) (SETQ X (CDR X)) (GO LOOP))))(DEFINEQ TABRET '(LAMBDA (N) (P}ROG NIL (COND (TFLG (RETURN)) ((TERPRI))) (SETQ TFLG T) (COND ((> N LINE-WIDTH) (TERPRI) (TAB (SUB N LINE-WIDTH))) ((TAB N)))})))(SETQ FORMATS '((COND 6) (LAMBDA 2) (PROG 6) (PROGN 7) (AND 5) (OR 4) (MAPCAR 8) (NLAMBDA 2) (MACRO 2)))(SETQ LPAR '"(}")(SETQ BLANK '" ")(SETQ RPAR '))(SETQ LINE-WIDTH '39)(DEFINEQ NCONC '(LAMBDA (X Y) (PROGN (RPLACD (LAST X) Y) X)))}(DEFINEQ PU '(LAMBDA NIL ((LAMBDA (X) (PROGN (COND ((EQ (GETCMD (QUOTE "٧> ")) (QUOTE Y)) (XIO 33 7 0 0 X) }(CLOSE 7))) (DIR))) (READ))))(DEFINEQ LOCK '(LAMBDA NIL ((LAMBDA (X) (PROGN (XIO 35 7 0 0 X) (CLOSE 7))) (READ))))(DEFINE}Q UNLOCK '(LAMBDA NIL ((LAMBDA (X) (PROG (STAT) (SETQ STAT (XIO 36 7 0 0 X)) (COND ((EQ STAT 1)) (T (PRIN1 (QUOTE ͠}Һ)) (PRINT STAT))) (CLOSE 7))) (READ))))(DEFINEQ GETLST '(LAMBDA (X) (COND ((ATOM X) (LIST X)) (X))))NILOTE ͠n(DOCTOR RESTRICT MATCH BADWORDS BADWORD ATOMCAR ATOMCDR TEST)(DEFINEQ DOCTOR '(LAMBDA NIL (PROG (L MOTHER S) (POKE 128 0) (P }MRINT (QUOTE (SPEAK UP))) LOOP (SETQ S (READ)) (COND ((ATOM S) (SETQ S (LIST SQ) (COND ((MATCH (QUOTE (I AM WORRIED +L)) S) }(PRINT (APPEND (QUOTE (HOW LONG HAVE YOU BEEN WORRIED)) L))) ((MATCH (QUOTE (+ MOTHER +)) S) (SETQ MOTHER T) (PRINT (QUOTE (T }ELL ME MORE ABOUT YOUR FAMILY!)l ((MATCH (QUOTE (+ COMPUTERS +)) S) (PRINT (QUOTE (DO MACHINES FRIGHTEN YOUp) ((OR (MATCH }Y(QUOTE (NO)) S) (MATCH (QUOTE (YES)) S)) (PRINT (QUOTE (PLEASE DO NOT BE SO SHORT WITH ME]) ((MATCH (QUOTE (+ (RESTRICT > B }EE OF YOUR MOTHER)Z (T (PRINT (QUOTE (I AM SORRY OUR TIME IS UP))) (RETURN (QUOTE GOODBYE^) (GO LOOP))))(DEFINEQ MATCH ' }(LAMBDA (P D) (COND ((AND (EQ P) (EQ D)) T) ((OR (EQ P) (EQ D)) NIL) ((EQ (ATOM (CAR P))) (COND ((AND (EQ (CAR (CAR P)) (QUOT }E RESTRICT)) (EQ (CAR (CDR (CAR P))) (QUOTE >)) (TEST (CDR (CDR (CAR P))) (CAR D))) (MATCH (CDR P) (CDR D))) ((AND (EQ (CAR ( }7CAR P)) (QUOTE RESTRICT)) (EQ (ATOMCAR (CAR (CDR (CAR P;) (QUOTE >)) (TEST (CDR (CDR (CAR P))) (CAR D)) (MATCH (CDR P) (CDR }$ D))) (SET (ATOMCDR (CAR (CDR (CAR P() (CAR D)) T))) ((OR (EQ (CAR P) (QUOTE >)) (EQ (CAR P) (CAR D))) (MATCH (CDR P) (CDR }D))) ((AND (EQ (ATOMCAR (CAR P)) (QUOTE >)) (MATCH (CDR P) (CDR D))) (SET (ATOMCDR (CAR P)) (CAR D)) T) ((EQ (CAR P) (QUOTE + }7)) (COND ((MATCH (CDR P) (CDR D)) T) (T (MATCH P (CDR D<) ((EQ (ATOMCAR (CAR P)) (QUOTE +)) (COND ((MATCH (CDR P) (CDR D)) }x (SET (ATOMCDR (CAR P)) (LIST (CAR D))) T) ((MATCH P (CDR D)) (SET (ATOMCDR (CAR P)) (CONS (CAR D) (EVAL (ATOMCDR (CAR P}) } T))(SETQ BADWORDS '(DARN HELL))(DEFINEQ BADWORD '(LAMBDA (WORD) (MEMBER WORD BADWORDS)))(DEFINEQ ATOMCAR '(LAMBDA }J(X) (CAR (UNPACK X))))(DEFINEQ ATOMCDR '(LAMBDA (X) (PACK (CDR (UNPACK XN))(DEFINEQ TEST '(LAMBDA (PREDICATES ARGUMENT) } (PROG NIL LOOP (COND ((EQ PREDICATES) (RETURN T))) (COND ((APPLY* (CAR PREDICATES) ARGUMENT) (SETQ PREDICATES (CDR PREDICATE }S)) (GO LOOP)) (T (RETURN))NIL) (RETURN T))) (COND ((APPLY* (CAR PREDICATES) ARGUMENT) (SETQ PREDICATES (CDR PREDICATE %(HANOI OTHER MOVE DISPLAY HLIN CADR LOC VTAB GOXY)(DEFINEQ HANOI '(LAMBDA NIL (PROG (ONE TWO THREE) (GR 20) (PAGE) (POKE 752} 1) (TAB 4) (PRIN1 (QUOTE -ONE-)) (TAB 17) (PRIN1 (QUOTE -TWO-)) (TAB 29) (PRINT (QUOTE -THREE-)) (COL 1) (HLIN 13 13 20) (HL}IN 11 15 22) (HLIN 9 17 24) (HLIN 7 19 26) (HLIN 5 21 28) (HLIN 3 23 30) (HLIN 1 25 32) (SETQ ONE (QUOTE (0 1 2 3 4 5 6))) (M}OVE 7 (QUOTE ONE) (QUOTE THREE)) (READC) (SOUND 0 0 0 0) (POKE 752 0))))(DEFINEQ OTHER '(LAMBDA (X Y) (COND ((EQ X (QUOTE O}C;NE)) (COND ((EQ Y (QUOTE TWO)) (QUOTE THREE)) (T (QUOTE TWO?) ((EQ X (QUOTE TWO)) (COND ((EQ Y (QUOTE ONE)) (QUOTE THREE)) } (T (QUOTE ONE)\ ((EQ X (QUOTE THREE)) (COND ((EQ Y (QUOTE ONE)) (QUOTE TWO)) (T (QUOTE ONEb))(DEFINEQ MOVE '(LAMBDA (}D E F) (COND ((EQ D 1) (PROGN (SET F (CONS (CAR (EVAL E)) (EVAL F))) (SET E (CDR (EVAL E))) (DISPLAY E F))) (T (PROGN (MOVE (}SUB D 1) E (OTHER E F)) (SET F (CONS (CAR (EVAL E)) (EVAL F))) (SET E (CDR (EVAL E))) (DISPLAY E F) (MOVE (SUB D 1) (OTHER E }F) F ))(DEFINEQ DISPLAY '(LAMBDA (X Y) (PROG NIL (SETQ Z (CAR (EVAL Y))) (COL 0) (HLIN (SUB (CADR (ASSOC X LOC)) (+ Z Z)}) (+ (CADR (ASSOC X LOC)) (+ Z Z)) (+ (+ Z Z) 20)) (COL 1) (HLIN (SUB (CADR (ASSOC Y LOC)) (+ Z Z)) (+ (CADR (ASSOC Y LOC)) (}+ Z Z)) (+ (+ Z Z) 20)) (GOXY 10 2) (PRIN1 (LIST (QUOTE MOVE) X (QUOTE TO) Y)) (PRIN1 (QUOTE " ")) (SOUND 0 (+ 120 (* 10 Z))} 10 15))))(DEFINEQ HLIN '(LAMBDA (X1 X2 Y) (PROGN (PLOT X1 Y) (DRAW X2 Y))))(DEFINEQ CADR '(LAMBDA (X) (CAR (CDR X))))(}SETQ LOC '((ONE 13) (TWO 40) (THREE 66)))(DEFINEQ VTAB '(LAMBDA (R) (POKE 656 R)))(DEFINEQ GOXY '(LAMBDA (X Y) (PROGN (VT}AB Y) (TAB X))))NILWO 40) (THREE 66)))(DEFINEQ VTAB '(LAMBDA (R) (POKE 656 R)))(DEFINEQ GOXY '(LAMBDA (X Y) (PROGN (VT^(CLISP TRANSLATE WEIGHT OPCODE)(DEFINEQ CLISP '(LAMBDA (FUN) (DEFINE FUN (TRANSLATE (GETD FUNb))(DEFINEQ TRANSLATE '(LAM}nBDA (S-EXP) (PROG (OPERANDS OPERATORS) (COND ((ATOM S-EXP) (RETURN S-EXP))) (COND ((EQ (OPCODE (CAR (CDR S-EXPr) (RETURN (M}APCAR S-EXP (QUOTE TRANSLATE!) (SETQ OPERATORS (QUOTE (DUMMY))) STUFF (COND ((EQ S-EXP) (COND ((EQ (CAR OPERATORS) (QUOTE }gDUMMY)) (RETURN (QUOTE *ERROR*))) (T (RETURN (LIST (TRANSLATE (CAR OPERANDS)) (TRANSLATE (CAR OPERATORSo) (SETQ OPERAND}ES (CONS (COND ((ATOM (CAR S-EXP)) (CAR S-EXP)) ((TRANSLATE (CAR S-EXPI) OPERANDS)) (SETQ S-EXP (CDR S-EXP)) SCAN (COND ((AN}FD (EQ S-EXP) (EQ (CAR OPERATORS) (QUOTE DUMMY))) (RETURN (CAR OPERANDSJ) (COND ((OR (EQ S-EXP) (EQ (> (WEIGHT (CAR S-EXP)) }(WEIGHT (CAR OPERATORS) (SETQ OPERANDS ((LAMBDA (X) (COND ((EQ X) (CONS (LIST (CAR (CDR OPERANDS)) (CAR OPERATORS) (CAR O}PERANDS)) (CDR (CDR OPERANDS )i (T (CONS (LIST X (CAR (CDR OPERANDS)) (CAR OPERANDS)) (CDR (CDR OPERANDSo) (OPCODE (CAR }C OPERATORS ) (SETQ OPERATORS (CDR OPERATORS)) (GO SCAN)) (T (SETQ OPERATORS (CONS (CAR S-EXP) OPERATORS)) (SETQ S-EXP (CDR S}-EXP)) (GO STUFF))(DEFINEQ WEIGHT '(LAMBDA (OP) (COND ((EQ OP (QUOTE DUMMY)) -1) ((EQ OP (QUOTE =)) 0) ((EQ OP (QUOTE +})) 1) ((EQ OP (QUOTE -)) 1) ((EQ OP (QUOTE *)) 2) ((EQ OP (QUOTE /)) 2) (T 4))))(DEFINEQ OPCODE '(LAMBDA (OP) (COND ((EQ OP} (QUOTE DUMMY)) (QUOTE DUMMY)) ((EQ OP (QUOTE =)) (QUOTE SETQ)) ((EQ OP (QUOTE +)) (QUOTE +)) ((EQ OP (QUOTE -)) (QUOTE SUB))}: ((EQ OP (QUOTE *)) (QUOTE *)) ((EQ OP (QUOTE /)) (QUOTE />))NILOP (QUOTE +)) (QUOTE +)) ((EQ OP (QUOTE -)) (QUOTE SUB))E(FUNCALL DEFPROP PUTPROP NCONC GET MAPCAR EQUAL DELETE SUBST REVERSE REMPROP CONZ GENSYM DEFUN MACFNS)(DEFINEQ FUNCALL '(MAC}RO (S) (CONS (QUOTE APPLY*) (CDR S))))(DEFINEQ DEFPROP '(NLAMBDA (A) ((LAMBDA (ID PROP NAME) (PROGN (COND ((ASSOC NAME MACF}>NS) (DEFINE ID (CONS (CAR (CDR (ASSOC NAME MACFNS))) (CDR PROPB) ((EQ (EVAL ID)) (SET ID (LIST NAME PROP))) (T (SET ID (CON}S NAME (CONS PROP (EVAL ID )L ID)) (CAR A) (CAR (CDR A)) (CAR (CDR (CDR AQ))(DEFINEQ PUTPROP '(LAMBDA (ID PROP NAME) }\(PROGN (COND ((ASSOC NAME MACFNS) (DEFINE ID (CONS (CAR (CDR (ASSOC NAME MACFNS))) (CDR PROP`) ((EQ (EVAL ID)) (SET ID (LIS}8T NAME PROP))) (T (SET ID (CONS NAME (CONS PROP (EVAL ID>) ID)))(DEFINEQ NCONC '(LAMBDA (X Y) (PROGN (RPLACD (LAST X) Y}e) X)))(DEFINEQ GET '(LAMBDA (ID NAME) (COND ((ASSOC NAME MACFNS) (CONS (QUOTE LAMBDA) (CDR (GETD IDi) ((CAR (CDR (MEMBER } NAME (EVAL ID)y)(DEFINEQ MAPCAR '(LAMBDA (X FN) (COND ((EQ X) NIL) (T (CONS (APPLY* FN (CAR X)) (MAPCAR (CDR X) FN})}))(DEFINEQ EQUAL '(LAMBDA (X Y) (COND ((ATOM X) (EQ X Y)) ((ATOM Y) (EQ X Y)) ((AND (EQUAL (CAR X) (CAR Y)) (EQUAL (CDR X) }(CDR Y ))(DEFmNEQ DELETE '(LAMBDA (X Y) (COND ((EQ Y) NIL) ((EQUAL X (CAR Y)) (DELETE X (CDR Y))) ((CONZ Y (CAR Y) (DEL} ETE X (CDR Y))(DEFINEQ SUBST '(LAMBDA (X Y Z) (COND ((EQUAL Y Z) X) ((ATOM Z) Z) ((CONS (SUBST X Y (CAR Z)) (SUBST X Y} (CDR Z )h)(DEFINEQ REVERSE '(LAMBDA (X) (COND ((ATOM X) X) ((APPEND (REVERSE (CDR X)) (LIST (CAR Xn))(DEFINEQ REM}PROP '(LAMBDA (ID NAME) (COND ((ASSOC NAME MACFNS) (DEFINE ID NIL) ID) (T ((LAMBDA (Y) (COND ((EQ Y) Y) (T ((LAMBDA (Z) (CONZ}C Z (CAR (CDR Z)) (CDR (CDR Z )V (DELETE (CAR (CDR Y)) Y)) ID))) (MEMBER NAME (EVAL ID\))(DEFINEQ CONZ '(LAMBDA (X Y Z)} (RPLACA (RPLACD X Z) Y)))(DEFINEQ GENSYM '(LAMBDA NIL (PACK (CONS (QUOTE G0) (RPLACA (QUOTE (0)) (+ (CAR (CAR (CDR (CAR (C}>DR (CAR (CDR (CDR (CAR (CDR (CAR (CDR (CDR (GETD (QUOTE GENSYMM)O 1T))(DEFINEQ DEFUN '(MACRO (S) (CONS (QUOT}oE DEFPROP) (CONS (CAR (CDR S)) ((LAMBDA (X) (COND ((ASSOC X MACFNS) (LIST (CONS (QUOTE LAMBDA) (CDR (CDR (CDR Ss) X)) ((LIS}1T (CONS (QUOTE LAMBDA) (CDR (CDR S))) (QUOTE EXPR6)G (CAR (CDR (CDR SN))(SETQ MACFNS '((EXPR LAMBDA) (FEXPR NLAMBDA)}1 (MACRO MACRO)))NIL (CDR (CDR S))) (QUOTE EXPR6)G (CAR (CDR (CDR SN))(SETQ MACFNS '((EXPR LAMBDA) (FEXPR NLAMBDA)(LIGHTS WAIT)(DEFINEQ LIGHTS '(LAMBDA NIL (PROG (ST DR N) AGAIN (SETQ ST 0) LOOP (COND ((> (SETQ ST (+ ST 1)) 8) (GO AGAIN))}) (GR 23) (POKE 752 1) (TERPRI) (TAB 14) (PRIN1 (QUOTE " ")) (SETCOL 2 0 0) (SETCOL 1 (+ ST ST) 4) (COL 2) (PROG NI}L (SETQ DR 0) LOOP (PLOT 80 0) (DRAW DR 80) (COND ((> (SETQ DR (+ DR ST)) 160) (WAIT 150) (RETURN))) (GO LOOP)) (GO LOOP))))}l(DEFINEQ WAIT '(LAMBDA (X) (PROG (Y) (SETQ Y X) LOOP (COND ((EQ Y 0) (RETURN)) ((SETQ Y (SUB Y 1)) (GO LOOPq))NIL))))x(CALC PUSH POP BINARY UNARY - E N L S D P)(DEFINEQ CALC '(LAMBDA NIL (PROG (X Y OP STACK) LOOP (POKE 128 0) (TERPRI) (PRINT !}STACK) (TERPRI) (PRIN1 (QUOTE "> ")) (SETQ IN (READ)) (COND ((# IN) (PUSH IN)) ((MEMBER IN BINARY) (PUSH (APPLY* IN (POP!}) (POP )3 ((MEMBER IN UNARY) (PUSH (APPLY* IN (POP7)i ((EQ IN (QUOTE Q)) (RETURN)) (T (PRIN1 (QUOTE ""m) (GO LOOP))))(!}DEFINEQ PUSH '(LAMBDA (ITEM) (SETQ STACK (CONS ITEM STACK))))(DEFINEQ POP '(LAMBDA NIL (PROG (X) (SETQ X (CAR STACK)) (SETQ!} STACK (CDR STACK)) X)))(SETQ BINARY '(+ * - / P))(SETQ UNARY '(E L N D S))(DEFINEQ - '(LAMBDA (X Y) (SUB X Y)))(DEFI!}NEQ E '(LAMBDA (X) (EXP X)))(DEFINEQ N '(LAMBDA (X) (SUB 0 X)))(DEFINEQ L '(LAMBDA (X) (LOG X)))(DEFINEQ S '(LAMBDA (X)!}p (EXP (/ (LOG X) 2))))(DEFINEQ D '(LAMBDA (X) (PROGN (PUSH X) X)))(DEFINEQ P '(LAMBDA (X Y) (EXP (* Y (LOG Xt))NILX) {(RAN GOXY VTAB TIME MOD HLIN VLIN REFLECT NORMAL)(DEFINEQ RAN '(LAMBDA (RANGE) (* RANGE (/ (+ (PEEK 53770) (* 256 (PEEK 5377% }G0))) 65536))))(DEFINEQ GOXY '(LAMBDA (X Y) (PROGN (VTAB Y) (TAB X))))(DEFINEQ VTAB '(LAMBDA (R) (POKE 656 R)))(DEFINEQ % } TIME '(LAMBDA NIL (PROG (TIME HOURS MINUTES SECONDS) (SETQ TIME (INT (/ (+ (* (PEEK 18) 4048) (+ (* (PEEK 19) 256) (PEEK 20))% }) 60))) (SETQ HOURS (INT (SUB (/ TIME 3600) .5))) (SETQ MINUTES (INT (SUB (/ (SUB TIME (* 3600 HOURS)) 60) .5))) (SETQ SECOND% }+S (SUB TIME (+ (* HOURS 3600) (* MINUTES 60/) (COND ((> 10 HOURS) (PRIN1 0))) (PRIN1 HOURS) (PRIN1 (QUOTE :)) (COND ((> 10 %}MINUTES) (PRIN1 0))) (PRIN1 MINUTES) (PRIN1 (QUOTE :)) (COND ((> 10 SECONDS) (PRIN1 0))) (PRINT SECONDS) (RETURN TIME))))(D%}EFINEQ MOD '(LAMBDA (X Y) (SUB X (* (INT (SUB (/ X Y) .5)) Y))))(DEFINEQ HLIN '(LAMBDA (X1 X2 Y) (PROGN (PLOT X1 Y) (DRAW X%}2 Y))))(DEFINEQ VLIN '(LAMBDA (Y1 Y2 X) (PROGN (PLOT X Y1) (DRAW X Y2))))(DEFINEQ REFLECT '(LAMBDA NIL (POKE 755 4)))(D%}GEFINEQ NORMAL '(LAMBDA NIL (POKE 755 2)))NILN (PLOT X Y1) (DRAW X Y2))))(DEFINEQ REFLECT '(LAMBDA NIL (POKE 755 4)))(D$/h,-?79ddBLDOS )SYSBBPAUTORUN SYSB,EDIT0 ;BDOCTOR@ JBHANOIP ZB CLISP` lBMACLISPp {BLIGHTS C BCALC B UTILS Ctu y{C*9 3? C1R:CTU\Cfgqr^C @D@EE