IMD 1.17: 24/11/2010 19:33:51 11 pascal 1.4I disk 1  @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ &lŗkm HBf     &  EH.FRT BRYAN.PMDH.F%C e U7F ?IO ERROR WHILE BOOTING? 7$ ?NOT ENOUGH CORE TO BOOT?    e   ևߕ vߕ 7| SYSTEM.PASCAL? w7b SYSTEM.INTERP? @Aw  `! mG~d!~  ^\F C& J&  0  EN  ~ TEM.PASCALj$# _~U@pe5w E ŋw Ŋw C! @ D~̋   wTwDԤ eeW 7 ?YOU DON'T HAVE A  ߋt_v @ @ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@PCL1.4Iq!Fxp SYSTEM.SYNTAXji#KSYSTEM.COMPILER*Kl SYSTEM.FILERk*l SYSTEM.INTERP#@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@J SYSTEM.PASCALl SYSTEM.EDITORlSYSTEM.CHARSET.  DATAFILE.TEXTHzʟNEWSET.CHARSET.@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ PLOTALSO.TEXTHzF PLOT.TEXTHzF DRAWER.TEXTHzF DRAWERPLOT.TEXTF DRAWERPLOT.CO@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@DEF FIGURE.TEXTHzF AREA.TEXTHzF PLAY.TEXTHzF0 DRAWING.TEXTHzF07 DRAWING.CODO^EH.F7: AREA.CODEH.F:< DRAWING.PMDH.F<=AREA.PMDH.F=M BRYAN.TEXTHzFMR BRYAN.COD ed  52:'THEN' expected  53:'UNTIL' expected  54:'DO' expected  55:'TO' or 'DOWNTO' expected in for statement  56:'IF' expec be boolean  136:Set element type must be scalar or subrange  137:Set element types must be compatible  138:Type of variable ted  57:'FILE' expected  58:Error in (bad expression)  59:Error in variable  101:Identifier declared twice 102:Low is not array  139:Index type is not compatible with the declaration  140:Type of variable is not record 141:Type of variable mbound exceeds high bound 103:Identifier is not of the appropriate class  104:Undeclared identifier  105:sign not allowed  106ust be file or pointer 142:Illegal parameter solution  143:Illegal type of loop control variable  144:Illegal type of expressi:Number expected  107:Incompatible subrange types  108:File not allowed here  109:Type must not be real  110: type must be scalar or subrange  111:Incompatible with part 112:Index type must not be real  113:Index type must be a scalar or a subrange  114:Base type must not be real  115:Base type must be a scalar or a subrange  116:Error in type of standard procedure parameter  117:Unsatisified forward reference  118:Forward reference type identifier in variable declaration  119:Re-specified params not OK for a forward declared procedure 120:Function result type must be scalar, subrange or pointer  121:File value parameter not allowed  122:A forward declared function's result type can't be re-specified  1:Error in simple type  2:Identifier expected  3:'PROGRAM' expected  4:')' expected  5:':' expected  6:Illegal symbol (mayb123:Missing result type in function declaration  124:F-format for reals only  125:Error in type of standard procedure parametee missing ';' on the line above)  7:Error in parameter list  8:'OF' expected  9:'(' expected  10:Error in type  11:'[' exper  126:Number of parameters does not agree with declaration  127:Illegal parameter substitution  128:Result type does not agrcted  12:']' expected  13:'END' expected  14:':' expected  15:Integer expected  16:'=' expected  17:'BEGIN' expected  18:ee with declaration  129:Type conflict of operands  130:Expression is not of set type  131:Tests on equality allowed only Error in declaration part  19:error in  20:'.' expected  21:'*' expected  50:Error in constant  51:':=' expect 132:Strict inclusion not allowed  133:File comparison not allowed  134:Illegal type of operand(s)  135:Type of operand must abel  168:Undefined label  169:Error in base set  170:Value parameter expected  171:Standard file was re-declared  172:Unde8 "| / COMPILER clared external file  173:Fortran procedure or function expected!  174:Pascal function or procedure expected  201:Error in re PASCALCOCOMPINITFINISHCODECLARATBODYPART TEXT(continue), (terminate), EditEeÍ ^? ǐ^Í ^  á E     .á    =á        ' ( ( ' ) D*?ˡ? D;?ˡǑá á ??n_ڟá _     =>) ) =á    {  "$&ؚ7؞áeá ؞á٢ؚ٢ ؚآ آ< bAA áD á (*,.2468:<F2 TVXZ\^`bdf nprtvxz|~) ٞقق؍+áˡǒٕám|Eġ<ؤښܢ (ٚ ۦNIL Щۢ &ۢۢۢ  j5 5ئ Щآ آ4 4;E);<<> R؟ˡM٣0:٣ á3٣ á,٣'u undefinedئ Щآ آآآ3 3ئ Щآ آآآآآ2 2ئ Щآ آآZ 899á_ 88ˡ8á11ئ Щآ آ آآآآآآآآآ00ئ Щآ آآ آآ8 8S8ˡ8á 8ˡ8Ä  M8ˡآآآآآآPREAD ЩREADLN ЩWRITE ЩWRITELN Щ7 Fܣ E;8!8 8 9L8á< 8 8ܢܢ ܢ-ܢ ܢ7ܢFܢEOF ЩEOLN ЩPRED ЩSUCC Щ ORD Щ SQR Щ ABSܢۚ 8áhVZJƄƅ?Ƅ;ƅgƁƃ ƁƂ B SJ  Ƅ Щ NEW Щ UNITREADЩUNITWRITЩCONCAT ЩLENGTH ЩINSERT ЩƄ;ƁƁ#v @ |Z6 vf4  88ˡ8áDELETE ЩCOPY ЩPOS ЩMOVELEFTЩMOVERIGHЩEXIT Щ++٢٢**٢٢))٢٢((٢٢&&٢٢'',٢IDSEARCHЩTREESEARЩTIME ЩFILLCHARЩDISPOSE Щ########ЩREWRITE٢)%%,٢٢)$ $٢P٢٢٢+٢ ٢ ٢)٢P ۦINTEGER Щ ЩCLOSE Щ SEEK Щ!RESET Щ"GET Щ#PUT Щ$SCAN Щ%ۢ +ۢ  ۦREAL Щۢ *ۢ  ۦCHAR Щۢ )ۢ  ۦBOOLEAN Щۢ (ۢ BLOCKREAЩ&BLOCKWRIЩ'DRAWLINEЩ(PAGE Щ)SIZEOF Щ*DRAWBLOCЩ+GOT ۦSTRING Щۢ $ۢ  ۦTEXT Щۢ 'ۢ  ۦINTERACTЩۢ %ۢ  ۦMAXINT OXY Щ+̀ʀȡgٳlpڡ  ̀ʀʀʀ ڡ ʀʀʀʀٚ LЩۢ +ۢۢ / /ۦINPUT Щۢ 'ۢۢۢۢ/ . .ۦOUTPUT Щۢ 'ۢۢۢۢqb ODD ЩCHR ЩTRUNC ЩROUND ЩSIN ЩCOS  ,0H5 | ؿ"šۂ.  ۦKEYBOARDЩۢ 'ۢۢۢۢ ȡN ܢ (áܦFALSE ЩܦTRUE Щܢؚܢ ٢ :UCSD Pascal Compiler [I.4i](>   -;:u 7_ٟ٢٢ ǔ á   ޢ ˡk }ާ$Äf  ݧ+á٢--٢٢٦PROGRAM Щ٢ ٢٢٢٢٢;٢٢ ٢!á_ á );-ˡ -4ō P Pˡ ާ$  á  ޟˡkޢ ǔ  ЩLOG ЩATAN Щ LN Щ EXP Щ SQRT Щ MARK Щ -   á (Sá  á  C. jrxBN0  Ƃ*.CODE[*]XƂ*RELEASE ЩIORESULTЩUNITBUSYЩPWROFTENЩUNITWAITЩUNITCLEAЩHALˡ á @ @BB s;;ȡa);šJSegment ٢  T ЩMEMAVAILЩWWȡܳF0ܹ( XX +X)+ XX *X*  words long.;;A  linesBšX, B<  secs, BA XXXXXX ۚXp+g( XX +XL*FA9+0(  lines per minute. BSmallest available space = >  words. ;;ȡ);b[B>$=7ݡ  XXXXݡXX؟ˡYYYX ښXؚ   ;;;;ȡ1);ȡ٢ ;;C  "Compilation errors.dn(,6D?A@;;ȡ));٢٢ Щ;;<EF=ǂ$wd B s;;ȡa);šJSegment ٢  NJ; : "!#ڦPROGRAM Щ \8Y\V words long.;;A  linesBšX, B<  secs, BA |YGtSP<MxJتP"ˡ: Can't  lines per minute. BSmallest available space = >  words. ;;ȡ);open . RN L7 Compile: ƂPƂ *Ƃ  ;;;;ȡ1);ȡ٢ ;;C  "Compilation errors.̂*Ƃ*$Ƃ*:Ƃ*LƂ*P;̂*Ƃ*ƂPƂ*.TEXTUƂ*TEXT ̂*Ƃ*ƂPƂ*.CODE[*]XƂ*Y Y Yá _ˡ   á2   ޚߚCODE ̂*Ƃ*ƂPƂ*.PMDTƂ*PMD ;ˡǑ @C   7 _ٟ٢٢    " " ˡޢߚ á  á  ád    öń ˡ%      ł  á%    ˡ Ǧ ٓۢۢڢؚ      ˫ á  ˫   Í  oo    á̜ ˡ  á ۥۢ ۢۢ ) Ä   آ ٚآá>   ޚ      ˫ á á%     ˡ  á ݥݢ ݢ ) Ä  ˡ ál ˡ áá&     ݟˡ   ڢ ۚ,ٟˡ)گ ٧,ˡآ,á%    ޚá؟*/3/"jآآ ái# # á)  ,ˡu , r á3 ݥݢٚݢݢ ݢݢ7   G  ݚ á   ޢ ˡk ޟˡ/ á&ˡ *áǏ š f ޚ إآ آ,آ ,$ ˡ ˧  l   V V V  ٟ %>l ڟ˶zcڧ+ڧ*˄2 ġ%ɡ܂4Y á+á$ G G ,á á  ޚ ɡ۸km2S@š  ڢ ڢڢڢ ݟˡ2ȡ%ݧ*á m ݧ+á Ǖ ߢݚq ˫ á/ ł ڢڢ ˡ   ٶ˄/ڣ %ڣ áڢڣ ڣ Ȅ ڢڢ   á   ߟˡ ál ȡ 熚 ߚˡ9 ٢٢٢ á   ٢ ٢٢٢# #á!    ȡ ǎ  ޟá-á  ɡ _  ł á  áU   ˡ8 ȡ,* m    ء n     _ޚ á  *á  á   ޟˡ&ާ+Íާ*Í s  ާ*ár   ł á        ˡ o  ޚޟˡ% š ǩ M.áH  á    ٢ ٢ ٢٢    ˫ á  á  á (  ߢޚޟˡ ,(ߚ  ٟá249; #áQ_؟ٓ  ! á+    آߟˡ\ݚ˄< Íȡ .ǀٿBǀ &á& ȡڢ  á   ݚٟm. nء` Ǐ <; :;E :š >ǀ 3áná šˡ ۚš$ ġ á  E  Ǐ á ); áá_ ܟˡ?ܣáܣÄܣ Ä_ٳ0d@ HJ'ÍȄ'á ؂ ؂ #Ȅ؂ خ @MÍǀáܣ Äܣ ÄޓǠ ޓá 7E;ء:   Gڳáقšخáخǀ  خjȄ 3ǔ :EǕá EEá a۟ˡ>á-ˡ& á    ߧš߫;ܣ .aǀ Ȅ ?á(ۢá  (ۢܣ ;EؓǏ   17 F ܣ F7ɡ77  ɡ. _ޡ 9á ۢښ(ˡLJ !خ ٢`m ۢۢáޓܢۚo ޓܢۚáP á4ޡz  ܢ ݚݟˡ x ܢ   `mɡ(ġ 9!٫خ5R ˡr*˄&á*á33S,á'ޓ{ á  "á=ޡǡ ܢ  á    39  88 67)##:<> 4!zO˄ ˡS>á+G ˫ á  Gٟˡ>ݢ ۚݢ܂á۟ˡáݢ_8 7 FءE;$ V   á  á  á  á  _ؚá%    G,ˡu ,/3 >    !á  ˡ"܍  J9[ |X p86    áw  @ ! @á  ˡ 6  áޓܢۚo ޓܢۚáP á4ޡz  ܢ ݚݟˡ x ܢ   ޚ7   . ˫ á á^   ˡáޓ{ á  "á=ޡǡ ܢ  á    39  88 áy  ȡ ㏂ޟˡ  ߚ  ( (  á( @8 7 FءE;$ V   á  á  á  á    7 _á 7á'6  2 Í Ä á"   +ˡ}  á8خ2خ"ɡٮM2خ: ˡǖ g   8ˡń P; P P˫ ɡ šث $ ٚ+x á+ˡ/áܟˡˡ NJ  >ˡ ˡq ܟˡ < , ! îá2خá  ˡ +ˡ} á   ˡ +ˡ} á1M2خ٣〮šNj ˡA*á ! @$ńˡá  ɡ ٣šث٫+áMM" ˡ ˡ} ás áeNORMAL Я áˡˡ nj  áˡ á ǘ   # ǐ  " 2 ILOCK Я 2PURGE Я CRUNCH Я    M" Í Ä á"   ˡń   WˡO Í;áá ˡ çáǏ } Yá  +ˡ} } M E?9ˡ )ˡǏ  MǏ ˡńǍ  P P W,WWpá    (a73 7ˡ +ˡ} á  )á á á}  }  3ۮ .)Ä Iá >ءǚ á0)á(=ܢܢ= $ ˡ )ˡ} á  " á   + ˡˡ}  ˡ} $x" ˡ' áˡ át á "  ˡǏ á   á  "+ˡ} á  +ˡ} %ááǞ eˡǢ WˡQ ٧*Íǟ < -ٟˡ á t ߮خ M+ á   *áȡ3á  <  á  á á   á á"ˡ +ˡ} *á  خMá   ˡ+*٣ á٣ 876ˡǐ #;=? E.d ˡhP &ǐ G(á%27á0  !á - ؟ˡأ á أ أ } } R+ˡ} á !ˡ"g 0 XEv   á  ! á'  6  á  "+ˡ} á( á"+ˡ} á    +á  á   ˡ +ˡ} Má Hۧ++Ä dž -ۧ((Ä dž  z'_F $ &% (`  á%٣  27٣ ٣ ٣ á'٣  67٣ ٣ J/ö9  ˡ(á!)á "   M+ á    á   á á   ˄ٮ"ág  ˡK+ M :* M)) M M   + ˡ +ˡ} á    ˡ +ˡ}  " ˡ } ˫ áٮM  .ö7. ˡ(á!)á "ˡ} ˡ!áM )  ÍM{wsokgc^+V á ˄ۮ&؟ˡ ȡ á& &ˡ +ˡ ا+á ١M ا*á8١oL)&(&$|~|zL C:a_cecacaoagݡá  " z +á á# "ˡ +ˡ} M]ا)á ١MJ ١M5 )ˡ ݕ*+á ا*$#M: M M.  ۣáۮ&ۣáܮܮM} ˫ áۮM57 !ޣ á ޣ ˡǐ áٟá~  ۮˡá+  *  á) ߧ$ ߢ߫    "ٟ˄ڟˡ٣ áȡW)Äá <ç! &+ڧ* *  á   &ˡ(ˡ LJ   á ߫ $C Ä +&Pˡ ݕˡǎ ګ+á ág  á ˡǎ ǚ  ˡˡ Lj   Ȅ   áF    lj ݡȄǎ ٟˡˡá  ٟˡ~ ޣ áVޣáޣ ;ˡ Mޣ ޣ 4ޣ áBޣ %ޣ 7áNޣ ޣ áO ݡ 㔜ޡߢ߫lj ˫ á  ޡ, = = .ޣ ޣ ޣ ˄ޣ "أ áأ á t ܳo"== ==V&Ni "$&(*,.02468:<>@BDFQA1ܹ !ݡ2  ˡˡ} )ÄǏ /áM M (ˡáá M &~$&&'á &۟s ˡ ġ} +ˡ+á*á} +ˡ+á*á} + >˄ۧ++Ä0#ۧ**Ä   dž #ۧ**Ä dž cۧ++Ä dž    Q  F @ޡ*٣)($(ǒ 8Z<I: ǁ 3   d)" #áOá 6 (ڕ ٕ 1#áZ_ܤˡ_ܤݟˡ"áǥ  ǧ _ڤˡ_ڤ؟ٓá 9ٓǧ   7R n*(J á  ġ U?  J \<  ۣá ۮ)u +n   á  :< D+ ٮ á 4  ( á 9خٮ (خ *g ,` -Y /R .K 0D 1=6c  "$&eYTHQE@l!dš ٮ `, 9ٟ߮ˡ٧*Í ǐ  á    ٟˡ_ P&  Kf  v(ڟáR@ڧ+á$ڧ)áڧ*áڧ(á3 %!+á*á dž (á %۟˄ۧ++Ä0#ۧܟˡ ȡáǜ   ܚޚ۟áښǓ ˫ á  (**Ä  dž jۧ++Ä0#ۧ**Ä  dž (ۧ((Ä  džJڟˡ9˫  Í߮ ݟˡc ݚܟá ,   9 š     f& D$ˡ ەˡǁ ؚ,'$)á ݟá á  @?mNO+- خ (J˫  á خ  )Í ˡ ȡ  $ )Í ˡ ȡ ۟˄á+á   ǁ 5 GI X. ٮ @ خ á 6 (9ٮخ B/áW   á ǂ ˡ# ' P' a ۧ*á ۧ(á   Ǜ ؟ˡŧ* Ǐ   A áW ˡ>ˡǐ 0 !  ǃ  DŽ  s $  ˡ  ǃ 4ǃ  ؟ˡç!  Ǒ 3   ǀ @ˡsˡǐ e V؟ˡ!Dž  ~m0*564/1(0!7/ 1, )ǁ ( Zrç! 8߮ 6šá40Ǒ 7 @ !á 6 $@خá ˡ ō  á ) ˡ ȡ ٟ˄+(á 9߮ ]0á    3Bخˡ}áq ɡdá*  *ޡJ)Ä$6ˡ-  )˄Pˡǁ ٫٫ lQ!  _á_ۢۢۢ0 8_ۢۢš nj ˫   š  ؟á    ܕ  F 7 ); <rAugr Sepr Octr Novr Decr ???r???r???MIæ((67MbتP&R Parity (CRC) errorPZ& !L"<##$$%~&&(2'*V+h,,,+--B../r/-j5_ ˡ `mˡǨ  槁 Bad unit numberPBad IO operationP Timeout errorPVolume went off-linePFile lost in directoryP .á .CODE:98:9 Bad file namePNo room on volPNo such volume on-linePjFile not foundPTDuplicate directory entryP3   EKCommand: E(dit, R(un, F(ile, C(ompile, X(ecute, D(ebug, I(nit, H(alt [I.4a]P')%$x Filer error!P 3dP1# \Blocked volumePUnblocked volumePRˡM o쓡*SYSTEM.EDITORˡ% Restarting... U not r PSáPunRPPblkd volXP File name YPGFile or volume naHd3کޢٚޢ ػޞ$4٣٣ Ä˄,٣ 34٣ 4allowedV Running...:Rád4@45$N<ˡ5ˡ5^5š';F4ĥ_˄_562  ( b=PASCALSYFILEHAND >ɡ>؟ˡةأߟˡáuˡo ńM2 6 +*ˡ ) ,33EP,L))y)sok!g"c$_([#( áڦ????????ЩA@_ ˡ  _ߟˡN2 2 W'S.O/K0G4C5?2;9BZ2;SOK#g;UI'U$U(ISA0I,QábX ntT p ,á%á)áM(J˫  á  _ߟH4jjB!P$$>&''''*:)^++-z,-4.(0Z.020f3d4445T9:*5;<[Pع6Volume to file nameP'File to volume nameP <=>%NdbT- ˡFdC:TOd dCIllegal change <`>aP file name P scan string P volume name P- Illegal forma:=5d4dC<@. F ڪd | ȡtP - char. max >PNo directory on volumeP File foundPVolume already on linePOutput file fullPÍ|å|ddtlšdStdl-Workfile already savedPNo workfile to savePZá TextP CodePP file lost [PI:!(T ݪ(á=ڡ%8 Pd 0 1A-M 6Dangerous! Suggest using ? on wildcards to same volumed:<>@BDFHJLNP "$&(*,.02468:<>1A -M Ȅ-M ç-M M:!@BDFHJLNjlVXZ\^`b%'nprtv|~iU9"$&(*,.0268(87:  ?  ,,Xá8Q,:,Pá2 ,d &v *ˡdȡ.ۛ ۛۛaA 0,1A 88 d8 =)-=N dЦ6 D ؾȡٛ š* &) $ ۪#  á1 ۿ)áڿ)š )b# 0  ڡ,-á -ˡ ڡ4Put  : in unit ڿ۶Ȅ: ȡز)(ئ(ȡA)ɡ))$=!Put in :&(ڡ-l ضض˄ ?ˡ:ئxɡ ...too long <ٹ@dAdBd ɡmeP, Volume namePNVC*d"P expectedYPr:UZ 6P:á ; / (*áH:á ? : 0 ($ˡعWildcard not allowedP*á not PFirst volume/file name was k a wildcarduP - d:W, dˡ2ɡ  & file loadedP3áNo SPعfilePvolumeP46"Illegal X 2 .ݪ( =T/! 9==- 00á d/-áB}0 Ed á   DdCdd)Ъ,,)оɡЦƀ.TEXTƀP+̀ƀ=ƀ:ƀTƀ.CODEƀPT̀ƀ=ƀ:ƀTƀ.PMDƀP7?)ū7::خ')*á)*)#áخٮ)خؾپšSOnly }+~T}~š}( already exists.~(+ alread . characters total allowed in a wildcard searchdvš% ȡ;6y exists.(T already exists.á Remove it? š Remove them?d d ٓdlá  M=?6(d| Yá&}~+T.T=.T= NewHRdd'T.TEXTT.CODE=îM:!(ЦȄ0%=ȡЦÄ? &=; LQ54ChangeChange to what ? `TdPdA6545æ<dæ Цdо ЦI)$tl|êX=?6*dtl=6=d556Change Q554*IMM:!(5P"Ä,I:d )dI:!("  dJd ,Xˡ,ç,YÍ-W--M =W--M "dЦg:-ݡ what file what volume ? & о Ц-!ؓfX : changed to =:}W =?XWÄ?=X=r:6D,@d wإåTMIe=:T already exists; remove it ?  ,PX:c6  c changed to TcTl dd! Td ,YáDتP,پ, پ*تPPPRڪP$HdP"d4؍ءЦЦe&"7Z^c$!Remove@RdPd6 PUPR$%GetHRddT.TEXTT.CODE==;=:T RQRemove Q7r=:-QM : -QM  removedRRR%.TEXT=:T.CODEء5=:T .TEXT loaded(%QM8Update directory ?  Yá[QR 1A FQR-M ȡ*QM١5=:T .CODE loadedٍ.T=3d" <̀ƀ=ƀ:ƀTQRM-"RRQQ1 -aP"dKP"d2 = : T  removed  +Ɓ+ transferred to Ɓ+ Ɓ+:Ɓ+'Ɓ+,XˡP4ڍڡЦЦ &/A"dṔ6́4́7́8æ*Q`Td \6List Q-AQ-M E9~ $4MakeHRdd(,˧,Y˄,Xá4bP"dLa`\Ṕ:Qʁ:ȡ)æ--QM ï-QQ58æ6-QM -M ,ʁ9-M  "d0=:T made44Ц 'Prefix titles by6Vdd files in directory, ʁ4  blocks used, ʁ6  unused, ʁ7  in largest area.4 ЦЦsw4".?The current workfile is :. N/;= Prefix is ;:&`(9Files on volume 0Cáo workfile&l#%á%Put in ':0Put destination disk in unit #0 R on C -rC-C   File name Size Last mo( X,,&'T/!','-,#áضò} &,l,á&`ضd-$ File name Size Last mod Place Bytes$+ض8%ÍK5%ا7ò} 67GBdd Do you still wish to continue ?  Yˡ X,Ud X,,$&()%8+ء 4%$+ا4 $65؄6G2988 99rX,d = =#á,,Xá5,á,xUd Í% X,X88*ٕڶ7šڸ7šC6ڂ64{{{ Unused }}}   *b%Q54Transfer To where ? tUdVd5056 Transfer Q5545P"d,47#RáWriting&.RR-QM -QM ,5454SYSTEM.آÄ쥁P2S%,ç,YÍ"d Pu} ]́+Ɓ+Possibly destroyآ آ5 آšG آ -rآ-آ  آ directory of Ɓ+ %Ɓ+: ? )Ɓ+ Yˡ #VbÄ22 X㧁WÄ5š2á  أ  ILLEGALPpBad diskPvCodefilePfTextfilePVInfofilePFDatafileP6R"çRÄDR85X P2S"d "dId5ń GraffileP&FotofilePxj\N@2$ * -Ɓ/4R5ء:Directo k b!llòCń!C"dnX:c6  ćry listing of`TdTd8Ɓ0=CONSOLE:P1XSd }0 45PP ; is not big enough to be a bootstrap, no transfer attempted0+"ˡI8 Error in attempt to wri2%Examine blocks on PddBlock number-range ?   1te boot, boot area now undefined/ Boot transferred successfully. Ƃ+ 1%Zero d  ɡۀɡ ܫQQܧ-M ɡ)Risk the directory ?  YˡR-M ̂Rʂȡ-Rirectory of$Pdd0&"d-ˡ2Destroy =: ?  YˡDuplicate directorM ̂ʂʂĄbؓ%File(s) endangered:ʂ ʂʂ ʂ RRy ?  ,,Yá ,XáN,-ˡs-M ħ-M 'ȄX-M  blocks ? ء&Try to fix them ?  YˡܫR̂RʂȡBlock R 0ƁRƁ0ƁR"á 0 ,,Xá,Yá -M ,YˡD# of blocks ?  ɡ Bad # blocksNew volume nR"Ɓ  may be ok* is badRɡRRšRRRɡá5Block ame ? P :á ō6d  CM   is still badLBlocks   thru   are still bad Mark them"d 55 .1Zpd)=- 0%Version of 3 October 1979, 1.4i : correct ?  Yá00"d: zeroed1 n055Volumes on-line: 0 0ȡ}0 ٦0  : پ5إ/:3%E Date set: 1..31-Jan..Dec-00..99P'Cá No current dٲ? System files.ٲ; Default files. File Character-structured volume.ateW Today is C -rC-C   New date ? P00 Prefix is - ;:/ ; .%Bad blocks scan of$Pdd0 oQyQ 0QQōۡQŧQ Ʉ CQ&"dRQ}0 ́QʁȡP0Qˡ4RRBlock Q  is badQQR3ܥń=  =QQȡ9QAĥQZȄ=QQAa =QQQQQ Qȡ#rQ  bad blocks{ /Ƃ+ƃWVolume to get boot from: P:= CQ QQ3ܡF5QyQ 0QQcȫ55 C Qd?- 00á̂SƂSPƂS:QƂSPƂ+"ˡ1 is not available, other file: áƂ++ˡUá-M C0 - New date is C -rC-C  J   SYSTEM.PASCAL=?-M ܕۧSšSš܂܂ۂ ȡd02ڂ"ˡCRead err^or, rel  , abs  ܂܂ۂ ȡd02ڂ"ˡCWrite error, r P  ?el ݕ , abs  ۂáݚނ0 -= : crunched _ 6_ 8/efAA" w ߡ Please re-boot:WbkX5'3),, á%$&&67 E@ 7U@~w&nE75@k7w d7w 7 \w V-t@3ЦELFiler: Get, Change, Transfer, Remove, Fast, New, Date, ?, What, Prefix, QuitP6,?áIE@Filer: List, Bad-blks,N pazE J3 E@ >8 63(?( E@ - 7n? ~7> Ext-dir, Make, Vols, Xamine, Krunch, ZeroP6,x33EP,L))y)sok!g"c$_([#   E7 w wU &    #7 7 7 zv x7 vEW'S.O/K0G4C5?2;9BZ2;SOK#g;UI'U$U(ISA0I,QábX ntT p l7 h v7 rEj7 f \wRU W 7 27 0 ,Z 2*E@ $&?  w UH4jjB!P$$>&''''*:)^++-z,-4.(0Z.020f3d4445T9:*5;< 6 & 7  ~w ?  "U@ wPrTۺ߈~0Tp`R.nDzT*áIE@Filer: List, Bad-blks,Ez7 vwBd ^pr`&& `E e `&EՀ~ tvء (may remove files!) ?  YˡءARR-M ȡ/-RM ̂ʂʂĄ RM-"RR-M Ext-dir, Make, Vols, Xamine, Krunch, ZeroP6,x33EP,L))y)sok!g"c$_([# Má dC BAD.xxxxx.BADQ̂Qʂġ. QܲnQ0ܲnQQW'S.O/K0G4C5?2;9BZ2;SOK#g;UI'U$U(ISA0I,QábX ntT p Q-M R٧-RM ɡRRRM-#0 -  markedkN%w(j4%CruncH4jjB!P$$>&''''*:)^++-z,-4.(0Z.020f3d4445T9:*5;<DJPV\bhntz,,`V\`V\@F`@na@n@,* z& & E N\dEt& B~ & >e U,,,,,,,,,,, > L  j  @ B~  Ձ@  a a!~F@  B~ ~ E`E `E@ @` dd&`f&d&b& w@ w  AFՀW  `E e `&& `E e `&EՀ~ EՀ~,]A@AK w WFlp   mAF! &N  7  ҂ ~  E e ` E   @ ` G ffD e wn5 whDe C8 B@B  7z   7H 76W wN B   6 C@ e E`E``B~A EwwDw N  -@`@`( 7E E7 ~ & EE >d`V  %  D~ " ~$]   P~P~NPP  W  ~~% ``!~$eί E D~ D C~ %  D~  ~&  AA~E e @`& E&~AA~%@ eAp6% "1, 1,1,^  5 ^A 5^E e @`&AA~E e @`  `` t @L A@@A&Daef  _09E A Z ꆃ > ѕ  D@ f ~f{fxfufrfoflfifffcf `f"]f$Zf&Wf(Tf*Q NKHEA tBt J@ P  ``f~ ``A~  ҇ d ``&& `    R-NDE     7 7  @   &fEʝ@W U@ -T~ & 7  F  <? :? - 7   x נww w ʕtʕ  Q~EU  7 v   j7 d ZEeN7H  >?0_ (f&? 77B~ R~@A @`e eJ   C~C~ %  5 J <  p UU Ve0   W @e@ E@W C~C~c7 "| & @  z7 "| 7 ,#7 #7  7 v$7  7 z!7 %\ vw~- E&@W E  t`  U&E w e Entte e@ BCzEG@HPtJ$LM nO(kQRChTV焵W!cY_[\^^k `#E e' e2-.E$E7  e w$$$$$$$xNr$$$$$$$$axXc'exfhShjQYkoNmo9?pIrs|ouEw7x߄z @|Η}½  & &2&0& . &$$$$$PE Ґ~2 wU &f&f7 6U   0E7 j\zh7 \bz7 Nbzr7 Bz7 ,z6 \ 2   \ ɝ^& _E7 6C DE!:7  7aehD A    W  m e 5`\w\e w5 5@ \ɋE 5\\\..waw7e:wXP@P7n@eI70@wnM)w\ 7 , ßz 5Uw. m e  ɋ e wvr@p@@J0F26|@*&'<)(+$ J  E     7 7  @  27 !ׯ+U E *$ND'RRAY,EGINASEONSTIV'OOWNTOLSE ND ORILE.ORWARD"UNCTION `    ͋D 5|w 5B N  5 , W#D  7W OTOFN)ABELOD'OT&F R(ACKED+ROCEDURROGRAM!ECORD-EPEATET*EGMENT!HEN OYPENTIL΁?Zw w   D5H5   :@ S~ e&-"wn.5) 5| ARHILEITH%.J[j{ - e6_ 8 E w 77 :  .-& pU`E@ wHw .B  E7 _ wU K E|7 xvv vVFU@ % eC ~% C ``` ez&f   w  D& &&@7  8#D& && 6  A7 ^v!#! ##!# ###"#" " " " "|#6 u-@>m5 <wr@6@>6@>6- @eB@m>AmNPP  ~~m e\ \S\ e& @7  #`#e\#f& \:יc&>X4%]@& & >m *@eBA Amf&f& w-h 5 >fff& w-SW-UW-& & & D&&D&& @%7 rv!<$  IA e e@ e& & & & & W  @W*fw@!5 ,*fwtW# :W-$@  >+fwBD&&e #@  @6 7 v!$6 6 #?%-0 @    eff wl :wv6 @ @m5 "@>m5 6׳f&& @׳@f&7 " d% v!,%f&f&7 l"n%" " " " "  % "`%   \%f&~wD@6@>6@>6- "@@eB@m>AmNPP  P~P~m>m &: le2Je7B7j eeePPXXxhPXp \ e\>:L]L?ƪ@ \fEA#& e@ & f& f& f7 v! % ff w x\ \S\ e& @7  #`#e\#f& \:יc&>X4%]@& &    &@& &&  'Z7 f7 VVw L7 L"'@@'47 4 CptE`eE -& ez\& Dr)&&\   5@5@7 X  v! " " " " " n" " 7 m-  ` ~ m- ` ~-D' "  f&\  \& \\r1@\[?\ ew & ?U?*@ڪAD  ه   5  \d '8'D' et   p t `mwE : 7 f C_  fW & @&&&&7 !""!n"!v! !" v!  v!! !"4"e\\;@\ \N @  t7m7 El7h7^ 7\ZZ7 Vev 6 Fe    =@f&ysE[\pCf&f&\% a @w   6 6 &  f ..& wt  {()7vP @ 7v7vx7vee~m m7vwt{2) wvP6A  v  6N\z\\\ N A f C %C B    \ A 7t7v 7t7vx((((n(()))n(ff w   w :hv  n`& , @ R , *^/ńȄ ^ to @ + 3R**ȡǀ ɍ8%ńAš.ń0á š肂蕿BšT뾕A''fT آǞáInvalid value was آ ȡ4 š킥뾞<X h6!}?^EPlease put volume ,outside range of [آ ..آ ]Source string length was آ No user program linked in6P"dṔ6́4́7́8æ(, exceeds destination maximum length of آ *" )In*Q`Td \6List Q-AQ-M ́:Qʁ:ȡ)æ--QM ï-QQ58 source line: 46b  ./ .+  Variables in +-áprogram æ6-QM -M ,ʁ9-M   files in directory, ʁ4  blocks used, module ȡ)3 ˡ3:3O ʁ6  unused, ʁ7  in largest area.4 "d 55 .1Zp 3 3 Í3 + ٦:=    &Ȅ٦š r  - ORD( )TġHǀ ġ#٦ ''٦ CHR( )d ` : @5 @@eBA Am f&f& w-?BAa~ 5 >fff& w-#W-%@' B B3$ B@ ɍW-$!W/ 5W->>= ,fwzw Bew& RZ b`E@X d&ŧ7ȡ5ˡ0݊ Bġsá  ȡ%.<@ R<@ b<@ `<@ X<@ d7.4d?Z  w dU@Xw ^>v.<@ d<@ Z<@ d<@á.ˡ*ɡe e+ e ܕڂȡ 0. X&<@ ^).Z `6 P& b \7 &<@ ` <@ P <@ b$<@ \Y.\ X ġ0ȡ:b"v3˶3 ˍ.> &PASCALSYUSERPROGPRINTERRINITIALIGETCMD J333 3 333!!OOPS!!Щ@ Z á{ NIL }      ˡá ˡ7̂ƂPƂ QƂfile lost in dir( bad file name(no room on volume(volume not found(file not found( dup dir entPP Pv\ Ɓ-(š4))EƀEƀP).TEXTU)ry(nfile already open(U file not open(@invalid input format($VB.{hQ> IO error:  XP ȡ ؞&.,,˶,Ä ,,E٢:(< Unknown run-time error(Value range error(No proc in seg-table(Exit from uncall٢&P٢&?EEƀEƀP.PMDTP,æSYSTEM.Eō9 in System, to exit)*T Ɓ- Dump to file:Ɓ/PƁ/Ɓ/́XƁXƁ/PƁX.TEXTUSystem I/O error(Unimplemented instruction(Floating point error(String overflow(Programmed hƁXPƁ/"áv./,́.3ʁ.ʁ.,á+́.+/Info written to alt(String too long(hString index out of range(GArgument out of range(*"|\F0/)Can't open file Ɓ/  )01E1ȡ0E1Í01ydE*4. 6,V| ~ :n n,or(No proc in seg-table(Exit from uncall10  0%a3+أ  أ  DŽ +ƁW`DsDsD nn ndnn'ýʁʁʁX-N3,>:+/BU(&l]  "$T8 ,---**SYSTEM.MISCINFOP+"á,+ ́ʁ>+>ʁJ+J ++n  ȡ,}ؤ---*,EDump: P+$EEP Up, Top, YP+,ˡ)EEPDown, Bottoۢ0ۢ ؞&}CONSOLE}SYSTERM???}?á';??m, ^P ˡ!EEPEdit, VPEEP File, QuitZP'Qá` 3Ɓ_ٟá'C &"á}PRINTER&"á}REMOTEƄƅ/Ƅ*SYSTEM.CHARSETF(á ٦TRUE á٦FALSE V>`ߡ٦ *NOT SET* ޡ( ߓ /3E"223 8. to exit)*3 r unknown cause(٦ ޓ3Zrˍ"á  hardware error(illegal unit #(illegal I/O request(data-com timeout(volume went off-line(    R.٪PƁ.ƂZƁ.́VƁVPƁVǠƁV؞"ÚƁ..Ú.ۤƁ.Execution error #  (*>Já2š"áǀ"áƄ  ̄+ʄ+ȡ   ̄+ʄ+ȡƂ  Dh.|...:...P`.CODEۡ@.TEXTۡڡ..P..}GRAPHIC :ƄPV77::9CODEU.! No workfile. Execute: šA.á &988:9  6    .Xƀƀ.CODEƀPt   TE?Command: Edit, Run, Filer, Compile, Xecute, Init, Again :: F7 :9CONSOLE:(:9SYSTERM:(8[I.4i] P'T)S%SjTT|S@*SYSTEM.EDITORc *SYSTEM.FILEROKFA=8dAX:986ë6!:%蓡$0P= "3&(*,.Mˡ  š*SYSTEM.EDITOR &+ *SYSTEM.INITSystem re-initialized,`f VPV77::9"á *SYSTEM.INIT8 7 š  š*SYSTEM.EDITOR=á5%:.988:9  6    .X.CODEt :98:9. +ƁW  á +:: F7 :9CONSOLE:(:9SYSTERM:(8 28lN&d4 TT|S@*SYSTEM.EDITORc *SYSTEM.FILEROKFA=8dAXڪP--áOPPáP/@P"áR.Q.Qȡ@.. č-O`.R/.SRPRSR0P= "3&(*,.Mˡ  š*SYSTEM.EDITOR &+ *SYSTEM.INITSP.. Bad block #0! not codeH-á"Illegal file name "á *SYSTEM.INIT8 7 š  š*SYSTEM.EDITOR=á5%:.No file Qv 2*SYSTEM.COMPILER*SYSTEM.SWAPDISK(7   .CODEt :98:9. +ƁW  á + Compiling.8 :..TEXTؚ*٪Pء6!á-E** Stack Overflow **PEE* :9"8}? * INFO".GRAF.FOTO!}áë  B >Ä /  !š Í 7ÄȄĄMȄqfȡD ōɍ ō ȍ dč "ÄT ǐɄ96ń}66! á } 쓡ë  쓡 ! 8 ,} Ä{횧 :˄˥ń á   uš  gá   , Ą:쓡"á  8"ë á 쓡-Ä+  ɡ"á M  áMš1 ˡ   á ͇ +>ˡ $Ꟛšr#ń@ 񂾲y 񂾂0 ń Ȅ88s ˄ 8sB$$>:&ˡ,ˡ sš s! }ÍV}M ˡ!  ,ȫ, 넡T%>ˡ.ˡ sš sJ&$&::Eń, } ,Í1} š˄  `" RE:E ERT'Jɡšɡš   (  d˯7 H ȡ   P&:*:azȄaA:)Type a < space > to continue:) 0 H" ġ  *@#ٕš ګ۫ š۫ ګ,.& XÍ ˫X `(ުP22ȡ7233 ȡ 23aħ3zȄ 23aA22   ȡQɫ  ȡ .  .ȡ? ȡ  ġš*á ?:22ȡá;2á!2ȡ5252š[2  á ġMáš3 삫 d #( -2š2222ȡ2š5252á4x4]11á4^1šX42233y  Íáɡ 럚肚Z ū 3042221ç42ç1Ä2*á444ńi55P.TEXTF.CODE4. < áš < c@B B Ä $ B šš"š Ą  ˡP %@B삾 0 Vá " *áá "ˡ ˄B"ˡ\ š < ń<ˡ0á ]+-Í-ëy 0>욹  - v /šá.Ą ɡ @y á +-Í-ëy 낫šꓡš땫ĚQ삫Ú< š 0.áBy0$yheEÍ ^ "á50 ɚ j ɍCá >듡ɡ 퀞$ $ # Bá    Q š *3á+   T p꾂ȡ龞š  4V j ɡ 逫-á-32768 Rġ?n꾂(ń꾂Ȅ4š뾂á뾞뾂NPńȄ g>@ << á6铡,00ń0ˡ nɡa ɍB BB/"ˡ ( ! 767 -   $ $ $' 푞$ $ō  9S328˄ šá  d</ dÍÍ $ġ $ $ $ȡ&  0 $čˡ 퓄 Ä퓡  dÄÍ" ˄"ɡ^   .ˡ>  Eɡ  -푫 š 0 0 lġ-   킂.   dá dá C#C˄ C    á&á 핕 킿:  핂 0 . 0 핂 肿 ɡ  , Mȡ龫} -/18  Äɡ3ġ$ꕫš 龕龫!낾  2 d?š !  L((VFl8 Z*n`& , @ R , *^/ńȄæ6-QM -M ,ʁ9-M   files in directory, ʁ4  blocks used, .ń0á š肂蕿BšT뾕ʁ6  unused, ʁ7  in largest area.4 "d 55 .1Zpȡ4 š킥뾞<X h6!}?^EPlease put volume XSd }0 45PP"dṔ6́4́7́8æ3,   ^(PASCALSYEDITOR S2 S3 S4 S5 S6 S7 *Q`Td \6List Q-AQ-M ́:Qʁ:ȡ)æ--QM ï-QQ58S8 S9 INITIALIFINISH ENVIRONMBLEND EDITCORE   D"ۊ)HۊܳHaFæ6-QM -M ,ʁ9-M   files in directory, ʁ4  blocks used, D!٪P what marker? - ئ Щ,- V,Vȡ,-,,,ʁ6  unused, ʁ7  in largest area.4 "d 55 .1Zp t% . Type 1Error # . Type  á   XSd }0 45PP"dṔ6́4́7́8æXSd }0 45PP"dṔ6́4́7́8æ*Q`Td \6List Q-AQ-M ́:Qʁ:ȡ)æ--QM ï-QQ58*Q`Td \6List Q-AQ-M ́:Qʁ:ȡ)æ--QM ï-QQ58æ6-QM -M ,ʁ9-M   files in directory, ʁ4  blocks used, æ6-QM -M ,ʁ9-M   files in directory, ʁ4  blocks used, ʁ6  unused, ʁ7  in largest area.4 "d 55 .1Zp.ń0á š肂蕿BšT뾕ʁ6  unused, ʁ7  in largest area.4 "d 55 .1Zpȡ4 š킥뾞<X h6!}?^EPlease put volume XSd }0 45PP"dṔ6́4́7́8æ? in #4P'pá,##&á=$ *6**Q`Td \6List Q-AQ-M ́:Qʁ:ȡ)æ--QM ï-QQ58 XSd }0 45PP"dṔ6́4́7́8æ*Q`Td \6List Q-AQ-M ́:Qʁ:ȡ)æ--QM ï-QQ58*Q`Td \6List Q-AQ-M ́:Qʁ:ȡ)æ--QM ï-QQ58æ6-QM -M ,ʁ9-M   files in directory, ʁ4  blocks used, æ6-QM -M ,ʁ9-M   files in directory, ʁ4  blocks used, ʁ6  unused, ʁ7  in largest area.4 "d 55 .1Zpʁ6  unused, ʁ7  in largest area.4 "d 55 .1Zpػٳ قػ0  (|š  )1 BXSd }0 45PP"dṔ6́4́7́8æ + * )( '&%$ #"ȡABCDFGIJL M P Q R SVX*Q`Td \6List Q-AQ-M ́:Qʁ:ȡ)æ--QM ï-QQ58Z,>.+-?/=<٢>á ٢P٢N٢P٢NJ٢٢!٢ ٢ æ6-QM -M ,ʁ9-M   files in directory, ʁ4  blocks used,   V)+'09ȡ %$ ^ƓƔ>Edit:Ɠʁ6  unused, ʁ7  in largest area.4 "d 55 .1ZpƓ*SYSTEM.SYNTAX"á' ')Ɠ'̓̓̓ʓʓʓ Ʉ̓ʓ(áʓ̓XSd }0 45PP"dṔ6́4́7́8æʓ ʓ0̓ʓ̓ʓ ˡ.')ʓ ʓ̓ʓá ʓ̓ʓ áRʓ̓ʓ*Q`Td \6List Q-AQ-M ́:Qʁ:ȡ)æ--QM ï-QQ58)ˡ>̓ƓƓ Ɠȥʓʓ̓Ɠ Vi2(Reading Yæ6-QM -M ,ʁ9-M   files in directory, ʁ4  blocks used, ˡ Reading file6NJ.̂̂̂ʂʂ̂ʂe. ʁ6  unused, ʁ7  in largest area.4 "d 55 .1Zp̂ʂ ̂ʂ̂ʂʂʂ á ʂʂ̂"ˡ Disk error!ʂFile too long to e XSd }0 45PP"dṔ6́4́7́8ædit>< 2Edit: Enter edit file, P.&Y+++:+.+PYP á| D.TEXT˲ȍ"P.TEXTUPV ɡ))ڳu@TÚTrue False  ݳ ɡ@ NئPˡ( QP0 /R<++ɡ ݂0ݳȄܓM% Must be in range [ .. ],,P,[Q,ǡ,]Ǣ,؞"ÚTWriting vvݧÍܡޚ  ا!á{ETX}Lا)á{CR}7ا+á{TAB}! ɡ^ for . Ynew file or to exit.: PY!xx. 6NJˡ.ɡk) PY6.TEXTYY˥YȍY++YP+.TEXTU+PY"6+Not present. Ente ˡ.ɡ9 ˡU.r Edit file Pád ȡػǀػ$2 >,:yx is   characters long. -6H ȡ0ȡ8٤؂8٤؂ záz;67opqrst^uvwxqړf2Do you want to Exit from or Return to the editor?  -- ا-EÚ٫>ƂYPz AZ az 09 )) ++   š.!)Í 삧)ړ-EW&  8$ڡCan't write the file"ۓNot enough room for fileDs@*Hf,` YY˥YȍY++YP+.TEXTU+PY"6+Not present. EnteZ &\2 ˡ.ɡ9 ˡU. Y 0 Quit:P U1" Update the workfile and leave is   characters long. - Exit without updating* Return to the editor without updating$ Write to a fileqړf2Do you want to Exit from or Return to the editor?  -- ا-EÚ٫>ƂYP name and return -- :YL Write to Y?ړ-EW&  8$ڡCan't write the file"ۓNot enough room for fileDs --@N--Yá YP1Name of output file ( to return to editor):  ءTrueFalse.  ڳ@ T or F ns:/ = 'zǀ'y- , = '8xǀ'7šá>,<,,(직 ŧĄ Invalid copy.x직ġNo room`療 Markers: 7ȡH :8á ħɄ療 療직療   Jump to0:Y ,04 Environment: { options } Q to leave [ Edit 4I.4i8]9P  з Xا78ؤ 8ؤ  Not there.eؤ W  0! JUM --!# %-oprssrtuq P: Beginning End Marker P  Bá'EáMá اˡا$ w z *Go command: enter commands, type ` to end  /AT( cye  p5Marginate this paragraph?P Yá  "0-!# @*,]<2( á N Set0-ا7ɥ8ؤ  ġ ȡ7 : '8٤'@jئPP QPؾٿٮ`áؾ7T D 0:Y ,04 Environment: { options } Q to leave [ Edit 4I.4i8]9P  Auto indent o Filling p Left margin r  Right margin  --!# %-oprssrtuq s  Para margin t  Delimit char u Seek tokens w z *Go command: enter commands, type ` to end  /AT( cyq Ignore case w Tab spacing z  Go command `ȡ+ Blend in file:P  .TEXT   ȍ" ̂2Ƃ2 PƂ2.TEXTUƂ2Pá `Y File is unnamed$ File title is  ̂2Ƃ2 Can't find Ƃ2 [Ƃ2. Blend in file: lƂ2P"áġ(áY , Edit Cycle v  Editing time: xpC  hrs. x< Blending؍Z2ٓC.2 ڂ ء2ڞڂ mins.   characters, C슐󊇞 % full.y Patter"ˡ Disk errorٓBuffer overflow.ޕۂ߫  T( cy -á  -+-á س aA-ث--?-قؿ--    ٕاsrġ - ؕ ؞ق)(--!-á!ګٞǀ3;=?Pš=0Zap > 80 characters? (y/n)P o٫ګr    U ؂ \   0J Ins Yˡ   ; š ert: Text { a char, a line } [ accepts, escapes]P  ˡOšɡ!No room to insert.( lpo-˄*ǀ2á ǀ-)!&-á&ȡ  ) po-!Ä -Í   #-+á psĄ-pÄ- ˄ %Ąۄ{-)á  h-áOȡ& ڶȡ  ]ڶġR*Editor almost full!!   ) ˡܡ    -&á -!-áثd; š Editor Full!!-+áz z B 0Ʉګڂ٥*č:c)o$p낾)átr f-&áO- ç z ^ġ)š (š  * ç,<öÍ (ç)Íɡ-n)ġ # ˄  ń 5All markers are in use. Which one to replace? (0..9)P--0-2 з  8ؤeꂧ( d--á --'+) !&/-'+7 7E  0 Set: Environment Marker P  EáMá اˡا -)á-& F-ǀ?--Fx 0> eXchange: TEXT { a char } [ escapes; accepts]P     * á   ǀT ؂  ȡ  !--á;š4ق  -)á-!)˄ 8  ɡ    š   ˡP- á l    "ń? )á)  #$#l$h,<á#$Z!V"R%MšToo many%/*+ $) HFw`% Nfá ɡ it#Ʉ5 á2áá   Dá2á *á   ߳šĶ   |$,<áZń7)á)  6+ȡLڂ)á-ń ۂڂSġ  ø ɡ Ʉ-ɡáĸ šTħ^,ȡˡˡȡ ȡ 4[ p Í  = .*ȡ    "% š ɡ-ń šٮ&'؂ɡꂾ(Ä؂ fš ,dšBuffer overflow ݮ,-    0C Delete: < > { to delete, t( ˡ땫ꂧ(؂ ),o abort }P  --ߧá  á ߹ ߳  0K Adjust: Left, Right, Center { to leave }P --߹d- á,>á#$#h$d,<á#$V!R"N%Iá<,>,,!*35DBá --߹á   ߳0á<,>,  ȧ_% Oás\Jbٕ --˧-!˄ -!-!ámÄ L ٕ܄ɡ )Eܹ-r)1sڕ)$srڕr) 4-"á)zá )f"ٕٕ  ث ٕ٫  á ޶ O á r)/ ásڕ)srڕr) -!ˡ-!á۫,x ( l.á.á(+ "--á -)ö -*ˡ -ȡo,<á2# #ȥڷ0 $ĥڷw+P/-'+)/0- --Lá2-Vá%-Tá-Cá -Iá-P  ɡ P^!Ȅ0ɡášĶ  ] *  =߹&+'',<á&'! #%߹Z- á,>á  fá;<   4Lǀ zL š 3á򥁿Ld Copy Delete Find Go Insert Jump Page Quit Replace Set XchngP --߭zá  áá}ŧ(˄ȍ'á ȥ     ߹k~ zxt plhd GC /- --P0 1zBáM-'+)   ÄLd:.۪PڪP0.P [All][ ]ءPá  /-E/- á.E)Eń  EE_-*áBC<DBFDFȡ,EȡD   =z  Replace' aborts, 'R' EDEEDD-ˡ E-EE-EčآE آ!q &2L$ۂreplaces, ' ' doesn't=--á -R˧-r˄xšWxš8Buffer full. Aborti Lۂ áۂLۂá۶"H b3'+()(áng Replace  xxɡ x8xxˡ x직x療x8 @4Lǀ zL[LLaA2LL >>̀̀ẁq̀̀á Find:=" Replace /from/to/ :=/01̀- 6á >   ؂  (á   3  X7z2 á82ç çyǹ ʀȧل0:ʀ̀١!ނ߫ á>,<á 6Y ġ? L ˡ     7f p86` ٓ"ʀńPattern not foundNo old pattern ʀ $R\0M Ed: Adjust Blen š=L ˡ  7lv9,>á98d Copy Delete Find Go Insert Jump Page Quit Replace Set XchngP --߭zá  á5)z  á Z;z')+   ߹k~ zxt plhd GCɄ zzöɄ  z)'+1Error # . Type  á   Repeatfactor > 10,000-߭` ꂾ)á) -@ȭ"ƁƂ<   š"á  á  á :Ɓ šB+Can't save the deleted text, delete anyway?P Y%ڕ󧁽 |UEx~P"&, * @ f P  D"ۊ)HۊܳHaFɡ š šȡá*ڧ%á  )ڂٕ ݞ݂)ˡ !U܂Zjڡ~á ڧ"á ǀ ġۡڶ>ڧ˄KڶPá4ڶP<١1ۥ č&\7ȡ'eڤġeڤeڤ؂ #ڶNáڶNá lڳ aA, >پˡ ħɄ ؂ HZګ낾)uء-ŧ낾u˄낾)˄ ttáپعE٢I٢<٢-٢ ٢ LA6)x%tr ܕܕ܂( ) +'((á"  0,0" % á) 򧁾.ç Ä Äە sŧsrȍ: á܂)٪P&%ERROR: " Please press to continue.% áá(r r)á7á '낾)ç낾uÍ ᓡ  !Rۂ+'(@ۂ(áݧۂ ۂ'á ܕ^l܂삧ݫ 5h-l)ڂ ٦P ۧ)ۧۥ ۧ ۂڞڂ)ˡ  !Uقč á3پš!   پ kۧ$á/پȡ ٦P 6ۧ)ˡ0P"  t% . Type 1Error # . Type  á   ÿ۽ϟ>>$$$~$~$$>> >&&228DD800   $~$|888ÿŹýýýŹ ~888``0 @@<@@>`PHD~@@>>@@B<|>BB<~@ > BB>BB>~~ý t g ԳtԳ*wҳ>"rBB^@BBB~BBB>> ">B""B~BfZBBBBBFJZRbBBB>~BBBRr~@>BB>BBB<000 Q 0 ̌̌̌? ?B<@B<~BBBBBB<BBBB$$BBBBZfBBB$$BBBBB$~B B~>> 0``|@@@@@|"?< ~ ``0<@\B|:FBF:BBBB>pp`> 3cc3 t% . Type 1Error # . Type  á   ہہǻ"ƁƂ<   š"á  á  á :ƁýýÿýýýÿUEx~P"&, * @ f P  D"ۊ)HۊܳHaFýýýýݽD!٪P what marker? - ئ Щ,- V,Vȡ,-,,,ݽý# >>$$$~$~$$>> >&&228DD800   $~$|888 ~888``0 @@<@@>`PHD~@@>>@@B<|>BB<~@ > BB>BB>~~>"rBB^@BBB~BBB>> ">B""B~BfZBBBBBFJZRbBBB>~BBBRr~@>BB>BBB<B<@B<~BBBBBB<BBBB$$BBBBZfBBB$$BBBBB$~B B~>> 0``|@@@@@|"10 10 10 20 10 20 20 20  20 20 20 10 20 10 15 5  15 5 10 10  <@\B|:FBF:BBBB>pp`> 3cc3ہہǻýýÿýýýÿ,,Xá,Yá -M ,YˡD# of blocks ?  ɡ Bad # bO^AAg$ ýýýݽݽýÿ۽ϟÿŹýýýŹýýýŻݽ?  ,,Xá,Yá -M ,Yˡ procedure Arc(Radius, Start, Finish: integer); # #const -W = 0.0174533; & #var -CX, -CY, -ST, ,Fin, +Step: real; 000 Q 0 ̌̌̌? ?& #begin { Arc } &if Radius <> 0 &then )begin ,Step := 2.0 / Radius; ,ST := Start; ,ST := ST * W; ,Fin := Finish; ,Fin ?< ~ ``0:= Fin * W; ,CX := WhereX; ,CY := WhereY; ,AtXY(WhereX + Radius, WhereY); ,while ST <= Fin do /begin 2Line(Round(CX + Radi??`(H"a- TR cbd cus * cos(ST)), Round(CY + Radius * sin(ST 5))); 2ST := ST + Step; /end; )end; #end { Arc }; procedure Circle(Radius: i!@H!H! JA@bIb6r8`<1x~nteger); # #begin &Arc(Radius, 0, 360); #end { Circle }; {$R+} O^Aث% SelectDraw, SelectDisplay, SetPen .SetWindow . . (Includes StartPlot, Line, Box, AT SelectDraw, SelectDisp X.Sett := How; & DisScr := Screen[I]; & UnitWrite(Graphic, DisScr ^, X.Int); # end { Displlay, Erase SetPen, SetWindow } {$R-} const $Graphic = 3; $RowSize = 239; $ColSize = 319; # Scrs = 4; ay }; 1 %end; procedure Erase(I : ScrNum); # # begin & if Screen[I] <> NIL then # type #PenColor = (NullColor, White, Black, Flip); %GrafScreen = packed array [ 0.. RowSize, 0..ColSize ] of boolean; 'BitW & FillChar(Screen[I] ^, SizeOf(GrafScreen), 0); # end { Erase }; procedure SetPen(PColor : PenColor);  %begin = (AlphaLow, AlphaMid, AlphaTop, GraphLow, GraphMid, GraphTop, b6, 0GenBuf, ClickBit, b9, b10, BeepBit, b12, b13, b14, b15); "% )Pen := PColor; ) %end; % % % % procedure AT(X, Y: integer); # #begin &WhereX := X; &WhereY := Y; &NewPlace := truH O^ScrConfig = set of BitW; (ScP = ^ GrafScreen; %ScrNum = 1..Scrs; # var &WhereX, &WhereY, $XLWindow, $XHWindow, $YLWindow-fDL, $YHWindow: integer; $NewPlace: boolean; )Pen: PenColor; &Screen: Array [ 1..Scrs ] of ScP; &DisScr, %DrawScr: ScP; #  procedure CreateScreen ( I : ScrNum ; var OK : boolean );   const )SafetyMargin = 200; )  %begin % %if MemAvail >= SizeOf(GrafScreen) div 2 + SafetyMargin then % begin -new(Screen[I]); -OK := true; )end %else )OK := false; % %end; % % %  procedure SelectDraw ( I : ScrNum ; var OK : Boolean );  %begin % ' if Screen[I] = NIL then ) CreateScreen(I, OK) ' else ) OK := true; ' if OK then ( DrawScr := Screen[I] ; ( %end; %    procedure SelectDisplay ( I : ScrNum ; How : ScrConfig ; var OK : Boolean );  # var $ X: packed record & case boolean of )  false: ( Int: integer); ) true: ( Sett: ScrConfig) ' end; ! begin % )if Screen[I] = NIL then ) CreateScreen(I,{ Terak graphics package George Gonzalez July, 1978 ( (Dale V. Gear Nov, 1979 ( added  OK) )else -OK := true; )if OK then -begin & if How = [ ] then ) How := [ AlphaLow .. GraphTop ]; & & /DrawScr ^ [ TempY, WhereX ] := true; ,Black: /DrawScr ^ [ TempY, WhereX ] := false; ,Flip: /DrawScr ^ [ TempY, WhereX ] :=+(Y >= YLWindow) and (Y <= YHWindow) and + ((X <> WhereX) or (DestY <> TrueY)) &then )begin ,if NewPlace or (WX <> WhereX) o not DrawScr ^ [ TempY, WhereX ] )end; &NewPlace := false; #end { Point }; procedure Line(X, Y: integer); # #var *Trur (WY <> WhereY) then /Point(WhereX, WhereY); ,drawline(Junk, DrawScr ^, 20, WhereX, TrueY, X - WhereX, DestY /- TrueY, ord(PeY, *DestY, -SX, -SY, -WX, -WY, +Junk: integer; & # # # #procedure Window(var X, Y: integer; WhereX, WhereY: integer)en)); )end; &WhereX := SX; &WhereY := SY; #end { Line }; procedure Box(Width, Height, Thick, Spacing: integer); # ; & &var -Slope: real; 0DX, -TempY, 0DY: integer; ) &begin { Window } )DX := X - WhereX; )DY := Y - WhereY; )if DX <>#var .I, -LX, -LY: integer; & #begin { Box } &Width := Width - 1; &Height := Height - 1; &LX := WhereX; &LY := WhereY; 0 then ,Slope := DY / DX; )if DX <> 0 )then -if X < XLWindow then 0begin 3TempY := abs(Y - RowSize) {Transform to real co &for I := 1 to Thick do )begin ,AT(LX, LY); ,Line(WhereX + Width, WhereY); ,Line(WhereX, WhereY - Height); ,Line(LX, Wherords}; 3TempY := TempY - Round((Wherex - XLWindow) * Slope); 3Y := abs(TempY - RowSize) {Return to graph coords}; 3X := XLWineY); ,Line(LX, LY); ,LX := LX + Spacing; ,LY := LY - Spacing; ,Height := Height - 2 * Spacing; ,Width := Width - 2 * Spacindow; 0end )else ,if X > XHWindow then 0begin 3TempY := abs(Y - RowSize); 3TempY := TempY - Round((WhereX - XHWindow) * Slog; )end; #end { Box }; procedure Arc(Radius, Start, Finish: integer); # #const -W = 0.0174533; & #var -CX, -CY, e; #end { AT };  procedure SetWindow(Left, Right, Bottom, Top: integer);  %begin % )XLWindow := Left; )XHWindow := pe); 3Y := abs(TempY- RowSize); 3X := XHWindow; 0end; )if DY <> 0 )then ,if Y < YLWindow ,then /begin Right; )YLWindow := Bottom; )YHWindow := Top; ) %end; % % % %  procedure StartPlot; #  var &Dummy : Boolean; &I : i2if DX <> 0 then 5begin 8TempY := abs(WhereY - RowSize); 8X := WhereX - Round((TempY - abs(YLWindow - RowSize)) T/ Slope); nteger; ) #begin &SetWindow(0, ColSize, 0, RowSize); &SetPen(White); &AT(0,0); &for I := 1 to Scrs do 'Screen[I] := NIL; 2 end; 2Y := YLWindow; /end ,else /if Y > YHWindow then 2begin 5if DX <> 0 then 8begin ;TempY := abs(WhereY - RowSize&SelectDraw(1,Dummy); &Erase(1); &SelectDisplay(1, [ ], Dummy); #end { StartPlot }; procedure Point(X, Y: integer);  ); ;X := WhereX - Round((WhereY - abs(YHWindow - [RowSize)) / Slope); 5 end; 5Y := YHWindow; 2end; &end { Window }; #  var )TempY: integer; ) # #begin &AT(X, Y); &TempY := abs(WhereY - RowSize); &if (WhereX >= XLWindow) and (WhereX <= XHW# # # # #begin { Line } &SX := X; &SY := Y; &Window(X, Y, WhereX, WhereY); &WX := WhereX; &WY := WhereY; &Window(Whereindow) & and (WhereY >= YLWindow) and (WhereY <= YHWindow) &then )case Pen of ,White: X, WhereY, SX, SY); &TrueY := abs(WhereY -Rowsize); &DestY := abs(Y - Rowsize); &if (X >= XLWindow) and (X <= XHWindow) and ' procedure Circle(Radius: integer); # #begin &Arc(Radius, 0, 360); #end { Circle }; {$R+}   %begin )startplot; )repeat -Write('What file?'); -readLn( Filename ); -if Filename <> '' then -begin 2Write('What ba-M ,YˡD# OF BLOCKS ?  ɡ BAD # BLOCKSNew vovO^ses? '); 2ReadLn(XBase, YBase); 2Close( datafile ); 2Reset( datafile, concat(Filename, '.text') ); 2drawit; -end; ) )untAil Filename = ''; %end. %  H N O^@Dfprogram drawer;   var %xBase, yBase, x1, y1, x2, y2 : integer; %Filename : string; %datafile: text; %loop:integer;  {$i -ST, ,Fin, +Step: real; & #begin { Arc } &if Radius <> 0 &then )begin ,Step := 2.0 / Radius; ,ST := Start; ,ST := ST 'plot' } ( ( (procedure drawit; 0 0procedure drawfile; 0begin 0reset (datafile); 4repeat 8ReadLn(Datafile, y1, x1, y2, * W; ,Fin := Finish; ,Fin := Fin * W; ,CX := WhereX; ,CY := WhereY; ,AT(WhereX + Radius, WhereY); ,while ST <= Fin do /bex2); 8atxy(x1 + Xbase + loop*3, y1+ Ybase + loop*3); 8line(x2 + Xbase + loop*3,y2+ Ybase + loop*3); 4until eof( datafile ); gin 2Line(Round(CX + Radius * cos(ST)), Round(CY + Radius * sin(ST 5))); 2ST := ST + Step; /end; )end; #end { Arc }; ( end; ( (begin ,for loop := 1 to 25 do ,begin 0pen := white; 0drawfile; 0pen := black; 0drawfile; ,end; (end;( n );  %begin % ' if Screen[I] = NIL then ) CreateScreen(I, OK) ' else ) OK := true; ' if OK then ( DrawScr := Screen[I] ; ( %end; %    procedure SelectDisplay ( I : ScrNum ; How : ScrConfig ; var OK : Boolean );  # var program draw;  { Terak graphics package George Gonzalez July, 1978 ( (Dale V. Gear Nov$ X: packed record & case boolean of ) false: ( Int: integer); ) true: ( Sett: ScrConfig) ' end; ! begin , 1979 ( added SelectDraw, SelectDisplay, SetPen .SetWindow . . (Includes StartPlot, Line, Box, AtXY Sele% )if Screen[I] = NIL then ) CreateScreen(I, OK) )else -OK := true; )if OK then -begin & if How = [ ] then ctDraw, SelectDisplay, Erase SetPen, SetWindow } {$R-} const $Graphic = 3; $RowSize = 239; $ColSize = 319;) How := [ AlphaLow .. GraphTop ]; & X.Sett := How; & DisScr := Screen[I];  # Scrs = 4; # type #PenColor = (NullColor, White, Black, Flip); %GrafScreen = packed array [ 0.. RowSize, 0..ColSize ] o& UnitWrite(Graphic, DisScr ^, X.Int); # end { Display }; 1 %end; procedure Erase(I : ScrNum); # # f boolean; 'BitW = (AlphaLow, AlphaMid, AlphaTop, GraphLow, GraphMid, GraphTop, b6, 0GenBuf, ClickBit, b9, b10, BeepBit, b12,  begin & if Screen[I] <> NIL then & FillChar(Screen[I] ^, SizeOf(GrafScreen), 0); # end { Erase }; procedure Seb13, b14, b15); "ScrConfig = set of BitW; (ScP = ^ GrafScreen; %ScrNum = 1..Scrs; # var {for program draw}  x, y, letPen(PColor : PenColor);  %begin % )Pen := PColor; ) %end; % % % % procedure AtXY(X, Y: integer); # #begin &WhereXngth, width, thickness, spacing: integer; &answer,figure: char; &ok : boolean; &{end of var for program draw}  := X; &WhereY := Y; &NewPlace := true; #end { AtXY };  procedure SetWindow(Left, Right, Bottom, Top: integer);  %be& &WhereX, &WhereY, $XLWindow, $XHWindow, $YLWindow, $YHWindow: integer; $NewPlace: boolean; )Pen: PenColor; gin % )XLWindow := Left; )XHWindow := Right; )YLWindow := Bottom; )YHWindow := Top; ) %end; % % % %  procedure Start&Screen: Array [ 1..Scrs ] of ScP; &DisScr, %DrawScr: ScP; # procedure CreateScreen ( I : ScrNum ; var OK : boolean ); Plot; #  var &Dummy : Boolean; &I : integer; ) #begin &SetWindow(0, ColSize, 0, RowSize); &SetPen(White); &AtXY(0,0);   const )SafetyMargin = 200; )  %begin % %if MemAvail >= SizeOf(GrafScreen) div 2 + SafetyMargin then % begin -ne&for I := 1 to Scrs do 'Screen[I] := NIL; &SelectDraw(1,Dummy); &Erase(1); &SelectDisplay(1, [ ], Dummy); #end { StartPlot w(Screen[I]); -OK := true; )end %else )OK := false; % %end; % % %  procedure SelectDraw ( I : ScrNum ; var OK : Boolea}; procedure Point(X, Y: integer);   var )TempY: integer; ) # #begin &AtXY(X, Y); ) LWindow - RowSize)) T/ Slope); 2 end; 2Y := YLWindow; /end ,else /if Y > YHWindow then 2begin 5if DX <> 0 then 8begineX; ,CY := WhereY; ,AtXY(WhereX + Radius, WhereY); ,while ST <= Fin do /begin  ;TempY := abs(WhereY - RowSize); ;X := WhereX - Round((WhereY - abs(YHWindow - [RowSize)) / Slope); 5 end; 5Y := YHWindo2Line(Round(CX + Radius * cos(ST)), Round(CY + Radius * sin(ST 5))); 2ST := ST + Step; /end; )end; #end { Arc }; procw; 2end; &end { Window }; # # # # # #begin { Line } &SX := X; &SY := Y; &Window(X, Y, WhereX, WhereY); &WX := WhereXedure Circle(Radius: integer); # #begin &Arc(Radius, 0, 360); #end { Circle }; {$R+} begin {of program draw} %startplo&TempY := abs(WhereY - RowSize); &if (WhereX >= XLWindow) and (WhereX <= XHWindow) & and (WhereY >= YLWindow) and (WhereY <= ; &WY := WhereY; &Window(WhereX, WhereY, SX, SY); &TrueY := abs(WhereY -Rowsize); &DestY := abs(Y - Rowsize); &if (X >= XLWYHWindow) &then )case Pen of ,White: /DrawScr ^ [ TempY, WhereX ] := true; ,Black: /DrawScr ^ [ TempY, WhereX ] := false; indow) and (X <= XHWindow) and +(Y >= YLWindow) and (Y <= YHWindow) and + ((X <> WhereX) or (DestY <> TrueY)) &then )begin ,Flip: /DrawScr ^ [ TempY, WhereX ] := not DrawScr ^ [ TempY, WhereX ] )end; &NewPlace := false; #end { Point }; proce,if NewPlace or (WX <> WhereX) or (WY <> WhereY) then /Point(WhereX, WhereY); dure Line(X, Y: integer); # #var *TrueY, *DestY, -SX, -SY, -WX, -WY, +Junk: integer; & # # # #procedure Window(var,drawline(Junk, DrawScr ^, 20, WhereX, TrueY, X - WhereX, DestY /- TrueY, ord(Pen)); )end; &WhereX := SX; &WhereY := SY; # X, Y: integer; WhereX, WhereY: integer); & &var -Slope: real; 0DX, -TempY, 0DY: integer; ) &begin { Window } )DX := X end { Line }; procedure Box(Width, Height, Thick, Spacing: integer); # #var .I, -LX, -LY: integer; & #begin { Box } - WhereX; )DY := Y - WhereY; )if DX <> 0 then ,Slope := DY / DX; )if DX <> 0 )then -if X < XLWindow then 0begin 3TempY :&Width := Width - 1; &Height := Height - 1; &LX := WhereX; &LY := WhereY; &for I := 1 to Thick do )begin ,AtXY(LX, LY); = abs(Y - RowSize) {Transform to real coords}; 3TempY := TempY - Round((Wherex - XLWindow) * Slope); 3Y := abs(TempY - RowSize,Line(WhereX + Width, WhereY); ,Line(WhereX, WhereY - Height); ,Line(LX, WhereY); ,Line(LX, LY); ,LX := LX + Spacing; ,LY :) {Return to graph coords}; 3X := XLWindow; 0end )else ,if X > XHWindow then 0begin 3TempY := abs(Y - RowSize); = LY - Spacing; ,Height := Height - 2 * Spacing; ,Width := Width - 2 * Spacing; )end; #end { Box }; procedure Arc(Radius3TempY := TempY - Round((WhereX - XHWindow) * Slope); 3Y := abs(TempY- RowSize); 3X := XHWindow; 0end; )if DY <> 0 )then , Start, Finish: integer); # #const -W = 0.0174533; & #var -CX, -CY, -ST, ,Fin, +Step: real; & #begin { Arc } &if R,if Y < YLWindow ,then /begin 2if DX <> 0 then 5begin 8TempY := abs(WhereY - RowSize); 8X := WhereX - Round((TempY - abs(Yadius <> 0 &then )begin ,Step := 2.0 / Radius; ,ST := Start; ,ST := ST * W; ,Fin := Finish; ,Fin := Fin * W; ,CX := Wher*  @՚#xbox, xline, xcircle, xarc, xpoint ՚5Ֆ^d Ֆˡ՗՗ Aڊ՗6ي՗E9=՗V؊՗g9=՗x ՗ ՗ ՚M#enter values (x,y) for the location՚  ՚-enter values for՗=՗՘   ՘K՘_՘f՘mS ՘h՘ƭ the length, width, thickness՚̶and the spacing (L,W,T,S)՚   ՙ ՙ  ՙ' ՙW would you like to draw a figure?ՙ ՙnˡՙՙ7whaՄ(ǀ%ġՄՅՅՅ!Յ-Յ@@Յá ՅՅՅ ՆՆt figure would you like to draw? Choose from these:՚#xbox, xline, xcircle, xarc, xpoint ՚5>Շá Շ.ՇAՇO:Շ_Շo Շ?ՇՇ٥ՈՈAՈWjՈ ՚M#enter values (x,y) for the location՚  ՚-enter values forˡՈǀ% Ո,Չ,ثՉ@Չ٫ՉثՉՉՊ۫Պ%ګՊ:٫ ՊPث Պa the length, width, thickness՚̶and the spacing (L,W,T,S)՚   t; selectDraw (1, ok); %SelectDisplay (1, [alphatop,graphMid,graphlow],ok); %writeln ('would you like to draw a figure?'); %$Պ?ՊՊՋȡՋՋ7ՋIՋ]Ջs7 b ՋՌՌ&readln (answer); %while answer <> 'n' do 'begin 'writeln ('what figure would you like to draw? Choose from these:'); 'writħȄĄȄRՌ>Ռڤ:Ռڤ)Սڤڤ E6'ՍZՍj Վzeln ('xbox, xline, xcircle, xarc, xpoint '); 'readln (figure); ' 4writeln ('enter values (x,y) for the location'); 4readln  ՎؕՎˡ ՎՎˡ~Վɡ7ՎՎՏ6ՏiՏՏ>Տš5ՏՏ(x,y); 4writeln('enter values for the length, width, thickness'); 4writeln('and the spacing (L,W,T,S)'); 4readln (length, widՐՐ:ՐVՐiՐoˡՐɡ>ՐՐˡ(ՐՐՐՑ(Ց-Ց@EՑLš<Ցth, thickness, spacing); 4erase (1); 4startplot; 4box(length, width, thickness, spacing); 4 *writeln ('Would you like to drfՑkˡ(ՑՑՑՑՑՒՒ@  N Ւ@ՒKՒZ ՒvՒՒ Ւaw another figure?'); *read (answer); *erase (1); * 4 $end;  end. {of program draw}  ՒՒȄĄȄ٧ˍ4Փ~ՓܧˍˍՓ Ք ٧ Ք\ՔfޫՔvݫՔ Օ DRAW ՕՕ2ՕBՕSȡZՕnՕuՕۂ Օڕ Օ Օ Օ؂ՕؕՖ؏Ֆ9؏ՖW+ ,,Xá,Yá -M ,YˡD# OF BLOCKS ?  ɡ Bad # fO^ ?C0,,Xá,Yá -M ,YˡD# OF BLOCKS ?  ɡ Bad # fO^C&PROGRAM FIGURE(INPUT,OUTPUT);  TYPE  SHAPE=(CIRC,RECT);  VAR X,Y,X2,Y2,X3,Y3,X4,Y4:REAL;  SHAPES:SHAPE;  CH:CHAR;  R:R ՛ ՛1 ՛8 ՛i&Would you like to draw another figure?՛ ՛՛՛EAL;  BEGIN  READ CH;  IF CH:=C THEN SHAPES:=CIRC;  IF CH:=R THEN SHAPES:=RECT;  IF CH<>C AND CH<>R THEN "BEGIN "WRITELN(.  Dh"fthese:՚#xbox, xline, xcircle, xarc, xpoint ՚5'INVALID DATA'); "READ (CH); "  CASE SHAPES OF #CIRC:READ(R); #RECT:READ(X,Y,X2,Y2,X3,Y3,X4,Y4);  END;  CASE SHAPES OF # ՚M#enter values (x,y) for the location՚  ՚-enter values forCIRC:WRITELN('AREA OF CIRCLE IS',3.1416*R*R);  END;  END.    the length, width, thickness՚̶and the spacing (L,W,T,S)՚   , PROGRAM AREA(INPUT,OUTPUT);  TYPE FIGURES=SET OF'A'..'Z';  VAR $R,X,Y, $X2,Y2, $X3,Y3, $X4,Y4:REAL;  CHOICE:FIGURES;  CH :CHAR;  AR:REAL;  LOOP:BOOLEAN;  BEGIN #LOOP:=TRUE; #WHILE LOOP DO %BEGIN 'CHOICE:=['C','R','P']; 'WRITELN('C FOR CIRCLE OR R FOR RECT OR P FOR PARR'); 'READ (CH); 'IF CH IN CHOICE THEN (BEGIN )CASE CH OF +'C':BEGIN +  WRITELN; 1WRITELN('ENTER RADIUS OF YOUR CIRCLE'); 1READ (R) + END; +'R','P':BEGIN + WRITELN; 5WRITELN('Eprogram playgraph;  var x,y,z,a,b,c,d,e,f,g,h,i,j:integer;  {$I '#4:plot.text'}  begin  startplot;  at (20,20);  line (NTER COORDS OF YOUR RECT OR PARR'); 5READ(X,Y,X2,Y2,X3,Y3,X4,Y4) ) END )END; ) )CASE CH OF +'C':AR:=3.1416*R*R; 50,50)   end.    +'R':AR:=ABS(X4-X)*ABS(Y2-Y); +'P':AR:=ABS(X4-X)*ABS(Y2-Y); +END; ) )CASE CH OF +'C':WRITELN('AREA OF YOUR CIRCLE IS',AR); +'R':WRITELN('AREA OF YOUR RECTANGLE IS',AR); +'P':WRITELN('AREA OF YOUR PARRALLELOGRAM IS',AR); )END; ) &END $ELSE $WRITELN('IMPROPER DATA'); $END $ $END. ,,Xá,Yá -M ,YˡD# OF BLOCKS ?  ɡ Bad # fO^rB"-  # Scrs = 4; # type #PenColor = (NullColor, White, Black, Flip); %GrafScreen = packed array [ 0.. RowSize, 0..ColSize ] o& UnitWrite(Graphic, DisScr ^, X.Int); # end { Display }; 1 %end; procedure Erase(I : ScrNum); # # f boolean; 'BitW = (AlphaLow, AlphaMid, AlphaTop, GraphLow, GraphMid, GraphTop, b6, 0GenBuf, ClickBit, b9, b10, BeepBit, b12,  begin & if Screen[I] <> NIL then & FillChar(Screen[I] ^, SizeOf(GrafScreen), 0); # end { Erase }; procedure SeH 1 V M R 55O^b13, b14, b15); "ScrConfig = set of BitW; (ScP = ^ GrafScreen; %ScrNum = 1..Scrs; # var {for program draw}  x, y, leOD|Ingth, width, thickness, spacing: integer; &ch, answer,figure: char; &ok : boolean; &{end of var for program draw} & &WhereX, &WhereY, $XLWindow, $XHWindow, $YLWindow, $YHWindow: integer; $NewPlace: boolean; )Pen: PenColor; &Screen: Array [ 1..Scrs ] of ScP; &DisScr, %DrawScr: ScP; # procedure CreateScreen ( I : ScrNum ; var OK : boolean );   const )SafetyMargin = 200; )  %begin % %if MemAvail >= SizeOf(GrafScreen) div 2 + SafetyMargin then % begin -new(Screen[I]); -OK := true; )end %else )OK := false; % %end; % % %  procedure SelectDraw ( I : ScrNum ; var OK : Boolean );  %begin % ' if Screen[I] = NIL then ) CreateScreen(I, OK) ' else ) OK := true; ' if OK then ( DrawScr := Screen[I] ; ( %end; %    procedure SelectDisplay ( I : ScrNum ; How : ScrConfig ; var OK : Boolean );  # var program draw;  { Terak graphics package George Gonzalez July, 1978 ( (Dale V. Gear Nov$ X: packed record & case boolean of ) false: ( Int: integer); ) true: ( Sett: ScrConfig) ' end; ! begin , 1979 ( added SelectDraw, SelectDisplay, SetPen .SetWindow . . (Includes StartPlot, Line, Box, AtXY Sele% )if Screen[I] = NIL then ) CreateScreen(I, OK) )else -OK := true; )if OK then -begin & if How = [ ] then ctDraw, SelectDisplay, Erase SetPen, SetWindow } {$R-} const $Graphic = 3; $RowSize = 239; $ColSize = 319;) How := [ AlphaLow .. GraphTop ]; & X.Sett := How; & DisScr := Screen[I]; . ,Flip: /DrawScr ^ [ TempY, WhereX ] := not DrawScr ^ [ TempY, WhereX ] )end; &NewPlace := false; #end { Point }; proce,if NewPlace or (WX <> WhereX) or (WY <> WhereY) then /Point(WhereX, WhereY); dure Line(X, Y: integer); # #var *TrueY, *DestY, -SX, -SY, -WX, -WY, +Junk: integer; & # # # #procedure Window(var,drawline(Junk, DrawScr ^, 20, WhereX, TrueY, X - WhereX, DestY /- TrueY, ord(Pen)); )end; &WhereX := SX; &WhereY := SY; # X, Y: integer; WhereX, WhereY: integer); & &var -Slope: real; 0DX, -TempY, 0DY: integer; ) &begin { Window } )DX := X end { Line }; procedure Box(Width, Height, Thick, Spacing: integer); # #var .I, -LX, -LY: integer; & #begin { Box } - WhereX; )DY := Y - WhereY; )if DX <> 0 then ,Slope := DY / DX; )if DX <> 0 )then -if X < XLWindow then 0begin 3TempY :&Width := Width - 1; &Height := Height - 1; &LX := WhereX; &LY := WhereY; &for I := 1 to Thick do )begin ,AtXY(LX, LY); = abs(Y - RowSize) {Transform to real coords}; 3TempY := TempY - Round((Wherex - XLWindow) * Slope); 3Y := abs(TempY - RowSize,Line(WhereX + Width, WhereY); ,Line(WhereX, WhereY - Height); ,Line(LX, WhereY); ,Line(LX, LY); ,LX := LX + Spacing; ,LY :tPen(PColor : PenColor);  %begin % )Pen := PColor; ) %end; % % % % procedure AtXY(X, Y: integer); # #begin &WhereX) {Return to graph coords}; 3X := XLWindow; 0end )else ,if X > XHWindow then 0begin 3TempY := abs(Y - RowSize);  := X; &WhereY := Y; &NewPlace := true; #end { AtXY };  procedure SetWindow(Left, Right, Bottom, Top: integer);  %be3TempY := TempY - Round((WhereX - XHWindow) * Slope); 3Y := abs(TempY- RowSize); 3X := XHWindow; 0end; )if DY <> 0 )then gin % )XLWindow := Left; )XHWindow := Right; )YLWindow := Bottom; )YHWindow := Top; ) %end; % % % %  procedure Start,if Y < YLWindow ,then /begin 2if DX <> 0 then 5begin 8TempY := abs(WhereY - RowSize); 8X := WhereX - Round((TempY - abs(YPlot; #  var &Dummy : Boolean; &I : integer; ) #begin &SetWindow(0, ColSize, 0, RowSize); &SetPen(White); &AtXY(0,0); LWindow - RowSize)) T/ Slope); 2 end; 2Y := YLWindow; /end ,else /if Y > YHWindow then 2begin 5if DX <> 0 then 8begin&for I := 1 to Scrs do 'Screen[I] := NIL; &SelectDraw(1,Dummy); &Erase(1); &SelectDisplay(1, [ ], Dummy); #end { StartPlot  ;TempY := abs(WhereY - RowSize); ;X := WhereX - Round((WhereY - abs(YHWindow - [RowSize)) / Slope); 5 end; 5Y := YHWindo}; procedure Point(X, Y: integer);   var )TempY: integer; ) # #begin &AtXY(X, Y); w; 2end; &end { Window }; # # # # # #begin { Line } &SX := X; &SY := Y; &Window(X, Y, WhereX, WhereY); &WX := WhereX&TempY := abs(WhereY - RowSize); &if (WhereX >= XLWindow) and (WhereX <= XHWindow) & and (WhereY >= YLWindow) and (WhereY <= ; &WY := WhereY; &Window(WhereX, WhereY, SX, SY); &TrueY := abs(WhereY -Rowsize); &DestY := abs(Y - Rowsize); &if (X >= XLWYHWindow) &then )case Pen of ,White: /DrawScr ^ [ TempY, WhereX ] := true; ,Black: /DrawScr ^ [ TempY, WhereX ] := false; indow) and (X <= XHWindow) and +(Y >= YLWindow) and (Y <= YHWindow) and + ((X <> WhereX) or (DestY <> TrueY)) &then )begin / edure Circle(Radius: integer); # #begin &Arc(Radius, 0, 360); #end { Circle }; {$R+} begin {of program draw}  writeln ('this ');  writeln ('is ');  writeln ('going');  writeln ('going');  writeln ('going');  writeln ('to ');  writeln ('this ');  writeln ('is ');  writeln ('going');  writeln ('going');  writeln ('going');  writeln ('to ');  writeln ('this '); DRAW   writeln ('is ');  writeln ('going');  writeln ('going');  writeln ('going');  writeln ('to ');  STARTPLOT;  selectdraw OHTR | Z ՛ ՜  (2,ok);  ATXY (200,150);  SelectDisplay (1, [alphalow,graphmid, graphtop],ok);  writeln ('this is a sentance, the picture is՜!ǖ՜2 ȡ ՜J՜X՜a՜v1 ՜Շá Շ.ՇAՇO:Շ_Շo Շ?ՇՇ٥ՈՈAՈWjՈ= LY - Spacing; ,Height := Height - 2 * Spacing; ,Width := Width - 2 * Spacing; )end; #end { Box }; procedure Arc(Radiusalow,graphmid, graphtop],ok);   writeln ('here goes sentance number three, I hope you like these lines');  startplot;  sele, Start, Finish: integer); # #const -W = 0.0174533; & #var -CX, -CY, -ST, ,Fin, +Step: real; & #begin { Arc } &if RctDisplay (2,[],ok);  line (50,50);  line (150,150);  line (200,200);  readln;  erase (2);  SelectDisplay (1, [alphalow,gradius <> 0 &then )begin ,Step := 2.0 / Radius; ,ST := Start; ,ST := ST * W; ,Fin := Finish; ,Fin := Fin * W; ,CX := Wheraphmid, graphtop],ok);   writeln ('This is sentance number four, many lines are here');  selectDisplay (2,[],ok);  for x:= eX; ,CY := WhereY; ,AtXY(WhereX + Radius, WhereY); ,while ST <= Fin do /begin 1 to 25 do  line (4*x,0 );  erase (2);  selectDisplay (1,[alphalow,graphmid, graphtop],ok);   writeln ('this program is d2Line(Round(CX + Radius * cos(ST)), Round(CY + Radius * sin(ST 5))); 2ST := ST + Step; /end; )end; #end { Arc }; procone');  readln;  end. {of program draw} 0 ħȄĄȄSՌ>Ռڤ;Ռڤ*ՍڤڤF7(ՍZՍj ՎCdd ՛\՛e՛z1 ՛-this is my second sentance, it is by a sphere՛ ՜ zٕ ՎؕՎˡ ՎՎˡ~Վɡ7ՎՎՏ6ՏiՏՏ>Տš5ՏՏ՜!ǖ՜2 ȡ ՜J՜X՜a՜v1 ՜ՐՐˡ(ՐՐՐՑ(Ց-Ց@EՑLike these lines՜ ՝  ՝22 ՝+ǖǖ ՝= ՝Q՝Z՝o1 ՝1This is <ՑfՑkˡ(ՑՑՑՑՑՒՒ@  N Ւ@ՒKՒZ ՒvՒՒsentance number four, many lines are here՝ ՝ȡ՞ ՞$՞91 ՞l Ւ ՒՒȄĄȄ٧ˍ6Փ~Փܧˍۧˍ Փ Ք ٧ Ք\ՔfޫՔvݫՔthis program is done՞՞hK2 HTR | Z ՛ ՜  ՕՕՕ2ՕBՕSȡ]ՕnՕuՕۂ Օڕ Օݧ Օ Օ؂ՕؕՖ؏Ֆ9՜!ǖ՜2 ȡ ՜J՜X՜a՜v1 ՜= SizeOf(GrafScreen) div ); &SetPen(White); &AtXY(0,0); &for I := 1 to Scrs do 'Screen[I] := NIL; &SelectDraw(1,Dummy); &Erase(1); &SelectDisplay(2 + SafetyMargin then % begin -new(Screen[I]); -OK := true; )end %else )OK := false; % %end; % % %  procedure Sel1, [ ], Dummy); #end { StartPlot }; procedure Point(X, Y: integer);   var )TempY: integer; ) # #begin ectDraw ( I : ScrNum ; var OK : Boolean );  %begin % ' if Screen[I] = NIL then ) CreateScreen(I, OK) ' else ) OK := true; ' if OK then ( DrawScr := Screen[I] ; ( %end; %    procedure SelectDisplay ( I : ScrNum ; How : ScrCoprogram draw;  { Terak graphics package George Gonzalez July, 1978 ( (Dale V. Gear Novnfig ; var OK : Boolean );  # var $ X: packed record & case boolean of ) false: ( Int: integer); ) true: ( S, 1979 ( added SelectDraw, SelectDisplay, SetPen .SetWindow . . (Includes StartPlot, Line, Box, AtXY Seleett: ScrConfig) ' end; ! begin % )if Screen[I] = NIL then ) CreateScreen(I, OK) )else -OK := true; )if OK then -ctDraw, SelectDisplay, Erase SetPen, SetWindow, Arc, Circle } {$R-} const $Graphic = 3; $RowSize = 239; $Cbegin & if How = [ ] then ) How := [ AlphaLow .. GraphTop ]; & X.Sett := How; olSize = 319; # Scrs = 4; # type #PenColor = (NullColor, White, Black, Flip); %GrafScreen = packed array [ 0.. RowSize, 0& DisScr := Screen[I]; & UnitWrite(Graphic, DisScr ^, X.Int); # end { Display }; 1 %end; p..ColSize ] of boolean; 'BitW = (AlphaLow, AlphaMid, AlphaTop, GraphLow, GraphMid, GraphTop, b6, 0GenBuf, ClickBit, b9, b10, Brocedure Erase(I : ScrNum); # # begin & if Screen[I] <> NIL then & FillChar(Screen[I] ^, SizeOf(GrafScreen), 0); #eepBit, b12, b13, b14, b15); "ScrConfig = set of BitW; (ScP = ^ GrafScreen; %ScrNum = 1..Scrs; # var {for program draw}   end { Erase }; procedure SetPen(PColor : PenColor);  %begin % )Pen := PColor; ) %end; % % % % procedure AtXY(X x, y, length, width, thickness, spacing: integer; &ch, answer,figure: char; &ok : boolean; &i:integer; &{, Y: integer); # #begin &WhereX := X; &WhereY := Y; &NewPlace := true; #end { AtXY };  procedure SetWindow(Left, Rig3 egin 3TempY := abs(Y - RowSize) {Transform to real coords}; 3TempY := TempY - Round((Wherex - XLWindow) * Slope); 3Y := abs(T,Line(WhereX + Width, WhereY); ,Line(WhereX, WhereY - Height); ,Line(LX, WhereY); ,Line(LX, LY); ,LX := LX + Spacing; ,LY :empY - RowSize) {Return to graph coords}; 3X := XLWindow; 0end )else ,if X > XHWindow then 0begin = LY - Spacing; ,Height := Height - 2 * Spacing; ,Width := Width - 2 * Spacing; )end; #end { Box }; procedure Arc(Radius3TempY := abs(Y - RowSize); 3TempY := TempY - Round((WhereX - XHWindow) * Slope); 3Y := abs(TempY- RowSize); 3X := XHWindow;, Start, Finish: integer); # #const -W = 0.0174533; & #var -CX, -CY, -ST, ,Fin, +Step: real; & #begin { Arc } &if R 0end; )if DY <> 0 )then ,if Y < YLWindow ,then /begin 2if DX <> 0 then 5begin 8TempY := abs(WhereY - RowSize); 8X := adius <> 0 &then )begin ,Step := 2.0 / Radius; ,ST := Start; ,ST := ST * W; ,Fin := Finish; ,Fin := Fin * W; ,CX := WherWhereX - Round((TempY - abs(YLWindow - RowSize)) T/ Slope); 2 end; 2Y := YLWindow; /end ,else /if Y > YHWindow then 2beeX; ,CY := WhereY; ,AtXY(WhereX + Radius, WhereY); ,while ST <= Fin do /begin gin 5if DX <> 0 then 8begin ;TempY := abs(WhereY - RowSize); ;X := WhereX - Round((WhereY - abs(YHWindow - [RowSize)) / Slo2Line(Round(CX + Radius * cos(ST)), Round(CY + Radius * sin(ST 5))); 2ST := ST + Step; /end; )end; #end { Arc }; procpe); 5 end; 5Y := YHWindow; 2end; &end { Window }; # # # # # #begin { Line } &SX := X; &SY := Y; &Window(X, Y, Whedure Circle(Radius: integer); # #begin &Arc(Radius, 0, 360); #end { Circle }; {$R+}  BEGIN startplot;  for i:=10 to 4&AtXY(X, Y); &TempY := abs(WhereY - RowSize); &if (WhereX >= XLWindow) and (WhereX <= XHWindow) & and (WhereY >= YLWindow) aereX, WhereY); &WX := WhereX; &WY := WhereY; &Window(WhereX, WhereY, SX, SY); &TrueY := abs(WhereY -Rowsize); &DestY := absnd (WhereY <= YHWindow) &then )case Pen of ,White: /DrawScr ^ [ TempY, WhereX ] := true; ,Black: /DrawScr ^ [ TempY, Where(Y - Rowsize); &if (X >= XLWindow) and (X <= XHWindow) and +(Y >= YLWindow) and (Y <= YHWindow) and + ((X <> WhereX) or (DestX ] := false; ,Flip: /DrawScr ^ [ TempY, WhereX ] := not DrawScr ^ [ TempY, WhereX ] )end; &NewPlace := false; #end { PointY <> TrueY)) &then )begin ,if NewPlace or (WX <> WhereX) or (WY <> WhereY) then /Point(WhereX, WhereY);  }; procedure Line(X, Y: integer); # #var *TrueY, *DestY, -SX, -SY, -WX, -WY, +Junk: integer; & # # # #proced,drawline(Junk, DrawScr ^, 20, WhereX, TrueY, X - WhereX, DestY /- TrueY, ord(Pen)); )end; &WhereX := SX; &WhereY := SY; #ure Window(var X, Y: integer; WhereX, WhereY: integer); & &var -Slope: real; 0DX, -TempY, 0DY: integer; ) &begin { Windoend { Line }; procedure Box(Width, Height, Thick, Spacing: integer); # #var .I, -LX, -LY: integer; & #begin { Box } w } )DX := X - WhereX; )DY := Y - WhereY; )if DX <> 0 then ,Slope := DY / DX; )if DX <> 0 )then -if X < XLWindow then 0b&Width := Width - 1; &Height := Height - 1; &LX := WhereX; &LY := WhereY; &for I := 1 to Thick do )begin ,AtXY(LX, LY); 4 E(319,0); $ $readln;   end. {of program draw} Ր$ՐWՐsՐՐˡՐɡ>ՐՐˡ(ՐՐՐՑEՑJՑ]EՑiš<ՑՑˡ(ՑՑՑՒ ՒՒ%Ւ,  R Ւ]ՒhՒw ՒՒՒ Ւا ՒՓ٧ȄĄȄ٧ˍ6ՓՓܧˍۧˍ Փڧ Ք ٧ Ք\ՔfޫՔvݫՔH DRAW  ՕՕՕ2ՕBՕSȡ]ՕnՕuՕۂ Օڕ Օݧ Օ Օ؂ՕؕՖ؏ rǕ՚<<  ՚3՚@? ՚O ՚a?՚r Ֆ9؏ՖWՖ^g Ֆˡ՗՗ Aڊ՗6ي՗E9=՗V؊՗g 9=՗x ՚? ՚՚4 2\LL՗E9=՗V؊՗g 9=՗x ՗ ՗ڂ՗=՗՘   ՘K՘_՘f՘mS ՘՗ ՗ڂ՗=՗՘   ՘K՘_՘f՘mS ՘h՘ƭ՘ ՘ (ȡՙՙǠxՙ)ՙ7 ՙ> (ȡkՙUՙ_ՙlZՙ?ՙZǴՙՄ۞(ǀ%ġՅ!Յ'Յ8ՅGՅSՅf@Յá ՅՆՆ Ն)ՆA?ՙǴՙՙՙZՙ ՚ ǁǕ՚<<  ՚3՚@? ՚O ՚a?՚r >Շ,á ՇTՇgՇu:ՇՇ Շ?ՇՈՈ8ՈcՈyjՈ՚? ՚՚4 2\LL՗E9=՗V؊՗g 9=՗x ˡՈإǀ% Չ,ՉNثՉbՉ٫ՉثՉՉѭՊ3۫ՊGګՊ\٫ՊrثՊ՗ ՗ڂ՗=՗՘   ՘K՘_՘f՘mS ՘0 do " begin &atxy (160,120); &circle (I); & $end; "for i:=10 to 40 do $begin & &ATXY(0 ,0); &ARC(I*2,0,90); & &ATX$Պ?Ջ ՋՋ&ȡՋAՋYՋkՋՋ7 b ՌՌՌ4Y(319,0); &ARC(I*2,90,180); & &ATXY(319,239); &ARC(I*2,180,270); & &ATXY(0,239); &ARC(I*2,0,270); pARC(I*2,0,90); $end;ħȄĄȄRՌ>Ռڤ:Ռڤ)Սڤڤ E6'ՍhՍx Վ & $atxy (129,149); $box (60,60,9,-7); $ $ATXY(0,0); $LINE(319,0); $LINE(0,239); $ $ATXY(319,239); $LINE(0,239); $LINٕ ՎؕՎˡ ՎՎˡՎɡ9ՏՏ ՏD٧ՏwՏۧՏ>Տš5ՏՐ5 CREATESCI SELECTDRI SELECTDII ERASE I SETPEN PCOLOR ATXY X Y SETWINDOLEFT RIGHT BOTTOM TOP STARTPLODUMMY I POINT X Y TEMPY WINDOW WHEREX TEMPY WHEREY SLOPE DX DY LINE X Y TRUEY DESTY SX JUNK SY WX WY BOX program draw;  { Terak graphics package George Gonzalez July, 1978 ( (Dale V. Gear NovWIDTH HEIGHT I THICK SPACING LX LY ARC RADIUS START FINI, 1979 ( added SelectDraw, SelectDisplay, SetPen .SetWindow . . (Includes StartPlot, Line, Box, AtXY SeleSH FIN ST STEP CX CY CIRCLE RADIUS DRAW X I ctDraw, SelectDisplay, Erase SetPen, SetWindow, Arc, Circle } {$R-} const $Graphic = 3; $RowSize = 239; $CY LENGTH NEWPLACEPEN THICKNESCH WHEREX WHEREY XHWINDOWYHWINDOWWIDTH olSize = 319; # Scrs = 4; # type #PenColor = (NullColor, White, Black, Flip); %GrafScreen = packed array [ 0.. RowSize, 0FIGURE DISSCR OK ANSWER XLWINDOWYLWINDOWSPACING DRAWSCR ..ColSize ] of boolean; 'BitW = (AlphaLow, AlphaMid, AlphaTop, GraphLow, GraphMid, GraphTop, b6, 0GenBuf, ClickBit, b9, b10, BH 1 V M N j RRuO^eepBit, b12, b13, b14, b15); "ScrConfig = set of BitW; (ScP = ^ GrafScreen; %ScrNum = 1..Scrs; # var {for program draw}  rDj x, y, length, width, thickness, spacing: integer; &ch, answer,figure: char; &ok : boolean; &i:integer; &{end of var for program draw} & &WhereX, &WhereY, $XLWindow, $XHWindow, $YLWindow, $YHWindow: integer; $NewPlace: boolean; )Pen: PenColor; &Screen: Array [ 1..Scrs ] of ScP; &DisScr, %DrawScr: ScP; # procedure CreateScreen ( I : ScrNum ; var OK : boolean );   const )SafetyMargin = 200; )  %begin % %if MemAvail >= SizeOf(GrafScreen) div 6 ht, Bottom, Top: integer);  %begin % )XLWindow := Left; )XHWindow := Right; )YLWindow := Bottom; )YHWindow := Top; ) % 0end; )if DY <> 0 )then ,if Y < YLWindow ,then /begin 2if DX <> 0 then 5begin 8TempY := abs(WhereY - RowSize); 8X := end; % % % %  procedure StartPlot; #  var &Dummy : Boolean; &I : integer; ) #begin &SetWindow(0, ColSize, 0, RowSizeWhereX - Round((TempY - abs(YLWindow - RowSize)) T/ Slope); 2 end; 2Y := YLWindow; /end ,else /if Y > YHWindow then 2be); &SetPen(White); &AtXY(0,0); &for I := 1 to Scrs do 'Screen[I] := NIL; &SelectDraw(1,Dummy); &Erase(1); &SelectDisplay(gin 5if DX <> 0 then 8begin ;TempY := abs(WhereY - RowSize); ;X := WhereX - Round((WhereY - abs(YHWindow - [RowSize)) / Slo2 + SafetyMargin then % begin -new(Screen[I]); -OK := true; )end %else )OK := false; % %end; % % %  procedure Sel1, [ ], Dummy); #end { StartPlot }; procedure Point(X, Y: integer);   var )TempY: integer; ) # #begin ectDraw ( I : ScrNum ; var OK : Boolean );  %begin % ' if Screen[I] = NIL then ) CreateScreen(I, OK) ' else ) &AtXY(X, Y); &TempY := abs(WhereY - RowSize); &if (WhereX >= XLWindow) and (WhereX <= XHWindow) & and (WhereY >= YLWindow) aOK := true; ' if OK then ( DrawScr := Screen[I] ; ( %end; %    procedure SelectDisplay ( I : ScrNum ; How : ScrCond (WhereY <= YHWindow) &then )case Pen of ,White: /DrawScr ^ [ TempY, WhereX ] := true; ,Black: /DrawScr ^ [ TempY, Wherenfig ; var OK : Boolean );  # var $ X: packed record & case boolean of ) false: ( Int: integer); ) true: ( SX ] := false; ,Flip: /DrawScr ^ [ TempY, WhereX ] := not DrawScr ^ [ TempY, WhereX ] )end; &NewPlace := false; #end { Pointett: ScrConfig) ' end; ! begin % )if Screen[I] = NIL then ) CreateScreen(I, OK) )else -OK := true; )if OK then - }; procedure Line(X, Y: integer); # #var *TrueY, *DestY, -SX, -SY, -WX, -WY, +Junk: integer; & # # # #procedbegin & if How = [ ] then ) How := [ AlphaLow .. GraphTop ]; & X.Sett := How; ure Window(var X, Y: integer; WhereX, WhereY: integer); & &var -Slope: real; 0DX, -TempY, 0DY: integer; ) &begin { Windo& DisScr := Screen[I]; & UnitWrite(Graphic, DisScr ^, X.Int); # end { Display }; 1 %end; pw } )DX := X - WhereX; )DY := Y - WhereY; )if DX <> 0 then ,Slope := DY / DX; )if DX <> 0 )then -if X < XLWindow then 0brocedure Erase(I : ScrNum); # # begin & if Screen[I] <> NIL then & FillChar(Screen[I] ^, SizeOf(GrafScreen), 0); #egin 3TempY := abs(Y - RowSize) {Transform to real coords}; 3TempY := TempY - Round((Wherex - XLWindow) * Slope); 3Y := abs(T end { Erase }; procedure SetPen(PColor : PenColor);  %begin % )Pen := PColor; ) %end; % % % % procedure AtXY(XempY - RowSize) {Return to graph coords}; 3X := XLWindow; 0end )else ,if X > XHWindow then 0begin , Y: integer); # #begin &WhereX := X; &WhereY := Y; &NewPlace := true; #end { AtXY };  procedure SetWindow(Left, Rig3TempY := abs(Y - RowSize); 3TempY := TempY - Round((WhereX - XHWindow) * Slope); 3Y := abs(TempY- RowSize); 3X := XHWindow;7 ,Line(WhereX + Width, WhereY); ,Line(WhereX, WhereY - Height); ,Line(LX, WhereY); ,Line(LX, LY); ,LX := LX + Spacing; ,LY :CREATESCI SELECTDRI SELECTDII ERASE I SETPEN PCOLOR ATXY = LY - Spacing; ,Height := Height - 2 * Spacing; ,Width := Width - 2 * Spacing; )end; #end { Box }; procedure Arc(RadiusX Y SETWINDOLEFT RIGHT BOTTOM TOP STARTPLODUMMY I POIN, Start, Finish: integer); # #const -W = 0.0174533; & #var -CX, -CY, -ST, ,Fin, +Step: real; & #begin { Arc } &if RT X Y TEMPY WINDOW WHEREX TEMPY WHEREY SLOPE DX DY adius <> 0 &then )begin ,Step := 2.0 / Radius; ,ST := Start; ,ST := ST * W; ,Fin := Finish; ,Fin := Fin * W; ,CX := WherLINE X Y TRUEY DESTY SX JUNK SY WX WY BOX eX; ,CY := WhereY; ,AtXY(WhereX + Radius, WhereY); ,while ST <= Fin do /begin WIDTH HEIGHT I THICK SPACING LX LY ARC RADIUS START FINI2Line(Round(CX + Radius * cos(ST)), Round(CY + Radius * sin(ST 5))); 2ST := ST + Step; /end; )end; #end { Arc }; procSH FIN ST STEP CX CY CIRCLE RADIUS DRAW X I pe); 5 end; 5Y := YHWindow; 2end; &end { Window }; # # # # # #begin { Line } &SX := X; &SY := Y; &Window(X, Y, Whedure Circle(Radius: integer); # #begin &Arc(Radius, 0, 360); #end { Circle }; {$R+}  BEGIN startplot;  for i:=10 to 4ereX, WhereY); &WX := WhereX; &WY := WhereY; &Window(WhereX, WhereY, SX, SY); &TrueY := abs(WhereY -Rowsize); &DestY := abs0 do " begin &atxy (160,120); &circle (I); & $end; "for i:=10 to 40 do $begin & &ATXY(0 ,0); &ARC(I*2,0,90); & &ATX(Y - Rowsize); &if (X >= XLWindow) and (X <= XHWindow) and +(Y >= YLWindow) and (Y <= YHWindow) and + ((X <> WhereX) or (DestY(319,0); &ARC(I*2,90,180); & &ATXY(319,239); &ARC(I*2,180,270); & &ATXY(0,239); &ARC(I*2,0,270); pARC(I*2,0,90); $end;Y <> TrueY)) &then )begin ,if NewPlace or (WX <> WhereX) or (WY <> WhereY) then /Point(WhereX, WhereY);  & $atxy (129,149); $box (60,60,9,-7); $ $ATXY(0,0); $LINE(319,0); $LINE(0,239); $ $ATXY(319,239); $LINE(0,239); $LIN,drawline(Junk, DrawScr ^, 20, WhereX, TrueY, X - WhereX, DestY /- TrueY, ord(Pen)); )end; &WhereX := SX; &WhereY := SY; #E(319,0); $ $readln;   end. {of program draw} end { Line }; procedure Box(Width, Height, Thick, Spacing: integer); # #var .I, -LX, -LY: integer; & #begin { Box } &Width := Width - 1; &Height := Height - 1; &LX := WhereX; &LY := WhereY; &for I := 1 to Thick do )begin ,AtXY(LX, LY); 8 ~ՖWՖ^g Ֆˡ՗՗ Aڊ՗6ي՗E9=՗V؊՗g 9=՗x ՗ ՗ڂ՗=՗՘   ՘K՘_՘f՘mS ՘՗ ՗ڂ՗=՗՘   ՘K՘_՘f՘mS ՘h՘ƭ՘ ՘ (ȡՙՙǠxՙ)ՙ7 ՙ> (ȡcՙUՙ_ՙlZՙ?ՙZՙ?Մ۞(ǀ%ġՅ!Յ'Յ8ՅGՅSՅf@Յá ՅՆՆ Ն)ՆAՙZՙ?ՙZՙZ՚ ՚ǁǕ՚$<<  ՚;՚E4 hxv>Շ,á ՇTՇgՇu:ՇՇ Շ?ՇՈՈ8ՈcՈyjՈ~ՖWՖ^g Ֆˡ՗՗ Aڊ՗6ي՗E9=՗V؊՗g 9=՗x ˡՈإǀ% Չ,ՉNثՉbՉ٫ՉثՉՉѭՊ3۫ՊGګՊ\٫ՊrثՊ՗ ՗ڂ՗=՗՘   ՘K՘_՘f՘mS ՘$Պ?Ջ ՋՋ&ȡՋAՋYՋkՋՋ7 b ՌՌՌ4 DRAW ħȄĄȄRՌ>Ռڤ:Ռڤ)Սڤڤ E6'ՍhՍx Վ pǕ՚<<  ՚1՚;4 $n~|ٕ ՎؕՎˡ ՎՎˡՎɡ9ՏՏ ՏD٧ՏwՏۧՏ>Տš5ՏՐՖ^g Ֆˡ՗՗ Aڊ՗6ي՗E9=՗V؊՗g 9=՗x Ր$ՐWՐsՐՐˡՐɡ>ՐՐˡ(ՐՐՐՑEՑJՑ]EՑi՗ ՗ڂ՗=՗՘   ՘K՘_՘f՘mS ՘Y LENGTH NEWPLACEPEN THICKNESCH WHEREX WHEREY XHWINDOWYHWINDOWWIDTH š<ՑՑˡ(ՑՑՑՒ ՒՒ%Ւ,  R Ւ]ՒhՒw ՒՒՒFIGURE DISSCR OK ANSWER XLWINDOWYLWINDOWSPACING DRAWSCR  Ւا ՒՓ٧ȄĄȄ٧ˍ6ՓՓܧˍۧˍ Փڧ Ք ٧ Ք\ՔfޫՔvݫՔ  DRAW  ՕՕՕ2ՕBՕSȡ]ՕnՕuՕۂ Օڕ Օݧ Օ Օ؂ՕؕՖ؏ o$<<  ՚;՚E4 hxvՖ9؏ՖWՖ^g Ֆˡ՗՗ Aڊ՗6ي՗E9=՗V؊՗g 9=՗x 9 >Շ,á ՇTՇgՇu:ՇՇ Շ?ՇՈՈ8ՈcՈyjՈՖ^g Ֆˡ՗՗ Aڊ՗6ي՗E9=՗V؊՗g 9=՗x ˡՈإǀ% Չ,ՉNثՉbՉ٫ՉثՉՉѭՊ3۫ՊGګՊ\٫ՊrثՊ՗ ՗ڂ՗=՗՘   ՘K՘_՘f՘mS ՘$Պ?Ջ ՋՋ&ȡՋAՋYՋkՋՋ7 b ՌՌՌ4F DRAW ħȄĄȄRՌ>Ռڤ:Ռڤ)Սڤڤ E6'ՍhՍx Վ qǕ՚<<  ՚2՚?? ՚N ՚`?՚q ՚ٕ ՎؕՎˡ ՎՎˡՎɡ9ՏՏ ՏD٧ՏwՏۧՏ>Տš5ՏՐ? ՚՚4 0ZJJي՗E9=՗V؊՗g 9=՗x Ր$ՐWՐsՐՐˡՐɡ>ՐՐˡ(ՐՐՐՑEՑJՑ]EՑi՗ ՗ڂ՗=՗՘   ՘K՘_՘f՘mS ՘š<ՑՑˡ(ՑՑՑՒ ՒՒ%Ւ,  R Ւ]ՒhՒw ՒՒՒՄ۞(ǀ%ġՅ!Յ'Յ8ՅGՅSՅf@Յá ՅՆՆ Ն)ՆA Ւا ՒՓ٧ȄĄȄ٧ˍ6ՓՓܧˍۧˍ Փڧ Ք ٧ Ք\ՔfޫՔvݫՔ>Շ,á ՇTՇgՇu:ՇՇ Շ?ՇՈՈ8ՈcՈyjՈ ՕՕՕ2ՕBՕSȡ]ՕnՕuՕۂ Օڕ Օݧ Օ Օ؂ՕؕՖ؏ˡՈإǀ% Չ,ՉNثՉbՉ٫ՉثՉՉѭՊ3۫ՊGګՊ\٫ՊrثՊՖ9؏ՖWՖ^g Ֆˡ՗՗ Aڊ՗6ي՗E9=՗V؊՗g 9=՗x $Պ?Ջ ՋՋ&ȡՋAՋYՋkՋՋ7 b ՌՌՌ4՗ ՗ڂ՗=՗՘   ՘K՘_՘f՘mS ՘ħȄĄȄRՌ>Ռڤ:Ռڤ)Սڤڤ E6'ՍhՍx Վh՘ƭ՘ ՘ (ȡՙՙǠxՙ)ՙ7 ՙ> (ȡiՙUՙ_ՙlZՙ?ՙZǴՙٕ ՎؕՎˡ ՎՎˡՎɡ9ՏՏ ՏD٧ՏwՏۧՏ>Տš5ՏՐՄ۞(ǀ%ġՅ!Յ'Յ8ՅGՅSՅf@Յá ՅՆՆ Ն)ՆA?ՙǴՙ?ՙZՙZՙ ՚ ǁǕ՚<<  ՚1՚;4 $n~|: ٕ ՎؕՎˡ ՎՎˡՎɡ9ՏՏ ՏD٧ՏwՏۧՏ>Տš5ՏՐ؏ՖWՖ^g Ֆˡ՗՗ Aڊ՗6ي՗E9=՗V؊՗g 9=՗x Ր$ՐWՐsՐՐˡՐɡ>ՐՐˡ(ՐՐՐՑEՑJՑ]EՑi ՗ڂ՗=՗՘   ՘K՘_՘f՘mS ՘hՐ$ՐWՐsՐՐˡՐɡ>ՐՐˡ(ՐՐՐՑEՑJՑ]EՑiš<ՑՑˡ(ՑՑՑՒ ՒՒ%Ւ,  R Ւ]ՒhՒw ՒՒՒš<ՑՑˡ(ՑՑՑՒ ՒՒ%Ւ,  R Ւ]ՒhՒw ՒՒՒ Ւا ՒՓ٧ȄĄȄ٧ˍ6ՓՓܧˍۧˍ Փڧ Ք ٧ Ք\ՔfޫՔvݫՔ Ւا ՒՓ٧ȄĄȄ٧ˍ6ՓՓܧˍۧˍ Փڧ Ք ٧ Ք\ՔfޫՔvݫՔ ՕՕՕ2ՕBՕSȡ]ՕnՕuՕۂ Օڕ Օݧ Օ Օ؂ՕؕՖ؏ ՕՕՕ2ՕBՕSȡ]ՕnՕuՕۂ Օڕ Օݧ Օ Օ؂ՕؕՖ؏Ֆ9؏ՖWՖ^g Ֆˡ՗՗ Aڊ՗6ي՗E9=՗V؊՗g 9=՗x Ֆ9؏ՖWՖ^g Ֆˡ՗՗ Aڊ՗6ي՗E9=՗V؊՗g 9=՗x ՗ ՗ڂ՗=՗՘   ՘K՘_՘f՘mS ՘՗ ՗ڂ՗=՗՘   ՘K՘_՘f՘mS ՘h՘ƭ՘ ՘ ȡ[ՙ ՙddՙ(ՙ4ǖǖՙE ՙSՙad ՙsՙ ՙddՙ<<  ՙh՘ƭ՘ ՘ (ȡՙՙǠxՙ)ՙ7 ՙ> (ȡiՙUՙ_ՙlZՙ?ՙZǴՙ ՙՙr4 .,Vz4xՕۂ Օڕ Օݧ Օ Օ؂ՕؕՖ؏?ՙǴՙՙZՙZՙ ՚ ǁǕ՚<<  ՚2՚?? ՚N ՚`?՚q ՚Ֆ9؏ՖWՖ^g Ֆˡ՗՗ Aڊ՗6ي՗E9=՗V؊՗g 9=՗x ? ՚՚4 0ZJJي՗E9=՗V؊՗g 9=՗x ՗ ՗ڂ՗=՗՘   ՘K՘_՘f՘mS ՘՗ ՗ڂ՗=՗՘   ՘K՘_՘f՘mS ՘ DRAW ħȄĄȄRՌ>Ռڤ:Ռڤ)Սڤڤ E6'ՍhՍx Վ Wۂ Օڕ Օݧ Օ Օ؂ՕؕՖ؏Ֆ9;  Ւ ՒՒȄĄȄ٧ˍ6Փ~Փܧˍۧˍ Փ Ք ٧ Ք\ՔfޫՔvݫՔ>Շá Շ?ՇRՇ`:ՇpՇ Շ?ՇՇՈՈAՈWjՈ ՕՕՕ2ՕBՕSȡ]ՕnՕuՕۂ Օڕ Օݧ Օ Օ؂ՕؕՖ؏Ֆ9ˡՈǀ% Ո,Չ,ثՉ@Չ٫ՉثՉՉՊ۫Պ%ګՊ:٫ՊPث Պa؏ՖWՖ^g Ֆˡ՗՗ Aڊ՗6ي՗E9=՗V؊՗g 9=՗x $Պ?ՊՊՋȡՋՋ7ՋIՋ]Ջs7 b ՋՌՌ& ՗ڂ՗=՗՘   ՘K՘_՘f՘mS ՘hħȄĄȄSՌ>Ռڤ;Ռڤ*ՍڤڤF7(ՍZՍj Վ՘ƭ՘ ՘ddՙKՙddՙ' ՙ5 ՙG(( ՙVddՙg22 ՙ~ՙ0Z`|R$zٕ ՎؕՎˡ ՎՎˡ~Վɡ7ՎՎՏ6ՏiՏՏ>Տš5ՏՏՄƞ(ǀ%ġՅ ՅՅ#Յ2Յ>ՅQ@Յá ՅՅՅ ՆՆ,H`FՕՕ2ՕBՕSȡ]ՕnՕuՕۂ Օڕ Օݧ Օ Օ؂ՕؕՖ؏Ֆ9>Շá Շ?ՇRՇ`:ՇpՇ Շ?ՇՇՈՈAՈWjՈ؏ՖWՖ^g Ֆˡ՗՗ Aڊ՗6ي՗E9=՗V؊՗g 9=՗x ˡՈǀ% Ո,Չ,ثՉ@Չ٫ՉثՉՉՊ۫Պ%ګՊ:٫ՊPث Պa ՗ڂ՗=՗՘   ՘K՘_՘f՘mS ՘h$Պ?ՊՊՋȡՋՋ7ՋIՋ]Ջs7 b ՋՌՌ& DRAW ħȄĄȄSՌ>Ռڤ;Ռڤ*ՍڤڤF7(ՍZՍj Վ Xۂ Օڕ Օݧ Օ Օ؂ՕؕՖ؏Ֆ9zٕ ՎؕՎˡ ՎՎˡ~Վɡ7ՎՎՏ6ՏiՏՏ>Տš5ՏՏ؏ՖWՖ^g Ֆˡ՗՗ Aڊ՗6ي՗E9=՗V؊՗g 9=՗x ՐՐ:ՐVՐiՐoˡՐɡ>ՐՐˡ(ՐՐՐՑ(Ց-Ց@EՑL ՗ڂ՗=՗՘   ՘K՘_՘f՘mS ՘h<ՑfՑkˡ(ՑՑՑՑՑՒՒ@  N Ւ@ՒKՒZ ՒvՒՒՄƞ(ǀ%ġՅ ՅՅ#Յ2Յ>ՅQ@Յá ՅՅՅ ՆՆ,<  ՗ڂ՗=՗՘   ՘K՘_՘f՘mS ՘hprogram drawer;   var %xBase, yBase, x1, y1, x2, y2 : integer; %Filename : string; %datafile: text; %loop:integer;  {$i ՘ƭ՘ ՘ddՙKՙddՙ' ՙ5 ՙGՙU(( ՙdddՙu22 ՙՙ0`fX'plot' } ( ( (procedure drawit; 0 0procedure drawfile; 0begin 0reset (datafile); 4repeat 8ReadLn(Datafile, y1, x1, y2, *NfLՕ2ՕBՕSȡ]ՕnՕuՕۂ Օڕ Օݧ Օ Օ؂ՕؕՖ؏Ֆ9x2); 8atxy(x1 + Xbase + loop*3, y1+ Ybase + loop*3); 8line(x2 + Xbase + loop*3,y2+ Ybase + loop*3); 4until eof( datafile ); ؏ՖWՖ^g Ֆˡ՗՗ Aڊ՗6ي՗E9=՗V؊՗g 9=՗x ( end; ( (begin ,for loop := 1 to 25 do ,begin 0pen := white; 0drawfile; 0pen := black; 0drawfile; ,end; (end; ՗ڂ՗=՗՘   ՘K՘_՘f՘mS ՘h  %begin )startplot; )repeat -Write('What file?'); -readLn( Filename ); -if Filename <> '' then -begin 2Write('What ba-M ,YˡD# OF BLOCKS ?  ɡ BAD # BLOCKSNew vovO^ses? '); 2ReadLn(XBase, YBase); 2Close( datafile ); 2Reset( datafile, concat(Filename, '.text') ); 2drawit; -end; ) )untA_il Filename = ''; %end. %  ՐՐ:ՐVՐiՐoˡՐɡ>ՐՐˡ(ՐՐՐՑ(Ց-Ց@EՑL<ՑfՑkˡ(ՑՑՑՑՑՒՒ@  N Ւ@ՒKՒZ ՒvՒՒ Ւ ՒՒȄĄȄ٧ˍ6Փ~Փܧˍۧˍ Փ Ք ٧ Ք\ՔfޫՔvݫՔ ՕՕՕ2ՕBՕSȡ]ՕnՕuՕۂ Օڕ Օݧ Օ Օ؂ՕؕՖ؏Ֆ9؏ՖWՖ^g Ֆˡ՗՗ Aڊ՗6ي՗E9=՗V؊՗g 9=՗x =  procedure CreateScreen ( I : ScrNum ; var OK : boolean );   const )SafetyMargin = 200; )  %begin % %if MemAvail >= SizeOf(GrafScreen) div 2 + SafetyMargin then % begin -new(Screen[I]); -OK := true; )end %else )OK := false; % %end; % % %  procedure SelectDraw ( I : ScrNum ; var OK : Boolean );  %begin % ' if Screen[I] = NIL then ) CreateScreen(I, OK) ' else ) OK := true; ' if OK then ( DrawScr := Screen[I] ; ( %end; %    procedure SelectDisplay ( I : ScrNum ; How : ScrConfig ; var OK : Boolean );  # var $ X: packed record & case boolean of )  false: ( Int: integer); ) true: ( Sett: ScrConfig) ' end; ! begin % )if Screen[I] = NIL then ) CreateScreen(I,{ Terak graphics package George Gonzalez July, 1978 ( (Dale V. Gear Nov, 1979 ( added  OK) )else -OK := true; )if OK then -begin & if How = [ ] then ) How := [ AlphaLow .. GraphTop ]; & SelectDraw, SelectDisplay, SetPen .SetWindow . . (Includes StartPlot, Line, Box, AtXY SelectDraw, SelectDi X.Sett := How; & DisScr := Screen[I]; & UnitWrite(Graphic, DisScr ^, X.Int); # end { Displsplay, Erase SetPen, SetWindow } {$R-} const $Graphic = 3; $RowSize = 239; $ColSize = 319; # Scrs = 4;ay }; 1 %end; procedure Erase(I : ScrNum); # # begin & if Screen[I] <> NIL then  # type #PenColor = (NullColor, White, Black, Flip); %GrafScreen = packed array [ 0.. RowSize, 0..ColSize ] of boolean; 'Bit& FillChar(Screen[I] ^, SizeOf(GrafScreen), 0); # end { Erase }; procedure SetPen(PColor : PenColor);  %begin W = (AlphaLow, AlphaMid, AlphaTop, GraphLow, GraphMid, GraphTop, b6, 0GenBuf, ClickBit, b9, b10, BeepBit, b12, b13, b14, b15); % )Pen := PColor; ) %end; % % % % procedure AtXY(X, Y: integer); # #begin &WhereX := X; &WhereY := Y; &NewPlace := tH O^"ScrConfig = set of BitW; (ScP = ^ GrafScreen; %ScrNum = 1..Scrs; # var &WhereX, &WhereY, $XLWindow, $XHWindow, $YLWind+cD'ow, $YHWindow: integer; $NewPlace: boolean; )Pen: PenColor; &Screen: Array [ 1..Scrs ] of ScP; &DisScr, %DrawScr: ScP; # > dow; 0end )else ,if X > XHWindow then 0begin 3TempY := abs(Y - RowSize); 3TempY := TempY - Round((WhereX - XHWindow) * Sloing; )end; #end { Box }; rue; #end { AtXY };  procedure SetWindow(Left, Right, Bottom, Top: integer);  %begin % )XLWindow := Left; )XHWindowpe); 3Y := abs(TempY- RowSize); 3X := XHWindow; 0end; )if DY <> 0 )then ,if Y < YLWindow ,then /begin  := Right; )YLWindow := Bottom; )YHWindow := Top; ) %end; % % % %  procedure StartPlot; #  var &Dummy : Boolean; &I2if DX <> 0 then 5begin 8TempY := abs(WhereY - RowSize); 8X := WhereX - Round((TempY - abs(YLWindow - RowSize)) T/ Slope);  : integer; ) #begin &SetWindow(0, ColSize, 0, RowSize); &SetPen(White); &AtXY(0,0); &for I := 1 to Scrs do 'Screen[I] :=2 end; 2Y := YLWindow; /end ,else /if Y > YHWindow then 2begin 5if DX <> 0 then 8begin ;TempY := abs(WhereY - RowSize NIL; &SelectDraw(1,Dummy); &Erase(1); &SelectDisplay(1, [ ], Dummy); #end { StartPlot }; procedure Point(X, Y: integer); ;X := WhereX - Round((WhereY - abs(YHWindow - [RowSize)) / Slope); 5 end; 5Y := YHWindow; 2end; &end { Window }; # );   var )TempY: integer; ) # #begin &AtXY(X, Y); &TempY := abs(WhereY - RowSize); &if (WhereX >= XLWindow) and (Where# # # # #begin { Line } &SX := X; &SY := Y; &Window(X, Y, WhereX, WhereY); &WX := WhereX; &WY := WhereY; &Window(WhereX <= XHWindow) & and (WhereY >= YLWindow) and (WhereY <= YHWindow) &then )case Pen of ,White: X, WhereY, SX, SY); &TrueY := abs(WhereY -Rowsize); &DestY := abs(Y - Rowsize); &if (X >= XLWindow) and (X <= XHWindow) and /DrawScr ^ [ TempY, WhereX ] := true; ,Black: /DrawScr ^ [ TempY, WhereX ] := false; ,Flip: /DrawScr ^ [ TempY, WhereX ] :=+(Y >= YLWindow) and (Y <= YHWindow) and + ((X <> WhereX) or (DestY <> TrueY)) &then )begin ,if NewPlace or (WX <> WhereX) o not DrawScr ^ [ TempY, WhereX ] )end; &NewPlace := false; #end { Point }; procedure Line(X, Y: integer); # #var *Trur (WY <> WhereY) then /Point(WhereX, WhereY); ,drawline(Junk, DrawScr ^, 20, WhereX, TrueY, X - WhereX, DestY /- TrueY, ord(PeY, *DestY, -SX, -SY, -WX, -WY, +Junk: integer; & # # # #procedure Window(var X, Y: integer; WhereX, WhereY: integer)en)); )end; &WhereX := SX; &WhereY := SY; #end { Line }; procedure Box(Width, Height, Thick, Spacing: integer); # ; & &var -Slope: real; 0DX, -TempY, 0DY: integer; ) &begin { Window } )DX := X - WhereX; )DY := Y - WhereY; )if DX <>#var .I, -LX, -LY: integer; & #begin { Box } &Width := Width - 1; &Height := Height - 1; &LX := WhereX; &LY := WhereY; 0 then ,Slope := DY / DX; )if DX <> 0 )then -if X < XLWindow then 0begin 3TempY := abs(Y - RowSize) {Transform to real co &for I := 1 to Thick do )begin ,AtXY(LX, LY); ,Line(WhereX + Width, WhereY); ,Line(WhereX, WhereY - Height); ,Line(LX, Whords}; 3TempY := TempY - Round((Wherex - XLWindow) * Slope); 3Y := abs(TempY - RowSize) {Return to graph coords}; 3X := XLWinereY); ,Line(LX, LY); ,LX := LX + Spacing; ,LY := LY - Spacing; ,Height := Height - 2 * Spacing; ,Width := Width - 2 * Spac? X Y SETWINDOLEFT RIGHT BOTTOM TOP STARTPLODUMMY I POINY LENGTH NEWPLACEPEN THICKNESCH WHEREX WHEREY XHWINDOWYHWINDOWWIDTH T X Y TEMPY WINDOW WHEREX TEMPY WHEREY SLOPE DX DY FIGURE DISSCR OK ANSWER XLWINDOWYLWINDOWSPACING DRAWSCR LINE X Y TRUEY DESTY SX JUNK SY WX WY BOX CREATESCI SELECTDRI SELECTDII ERASE I SETPEN PCOLOR ATXY WIDTH HEIGHT I THICK SPACING LX LY ARC RADIUS START FINIX Y SETWINDOLEFT RIGHT BOTTOM TOP STARTPLODUMMY I POINCREATESCI SELECTDRI SELECTDII ERASE I SETPEN PCOLOR ATXY SH FIN ST STEP CX CY CIRCLE RADIUS DRAW X I X Y SETWINDOLEFT RIGHT BOTTOM TOP STARTPLODUMMY I POINY LENGTH NEWPLACEPEN THICKNESCH WHEREX WHEREY XHWINDOWYHWINDOWWIDTH T X Y TEMPY WINDOW WHEREX TEMPY WHEREY SLOPE DX DY FIGURE DISSCR OK ANSWER XLWINDOWYLWINDOWSPACING DRAWSCR LINE X Y TRUEY DESTY SX JUNK SY WX WY BOX CREATESCI SELECTDRI SELECTDII ERASE I SETPEN PCOLOR ATXY WIDTH HEIGHT I THICK SPACING LX LY ARC RADIUS START FINIX Y SETWINDOLEFT RIGHT BOTTOM TOP STARTPLODUMMY I POINSH FIN ST STEP CX CY CIRCLE RADIUS DRAW X Y T X Y TEMPY WINDOW WHEREX TEMPY WHEREY SLOPE DX DY LENGTH NEWPLACEPEN THICKNESWHEREX WHEREY XHWINDOWYHWINDOW WIDTH FIGURE DISSCR LINE X Y TRUEY DESTY SX JUNK SY WX WY BOX OK ANSWER XLWINDOWYLWINDOW SPACING DRAWSCR WIDTH HEIGHT I THICK SPACING LX LY ARC RADIUS START FINICREATESCI SELECTDRI SELECTDII ERASE I SETPEN PCOLOR ATXY SH FIN ST STEP CX CY CIRCLE RADIUS DRAW X I @ H DRAW  rǕ՚<<  ՚3՚@? ՚O ՚a?՚r ՚? ՚՚4 2\LL՗E9=՗V؊՗g 9=՗x ՗ ՗ڂ՗=՗՘   ՘K՘_՘f՘mS ՘h՘ƭ՘ ՘ (ȡՙՙǠxՙ)ՙ7 ՙ> (ȡkՙUՙ_ՙlZՙ?ՙZǴՙՄ۞(ǀ%ġՅ!Յ'Յ8ՅGՅSՅf@Յá ՅՆՆ Ն)ՆA?ՙǴՙՙՙZՙ ՚ ǁǕ՚<<  ՚3՚@? ՚O ՚a?՚r >Շ,á ՇTՇgՇu:ՇՇ Շ?ՇՈՈ8ՈcՈyjՈ՚? ՚՚4 2\LL՗E9=՗V؊՗g 9=՗x ˡՈإǀ% Չ,ՉNثՉbՉ٫ՉثՉՉѭՊ3۫ՊGګՊ\٫ՊrثՊ՗ ՗ڂ՗=՗՘   ՘K՘_՘f՘mS ՘T X Y TEMPY WINDOW WHEREX TEMPY WHEREY SLOPE DX DY $Պ?Ջ ՋՋ&ȡՋAՋYՋkՋՋ7 b ՌՌՌ4LINE X Y TRUEY DESTY SX JUNK SY WX WY BOX ħȄĄȄRՌ>Ռڤ:Ռڤ)Սڤڤ E6'ՍhՍx ՎWIDTH HEIGHT I THICK SPACING LX LY ARC RADIUS START FINIٕ ՎؕՎˡ ՎՎˡՎɡ9ՏՏ ՏD٧ՏwՏۧՏ>Տš5ՏՐSH FIN ST STEP CX CY CIRCLE RADIUS DRAW X I Ր$ՐWՐsՐՐˡՐɡ>ՐՐˡ(ՐՐՐՑEՑJՑ]EՑiY LENGTH NEWPLACEPEN THICKNESCH WHEREX WHEREY XHWINDOWYHWINDOWWIDTH š<ՑՑˡ(ՑՑՑՒ ՒՒ%Ւ,  R Ւ]ՒhՒw ՒՒՒFIGURE DISSCR OK ANSWER XLWINDOWYLWINDOWSPACING DRAWSCR DRAWFILEDRAWIT A ՗ ՗ڂ՗=՗՘   ՘K՘_՘f՘mS ՘CREATESCI SELECTDRI SELECTDII ERASE I SETPEN PCOLOR ATXY WIDTH HEIGHT I THICK SPACING LX LY ARC RADIUS START FINIX Y SETWINDOLEFT RIGHT BOTTOM TOP STARTPLODUMMY I POINSH FIN ST STEP CX CY CIRCLE RADIUS DRAW X Y T X Y TEMPY WINDOW WHEREX TEMPY WHEREY SLOPE DX DY LENGTH NEWPLACEPEN THICKNESCH WHEREX WHEREY XHWINDOWYHWINDOW WIDTH FIGURE LINE X Y TRUEY DESTY SX JUNK SY WX WY BOX  DISSCR OK ANSWER XLWINDOWYLWINDOWSPACING DRAWSCR WIDTH HEIGHT I THICK SPACING LX LY ARC RADIUS START FINICREATESCI SELECTDRI SELECTDII ERASE I SETPEN PCOLOR ATXY SH FIN ST STEP CX CY CIRCLE RADIUS DRAW X Y X Y SETWINDOLEFT RIGHT BOTTOM TOP STARTPLODUMMY I POINLENGTH NEWPLACEPEN THICKNESCH WHEREX WHEREY XHWINDOWYHWINDOW WIDTH FIGURE T X Y TEMPY WINDOW WHEREX TEMPY WHEREY SLOPE DX DY  DISSCR OK ANSWER XLWINDOWYLWINDOWSPACING DRAWSCR LINE X Y TRUEY DESTY SX JUNK SY WX WY BOX CREATESCI SELECTDRI SELECTDII ERASE I SETPEN PCOLOR ATXY WIDTH HEIGHT I THICK SPACING LX LY ARC RADIUS START FINIX Y SETWINDOLEFT RIGHT BOTTOM TOP STARTPLODUMMY I POINh՘ƭ՘ ՘ ȡՙ ՙddՙ(ՙ3 ՙ;ǖǖՙL ՙ]ՙkd ՙՙ ՙddՙ<< SH FIN ST STEP CX CY CIRCLE RADIUS DRAW X Y  ՙ˶ՙr4 .,Vz4xՕۂ Օڕ Օݧ Օ Օ؂ՕؕՖ؏LENGTH NEWPLACEPEN THICKNESCH WHEREX WHEREY XHWINDOWYHWINDOW WIDTH FIGURE Ֆ9؏ՖWՖ^g Ֆˡ՗՗ Aڊ՗6ي՗E9=՗V؊՗g 9=՗x  DISSCR OK ANSWER XLWINDOWYLWINDOWSPACING DRAWSCR B T X Y TEMPY WINDOW WHEREX TEMPY WHEREY SLOPE DX DY  DISSCR OK ANSWER XLWINDOWYLWINDOWSPACING DRAWSCR LINE X Y TRUEY DESTY SX JUNK SY WX WY BOX CREATESCI SELECTDRI SELECTDII ERASE I SETPEN PCOLOR ATXY WIDTH HEIGHT I THICK SPACING LX LY ARC RADIUS START FINIX Y SETWINDOLEFT RIGHT BOTTOM TOP STARTPLODUMMY I POINSH FIN ST STEP CX CY CIRCLE RADIUS DRAW X Y T X Y TEMPY WINDOW WHEREX TEMPY WHEREY SLOPE DX DY LENGTH NEWPLACEPEN THICKNESCH WHEREX WHEREY XHWINDOWYHWINDOW WIDTH FIGURE LINE X Y TRUEY DESTY SX JUNK SY WX WY BOX  DISSCR OK ANSWER XLWINDOWYLWINDOWSPACING DRAWSCR WIDTH HEIGHT I THICK SPACING LX LY ARC RADIUS START FINICREATESCI SELECTDRI SELECTDII ERASE I SETPEN PCOLOR ATXY SH FIN ST STEP CX CY CIRCLE RADIUS DRAW X Y X Y SETWINDOLEFT RIGHT BOTTOM TOP STARTPLODUMMY I POINLENGTH NEWPLACEPEN THICKNESCH WHEREX WHEREY XHWINDOWYHWINDOW WIDTH FIGURE T X Y TEMPY WINDOW WHEREX TEMPY WHEREY SLOPE DX DY  DISSCR OK ANSWER XLWINDOWYLWINDOWSPACING DRAWSCR LINE X Y TRUEY DESTY SX JUNK SY WX WY BOX  DRAW WIDTH HEIGHT I THICK SPACING LX LY ARC RADIUS START FINI Zۂ Օڕ Օݧ Օ Օ؂ՕؕՖ؏Ֆ9SH FIN ST STEP CX CY CIRCLE RADIUS DRAW X Y ؏ՖWՖ^g Ֆˡ՗՗ Aڊ՗6ي՗E9=՗V؊՗g 9=՗x LENGTH NEWPLACEPEN THICKNESCH WHEREX WHEREY XHWINDOWYHWINDOW WIDTH FIGURE  ՗ڂ՗=՗՘   ՘K՘_՘f՘mS ՘hC ؏ՖWՖ^g Ֆˡ՗՗ Aڊ՗6ي՗E9=՗V؊՗g 9=՗x $Պ?ՊՊՋȡՋՋ7ՋIՋ]Ջs7 b ՋՌՌ& ՗ڂ՗=՗՘   ՘K՘_՘f՘mS ՘hħȄĄȄSՌ>Ռڤ;Ռڤ*ՍڤڤF7(ՍZՍj Վ՘ƭ՘ ՘ddՙKՙddՙ' ՙ5ՙC ՙUՙc(( ՙrddՙ<<  ՙՙ 0hnzٕ ՎؕՎˡ ՎՎˡ~Վɡ7ՎՎՏ6ՏiՏՏ>Տš5ՏՏՄƞ(ǀ%ġՅ ՅՅ#Յ2Յ>ՅQ@Յá ՅՅՅ ՆՆ,` 2VnTՕBՕSȡ]ՕnՕuՕۂ Օڕ Օݧ Օ Օ؂ՕؕՖ؏Ֆ9>Շá Շ?ՇRՇ`:ՇpՇ Շ?ՇՇՈՈAՈWjՈ؏ՖWՖ^g Ֆˡ՗՗ Aڊ՗6ي՗E9=՗V؊՗g 9=՗x ˡՈǀ% Ո,Չ,ثՉ@Չ٫ՉثՉՉՊ۫Պ%ګՊ:٫ՊPث Պa ՗ڂ՗=՗՘   ՘K՘_՘f՘mS ՘h$Պ?ՊՊՋȡՋՋ7ՋIՋ]Ջs7 b ՋՌՌ& DRAW ħȄĄȄSՌ>Ռڤ;Ռڤ*ՍڤڤF7(ՍZՍj Վ [ۂ Օڕ Օݧ Օ Օ؂ՕؕՖ؏Ֆ9zٕ ՎؕՎˡ ՎՎˡ~Վɡ7ՎՎՏ6ՏiՏՏ>Տš5ՏՏ؏ՖWՖ^g Ֆˡ՗՗ Aڊ՗6ي՗E9=՗V؊՗g 9=՗x ՐՐ:ՐVՐiՐoˡՐɡ>ՐՐˡ(ՐՐՐՑ(Ց-Ց@EՑL ՗ڂ՗=՗՘   ՘K՘_՘f՘mS ՘h<ՑfՑkˡ(ՑՑՑՑՑՒՒ@  N Ւ@ՒKՒZ ՒvՒՒՄƞ(ǀ%ġՅ ՅՅ#Յ2Յ>ՅQ@Յá ՅՅՅ ՆՆ, Ւ ՒՒȄĄȄ٧ˍ6Փ~Փܧˍۧˍ Փ Ք ٧ Ք\ՔfޫՔvݫՔ>Շá Շ?ՇRՇ`:ՇpՇ Շ?ՇՇՈՈAՈWjՈ ՕՕՕ2ՕBՕSȡ]ՕnՕuՕۂ Օڕ Օݧ Օ Օ؂ՕؕՖ؏Ֆ9ˡՈǀ% Ո,Չ,ثՉ@Չ٫ՉثՉՉՊ۫Պ%ګՊ:٫ՊPث ՊaD rxj<`x^ՕSȡ]ՕnՕuՕۂ Օڕ Օݧ Օ Օ؂ՕؕՖ؏Ֆ9ՐՐ:ՐVՐiՐoˡՐɡ>ՐՐˡ(ՐՐՐՑ(Ց-Ց@EՑL؏ՖWՖ^g Ֆˡ՗՗ Aڊ՗6ي՗E9=՗V؊՗g 9=՗x <ՑfՑkˡ(ՑՑՑՑՑՒՒ@  N Ւ@ՒKՒZ ՒvՒՒ ՗ڂ՗=՗՘   ՘K՘_՘f՘mS ՘h Ւ ՒՒȄĄȄ٧ˍ6Փ~Փܧˍۧˍ Փ Ք ٧ Ք\ՔfޫՔvݫՔ DRAW  ՕՕՕ2ՕBՕSȡ]ՕnՕuՕۂ Օڕ Օݧ Օ Օ؂ՕؕՖ؏Ֆ9 \ۂ Օڕ Օݧ Օ Օ؂ՕؕՖ؏Ֆ9؏ՖWՖ^g Ֆˡ՗՗ Aڊ՗6ي՗E9=՗V؊՗g 9=՗x ؏ՖWՖ^g Ֆˡ՗՗ Aڊ՗6ي՗E9=՗V؊՗g 9=՗x  ՗ڂ՗=՗՘   ՘K՘_՘f՘mS ՘hՐՐ:ՐVՐiՐoˡՐɡ>ՐՐˡ(ՐՐՐՑ(Ց-Ց@EՑL ՗ڂ՗=՗՘   ՘K՘_՘f՘mS ՘h<ՑfՑkˡ(ՑՑՑՑՑՒՒ@  N Ւ@ՒKՒZ ՒvՒՒՄƞ(ǀ%ġՅ ՅՅ#Յ2Յ>ՅQ@Յá ՅՅՅ ՆՆ, Ւ ՒՒȄĄȄ٧ˍ6Փ~Փܧˍۧˍ Փ Ք ٧ Ք\ՔfޫՔvݫՔ>Շá Շ?ՇRՇ`:ՇpՇ Շ?ՇՇՈՈAՈWjՈ ՕՕՕ2ՕBՕSȡ]ՕnՕuՕۂ Օڕ Օݧ Օ Օ؂ՕؕՖ؏Ֆ9ˡՈǀ% Ո,Չ,ثՉ@Չ٫ՉثՉՉՊ۫Պ%ګՊ:٫ՊPث Պa؏ՖWՖ^g Ֆˡ՗՗ Aڊ՗6ي՗E9=՗V؊՗g 9=՗x $Պ?ՊՊՋȡՋՋ7ՋIՋ]Ջs7 b ՋՌՌ& ՗ڂ՗=՗՘   ՘K՘_՘f՘mS ՘hħȄĄȄSՌ>Ռڤ;Ռڤ*ՍڤڤF7(ՍZՍj Վ՘ƭ՘ ՘ddՙKՙddՙ'ǖǖՙ8 ՙFՙT ՙfՙt(( ՙddՙ<<  ՙՙ0zٕ ՎؕՎˡ ՎՎˡ~Վɡ7ՎՎՏ6ՏiՏՏ>Տš5ՏՏE  DRAW  ՕՕՕ2ՕBՕSȡ]ՕnՕuՕۂ Օڕ Օݧ Օ Օ؂ՕؕՖ؏ ^Օۂ Օڕ Օݧ Օ Օ؂ՕؕՖ؏Ֆ9؏ՖWՖ^g Ֆˡ՗՗ Aڊ՗6ي՗E9=՗V؊՗g 9=՗x Ֆ9؏ՖWՖ^g Ֆˡ՗՗ Aڊ՗6ي՗E9=՗V؊՗g 9=՗x ՗ ՗ڂ՗=՗՘   ՘K՘_՘f՘mS ՘՗ ՗ڂ՗=՗՘   ՘K՘_՘f՘mS ՘h՘ƭ՘ ՘ ȡfՙ ՙddՙ(Kՙ5ǖǖՙF ՙTՙbd ՙtՙ ՙddՙ<<  ՙՄ۞(ǀ%ġՅ!Յ'Յ8ՅGՅSՅf@Յá ՅՆՆ Ն)ՆAՙ n4|*(Rv0tuՕۂ Օڕ Օݧ Օ Օ؂ՕؕՖ؏>Շ,á ՇTՇgՇu:ՇՇ Շ?ՇՈՈ8ՈcՈyjՈՖ9؏ՖWՖ^g Ֆˡ՗՗ Aڊ՗6ي՗E9=՗V؊՗g 9=՗x ˡՈإǀ% Չ,ՉNثՉbՉ٫ՉثՉՉѭՊ3۫ՊGګՊ\٫ՊrثՊ՗ ՗ڂ՗=՗՘   ՘K՘_՘f՘mS ՘$Պ?Ջ ՋՋ&ȡՋAՋYՋkՋՋ7 b ՌՌՌ4 DRAW ħȄĄȄRՌ>Ռڤ:Ռڤ)Սڤڤ E6'ՍhՍx Վ _Օۂ Օڕ Օݧ Օ Օ؂ՕؕՖ؏՘ƭ՘ ՘ddՙKՙǖǖՙ& ՙ4ՙBd ՙTՙb ՙqddՙ<<  ՙՙ0jpٕ ՎؕՎˡ ՎՎˡՎɡ9ՏՏ ՏD٧ՏwՏۧՏ>Տš5ՏՐb  4XpVՕBՕSȡ]ՕnՕuՕۂ Օڕ Օݧ Օ Օ؂ՕؕՖ؏Ֆ9Ր$ՐWՐsՐՐˡՐɡ>ՐՐˡ(ՐՐՐՑEՑJՑ]EՑi؏ՖWՖ^g Ֆˡ՗՗ Aڊ՗6ي՗E9=՗V؊՗g 9=՗x š<ՑՑˡ(ՑՑՑՒ ՒՒ%Ւ,  R Ւ]ՒhՒw ՒՒՒ ՗ڂ՗=՗՘   ՘K՘_՘f՘mS ՘h Ւا ՒՓ٧ȄĄȄ٧ˍ6ՓՓܧˍۧˍ Փڧ Ք ٧ Ք\ՔfޫՔvݫՔF ՗ ՗ڂ՗=՗՘   ՘K՘_՘f՘mS ՘ DRAW Մ۞(ǀ%ġՅ!Յ'Յ8ՅGՅSՅf@Յá ՅՆՆ Ն)ՆA nۂ Օڕ Օݧ Օ Օ؂ՕؕՖ؏>Շ,á ՇTՇgՇu:ՇՇ Շ?ՇՈՈ8ՈcՈyjՈՖ9؏ՖWՖ^g Ֆˡ՗՗ Aڊ՗6ي՗E9=՗V؊՗g 9=՗x ˡՈإǀ% Չ,ՉNثՉbՉ٫ՉثՉՉѭՊ3۫ՊGګՊ\٫ՊrثՊ՗ ՗ڂ՗=՗՘   ՘K՘_՘f՘mS ՘$Պ?Ջ ՋՋ&ȡՋAՋYՋkՋՋ7 b ՌՌՌ4Մ۞(ǀ%ġՅ!Յ'Յ8ՅGՅSՅf@Յá ՅՆՆ Ն)ՆACREATESCI SELECTDRI SELECTDII ERASE I SETPEN PCOLOR ATXY >Շ,á ՇTՇgՇu:ՇՇ Շ?ՇՈՈ8ՈcՈyjՈX Y SETWINDOLEFT RIGHT BOTTOM TOP STARTPLODUMMY I POINˡՈإǀ% Չ,ՉNثՉbՉ٫ՉثՉՉѭՊ3۫ՊGګՊ\٫ՊrثՊT X Y TEMPY WINDOW WHEREX TEMPY WHEREY SLOPE DX DY $Պ?Ջ ՋՋ&ȡՋAՋYՋkՋՋ7 b ՌՌՌ4LINE X Y TRUEY DESTY SX JUNK SY WX WY BOX ħȄĄȄRՌ>Ռڤ:Ռڤ)Սڤڤ E6'ՍhՍx ՎWIDTH HEIGHT I THICK SPACING LX LY ARC RADIUS START FINIٕ ՎؕՎˡ ՎՎˡՎɡ9ՏՏ ՏD٧ՏwՏۧՏ>Տš5ՏՐSH FIN ST STEP CX CY CIRCLE RADIUS DRAW X I Ր$ՐWՐsՐՐˡՐɡ>ՐՐˡ(ՐՐՐՑEՑJՑ]EՑiY LENGTH NEWPLACEPEN THICKNESCH WHEREX WHEREY XHWINDOWYHWINDOWWIDTH š<ՑՑˡ(ՑՑՑՒ ՒՒ%Ւ,  R Ւ]ՒhՒw ՒՒՒՖ9؏ՖWՖ^g Ֆˡ՗՗ Aڊ՗6ي՗E9=՗V؊՗g 9=՗x FIGURE DISSCR OK ANSWER XLWINDOWYLWINDOWSPACING DRAWSCR G  YˡR- #5:FIL.CODEȡ-RM ̂ʂ :tߋ?::ʂR   "3&(*,.Mˡ  š*SYSTEM.EDITOR &+ *SYSTEM.INIT"á *SYSTEM.INIT  ? t߹?T-X-R- -& -8t86 8 7 š  š*SYSTEM.EDITOR=á5%:..CODE Ւا ՒՓ٧ȄĄȄ٧ˍ6ՓՓܧˍۧˍ Փڧ Ք ٧ Ք\ՔfޫՔvݫՔb-btb :`ºbb :ºº@t@V>L may be ok* is badRɡRRšR ՕՕՕ2ՕBՕSȡ]ՕnՕuՕۂ Օڕ Օݧ Օ Օ؂ՕؕՖ؏RRBlock   is still U@&XڪP--áՖ9؏ՖWՖ^g Ֆˡ՗՗ Aڊ՗6ي՗E9=՗V؊՗g 9=՗x OPPáP/@P"áR.Q.Qȡ@.. č-O`.R/.SRPRSRSP.. Bad bl՗ ՗ڂ՗=՗՘   ՘K՘_՘f՘mS ՘ock #0! not codeH-á"Illegal file name No file h՘ƭ՘ ՘ (ȡՙՙǠxՙ)ՙ7 ՙ> (ȡՙUՙbՙoZՙ ՙǁǕՙ<Qv 2*SYSTEM.COMPILER*SYSTEM.SWAPDISK(7    Compiling.<  ՙՙIv4 "20Z~8|ۂ Օڕ Օݧ Օ Օ؂ՕؕՖ؏8 :..TEXTؚ*٪Pء   R.Ֆ9؏ՖWՖ^g Ֆˡ՗՗ Aڊ՗6ي՗E9=՗V؊՗g 9=՗x ٪PƁ.ƂZƁ.́VƁVPƁVǠƁV؞"ÚƁ..Ú.ۤƁ.Dh.|..՗ ՗ڂ՗=՗՘   ՘K՘_՘f՘mS ՘.:...P`.CODEۡ@.TEXTۡڡ..P..CODEU.! No worA=8dAX0P= "3&(*,.Mˡ  š*SYSTEM.EDITOR &kfile. Execute: šA.á &̀ƀƀ.CODEƀ+ *SYSTEM.INIT"á *SYSTEM.INIT8 7 š  š*SYSTEM.EDITOR=á5%Pt   TE?Command: Edit, Run, Filer, Compile, Xecute, Init, Again [I.4i] P'T)S%S:..CODE `@,`Qܧ-M ɡ)Risk the directory ? jTT|S@*SYSTEM.EDITORc *SYSTEM.FILEROKFA=8dAX0P=H Tؚ*٪Pء   R.٪PƁ.ƂZƁ.́VƁVPƁVǠƁVSP.. Bad block #0! not codeH-á"Illegal file name ؞"ÚƁ..Ú.ۤƁ.Dh.|...:...P`.CODEۡ@.TENo file Qv 2*SYSTEM.COMPILER*SYSTEM.SWAPDISK(7   XTۡڡ..P..CODEU.! No workfile. Execute:  Compiling.8 :..TEXTؚ*٪PءšA.á &̀ƀƀ.CODEƀPt   TE?Command:   R.٪PƁ.ƂZƁ.́VƁVPƁVǠƁV؞"ÚƁ..Ú.ۤƁ. Edit, Run, Filer, Compile, Xecute, Init, Again [I.4i] P'T)S%SjTT|S@*SYSTEM.EDITORcDh.|...:...P`.CODEۡ@.TEXTۡڡ..P.. `@,`Qܧ-M ɡ)Risk the directory ?  YˡR- #5:FIL.CODEȡ-RM ̂ *SYSTEM.FILEROKFA=8dAX0P= "3&(*,.Mˡ  š*ʂ :tߋ?::ʂR    ? t߹?T-SYSTEM.EDITOR &+ *SYSTEM.INIT"á *SYSTEM.INIT8 7 š  š*SYSTEM.EDITOX-R- -& -8t86 b-btb :`ºbb :ºº@t@R=á5%:..CODE `@,`Qܧ-M V>L may be ok* is badRɡRRšRRRBlock  )Risk the directory ?  YˡR- #5:FIL.CODEȡ-RM ̂ʂ :tߋ?:: is still U@&XڪP--áOPPáP/@P"áR.Q.Qȡ@ʂR    ? t߹?T-X-R- -& .. č-O`.R/.SRPRSRSP.. Bad block #0! not code-8t86 b-btb :`ºbb :ºº@t@V>L may be ok* is H-á"Illegal file name No file Qv 2*SYSTEM.COMPILERbadRɡRRšRRRBlock   is still U@&X*SYSTEM.SWAPDISK(7    Compiling.8 :..TEXڪP--áOPPáP/@P"áR.Q.Qȡ@.. č-O`.R/.SRPRSRI .CODE `@,`Qܧ-M ɡ)Risk the directory ?  YˡR-TT|S@*SYSTEM.EDITORc *SYSTEM.FILEROKFA=8dAX0P= "3&(*,. #5:FIL.CODEȡ-RM ̂ʂ :tߋ?::ʂR    Mˡ  š*SYSTEM.EDITOR &+ *SYSTEM.INIT"á *SYSTEM.INIT8 7? t߹?T-X-R- -& -8t86 b-bt š  š*SYSTEM.EDITOR=á5%:..CODE b :`ºbb :ºº@t@V>L may be ok* is badRɡRRšRRR`@,`Qܧ-M ɡ)Risk the directory ?  YˡR- #5:FIL.CODEȡ-RM ̂ʂ :Block   is still U@&XڪP--áOPPátߋ?::ʂR    ? t߹?T-X-P/@P"áR.Q.Qȡ@.. č-O`.R/.SRPRSRSP.. Bad block #0R- -& -8t86 b-btb :`ºbb :ºº@t@V>L! not codeH-á"Illegal file name No file Qv may be ok* is badRɡRRšRRRBlock   is still 2*SYSTEM.COMPILER*SYSTEM.SWAPDISK(7    Compiling.8  U@&XڪP--áOPPáP/@P"áR.Q.Qȡ@.. č-O`CODEU.! No workfile. Execute: šA.á &:..TEXTؚ*٪Pء   R.٪PƁ.ƂZƀƀ.CODEƀPt   TE?Command: Edit, Run, Filer, Compile, Xecute, Init, Again .́VƁVPƁVǠƁV؞"ÚƁ..Ú.ۤƁ.Dh.|...:..[I.4i] P'T)S%SjTT|S@*SYSTEM.EDITORc *SYSTEM.FILEROKFA=8dAX.P`.CODEۡ@.TEXTۡڡ..P..CODEU.! No workfile.0P= "3&(*,.Mˡ  š*SYSTEM.EDITOR &+ *SYSTEM.INIT Execute: šA.á &̀ƀƀ.CODEƀP"á *SYSTEM.INIT8 7 š  š*SYSTEM.EDITOR=á5%:.t   TE?Command: Edit, Run, Filer, Compile, Xecute, Init, Again [I.4i] P'T)S%SjJ SWAPDISK(7    Compiling.8 :..TEXTؚ--áOPPáP/@P"áR.Q.Qȡ@.. č-O`.R/.SRPRSRSP..*٪Pء   R.٪PƁ.ƂZƁ.́VƁVPƁVǠƁV؞"ÚƁ Bad block #0! not codeH-á"Illegal file name No file ..Ú.ۤƁ.Dh.|...:...P`.CODEۡ@.TEXTۡQv 2*SYSTEM.COMPILER*SYSTEM.SWAPDISK(7    Compilingڡ..P..CODEU.! No workfile. Execute: .8 :..TEXTؚ*٪Pء   šA.á &̀ƀƀ.CODEƀPt   TE?Command: Edit, Run, FileR.٪PƁ.ƂZƁ.́VƁVPƁVǠƁV؞"ÚƁ..Ú.ۤƁ.Dh.r, Compile, Xecute, Init, Again [I.4i] P'T)S%SjTT|S@*SYSTEM.EDITORc *SYSTEM.FILER|...:...P`.CODEۡ@.TEXTۡڡ..P..CODEU.!OKFA=8dAX0P= "3&(*,.Mˡ  š*SYSTEM.EDITOR No workfile. Execute: šA.á &̀ƀƀ &+ *SYSTEM.INIT"á *SYSTEM.INIT8 7 š  š*SYSTEM.EDITOR=á5.CODEƀPt   TE?Command: Edit, Run, Filer, Compile, Xecute, Init, Again [I.4i] P'%:..CODE `@,`Qܧ-M ɡ)Risk the T)S%SjTT|S@*SYSTEM.EDITORc *SYSTEM.FILEROKFA=8dAX0P=directory ?  YˡR- #5:FIL.CODEȡ-RM ̂ʂ :tߋ?::ʂR "3&(*,.Mˡ  š*SYSTEM.EDITOR &+ *SYSTEM.INIT"á *SY    ? t߹?T-X-R- -& -8t8STEM.INIT8 7 š  š*SYSTEM.EDITOR=á5%:..CODE.R/.SRPRSRSP.. Bad block #0! not codeH-á"6 b-btb :`ºbb :ºº@t@V>L may be ok* is badRIllegal file name No file Qv 2*SYSTEM.COMPILER*SYSTEM.ɡRRšRRRBlock   is still U@&XڪPK TE?Command: Edit, Run, Filer, Compile, Xecute, Init, Again [I.4i] P'T)S%SjTT|S@*SYS4~  2L,$dd"!h#d%((&*(*, -/:.f00123-4D3475j8h999:@>t?":@@NAn7ҦEJFiler:  `@,`Qܧ-M ɡ)Risk the directory ?  YˡR- #5:FIL.CODETEM.EDITORc *SYSTEM.FILEROKFA=8dAX0P= "3&(*,.Mˡȡ-RM ̂ʂ :tߋ?::ʂR    ? t  š*SYSTEM.EDITOR &+ *SYSTEM.INIT"á *SYSTEM.INIT8 7 š  š߹?T-X-R- -& -8t86 b-btb :`ºb*SYSTEM.EDITOR=á5%:..CODE `@,`b :ºº@t@V>L may be ok* is badRɡRRšRRRBlock Qܧ-M ɡ)Risk the directory ?  YˡR- #5:FIL.CODEȡ-RM ̂ʂ :tߋ  is still U@&XڪP--áOPPáP/@P"?::ʂR    ? t߹?T-X-R- áR.Q.Qȡ@.. č-O`.R/.SRPRSRSP.. Bad block #0! -& -8t86 b-btb :`ºbb :ºº@t@V>L may be ok not codeH-á"Illegal file name No file Qv 2*S* is badRɡRRšRRRBlock   is still UYSTEM.COMPILER*SYSTEM.SWAPDISK(7    Compiling.8 :@&XڪP--áOPPáP/@P"áR.Q.Qȡ@.. č-O`.R/.SR..TEXTؚ*٪Pء   R.٪PƁ.ƂZƁ.́VƁVPPRSRSP.. Bad block #0! not codeH-á"Illegal file namƁVǠƁV؞"ÚƁ..Ú.ۤƁ.Dh.|...:...P`.CODe No file Qv 2*SYSTEM.COMPILER*SYSTEM.SWAPDISK(7Eۡ@.TEXTۡڡ..P..CODEU.! No workfile.    Compiling.8 :..TEXTؚ*٪ Execute: šA.á &̀ƀƀ.CODEƀPt   ՚~لt>@VbX0hb8v6\T*0Hr|" L Get, Save, List, Change, Transfer, Remove, Fast, New, Date, ?, QuitP7,?áQEHFiler: Bad-blks, Ext-dir, Krunch, Make, Prefix, Vols, Xamine, Zero, WhatP7,x55EP,i+++ !|5$!5 55