home *** CD-ROM | disk | FTP | other *** search
/ A.N.A.L.O.G. Magazine 1987 June / 87_jun.atr < prev    next >
Encoding:
Atari ATR Floppy Disk Image  |  1987-01-01  |  90.0 KB

  1. û⇩Ç⑥Ç⇨◆@⑤L④◆⇨⇨כ⑨⇧⇦}י◆¼◆≡5 _◆¡⓪◆¼◆ª$Ä⇦⇨ª%Ä❎⇨⑧ l◆0¼①◆õ$)⇨¬ז①$≡①õ$Hזõ$ U◆h¿èL"◆⌐ij
  2. ¿`⌐Ç⑧e$à$É⇩µ%`¡②◆à$¡③◆à%`ì♪⇨î
  3. ⇨⌐Rá@É⇦⌐PáÇ✓ª!α✓ס◆( ü④L¨◆(ì⇩⇨⌐ì╱⇨î⑦③⌐1ì⇨⌐⇨ì    ③⌐Çì✓⇨
  4. ì    ⇨¡⑦③ì⇨⇨ YΣ⓪❎מ    ③⓪≡ªIÿ` ¡① d ⇦
  5. Lו②d✓Å
  6. M
  7. Å    ¶◆*♪Ç@ ⓪✓⇦⇩⇧¯¡ ◆à$¡
  8. ◆à%¡
  9. ◆àCó◆⌐╱CÉ⑤á❎æ$Ñ$¥)③Ñ%¥1③⌐É U◆⌐d¥⑨③ט⓪∞Ñ$ì9③Ñ%ì:③¼    ◆óêÿ¥!③0⇨ S◆Φα✓ס±Ñ$ìτ⇩Ñ%ìΦ⇩⌐¿Öü③ז⓪·¿¨ə⇨≡ חD≡✓זזזijס≡⌐DÖə⇨⌐יÖ⇨⌐◆Ö⇨` ¡① }©J⇨¥é③)⇩≡⇨Lr
  10.  ∮✓©é③חd✓Å
  11. M
  12. Å    ¶◆*♪Ç@ ⓪✓⇦⇩⇧¯¡ ◆à$¡
  13. ◆à%¡
  14. ◆àCó◆⌐╱CÉ⑤á❎æ$Ñ$¥)③Ñ%¥1③⌐É U◆⌐d¥⑨③ט⓪∞Ñ$ì9③Ñ%ì:③¼    ◆óêÿ¥!③0⇨ S◆Φα✓ס±Ñ$ìτ⇩Ñ%ìΦ⇩⌐¿Öü③ז⓪·¿¨ə⇨≡❎} חD≡✓זזזijס≡⌐DÖə⇨⌐יÖ⇨⌐◆Ö⇨` ¡① }©J⇨¥é③)⇩≡⇨Lr
  15.  ∮✓©é③ח⇦≡⓪ח✓≡Jח ≡
  16. ח    ≡⑨ Ñ②¿(ãÉ╱(ã     ⇦
  17.  p    Lו② Ñ②¬(ã∙¼③¨⇧④¥â③)⇩≡⑤ ⇦
  18.  æ⓪ J①¥Ä③©╱}ï③¥ì③L=     Ñ②¼(ã     IJ ¼③L❎    ¡♪③0qì③ A⓪¡ ③ì③¡
  19. ③ì⓪③ æ⓪¼③ó
  20. ⌐ Ö╱④זט⓪∙ªI⌐B¥â③ J①¼③Ö❎④©ï③Ö⇦④⌐CÖ⇧④⌐Ö⇨④Ö⇩④ó©;③ח?≡⇨Ö╱④זΦα♪É≡ D⓪ W     À◆}⌐Ç¥à③ é②ס⇨L②Lו② Ñ②⌐⌐¥à③¡⓪③
  21.  
  22. ¥ü③⌐¥ç③¥Å③¥É③` W    ¼③¨⇧④¥â③)⇩¥ä③¨⇦④¥ï③¨❎④¥î③LΩì①③©A⇨à! ¡①¼
  23. ③¨⇩⇧ח∞ã⇦⌐à"©é③)✓≡-¶ç③ÿ§å③É① pã" ✓}Σ    áã❎õ$ì①③³ç③¡①③æG⌐@à③¥à③Lו②LÅ✓ Ñ②ê©à③0⇦8`⌐ì⑧③⌐⇧ìQ③Ñ")⇩≡<ס2Q③¡⑧③0⑧ Γã-áõGæ$זÿ§å③É⌡ U◆L#
  24.  ;
  25.  p8Ñ(²å③à(ã⇩ה)Ñ(0טÑ)סהNQ③`á    }õ$æGזÿ§å③É⌡¥ç③LU◆ ¡①©é③)⇩≡⇨L¡
  26. ©ç③§å③É♪ δ     ΓÉ≡Lα    ¿õGì①③זÿ¥ç③¶ï③ס¶î③ס
  27. §å③É❎⌐⇨L»②Lו② ¡①©é③)✓≡W>à③ÉZ ç ⇦♪©É③H©Å③H©é③)⇧≡©â③H 
  28. }p    h¥â③ ΓÉ√©ì③¥ï③©Ä③¥î③ Ä¼③⑧hy⇩④Ö⇩④hy⇨④Ö⇨④©â③Ö⇧④ D⓪ ö⓪⌐¥é③Lא②>à③É≤ יL±
  29. ©ü③JJì⓪③ ♪ì③ ♪ !♪
  30. ì③LA⓪⌐á⇨ü③*êס∙` ¡①©B⇨ח³≡Fח♪}²≡7ח'ã8Θ É⑨
  31. ¿¨M♪H¨N♪H` 8 ñ♪Z ∞ Γ
  32. \LÅ✓d⇩ב⇩ב⇩è⇩≥⇨ב⇩J⇩≤⇧≤⇧©J⇨ס⇩⌐!ó≡⇨⌐"¬Ä⑤③ì⇩⇨Ñ!ó ח✓≡GÑFì❎⇨ÑEì⇦⇨á@¡F⇩ É◆⓪(ijïס«⑤③≡◆⌐!ל⇩⇨סעL»② }ijÉס∙á⌐¯עEס❎זעE≡∮ Ñ②¡ó¡⇩⇨ח!≡⇩ó╱⌐áÅæEêס√©^♪ì✓③Φ©^♪æEזij❎ס⌡á
  33. ⌐æE⌐¯זכ✓③ס÷á7⌐æEז⌐æE«✓③⓪ádæEáè⌐/æEז⌐⇧æE ö⓪⌐¿Ö⇧④ז⓪·⌐◆ì③ D⓪מ
  34. }③⓪° .②Lא② } ëó
  35. ©;③¥F③ט⓪≈ d ⇦
  36.  é②✓óÄ⑤③¼③©;③ח?ס✓מ⑤③§F③ס7©F③ח?≡⇨Ö╱④זΦα♪סβ(ס⇨ .② é②ס «③©❎④¶⇦④ Z② D⓪¡⑤③≡❎ ⁿÉ«Lא②LΦ d IJ  é}②ס⇨ .② D⓪ ⁿÉϕ ö⓪Lא② æ⓪¼③ ⇦
  37. ⌐ÇÖ⇧④ p     
  38. ① Γɰá❎ÿæE`⌐ ,⌐ì④③ d¼③¨⇧④)∞
  39. ④③Ö⇧④ D⓪ ⁿÉΩLא②¼③¨⇧④) ≡ע Ñ②º©à③0B©M⇨§è③ס✓©L⇨§ë③≡©à③}≡✓ י⌐¥à③©M⇨¥î③©L⇨¥ï③ Ωã
  40. ©N⇨§å③É╱≡⇦ Ñ②ª¥ç③Lו② Ñ②½©ç③¥N⇨©ë③¥L⇨©è③¥M⇨Lו② ∮É[ T⓪áèõEá⇨⑧qEHזõEáïqE¬h¿èóÄ⑥③ 0á⇨èæGז¨ק
  41. æGזij⓪ס÷⓪} HLו②¼⑥③⓪⇨Lα    õGì①③∈⑥③ח¢סΘij①ã✓⌐Çì⑥③Lא② ⁿãÑ Σ
  42. Lו②FREE SECTORS«③á⌐ æG©⇧④) ≡⇦⌐*æGז⌐ æGז©╱④æGΦזij
  43. É⌡⌐ æGזî⑥③«③Ñ*jÉ①©⇧④jÉ♪ê⌐>æG①}á⇧⌐<æG¶⇩④©⇨④ód Ró
  44.  Ró⇧ Ró ÿ≡⇩ó+á①⌐¢æGáî⑥③`Ä③③ó¯àDäCΦ8ÑCϕ③③¿ÑDΘÉ⇦α    סΩè    0¼⑥③æG∈⑥③ÑDñC`á⇩õ$ê0dח:ס≈זז⌐✓óì②③õ$ח.ס♪α✓ס❎ז⌐♪ס∈É②},ח*ס    ⌐?∮②③ã%É$ח?≡ח0Éח:É⑦)∞חAÉ⇦ח[É
  45. ⌐♪ì②③α♪≡⓪⌐ ס⇧ז∮②③≡¨¥;③Φסø¡;③ח ≡⇨ªI` Ñ②Ñ⌐¯ì♪③ì③ì⓪③⌐pì③∈⓪③⑧¡③i⓪⓪①∈③⌐✓ל③É⇩≡N A⓪⌐ì③¿¨⇧③}④≡#0!)Cח⇨≡⇦)⇧סנó©;③ח?≡❎ך╱④סIJΦזα♪ס∈⑧É¡♪③⓪②¡③ì♪③¡③ì ③¡⓪③ì
  46. ③¨⇧④0£8ªI` } ∮ã⇧`Lñ✓©à③0
  47. ⓪    
  48. ¥à③ י0"LΓ J①©ç③áæG©î③ü③á}æGז©ï④}③æG י⓪♪⌐¥é③¡⇨⇨L»②³Å③ס⇨³É③ ר⌐¥ï③¥î③¥ç③⌐}¥å③⑧`8©è③¶ë③L②②©ï③¥ë③©î③¥è③`©à③≡⇨Lp©ï③î③ס⇩8` ר⑧ כ04á}õG)ⁿ§ü③ס,õG)⇨¥î③זõG¥ï③זõG⑤}H©ä③ס✓h0⇩⌐})Hh¥å③⌐¥ç③⑧` ©②©B⇨ח!≡⇦ Ñ②ñ8`⑧É⇧8✓⑧¡③ii¿(ó⇧⌐④סZá❎õEס6ñ!⌐Jij✓≡④î⇧⇨⌐Sì⇩⇨ SΣ⌐d¼Ω⇩⓪⇩⌐èñ!Ö⑧③ì✓③⑧ כ⓪ Ω⓪á❎æE⑧ ¿⓪ √⓪` T⓪⌐⑥}á❎æE Ω⓪8 ¿⓪ √⓪8Lכ⓪ÑFªEáhî
  49. ⇨á⇧î♪⇨ì❎⇨Ä⇦⇨ r◆⓪9ijâ≡⇨L©② Ñ②ú¡✓③⓪)✓⌐ì
  50. ⇨⌐⇦ì♪⇨ÑE⑧i⓪¬ÑFi(LÀ⓪ádõEÖ∈②⌐æEזijÉס≥`¼✓③⓪ ád¨∈②æEזijÉס÷`©ë③H)⑦}◆¿hè③≡/¨ת◆H©ë③á⇨^è③jêס∙⑧i
  51. ¿h①EæEijdá⇨É⇩áèõE⑧i⇧æEזõEiæE`á    זכ✓③ãWõE≡÷ó¯Φ
  52. Éⁿ©ת◆QEæEèHªIÿ8Θ
  53. ¥ï③⌐ijï③*ã·¥î③hï③¥ï③ijdá⇨É áè©â③)™    ⇧⑧}¥â③8õEΘ⇧æEזõEΘæEá❎ÿæE©î③` Ñ②óåI´ΦΦÄ
  54. ③ª!Ä⇧⇨ט©)③àE©1③àF©⑨③≡5ì✓③ªI¶ê③ס⑧¨!③⓪    זij✓É÷ Ñ②í⌐ÇÖ!③זÿ¥ê③êÿJH⌐jm9③àGhm:③àH` Ñ②á¶ê③≡    ê⌐¥⑨}ê③Ö!③`ªGÄ⇦⇨ªHÄ❎⇨Ll◆¶ë③©è③ Z② d②Lו②⌐ì◆⌐◆ì❎⇨áî⇦⇨ז⌐8 l◆¡⇦⇨IÇì⇦⇨0⇨∈❎⇨¼
  55. ⇨כ⇧◆סΣ`î◆ì⓪◆⌐⇧סכ _◆⌐}¥å③ ;
  56. Ñ$ל ◆Ñ%ϕ
  57. ◆ã╱ pLl②`ó¼③¨╱ə}④§Ü②ס╱זΦα♪ס≥✓ªI(`DOS     SYShàChàDá⇧õC«
  58. ③ܪI¥C⇨¿¡①③`¡⇨⇨0ϕªI ⇨②⌐⇧סΣá⇧äB«∞◆0╱ª④Σ④≡ⁿîקx
  59.  
  60. àD¡⇧צ)π❎Dì⇧צ`}Need DOS2.5,type Y פדקרפ}מ¢d⇨≈¢♪⇧"ÇÇddÇ⇧¯³²ⁿ√\ככə⑨⑨∮əDOS     SYSCOPY3TO2COM}✓B⇩Ç}⇧⑧}C⇦DOS     SYS}¡
  61. ⇨àC✓¡♪⇨╱C*ח⇦É❎(áïס> י②ÑC8jJà3⌐jà2¡⇦⇨àC¡❎⇨àDá(É    õCæ2ê⓪∙0◆õ2æCê⓪∙⌐⇦ ∧②áijîקáäBXז`
  62. ◆N
  63. ◆⌐1ì?⑤⌐±ó④ l⑤⌐ ó⑦Ll⑤D:RAMDISK}.COM¢⌐Lלu ס⇨LÑ1⌐ì¥⑤⌐ϕó② ל⑦L    ⑤Ñ;ס⇨LÉΩÿHLøΩøΩ´Ä
  64. ③ T⓪á⇧`´Ä
  65. ③ ö⓪á⇧`1⌐ìß⑤⌐ƒà
  66. ⌐⑦à♪¡£ΩחÉס
  67. ⌐⑧ì ⇩⌐⑤ì
  68. ⇩ α◆ΩΩΩÑ✓ס⑤ ן④`ìT⇨ÄU⇨ ô⑤⌐ij } ª⑤LÆ⑨¡¥⑤≡①¡ß⑦≡② ?⑨ .⑨ ô⑤ tΣ⌐ì¥⑤`à✓≡÷¯α⇩β⇩⌐Çìƒ⑤⌐Gìα⇩⌐⑥ìβ⇩ó⓪⌐⇨¥B⇨⌐⇦¥J⇨ î⑦⓪⇦⌐⇧ס~ó⓪⌐⌠¥D⇨⌐¥E⇨⌐⇩¥H⇨⌐¥I⇨ì♪⑦⌐◆¥B⇨ VΣ0d⌐¯ל⌠סVל⌡!}סQó⓪⌐á¥D⇨⌐⑤¥E⇨⌐⇦¥H⇨⌐¥I⇨ VΣ⓪Fijêס9 Æ⑨,ß⑤0⇨ ✓⑦⌐,ƒ⑤ìƒ⑤0 s⑧0❎hhLÕ⑦¡¥⑤ס
  69. ⌐ó⑦ ª⑨L⇧⑧⌐¬` Æ⑨⌐⇨ס≈ÿH Æ⑨h¿ס∈ó⓪¡á⑤¥D⇨H¡í⑤¥E⇨¿hזס¿זס¡"}ó⑤ìá⑤¡ú⑤ìí⑤⌐ó¥D⇨⌐⑤¥E⇨⌐⇩L❎⑥¡ó⑤8ϕá⑤¥H⇨¡ú⑤ϕí⑤¥I⇨¡í⑤ח4Ωã✓¡ú⑤חΩã
  70. ¡♪⑦0✓⌐Ç
  71. ƒ⑤ìƒ⑤³H⇨ס⇨³I⇨,ƒ⑤0③¡♪⑦0מ♪⑦ 9⑨⌐ì¥⑤ .⑨ó⓪⌐GìΓ⇩⌐⑥ìπ⇩ VΣ⓪⇨LO#}⑥,ß⑤0⇨ ❎⑦L≈⑤חÉ╱ח4*I⇧J`lΓ⇩lα⇩D1:AUTORUN.SYS¢NEED MEM.SAV TO LOAD THIS FILE.¢D1:MEM.SAV¢ Æ⑨⌐✓¥J⇨ y⑦08⌐♪¥B⇨⌐|¥D⇨⌐¥E⇨⌐è¥H⇨⌐⑤¥I$}⇨ VΣ0ə Æ⑨0⑤á`⌐⇨¥B⇨⌐;¥D⇨⌐⑦¥E⇨Lî⑦`¡?⑤ì<⑦ì0⑧LVΣ⑦áÉ`@⑤óÄß⑦ă⑤טå✓ v⑨ s⑧⓪╱⌐à✓≡? F⑦0❎מß⑦05⌐:ó⑧ ª⑨⌐[ó⑧ ª⑨⌐❎ìB⇨⌐ìD⇨⌐⇧ìE⇨⌐⇩ìH⇨⌐ìI%}⇨ VΣ¡⇧חYס8⌐à✓ó ⌐ ¥B⇨ VΣÑ ì£⑦Ñ
  72. ì¥⑦⌐@à ⌐⑤à
  73. ⌐/ó⓪¥D⇨⌐⑧¥E⇨áîß⑤êî¥⑤ ñ⑤`E:¢D1:DUP.SYS¢ERROR-SAVING USER MEMORY ON DISK¢TYPE Y TO &}STILL RUN DOS¢ £⑨⌐⇨¥B⇨⌐;¥D⇨⌐⑦¥E⇨⌐ ¥J⇨ î⑦✓ £⑨(`⌐≡⇨ 9⑨ó⓪ VΣ⌐≡ə∈á⑧¡Γ⇩ìו⑨¡π⇩ìז⑨⌐Γ¬ìב⑨⌐⇩ ∩⑧⌐≡ə∈®⑧¡α⇩ìו⑨¡β⇩ìז⑨⌐α¬ìב⑨⌐⇩ ∩⑧ Æ⑨¡ß⑦-'}ö⑧≡╱∈ö⑧L③⑧Lu ìג⑨ΦÄד⑨ìה⑨ó⓪⌐ב¥D⇨⌐⑨¥E⇨⌐╱¥H⇨⌐¥I⇨LVΣ 9⑨⌐ì¥⑤ .⑨l·™ 9⑨⌐ì¥⑤ .⑨lə¡£⑦à ¡¥⑦à
  74. `¡ß⑦ס⇧` s⑧⓪╱⌐à✓≡$⌐⇨¥B⇨ î⑦⌐◆¥B⇨⌐è¥H⇨⌐⑤¥(}I⇨⌐|¥D⇨⌐¥E⇨ VΣ⌐ ¥B⇨LVΣ nΣó⌐⇨¥B⇨⌐,¥D⇨⌐⑧¥E⇨⌐ ¥J⇨LVΣ⌐ ó⓪¥B⇨ VΣó ⌐ ¥B⇨LVΣìD⇨ÄE⇨ó⇧ÄI⇨ט⌐    ìB⇨ΩΩ¡¥⑤≡σL¯④¯¯α⇩β⇩u ò ⑥⇩≤⇧    ⇧}¯¯ ❎3E:¢}DISK OPERATING SYSTEM II VERSION áØ«ŒáCOPYRIGHT 1984 ATARI CORP.¢¢A. DISK DIRECTORY  I. FORMAT DISK¢B. RUN CARTRIDG⇦*}E   J. DUPLICATE DISK¢C. COPY FILE       K. BINARY SAVE¢D. DELETE FILE(S)  L. BINARY LOAD¢E. RENAME FILE     M. RUN AT ADDRES⇦+}S¢F. LOCK FILE       N. CREATE MEM.SAV¢G. UNLOCK FILE     O. DUPLICATE FILE¢H. WRITE DOS FILES P. FORMAT SINGLE¢Lÿ É!N'ה⇦,}#⑦"ü&®)µ)9(ס&⌐*)/h)¼'·'⑨-ט&ó¯ןå①Φă⑤⌐⇩àR⌐'àSÑ⓪    Çà⓪ìפ v⑨¡®⑨חL≡/⌐ì¥⑤⌐יó  ל⑦L¶ }Insert DOS 2.0s, type Y פדקרפמ¢⌐⓪ì⌠⌐xà⑧⌐ à⑨⌐⇦-}ìD⇨⌐ìE⇨⌐fìH⇨⌐⇧ìI⇨ ß1ó¯ÜΦÄÅ#⌐qó! ª⑨⌐@ì®⇩ y0ח¢≡נ8ΘA0,ל⌠⓪'
  75. ¿õ⑧זàəõ⑧àá⇧õə¬êõə ã1 À1Ñə⑧i⇩àəÉ⇩µlə⌐dó! ã1L!NO SUCH ITEM¢SELECT⇦.} ITEM OR פדקרפמ FOR MENU¢⌡! ט0 ™.«⇧©zח:ס③⌐*¥{¥}⌐.¥|ΦΦΦÄ⇧⌐¢¥{Äó  ן1 π0 ™0⌐◆ó⓪¥J⇨⌐⇨¥B⇨ij Θ1¡⇧8ϕח⇨≡⇨L¿%«©|חDס≤LÀ⇦/}%DIRECTORY--SEARCH SPEC,LIST FILE?¢[# ט0 ™0 Õ&¡|חD≡ə⌐3ó" ã1L!NOT A DISK FILE¢ó⓪¡ß⑤חNס♪⌐!¥B⇨ Θ1L!⌐Eó# ã1⌐ì⇩ó ⌐!¥B⇨⌐±¥D⇨⌐⇦0}¥E⇨⌐Dì±⌐:ì≤¡}ח:ס⇩⌐1ì≥ó⓪⌐⇨¥B⇨⌐╱¥J⇨⌐|¥D⇨⌐¥E⇨ Θ1⌐⌠¥D⇨⌐¥E⇨⌐❎¥B⇨⌐ì⇧ó⓪⌐¥H⇨⌐⇧¥I⇨ Θ1¡⌡ח סh∈⇧¡⇧ל⇩0∞óá⇩¨⌠ח ≡    ¥⌠Φזα✓0≡⌐.⇦1}¥⌠Φá
  76. ¨⌠¥⌠זΦij
  77. 0⌠Ä⌐?¥⌠Φ⌐¢¥⌠⌐±ó ã1 y0חYס¢¡⇧ì⇩«⌐¢¥⌠ó  Θ1 ;#Lè" ;#L!ó⓪⌐ ¥B⇨LΘ1TYPE "Y" TO DELETE...¢DELETE FILE SPEC⇦2}¢COPY--FROM, TO?¢OPTION NOT ALLOWED¢✓✓736 FREE SECTORS¢¢  COPYING---D1:DIREC¢K.COM¢l# ט0¡⇧ì¡|חDס◆ó פ.≡⇨L/%⌐ÇìÅ#⌐⇦3}ìÉ#⌐ìæ#ó⓪⌐╱¥J⇨⌐⇨¥B⇨⌐|¥D⇨⌐¥E⇨ Θ1⌐❎¥B⇨⌐④¥H⇨⌐¥I⇨⌐Æ¥D⇨⌐#¥E⇨ Θ1¡Æ#ח0Éח:ã♪⌐ ¥B⇨ Θ1L!¡É#לæ#≡❎∈æ#סIJ∈É#⌐ ¥B⇨ Θ1á⇩¨£#ךc$ס✓ê⓪⌡0ëSY⇦4}Sá1¡}ח:≡⇧¿îø#ó⇩á⇨©Æ#ח ≡⇦ÖØ#זΦα
  78. ס≡©Æ#ח ≡⑥⌐.ÖØ#ז©Æ#ח ≡⇦ÖØ#זΦα
  79. ס≡⌐¢ÖØ#⌐ªó# ã1,Å#Pó⓪⌐Ø¥D⇨⌐#¥E⇨LJ- <.ó⓪⌐⇨¥B⇨⌐⇦¥J⇨⌐Ø¥D⇨⌐#¥E⇨ij Θ⇦5}1ó  ן1¡⇧H¡⇩H π0hì⇩hì⇧«©|חD≡⇨L¿%á1©}ח:≡⇧¿כø#ס╱ Æ⑨L®%ó îø#⌐Ø¥D⇨⌐#¥E⇨L∧%ó  ן1 π0« Φ.« פ.ס0⌐Oó% ã1L!WILD CARDS NOT A⇦6}LLOWED IN DESTINATION¢ ™0 <.¡|חK≡<חC≡8חEס✓óijL¿%חS≡(ó⓪⌐⇨¥B⇨⌐⇦¥J⇨ij Θ1«©|חK≡ חEס⑤⌐ì¯L⌡%⌐|ó# ã1 Æ⑨L!חC≡∩«ß⑤αAס✓חDסΣ⌐    ⇦7}ס⇩⌐✓ó ¥J⇨⌐⇨¥B⇨į Θ1⌐¥K⇨⌐◆«³¼¯¥B⇨⌐♪ÖB⇨Ñə¥D⇨ÖD⇨Ñ¥E⇨ÖE⇨«³¡⇦¥H⇨¡❎¥I⇨ VΣî°«¯¼³¨H⇨¥H⇨¨I⇨¥I⇨⑨H⇨≡⇨ Θ1¡°⓪כחê≡⇨L±1«³≡✓⌐ ¥B⇦8}⇨ VΣ«¯≡✓⌐ ¥B⇨ VΣ«¯ס◆⌐Ió' ª⑨,Å#⓪⇨L∮#L!£& ט0 ר0 ™0 Õ&⌐ ó⓪¥B⇨ Θ1L!RENAME - GIVE OLD NAME, NEW¢á⇧¡}ח:≡⇨)¿î÷LS)⑨'⌐²ס⇦⑨'⌐³ì⇩⇦9}' 70 ¨2⑧i0ìH'ìK' ™0⌐0ó' ã1 y0חYס✓¡⇩'á! ⇨'L!³ó⓪¥B⇨⌐J¥D⇨⌐'¥E⇨ÿ¥J⇨LΘ1WHICH DRIVE TO FORMAT?¢TYPE "Y" TO FORMAT DISK 1¢D1:¢½'¼²™⇦:}⌐¬ì²™ל²™ס⑦⌐Uì²™ל²™ס
  80. î²™⌐ƒó' ã1L!¡ⁿ™ס±¬¡²™≡δל²™סµΦס≤ v⑨⌐╱óΣá_ \Σ⌐◆óΣáb \ΣL②⑨NO CARTRIDGE¢ז' 70 2 ™0àəå¡⇨ח⇦≡P v⑨L ⑨RUN FROM⇦;} WHAT ADDRESS?¢TYPE "Y" TO CREATE MEM.SAV¢∞' y0חYס  s⑧0
  81. ⌐ó( ã1 Æ⑨L! F⑦⓪⌡L≡1MEM.SAV FILE ALREADY EXISTS¢ר( 70 ¨2 ™0ì÷    0ì+)ì⇦<}') S)⌐✓ó) ã1 y0חYסr⌐≥ó( ã1⌐⇨ó⓪¥B⇨⌐*¥D⇨⌐)¥E⇨⌐✓¥J⇨ Θ1ó⓪⌐ ¥B⇨ Θ1ó♪©.⑧¥{טס≈¡+)ì}Ä⇧ó⓪ ן1⌐ ìב⑨⌐ìג⑨⌐❎ìד⑨⌐∙ì≤/⌐③ì°/⌐3ìה⑨H⌐uìα⇩⌐ ì⇦=}β⇩מ®⑧L¢/L!DRIVE TO WRITE DOS FILES TO?¢WRITING NEW DOS FILES¢TYPE "Y" TO WRITE DOS TO DRIVE 1.¢D1:DOS.SYS¢ERROR - NOT VERSIO⇦>}N 2 FORMAT.¢ t*¡⌠ח⇩≡
  82. ⌐5ó) ã1L!`⌐) ט0⌐«ß⑤ìß⑤αNס⇨מß⑤ ™0 ⌐⑤α≡②α⇨≡⇦ÿL±1⌐¢ó) ã1 Æ⑨L!BAD LOAD FILE¢LOAD FROM WHAT FILE?¢צ) ט0 ⇦?}™0⌐#ó⓪¥B⇨ Θ1L!WHAT FILE TO LOCK?¢√) ט0 ™0⌐$ó⓪¥B⇨ Θ1L!WHAT FILE TO UNLOCK?¢DUP DISK-SOURCE,DEST DRIVES?¢TYPE "Y" IF OK TO US⇦@}E PROGRAM AREA¢CAUTION: A "Y" INVALIDATES MEM.SAV.¢⌐àF⌐⌠àE¡÷à!⌐ì∙ +⑤⓪⇨L≡1⌐
  83. ì⇧¡³ì³⌐✓ì⇩⌐ì♪⇨⌐⇧ì
  84. ⇨`⓪*⌐ì♪ 70 ¨2ì÷ ¨2ì¯⇦A} ™0¡÷ל¯≡.ó*⌐ך ã1 y0מ♪0)INSERT BOTH DISKS, TYPE RETURN¢⌐^ó, ã1 y0⌐❎ì╱⌐3ì◆¡σ⇩8ΘÇì⇦¡µ⇩Θì❎¡⇦ל╱¡❎ϕ◆ã
  85. ⌐Nó, ã1L! §,⌐ì⇦B}ß⑤ìC, t*¡
  86. ⇨ì∙¡♪⇨ì·¡⇧ì√¡⇩ìⁿ¡³ì²Lx+⌐ìß⑤,♪0
  87. ⌐^ó, ã1 y0 ⑨, í,0,ß⑤0╱ ו,LÄ+ ל,¡⇦⇨IÇì⇦⇨0⇨∈❎⇨ ®,¡⇧ל✓③≡V¡⇦ל⇦⇨¡❎ϕ❎⇨ãו¡ß⑤0⇦C}½מß⑤,♪0
  88. ⌐}ó, ã1 y0¡C,ס¿∈C,¡¯    0ìK'á!¡✓③⓪⇩á"¡
  89. ⇨H¡♪⇨H⌐² ⇨'hì♪⇨hì
  90. ⇨Lx+¡ß⑤⓪Õ¡¯à!⌐⌠àE⌐àF 5⑤⓪⇨L≡1L!á⇦¨D,àə¨I,àóíəH¨∙üəhÖ∙ê⓪⇦D}σ¡╱ì⇦⇨¡◆ì❎⇨`
  91. ♪⇧⇩³⇨⇨NOT ENOUGH ROOM¢INSERT SOURCE DISK,TYPE RETURN¢INSERT DESTINATION DISK,TYPE RETURN¢³מ⇩ס①∈⇧«⇧©⌠⇦E}ì³⌐✓ì⇩¡³`∈
  92. ⇨ס⇨∈♪⇨`¡÷⑧É⇦¡¯8ì⇧⇨ r◆⓪⇨L≡1`Ñ✓≡⌐-ó* ã1⌐Pó* ã1 y0חYס✓⌐à✓ìß⑦`hhL!NAME OF FILE TO MOVE?¢⇨- ט0 ™0¡|חD≡⇨L®% <.ó⇦F},⌐^ ã1 70 ™0 פ.ס❎⌐@LΣ#ó Φ.ó⓪⌐⇨¥B⇨⌐⇦¥J⇨ Θ1⌐ì
  93. ì♪ó⓪Ñə¥D⇨Ñ¥E⇨¡⇦¥H⇨¡❎¥I⇨⌐◆¥B⇨ VΣ⓪
  94. ijê≡⇨L≡1מ
  95. ó,⌐} ã1 70,⌡⓪⇨Lə.ó á    ¡♪ס❎á✓∈♪⇦G}ÿ¥J⇨⌐⇨¥B⇨⌐|á,Å#P⇦⌐Øá#¥D⇨ÿ¥E⇨ Θ1á⓪ó ⌐ךH⇨ס❎ךI⇨≡⌐♪¥B⇨Ñə¥D⇨Ñ¥E⇨¨H⇨¥H⇨¨I⇨¥I⇨ Θ1⌐ ¥B⇨ Θ1¡
  96. ס②ó,⌐^ ã1 70,⌡0⇨La-ó⓪⌐ ¥B⇨ VΣ,Å#P⓪⇦H}ó,⌐^ ã1 70 ™0L∮#L!Ñ✓≡⑤⌐-ó* ã1⌐Pó* ã1 y0חYסj⌐à✓ìß⑦⌐❎àə⌐3à¡σ⇩8Θ❎ì⇦¡µ⇩Θ3ì❎⌐ì╱ì◆⌐}⑧m╱ì╱⌐m◆ì◆¡❎ל◆É
  97. סσ¡⇦ל╱ã§¡◆ס✓⌐⇦I}}ל╱É⇧`¡╱8Θ}ì⇦¡◆Θì❎`⌐⌠àə⌐à⌐·ì⇦⌐ì❎`©|Φח*≡
  98. ח?≡    ח¢≡⇦ח,ס∮Φ`Φ©|ח:≡⇧ΦΦá¨-)§|ס⓪זΦij◆ס≥⌐
  99. ó/ ã1L!`DESTINATION CANT BE DO⇦J}S.SYS¢③0⌐ìá⑧ì®⑧ ט0¡ß⑤H«⇧⌐¢¥{ 2ìב⑨Äג⑨α4ã⇨מö⑧ 2ìד⑨Äה⑨8ϕב⑨ì≤/èϕג⑨ã⇨L!ì°/ij¢≡) 2ìΓ⇩Äπ⇩
  100. π⇩≡⇨מá⑧ij¢≡④ 2 ™0ìα⇩Äβ⇩
  101. β⇩≡⇨מ®⑧⌐ìß⑤⇦K}hחAס⇨מß⑤ó⓪⌐⇨¥B⇨,ß⑤0⇦⌐✓ס⇩⌐    ¥J⇨ Θ1⌐♪¥B⇨⌐IJ¥D⇨⌐⑨¥E⇨⌐╱¥H⇨⌐¥I⇨,ß⑤⓪⌐⇦¥H⇨⌐ב¥D⇨⌐⑨¥E⇨ Θ1ó⓪⌐∙¥H⇨⌐③¥I⇨³H⇨ס⇨³I⇨¡ב⑨¥D⇨¡ג⑨¥E⇨Lô⑧SAVE-GIVE ⇦L}FILE,START,END(,INIT,RUN)¢⌐¢óO¥ñט⓪·⌐ì⇧ì⇩ì⌡ S0 À1`⌐❎ìB⇨⌐ñìD⇨⌐ìE⇨⌐PìH⇨⌐ìI⇨ó VΣijÇס⇨מ⌡`⌐ì⌡ S0¡H⇨ì≈ À1¡⌡⓪╱ Æ⑨L!¡≈ח⇨⇦M}0
  102. ⌐¬ó0 ã1L~0¡ñ`PLEASE TYPE 1 LETTER¢,⌡0⇧`hhL! 70ó⓪ ן1Lπ0⌐✓ì⇨¼⇧«⇩L<1¼⇧«⇩⌐♪ì⇨©ñח,≡;ח¢≡7©Ñח,≡"ח¢≡⌐:§ª≡1§Ñס②מ⇨©ñח⇦N}A⓪"⌐DÖ|ז⓪əמ⇨מ⇨§ñ≡ϕמ⇨⌐DÖ|ז⌐:Ö|ז⌐ìß⑤©ñÖ|Φזח¢≡,ח,≡(ח/≡+ח.ס❎⌐⇦ì⇨מ⇨⓪∧⌐Éó1 ã1מ⌡©ñΦח,≡⇦ח¢ס⌠Ä⇩î⇧`©ñìß⑤Φ©ñÖ{Φ⓪ΘNAME⇦O} TOO LONG¢⌐♪ìB⇨ó VΣijÇס⇨L!` ª⑨LÀ1⌐¬¥I⇨⌐
  103. ¥H⇨⌐1¥E⇨⌐מ¥D⇨Lß1£⌐|⑧m⇧¥D⇨⌐i¥E⇨` VΣÿ0⇧`ÿ8Θdó/Φ8Θ
  104. ⓪·⑧i:ì2Ä2ó2⌐② ã1 Æ⑨L⇦P}!ERROR-   138¢⌐⇦ì⇨⌐ì⇦ì❎«⇩©ñ∈⇩ח¢≡+ח,≡' á20*á⇨⑧.❎.⇦ê⓪÷
  105. ❎ì❎מ⇨⓪צ⌐ró2 ã1מ⌡`¿¡❎«⇦`⌐éó2סδTOO MANY DIGITS¢INVALID HEXA⇦Q}DECIMAL PARAMETER¢8Θ00ח
  106. 0
  107. 8Θ◆ח
  108. 0⇦ח⓪0⇩⌐¯ח`,⌡0'«⇩©ñΦחD≡°8Θ0≡⑧0⑥ח    ⓪②H©ñΦח,≡⇦ח¢ס⌠Ä⇩h`מ⌡⌐≡ó2Lã1NEED D1 THRU D8¢α⇩β⇩u⇦R} ECIMAL PARAMETER¢8Θ00ח
  109. 0
  110. 8Θ◆ח
  111. 0⇦ח⓪0⇩⌐¯ח`,⌡0'«⇩©ñΦחD≡°8Θ0≡⑧0⑥ח    ⓪②H©ñΦח,≡⇦ח¢ס⌠Ä⇩h`מ⌡⌐≡ó2Lã1NEED D1 THRU D8¢α⇩β⇩u⇦⇧³³ך⑥d❎X;n②X;      BATCHERx⑥X;      FOR DOS 2.xé❎X;î⑧åWARMST✓✓;;boot flagû④åCLOCK3╱④;;timerá⑧àZIOCB╱ ;;pg.0 IOCB,¬⑦✓T}åICBALZ╱$;;addr-lo,œ⑦åICBAHZ╱%;;addr-hi,®⑥åICBLLZ╱(;;len-lo,ז⑥åICBLHZ╱);;len-hi,פ④åICAX6Z╱/;;aux6.ץəåROWCRS╱T;;Cur✓U}sor row,µəåCOLCRS╱U;;and column.≡⑦äEPTR╱י;;Work word,·⑦àINDEX╱ל;;and byte.⇦⇧əåINBUFF╱≤;;Buffer addr⇧əåBATZIO❎⓪⇧;;ZIO✓V}CB copy⑧⇧åHATABS◆ə⇨;;IO handlers"⇧əàIOCB0◆@⇨;;IOCB start,,⇧⑦àICCOM◆B⇨;;Command.6⇧⑥àICSTA◆C⇨;;Status.@⇧⑥àICBAL◆D⇨;;Buffe✓W}r,J⇧⑦àICBAH◆E⇨;;address,T⇧əàICPTL◆F⇨;;Put 1 byte,^⇧⑥àICPTH◆G⇨;;vector.h⇧⑥àICBLL◆H⇨;;buffer,r⇧⑥àICBLH◆I⇨;;length.|⇧⑧àICAX✓X}1◆J⇨;;aux. infoå⇧əàIOCB5◆É⇨;;#5 hdler-idÉ⇧⑥äCIOV◆VΣ;;I/O rtn.Ü⇧❎X;ñ⇧$X;      Find and replace E: table«⇧❎X;Õ⇧◆❎@א⇧③Q>✓;✓Y};timer set,כ⇧②PåCLOCK3;;at 0.ש⇧⑦ åCLEARS;;Clear scrnα⇧%>✓;;Find,Ω⇧
  112. åFINDIT⌠⇧⑤QåHATABS8;;editor,³⇧⑦R>
  113. E;'      ;vector.✓⇩④Fç✓Z}FOUNDIT;;Found.②⇩⓪3;;Skip this,⇩
  114. 3;;3 byte,&⇩ 3;;entry.0⇩③)>✓!;;Loop thru,:⇩③DåFINDIT;;table.D⇩
  115. :;;Failed.N⇩♪çFOUNDITX⇩ 3;;S✓[}kip Eb⇩⑥'àINDEX;;Save indexl⇩⑦QåHATABS8;;Set addr,v⇩⑤PäEPTR;;of E: rtn,Ç⇩3;;table in,è⇩⑥QåHATABS8;;pointer,ö⇩③PäEPTR②✓⇧;;wor✓\}d.ß⇩②%>✓;;Copy all,¿⇩
  116. åCOPYITØ⇩⑥Q@äEPTR7;;16 bytes,¶⇩④P❎⇧8;;of editor,ה⇩1;;vectors,ס⇩⑤IåCOPYIT;;to PG.1.ם⇩⓪Q❎⇦⇧;;E: GET,Σ⇩✓]},;;vector+1,∈⇩②O>✓⇧;;saved in,°⇩⑧PåBATMON②✓⇧;;BATCHER,⇩⇨①Q❎❎⇧;;for non- ⇨O>✓;;batch,⑥⇨⑨PåBATMON②✓⇩;;commands. ⇨①QàICPTL;;S✓^}ave,*⇨
  117. ,;;editor,4⇨O>✓⇧;;put 1,>⇨⑨PåBATECO②✓⇧;;byte rtn,H⇨⑤QàICPTH;;for echo,R⇨②O>✓;;of batch,\⇨⑨PåBATECO②✓⇩;;commands.f⇨⓪Q✓_}>╱¯;;New E:,p⇨③P❎⇦⇧;;GET addr.,z⇨③Q>✓❎;;-1 in new,ä⇨②P❎❎⇧;;E: table.Ä⇨③%àINDEX;;New E:,ÿ⇨Q>✓;;table,ó⇨⑥PåHATABS8;;address,¼✓`}⇨⓪3;;in device,À⇨①Q>✓⇧;;handler,ij⇨④PåHATABS8;;table.ט⇨%>✓;;Copy,ק⇨♪çCOPYBAT∧⇨⑦QçBATCHER8;;code to,Φ⇨④P❎╱8;;its pg. 6,≥⇨⓪3;✓a};residence.ⁿ⇨⑧)>åBATLEN;;Len. must,╱⇦⑦HçCOPYBAT;;be < 256.⓪⇦①Q>✓
  118. ;;Row and,ə⇦④PåROWCRS;;column,$⇦⓪Q>✓;;to put,.⇦⑤PåCOLCRS;;m✓b}essage.8⇦①$>✓;;E: IOCB.B⇦⑧Q>àINMSG⑥✓¯;;Msg-low.L⇦⑤PàICBAL;;Addr.low.V⇦⑧Q>àINMSG⑤◆⇧;;Msg-hi.`⇦④PàICBAH;;Addr.hi.j⇦①Q>✓✓;;Len✓c}gth ,t⇦③PàICBLL;;of msg.~⇦A;;Zero hi,ê⇦⑤PàICBLH;;len.byte.Æ⇦②Q>✓♪;;Put data,£⇦④PàICCOM;;I/O cmd.ª⇦④ äCIOV;;Send msg.ã⇦①$>╱P;✓d};File #5,´⇦Q>✓ ;;close,ג⇦⑤PàICCOM9;;command,מ⇦③ äCIOV;;to init,ן⇦%>✓;;BIOCB.Γ⇦
  119. ëINITBIOCB∮⇦⑤QàIOCB58;;Copy #5,÷⇦④PàBIOCB8;✓e};closed,❎
  120. 1;;status,
  121. ❎⑨IëINITBIOCB;;to BIOCB.④❎⑤QåWARMST;;Skip if,❎⑧HêWAITABIT;;not boot.(❎②$>╱P;;Bat. iocb2❎⑦Q>äAUTO⑥✓¯;;A✓f}utorun,<❎④PàICBAL9;;script,F❎⑤Q>äAUTO⑤◆⇧;;file,P❎②PàICBAH9;;name.Z❎⓪Q>✓⇧;;Enough,d❎④PàICBLH9;;length.n❎Q>✓⇦;;Input,x❎⑥PàICA✓g}X19;;mode I/O.é❎Q>✓⇨;;Open,î❎⑤PàICCOM9;;command.û❎④ äCIOV;;try open.á❎⑥ çBATSWAP;;BATSAVE.¬❎ êWAITABITœ❎⑥QåCLOCK3;;Wait for,✓h}®❎①R>╱p;;a while,ז❎⑦DêWAITABIT;;to pass.פ❎⑥ åCLEARS;;Clr scrn.ץ❎ ,;;Clean,µ❎
  122. :;;return.≡❎
  123. åCLEARS·❎②Q>✓;;Zero the,⇦╱>;;iocb✓i} and,╱④PàICBAL;;address,⑧╱⓪PàICBAH;;and,"╱③PàICBLL;;length,,╱②PàICBLH;;for 1,6╱②Q>✓♪;;byte put,@╱④PàICCOM;;command,J╱⓪Q>╱};;✓j}from A,T╱④ äCIOV;;register.^╱
  124. :;;Return.h╱❎X;r╱⑤àINMSG♪AêáאIJקבזדפA|╱⑨äAUTO♪AìD:AUTORUN.BATAå╱╱♪╱¢É╱❎X;Ü╱②X;      BATCHERñ╱"X;✓k}      E: device GET CHAR rtn.«╱#X;      (non-relocatable labels,Õ╱"X;       set as pg. 6 offsets.)א╱❎X;כ╱♪çBATCHERש╱⑦QàBIOCB;✓l};active BAT?α╱⑦GåBATEDI;;No-real E:Ω╱❎X;⌠╱⑨åBATGET❎╱②
  125. ③çBATCHER³╱③Q>✓;;Set BIOCB,✓◆⑥PåICBALB;;up for 1,②◆⑥PåICBAHB;;byte G✓m}ET,◆③PåICBLLB;;to be,&◆⑥PåICBLHB;;returned,0◆②%>✓◆;;in A reg.:◆⑤ åBATCIO;;Real E:,D◆⑥GåBATEDI;;if error.N◆⑦QåICAX6Z;;saved b✓n}yteX◆⑧åBATECO ╱;;CRT echo.b◆⑤QåICAX6Z;;restore.l◆♪,;;data,v◆④DåBATXIT;;return.Ç◆əåBATX9BQ>╱¢;;return EOLè◆⑧åBATXIT$>✓;;E: I✓o}OCB.ö◆⓪%>✓⇧;;Return,ß◆⑥åBATRTS:;;status ok¿◆❎X;Ø◆X;      Allow real E: input,¶◆ X;      Watch for / commands.ה◆❎X;ס◆⑦åBATEDI✓p}$>✓;;E: IOCBם◆①%>✓⇧;;Stat.o.kΣ◆⑧åBATMON ╱;;User key.∈◆)>╱Ç;;Break?°◆⑥FåBATRTS;;Yes-exit.⇩✓R>╱¢;;EOL ? ✓⑤HåBATRTS;;No-exit✓q}.⑥✓②%>✓;;Save EOL, ✓⑦P@åICBALZ7;;for CIO.*✓③QàICBAL;;Caller,4✓⑥PåINBUFF;;buff ptr,>✓⑤PåICBALB;;to pg.0,H✓⑤QàICBAH;;and BIOCB✓r}R✓⑧PåINBUFF②✓⇧;;in case,\✓④PåICBAHB;;needed.f✓⑧Q@åINBUFF7;;1ST byte,p✓④R>
  126. /;' ;is BATCH?z✓⑥HåBATX9B;;No-returnä✓❎X;Ä✓X;     ✓s} Start a BATCH scriptÿ✓❎X;ó✓⑤àBATGO%>✓ ;;close,¼✓③ åBATCIO;;BIOCB.À✓①%>✓⇩;;Test if,ij✓⑧Q>
  127. :;'       ;D:, or,ט✓③R@åINBUFF7;;Dn:✓t},ק✓④FåBATINC;;format,∧✓
  128. 3;;was,Φ✓⑤R@åINBUFF7;;keyed.≥✓⑥FåBATINC;;Yes-open.ⁿ✓③QàICBLL;;Only a,╱    ;;;name was,⓪    ③SåICBLLZ;;keye✓u}d,ə     ?;;so we,$    əàBATL1Q@åINBUFF7;;must,.     3;;shift,8    ⑤P@åINBUFF7;;right,B    1;;overlay,L     1;;slash,V    ③HàBATL1;;with D,`    ⑤Q>
  129. D✓v};'       ;and,j    ⑧P@åINBUFF7;;insert a,t     3;;colon,~    ④Q>
  130. :;' ;after it,ê    ⑦P@åINBUFF7;;then go,Æ    ⑥HåBATOPN;;open file£    ⑨åBATINC✓w}#åICBALB;;Skip,ª    ⑥HåBATOPN;;the / to,ã    ⑥#åICBAHB;;filename.´    ⑦åBATOPNQ>✓⇧;;Set up,ג    ③PåICBLHB;;BIOCB,מ    ②%>✓⇦;;for Open,ן    ③'åI✓x}CAX1B;;input,Γ    1;;cmd and,∮    ⑥ åBATCIO;;try open.÷    ④GåBATX9B;;failed.
  131. ⑥QåINBUFF;;Tell CIO,
  132.  
  133. ⑥PåICBALZ;;that the,④
  134. ⑦QåINBUFF②✓y}✓⇧;;editor,
  135. ④PåICBAHZ;;buffer,(
  136. ⑤QàICBLL;;is empty,2
  137. ⑥PåICBLLZ;;ignoring,<
  138. ④QàICBLH;;/ cmd,toF
  139. ⑤PåICBLHZ;;replace,P
  140. ⑥!åBATGE✓z}T;;with BAT.Z
  141. ❎X;d
  142. ⑨åBATCIO❎╱②
  143. ③çBATCHERn
  144. ⑥'åICCOMB;;Save cmd.x
  145. ⑦ çBATSWAP;;Swap I/O.é
  146. ②$>╱P;;BAT IOCB.î
  147. ② äCIOV;;Do I/O.û
  148. ✓{}⑨PåBATZIO②✓;;Save dataá
  149. ⑤IåBATCIX;;I/O o.k.¬
  150.  
  151. C;;Status,œ
  152. 5;;saved.®
  153. ②Q>✓ ;;Close #5,ז
  154. ⑤PàICCOM9;;restore,פ
  155. ② äCIOV;;status✓|},ץ
  156. 7;;and fall,µ
  157. ?;;thru to,≡
  158. ⑥åBATCIX
  159. ;;BATSWAP.·
  160. əçBATSWAP❎╱②
  161. ③çBATCHER⇦♪
  162. C;;Save Y,♪5;;reg. Set,⑧♪②%>✓;;copy len."✓}}♪əåBATSWLQàZIOCB8;;ZIOCB,,♪5;;byte save6♪⑦QåBATZIO8;;copy old,@♪⑥PàZIOCB8;;to ZIOCB.J♪7;;Get ZIO,T♪⑥PåBATZIO8;;save it.^♪⑤Q✓~}àIOCB58;;File #5,h♪ 5;;saved.r♪⑥QàBIOCB8;;BAT IOCB,|♪③PàIOCB58;;to #5.å♪
  163. 7;;Old #5,É♪③PàBIOCB8;;saved.Ü♪1;;loop for,ñ♪⑥IåBAT✓}SWL;;16 bytes.«♪7;;Restore,Õ♪ ?;;Y reg,א♪:;;and retn.כ♪❎X;ש♪⑦X;      Private IOCBα♪❎X;Ω♪⑧àBIOCB❎╱②
  164. ③çBATCHER⌠♪əåICCOMBàB✓Ç}IOCB②✓⇩;;cmd.³♪åICBALBàBIOCB②✓⇦;;buffer,✓ åICBAHBàBIOCB②✓❎;;address.② åICBLLBàBIOCB②✓✓;;buffer, åICBLHBàBIOCB②✓    ;;le✓ü}ngth.& åICAX1BàBIOCB②✓
  165. ;;I/O mode0 #X;                      BATCHER,: åBATLEN
  166. ③çBATCHER;;lengthD ⇦åICBLHBàBIOCB②✓    ;;le✓g¯¯@¯A⌐à④ α@á¨ə⇨חE≡✓זזזij!É≥`זäל¨ə⇨àיז¨ə⇨àכáõיÖ⇧ê⓪°¡⇦⇧⑧i⇧ì@A¡❎⇧iìAA¡F⇨⑧i⇧ì-A¡G⇨iì.A⌐¯ì⇦⇧⌐❎ì❎⇧ñל⌐Öə⇨ז⌐⇧Öə⇨á¨⓪AÖ╱זij≡ס⌡⌐ â}
  167. àT⌐àUó⌐·ìD⇨⌐@ìE⇨⌐✓ìH⇨èìI⇨⌐♪ìB⇨ VΣóP⌐ ¥B⇨ VΣá¨É⇨Ö≡╱ê⓪≈Ñ✓ס!óP⌐⇩¥D⇨⌐A¥E⇨⌐⇧¥I⇨⌐⇦¥J⇨⌐⇨¥B⇨ VΣ ט╱Ñ④חpÉ· α@⑧`⌐¬ìD⇨ìE⇨ìH⇨ìI⇨⌐♪ìB⇨ ä}⌐} VΣ`áאIJקבזדפD:AUTORUN.BAT¢¡≡╱0&⌐ì⌠╱ì⌡╱ì°╱ì∙╱á◆ «╱0①Ñ/ Ñ/⑧É⇩⌐¢óá⇧`óá⇧ ijÇ≡⌠ח¢ס≡áæ$¡D⇨à≤ì⌠╱¡E⇨à⌠ì⌡╱õ≤ח/ססá  «╱á⇩⌐:ע≤≡  à}זע≤≡¡H⇨8σ(¿õ≤זæ≤êêס≈⌐Dæ≤ז⌐:æ≤ס✓∈⌠╱ס⇨∈⌡╱⌐⇧ì∙╱á⇦î·╱ê «╱0ïÑ≤à$Ñ⌠à%¡H⇨à(¡I⇨à)L❎╱î≥╱ ט╱óP VΣì⇧⓪ ÿH⌐ ¥B⇨ VΣh¿ÿHá¨ H¨⓪⇧Ö hÖ⓪⇧¨É å}⇨H¨≡╱ÖÉ⇨hÖ≡╱ê⓪βh¿`Γ⇩π⇩@≤ז⌐:æ≤ס✓∈⌠╱ס⇨∈⌡╱⌐⇧ì∙╱á⇦î·╱ê «╱0ïÑ≤à$Ñ⌠à%¡H⇨à(¡I⇨à)L❎╱î≥╱ ט╱óP VΣì⇧⓪ ÿH⌐ ¥B⇨ VΣh¿ÿHá¨ H¨⓪⇧Ö hÖ⓪⇧¨É ⑧³³②d#X;pseudo-BASIC macros for MAC/65n!X;put in file called MACRO.LIBx❎X;é$X;*******************************î❎X;ûX;eq⓪ê}uates needed by macrosá❎X;¬
  168. âEOL╱¢œ♪äOPEN╱⇨®
  169. åGETREC╱❎ז
  170. åPUTREC╱    פ àCLOSE╱ ץ♪äDRAW╱①µ
  171. åROWCRS╱T≡
  172. åCOLCRS╱U·⓪ë} àCOLOR╱ז⇦⇧åCOLOR0❎ג⇩⇧åATACHR❎√⇩⑧⇧
  173. àICCOM❎B⇨"⇧
  174. àICBAL❎D⇨,⇧
  175. àICBAH❎E⇨6⇧
  176. àICBLL❎H⇨@⇧
  177. àICBLH❎I⇨J⇧
  178. àICAX1❎J⇨T⇧
  179. àICAX2⓪è}❎K⇨^⇧ äCIOV❎VΣh⇧❎X;r⇧$X;*******************************|⇧❎X;å⇧③X;SETCOLOR macroÉ⇧❎X;Ü⇧X;Usage:  SETCOLOR X,Y,Zñ⇧❎X;«⇧!X;X,⓪ï} Y, and Z can be values orÕ⇧⑤X;memory addressesא⇧❎X;כ⇧⇦ëSETCOLOR ש⇧
  180. ⇧ ✓✓⇨α⇧⑧
  181. AæError in SETCOLORAΩ⇧⇦⇩⌠⇧
  182. ⇧ ✓⇧✓⇦³⇧◆$ ✓⇧✓⇩⇦⇩⓪î}②⇩✓$> ✓⇧⇩⇦⇨&⇩
  183. ⇧ ✓⇩✓0⇩◆Q ✓⇩:⇩❎T?D⇩❎T?N⇩❎T?X⇩❎T?b⇩⇦⇩l⇩♪Q> ✓⇩④✓⓪v⇩⇦⇨Ç⇩
  184. ⇧ ✓⇨✓è⇩◆% ✓⇨ö⇩⇦⇩ß⇩✓%> ✓⇨¿⇩⇦⇨Ø⇩ PåCOLOR09¶⇩⇦Cה⇩◆M>✓ס⓪ì}⇩⇦,ם⇩ OåCOLOR09Σ⇩ PåCOLOR09∈⇩⇦⇨°⇩⇦❎⇩⇨❎X; ⇨$X;*******************************⑥⇨❎X; ⇨X;POKE macro*⇨❎X;4⇨⑤X;usage:  POKE X,Y>⇨❎⓪Ä}X;H⇨"X;X is an address, Y is a valueR⇨❎X;\⇨
  185. ⇦àPOKE f⇨
  186. ⇧ ✓✓⇩p⇨④
  187. AìError in POKEAz⇨⇦⇩ä⇨    Q>4 ✓⇩Ä⇨◆P ✓⇧ÿ⇨⇦⇨ó⇨⇦❎¼⇨❎X;À⇨$X;******⓪Å}*************************ij⇨❎X;ט⇨③X;POSITION macroק⇨❎X;∧⇨⑨X;usage:  POSITION X,YΦ⇨❎X;≥⇨X;X and Y are both values; Xⁿ⇨$X;can g⓪É}o from 0-319, Y from 0-191╱⇦❎X;⓪⇦⇦ëPOSITION ə⇦
  188. ⇧ ✓✓⇩$⇦⑧
  189. AæError in POSITIONA.⇦⇦⇩8⇦    Q>4 ✓⇧B⇦♪PåCOLCRSL⇦    Q>5 ✓⇧V⇦PåCOLCRS②✓⓪æ}⇧`⇦    Q>4 ✓⇩j⇦♪PåROWCRSt⇦⇦⇨~⇦⇦❎ê⇦❎X;Æ⇦$X;*******************************£⇦❎X;ª⇦X;OPEN macroã⇦❎X;´⇦$X;Usage:  OPEN chan,aux1,au⓪Æ}x2,devג⇦❎X;מ⇦X;'chan' is an IOCB numberן⇦X;'aux1' is a task numberΓ⇦%X;'aux2' is the 2nd auxiliary byte∮⇦$X;'dev' is the na⓪ô}me of the device÷⇦X; to open, as a literal❎❎X;
  190. ⇦àOPEN ④❎
  191. ⇧ ✓✓⇦❎④
  192. AìError in OPENA(❎⇦⇩2❎!ë@SKIPOPEN<❎④ç@DEVICE♪♪✓⇦=âEO⓪ö}LF❎
  193. ë@SKIPOPENP❎♪$> ✓⇧④✓⓪Z❎Q>4ç@DEVICEd❎♪PàICBAL9n❎Q>5ç@DEVICEx❎♪PàICBAH9é❎
  194. ⇧ ✓⇩✓¯î❎◆Q ✓⇩û❎⇦⇩á❎✓Q> ✓⇩¬❎⇦⇨œ❎♪PàICAX19®❎
  195. ⇧ ✓⓪ò}⇨✓¯ז❎◆Q ✓⇨פ❎⇦⇩ץ❎✓Q> ✓⇨µ❎⇦⇨≡❎♪PàICAX29·❎
  196.  êOPENIOCB⇦╱⇦⇨╱⇦❎⑧╱❎X;"╱$X;*******************************,╱❎X;6╱⓪X;CLOSE macro@╱❎X⓪û};J╱⑦X;Usage:  CLOSE chanT╱❎X;^╱X;'chan' is an IOCB numberh╱❎X;r╱♪⇦åCLOSE |╱
  197. ⇧ ✓✓⇧å╱⑤
  198. AÄError in CLOSEAÉ╱⇦⇩Ü╱♪$> ✓⇧④✓⓪ñ╱♪Q>⓪ù}àCLOSE«╱♪PàICCOM9Õ╱     äCIOVא╱⇦⇨כ╱⇦❎ש╱❎X;α╱$X;*******************************Ω╱❎X;⌠╱③X;GRAPHICS macro³╱❎X;✓◆⑦X;Usage:  GRAPHICS⓪ÿ} X②◆❎X;◆$X;X is the number of the graphics&◆"X;mode desired;  add 16 to this0◆!X;number to eliminate the text:◆♪X;windowD◆❎X⓪Ö};N◆⇦ëGRAPHICS X◆
  199. ⇧ ✓✓⇧b◆⑧
  200. AæError in GRAPHICSAl◆⇦⇩v◆ !ç@SKIPGRÇ◆    à@AUX1è◆╱♪✓ö◆    à@AUX2ß◆╱♪✓¿◆♪ç@SKIPGRØ◆✓Q> ✓⇧¶◆◆M>╱ה◆
  201. P⓪Ü}à@AUX2ס◆✓Q> ✓⇧ם◆◆M>╱≡Σ◆◆N>╱⓪∈◆◆L>╱ °◆
  202. Pà@AUX1⇩✓ ◆àOPEN ✓╱=à@AUX1=à@AUX2=AéS:A ✓⇦⇨⑥✓⇦❎ ✓❎X;*✓$X;******************************⓪¢}*4✓❎X;>✓⓪X;PRINT macroH✓❎X;R✓X;usage:  PRINT IOCB,address\✓❎X;f✓#X;IOCB is channel number to use;p✓"X;'address' is the label⓪£} of thez✓#X;text string to be printed; theä✓!X;text string must have an EOLÄ✓X;character ($9B) at the endÿ✓❎X;ó✓ X;if only o⓪¥}ne parameter, then¼✓!X;IOCB is assumed to be 0 (E:)À✓❎X;ij✓X;calls subroutine PRINTLINEט✓❎X;ק✓♪⇦åPRINT ∧✓①⇧ ✓✓⇧3 ✓✓⇩Φ✓⑤
  203. A⓪ß}ÄError in PRINTA≥✓⇦⇩ⁿ✓
  204. ⇧ ✓⑧✓⇧╱    ◆$>✓⓪        Q>4 ✓⇧ə    ♪PàICBAL9$        Q>5 ✓⇧.    ♪PàICBAH98    ⇦⇩B    ♪$> ✓⇧④✓⓪L        Q>4 ✓⇩V    ♪PàICBAL9`        Q>5 ✓⇩j    ♪P⓪ƒ}àICBAH9t    ⇦⇨~     ëPRINTLINEê    ⇦⇨Æ    ⇦❎£    ❎X;ª    $X;*******************************ã    ❎X;´    ⓪X;COLOR macroג    ❎X;מ    ④X;Usage:  COLOR Xן    ❎X;⓪á}Γ    ⑥X;X must be a value∮    ❎X;÷    ♪⇦åCOLOR 
  205.  
  206. ⇧ ✓✓⇧
  207.  
  208. AÄError in COLORA④
  209. ⇦⇩
  210. ✓Q> ✓⇧(
  211.  
  212. PàCOLOR2
  213. ⇦⇨<
  214. ⇦❎F
  215. ❎X;P
  216. $X;****************⓪í}***************Z
  217. ❎X;d
  218. X;PLOT macron
  219. ❎X;x
  220. ⑤X;Usage:  PLOT X,Yé
  221. ❎X;î
  222. əX;X is the x-coordinateû
  223. əX;Y is the Y-coordinateá
  224. ❎X;¬
  225. ⓪ó}
  226. ⇦àPLOT œ
  227.  
  228. ⇧ ✓✓⇩®
  229. AìError in PLOTAז
  230. ⇦⇩פ
  231. ⑤◆ëPOSITION  ✓⇧= ✓⇩ץ
  232. ◆$>╱`µ
  233. Q>åPUTREC≡
  234. ♪PàICCOM9·
  235. ◆Q>✓⇦♪♪PàICBLL9♪♪PàICBLH9⑧♪
  236. ⓪ú}QàCOLOR"♪     äCIOV,♪⇦⇨6♪⇦❎@♪❎X;J♪$X;*******************************T♪❎X;^♪①X;DRAWTO macroh♪❎X;r♪⑦X;Usage:  DRAWTO X,Y|♪❎X;å♪!X;⓪ñ}X and Y are the endpoints ofÉ♪%X;the line to draw; must be valuesÜ♪❎X;ñ♪ ⇦çDRAWTO «♪
  237. ⇧ ✓✓⇩Õ♪⑥
  238. AÅError in DRAWTOAא♪⇦⇩כ♪⑤◆ëPO⓪Ñ}SITION  ✓⇧= ✓⇩ש♪◆$>╱`α♪
  239. Q>äDRAWΩ♪♪PàICCOM9⌠♪◆Q>✓ ³♪♪PàICAX19✓ ◆Q>✓② ♪PàICAX29
  240. QàCOLOR& ♪PåATACHR0      äCIOV: ⇦❎OAא♪⇦⇩כ♪⑤◆ëPO⓪p³³ü⇨d#X;SUBS.LIB file to go with macron#X;library file; required equatesxəX;are in MACRO.LIB fileé❎X;î$X;***************④º}****************û❎X;á⑨X;subroutine PRINTLINE¬əX;called by PRINT macroœ❎X;®#X;prints up to 160 characters onז X;IOCB num④¿}ber that is alreadyפ⑥X;in the X-registerץ❎X;µ
  241. ëPRINTLINE≡◆Q>✓á·♪PàICBLL9⇦⇧◆Q>✓⇧♪PàICBLH9⑧⇧ Q>åPUTREC"⇧♪PàICCOM9,⇧     äCI④⌐}OV6⇧⇦:@⇧❎X;J⇧#X;******************************T⇧❎X;^⇧⑧X;subroutine OPENIOCBh⇧❎X;r⇧⑨X;called by OPEN macro|⇧❎X;å⇧ êOPENIOCBÉ⇧
  242. ④¬}Q>äOPENÜ⇧♪PàICCOM9ñ⇧     äCIOV«⇧⇦:Õ⇧❎X;א⇧#X;------------------------------כ⇧❎X;ש⇧⑤X;if you use AMAC:α⇧❎X;Ω⇧ X;some devices you m④½}ight want⌠⇧"X;to open - add your own if you³⇧X;use other custom handlers;✓⇩!X;you'll need to define a disk②⇩"X;filename in f④¼}ull elsewhere in⇩X;your program, such as:&⇩❎X;0⇩ X;FILE1 .BYTE "D1:SCORES.DAT":⇩❎X;D⇩♪üS♪AéS:AN⇩♪üE♪AéE:AX⇩♪üC♪AéC:Ab⇩♪üP♪A④¡}éP:Al⇩♪üK♪AéK:Av⇩♪üR♪AéR:Aprogram, such as:&⇩❎X;0⇩ X;FILE1 .BYTE "D1:SCORES.DAT":⇩❎X;D⇩♪üS♪AéS:AN⇩♪üE♪AéE:AX⇩♪üC♪AéC:Ab⇩♪üP♪A④ə³³8⇧d X;Example 1 for macro libraryn⑦X;by Karl E. Wiegersx❎X;é✓F=EIî①①>ïD:MACRO.LIBû◆❎Pá⓪◆ëGRAPHICS ✓⇩¬⑥◆ëSETCOLOR⑧»} ✓⇩=✓╱=✓⇦œ⑦◆àPOKE åCOLOR0②✓⇦=✓╱®③◆ëPOSITION ✓⇧=✓⇧ז④◆åPRINT ✓╱=àTEXT1פ①◆åPRINT àTEXT2ץ
  243. ◆åCLOSE ✓╱µ âEND!âEND≡⓪①>èD:SUBS⑧ã}.LIB· àTEXT1♪AÄTHIS is a testA=âEOL⇦⇧àTEXT2♪AîText window!A=âEOLTEXT1פ①◆åPRINT àTEXT2ץ
  244. ◆åCLOSE ✓╱µ âEND!âEND≡⓪①>èD:SUBS⑧B³³5⇧d X;Example 2 for macro libraryn⑦X;by Karl E. Wiegersx❎X;é✓F=EIî①①>ïD:MACRO.LIBû◆❎Pá③◆ëGRAPHICS ✓❎②✓⓪¬⑥◆ëSETCOØ}LOR ✓=✓⇧=✓ œ⑥◆ëSETCOLOR ✓⇦=✓╱=✓✓®
  245. ◆åCOLOR ✓⇧ז◆àPLOT ✓④=✓פ①◆çDRAWTO ✓<=✓ץ①◆çDRAWTO ✓=✓#µ①◆çDRAWTO ✓(=✓❎≡①◆çDRAWTO ø}✓4=✓#·①◆çDRAWTO ✓④=✓⇦⇧
  246. ◆åCLOSE ✓╱⇧ âEND!âEND⑧⇧⓪①>èD:SUBS.LIB①◆çDRAWTO ✓<=✓ץ①◆çDRAWTO ✓=✓#µ①◆çDRAWTO ✓(=✓❎≡①◆çDRAWTO ?0 REM -----------------¢1 REM áááגפIJונמכנפגáááá¢3 REM NEW VERSION 5/87¢4 REM -----------------¢80 FOR X=N1 TO N77:I(X)=N0:ER( Œ}X)=N0:NEXT X:I(39)=N7:ER(39)=1:RESTORE 3010¢955 IF  NOT ER(ROOM) THEN ER(ROOM)=1:RC=RC+1¢2162 IF ROOM=DR THEN 2175¢2163 GRAPH À}ICS N0:POKE 756,CHSET:POKE 752,N1:POKE 710,N0:POKE 711,54:POKE 712,112¢2164 DL=PEEK(560)+256*PEEK(561)+N4:POKE DL+22,N6:POKE  Ã}DL+23,N6:POKE DL+24,N6:POKE DL,N0:POKE DL+N1,MAP¢2165 POKE 88,N0:POKE 89,MAP:POKE 559,34:POSITION 23,N21:? "   áΣσ∈á∩µ    ":P Õ}OSITION N4,22:? " ⌠ΦσáΣ≥βτ∩∈ "¢2166 R=DR:GOSUB ROOMPOS:POSITION COL,ROW:? "①②❎| |ə②⇨"¢2167 POSITION COL+N1,ROW+N1:? " ¨}④":FOR X=N1 TO N10:NEXT X¢2168 POSITION COL+N1,ROW+N1:? " ":FOR X=N1 TO N10:NEXT X¢2169 IF STRIG(N0)=N0 THEN GOSUB SND1:GOTO  ´}2175¢2170 GOTO 2167¢2175 GRAPHICS N18:POKE 756,CHSET:POSITION N2,N1:? #N6;"ךנרáIJפדáגדIJגí"¢2195 IF RC=77 THEN SC=SC+150¢2210 O †}PEN #N1,N4,N0,"K:":GET #N1,A:CLOSE #N1:IF A<>ASC("N") AND A<>ASC("Y") THEN 2210¢2211 CN=N0:FOR X=N1 TO N10:PR(X)=N0:NEXT X¢22 ¶}12 IF SC<=RS(N10) THEN 2220¢2213 CN=CN+N1:IF SC>RS(CN) THEN 2215¢2214 GOTO 2213¢2215 FOR X=N9 TO CN STEP -N1:RS(X+N1)=RS(X):P ©}R(X+N1)=PR(X):RS$((X+N1)*N9-N8,(X+N1)*N9)=RS$(X*N9-N8,X*N9):NEXT X¢2216 B=N0:FOR X=N1 TO N9:IF N$(X,X)<>" " THEN NEXT X:GOTO  ®}2219¢2217 B=B+N1:IF B=N2 THEN FOR Y=X-N1 TO N9:N$(Y,Y)="¡":NEXT Y:GOTO 2219¢2218 NEXT X¢2219 RS(CN)=SC:PR(CN)=N1:RS$(CN*N9-N8 ™},CN*N9)=N$:F=N1¢2220 CN=N0:IF  NOT F THEN 2223¢2221 CLOSE #N1:OPEN #N1,N8,N0,"D:DRAGONLO.DAT":FOR X=N1 TO N10:? #N1;RS(X):? # ij}N1;RS$(X*N9-N8,X*N9):NEXT X¢2222 CLOSE #N1:F=N0¢2223 GRAPHICS N17:POKE 756,CHSET:POSITION N3,N0:? #N6;"record scores":POSITIO IJ}N N3,N1:? #N6;"¡¡¡¡¡¡¡¡¡¡¡¡¡"¢2224 FOR X=N1 TO N10:POSITION N3,X+N4:? #N6;RS$(X*N9-N8,X*N9);"¡";RS(X):NEXT X¢2225 FOR Z=N1 TO א} N10:IF PR(Z)=N0 THEN NEXT Z:GOTO 2229¢2226 FOR X=N1 TO N20:NEXT X:POSITION N2,Z+N4:? #N6;"®":FOR X=N8 TO N0 STEP -0.4:SOUND  ב}N0,N10,N10,X¢2227 SOUND N1,N15,N10,X:FOR Y=N1 TO N4:NEXT Y:SOUND N0,N0,N0,N0:SOUND N1,N0,N0,N0:FOR Y=N1 TO N3:NEXT Y:NEXT X¢2 ג}228 NEXT Z¢2229 POKE 711,54:POSITION N2,22:? #N6;"≡⌡≤ΦáµΘ≥σáΓ⌡⌠⌠∩∈"¢2230 FOR X=N1 TO 30:NEXT X:POKE 711,N0:IF STRIG(N0)=N0 TH ד}EN 2232¢2231 FOR X=N1 TO N10:NEXT X:POKE 711,54:GOTO 2230¢2232 IF A=ASC("N") THEN POKE 82,N2:END ¢2233 POSITION N2,22:? #N6;" ה}   ONE MOMENT   "¢2240 RESTORE 2940:HP=50:STR=100:SPL=N0:PIE=N1:CNT=N0:B=N0:WN=N1:G=60:ROOM=39:SC=N0:SM=N0:TURN=N0:RC=1:GOTO  ו}80¢2300 DIM ER(77),RM(N77),I(N77),RM$(255),MV$(N20),N$(N9),W$(28),DIR$(N20),S$(120),B$(40),CL$(40)¢2310 DIM R$(N1),R(N5),C$(N ז}1),E$(N4),D$(81),F$(N14),RS(N10),RS$(90),PR(N10)¢2340 WN=N1:PIE=N1:CNT=N0:G=60:SPL=N0:HP=50:STR=100:B=N0:ROOM=39:SM=N0:SC=N0: ח}TURN=N0:RC=1¢2350 ROOMPOS=180:CHOOSE=290:DIR=370:CLUE=210:DEAD=2162:DELAY2=360:SND1=160:SND2=170:TEL=130¢3030 POKE 559,0:POKE ט} 87,N0:POKE 88,N0:POKE 89,MAP:A=USR(ADR(CL$),N15)¢3040 POSITION N18,N9:? RM$(RM(ROOM)*N17-N16,RM(ROOM)*N17)¢3301 TRAP 3351:OP י}EN #N1,N4,N0,"D:DRAGONLO.DAT"¢3302 FOR X=N1 TO N10:INPUT #N1;A:RS(X)=A:INPUT #N1;N$:RS$(X*N9-N8,X*N9)=N$:NEXT X:TRAP 40000:CL כ}OSE #N1¢3340 FOR X=N1 TO N9:IF N$(X,X)<>"-" THEN NEXT X¢3342 F$="D:DUNGEON .DAT"¢3343 POSITION N2,N15:? "WHAT DUNGEON <0-9>   ל} ";:TRAP 3343:INPUT D:CLOSE #1:F$(N10,N10)=STR$(D)¢3344 OPEN #1,4,0,F$:CLOSE #1¢3345 GRAPHICS N0:POKE 559,N0:? :? :? "ENTE מ}R";CHR$(34);F$:? :? :? "CONT"¢3346 POSITION N0,N0:POKE 842,N13:STOP ¢3347 POKE 842,N12:RESTORE 2940:FOR Y=N1 TO 77:READ A:RM( נ}Y)=A:NEXT Y¢3350 TRAP 3030:N$(X)="         ":POP :TRAP 40000:POKE 559,34:GOTO 550¢3351 RS$(N1)=" ":RS$(90)=" ":RS$(N2)=RS$:CL ס}OSE #N1:OPEN #N1,N8,N0,"D:DRAGONLO.DAT"¢3352 FOR X=N1 TO N10:RS(X)=N0:? #N1;RS(X):? #N1;RS$(X*N9-N8,X*N9):NEXT X:CLOSE #N1:GO ע}TO 3310¢OPEN #N1,N8,N0,"D:DRAGONLO.DAT"¢3352 FOR X=N1 TO N10:RS(X)=N0:? #N1;RS(X):? #N1;RS$(X*N9-N8,X*N9):NEXT X:CLOSE #N1:GO ✓⇧1⇧2⇧·⇧④
  247. )
  248. מדצתREPEAקRMñFñAñLñBñRM¿CMP¿ןךIJבפRלOבOפDמLINדRבקג@⇧⇧@⇩⇩@⇨⇨@⇦⇦@⇧ü❎①①ü╱①ü◆ $צ}⇧ü✓!+Kü    l%%A
  249. æN❎A♪Œ    ⓪❎ @❎
  250. @!@ü@4⓪@⑨①@x②@4③@⑨④@╱⑤A0⓪⑥@x⑦$ק}@①⑧@❎
  251. 1
  252. +@⇧④A◆⓪②④1A◆R②@⇧⑥④z⑤-@❎②@╱④-(@╱⑤
  253. dragonlord④?-@⇨②@✓$ר}④[(@╱⑤DUNGEON EDITOR④z(ə         By Clayton Walnum⑥.╱(④.(# Copyright 1987 by ANALOG Computing⑥(?6Ç-@⇧④ü-$ש}@⇩④'6é-@⇨④36â-@⇦④?6ä-⑥2<<④à;@⑦,②å;@⑤,②ç;@⇧,②ê;@u,②ë;@7,⑥<++④è9@w<@⇦$ת},②ï9@⑤<@⇦,⑥FD⑦✓î-@⇧⑨@w④+✓ì-@⇧⑨@⇦④<6è8î<ì,-④@    ì④D    î⑥PB⑦✓î-@⇧⑨@⑤④+✓ì-@⇧⑨$ן}@⇦④/"Ä④:6ï8î<ì,-Ä④>    ì④B    î⑥Zee⇧1,1,0,0,1,0,1,0,1,0,0,1,0,1,1,0,0,0,1,1,0,1,0,1,1,1,1,0,1,1,0,1,0,1,1,1,1,1,1,1,1,0,0,0,0$ך},0,1,0¢d⇧0,1,0,0,0,0,0,1,1,0,1,1¢n4④6ë7@⇧,.⇧ ④%6ë7@7,.⇧ ④46ë7@⇩,.ë⑥xà.①①②❎| |ə②⇨⑥é1
  254. +$ם}④A◆⓪②④1A◆R②@⇧⑥î;✓ì-⑨@⑧ə@⇨④;✓î-@⇨⑨@3ə@⇨⑥û
  255.     -î②ì④
  256. (à⑥á◆    î④♪    ì④$ף}A◆f②@⇧⑥¬?-(% = UP   = DOWN   = RIGHT   = LEFT④?A◆f②⑥œ,,($N,S,E,W = EXITS  C = CLEAR  Q = QUIT⑥®?$ץ}6Å-@⇦④É-@⇧④!6Æ-Å④'6ô-É④36æ-@⇧④9-Å②É④?(⇧④⑥ז;#⑦@⇧②@⇦②②⇩K:④0)@⇧②Ä④;①@⇧⑥פ◆Ä$§}"@:⇧Q,)Ä"@:⇧q,A⇨ ⑥ץH#◆+Ä"@:⇧N,)Ä"@:⇧n,,*æ!@①-Å②É&@⇧④7(⇧⑧④H6è8æ<Ç,-@⇧⑥µH#◆+Ä"@:⇧S,)Ä"@:⇧s,,*æ $∧}@g-Å②É%@⇧④7(⇧⑦④H6è8æ<é,-@⇧⑥≡U0◆+Ä"@:⇧E,)Ä"@:⇧e,,*æ'@①P:æ'@①,>-Å%@⇧②É④D(⇧⇧④U6è8æ<ü,-@⇧$∞}⑥·iD◆+Ä"@:⇧W,)Ä"@:⇧w,,*+æ&@⇧,'@①P:+æ&@⇧,'@①,R-Å&@⇧②É④X(⇧⇦④i6è8æ<â,-@⇧⑥⇦⇧Z⑦◆Ä"@:⇧C,)Ä"$α}@:⇧c,--Å&@⇧②É&@⇧④1(à④E✓î-@⇧⑨@⇦④V6è8æ<î,-④Z    î⑥⇧4◆Ä"@:⇧*,6æ-æ%@⇧④(◆æ!@wæ-@⇧$β}⑥⑧⇧4◆Ä"@:⇧+,6æ-æ&@⇧④(◆æ @⇧æ-@w⑥"⇧6◆Ä"@:⇧-,6æ-æ&@①④(◆æ @⇧æ-æ%@w⑥,⇧6◆Ä"@:⇧=,6æ-$Γ}æ%@①④(◆æ!@wæ-æ&@w⑥6⇧⑦
  257. A❎ ④⑦
  258. A⇩⑥@⇧⑨
  259. A❎⓪④⑨◆äA⇨Ç⑥J⇧⑧⑧6å.D:DUNGEON0.DAT⑥T⇧7
  260.  
  261. A⇨@④-@$π}⇩②@!④3(DUNGEON NUMBER⑤④7⇩ö⑥^⇧!!◆ö @⇧)ö!@    A⇨@⑥h⇧O
  262.  
  263. A⇨Ç④'6å7@⓪<@⓪,.=:ö,④2①@⇧④O⑦$Σ}@⇧②@⇦②②å⑥r⇧P⑤-@⇩②@"④<(!FILE ALREADY EXISTS! OVERWRITE IT⑤④@⇩ç④P◆ç0⇧YA⇨ ⑥|⇧V①@⇧④+⑦@⇧$σ}②@✓②②å④5 A❎⓪④G-@❎②@!④V(
  264. WORKING...⑥å⇧6ò-A)@⑥É⇧✓û-@⇧⑨@gə@①⑥Ü⇧, 6ê.=:ò,④"$µ}6ê7@❎,.╱ DATA ④,
  265. B⇦⑥ñ⇧)③✓æ-û⑨û%@⓪④6ù-@⇧④) A❎ ⑥«⇧⑦⑦✓ÿ-@⇧⑨@⇦⑥Õ⇧!③◆è8æ<ÿ,"ï8ù<ÿ,⑦    ÿ④!
  266. A⇦p$τ}⑥א⇧(╱'④④6ù-ù%@⇧④(◆ù!@⑤A❎⑥כ⇧
  267.  
  268. A⇦0⑥ש⇧4ə6ê7B:ê,%@⇧,.=:ù,④06ê7B:ê,%@⇧,.⇧,④4    æ⑥α⇧8&(@⇧⑤ê7$Φ}@⇧<B:ê,&@⇧,④46ò-ò%@⓪④8    û⑥Ω⇧
  269. +④(    ALL DONE!④⑤⑥⌠⇧\⑤-@⇩②@"④;(╱ROOM #⑤æ⑤⑥ DOESN'T HAVE AN EXI$Θ}T!④F①@⇧④R6ä-@⇧④\
  270. A⇨⓪⑥³⇧/⑤-@⇩②@!④⑨(ë④+-@⇩②@"④/(ë⑥✓⇩ö.6É-P:+æ&@⇧,'@①,$@⇨%@⇧$Ω}④m6Å-+æ&P:+æ&@⇧,'@①,$@①%@⇧,$@⇨&@⇩④s-Æ②ô④y(⇧ ④-Å②É④à(⇧④④ï6Æ-Å④æ6ô-É④ö$⑥Ç⑤⑤⑨
  271. D:DUNEDIT.BA$δ}S⑥④m6Å-+æ&P:+æ&@⇧,'@①,$@①%@⇧,$@⇨&@⇩④s-Æ②ô④y(⇧ ④-Å②É④à(⇧④④ï6Æ-Å④æ6ô-É④ö$⑥Ç⑤⑤⑨
  272. D:DUNEDIT.BA$⇩2940 DATA 4,6,6,9,6,9,6,9,6,6,5¢2950 DATA 1,9,9,8,5,2,4,8,9,9,3¢2960 DATA 12,11,2,4,3,2,1,5,2,11,12¢2970 DATA 7,6,10,10,6,10,(ϕ}6,10,10,6,15¢2980 DATA 11,12,2,1,5,2,4,3,2,12,11¢2990 DATA 4,8,8,9,3,2,1,9,8,8,5¢3000 DATA 1,6,6,8,6,8,6,8,6,6,3¢,10,10,6,10,(q2940 DATA 4,9,9,9,9,9,9,9,9,9,5¢2950 DATA 7,8,8,8,8,8,8,8,8,8,15¢2960 DATA 4,5,4,9,9,10,9,9,5,4,5¢2970 DATA 2,7,15,2,7,10,15,,∩}2,7,15,2¢2980 DATA 1,3,1,8,8,10,8,8,3,1,3¢2990 DATA 7,9,9,9,9,9,9,9,9,9,15¢3000 DATA 1,8,8,8,8,8,8,8,8,8,3¢ 2,7,15,2,7,10,15,,k2940 DATA 4,6,6,6,9,6,9,6,6,6,5¢2950 DATA 1,6,5,9,10,9,10,9,4,6,3¢2960 DATA 4,6,3,7,3,2,1,15,1,6,5¢2970 DATA 1,6,5,7,6,10,6,10±}5,4,6,3¢2980 DATA 4,6,3,7,5,2,4,15,1,6,5¢2990 DATA 7,6,5,8,10,8,10,8,4,6,15¢3000 DATA 1,6,8,6,8,6,8,6,8,6,3¢ 1,6,5,7,6,10,6,10l2940 DATA 4,6,9,6,5,9,4,6,9,6,5¢2950 DATA 7,6,10,6,15,2,7,6,10,6,15¢2960 DATA 1,6,8,6,3,2,1,6,8,6,3¢2970 DATA 7,6,6,6,6,10,6,4≤}6,6,6,15¢2980 DATA 4,6,9,6,5,2,4,6,9,6,5¢2990 DATA 2,13,10,14,2,2,2,13,10,14,2¢3000 DATA 1,6,8,6,3,8,1,6,8,6,3¢,6,6,6,6,10,6,4o2940 DATA 4,9,9,9,9,9,9,9,9,9,5¢2950 DATA 7,10,10,10,10,10,10,10,10,10,15¢2960 DATA 7,10,10,10,10,10,10,10,10,10,15¢2970 DATA8⌡} 7,10,10,10,10,10,10,10,10,10,15¢2980 DATA 7,10,10,10,10,10,10,10,10,10,15¢2990 DATA 7,10,10,10,10,10,10,10,10,10,15¢3000 DAT8÷}A 1,8,8,8,8,8,8,8,8,8,3¢10,10,15¢2980 DATA 7,10,10,10,10,10,10,10,10,10,15¢2990 DATA 7,10,10,10,10,10,10,10,10,10,15¢3000 DAT8⑧³³Ö5d✓F=EIi❎X;nəX;LIFE IN THE FAST LANEs"X;Atari 8-bit Ver 1.00 04-20-86x$X;Copyright 1986 Analog Computing}X;Program<°}med by James Hagueé❎X;ç⑤X;----------------î④X; SYSTEM EQUATESæ⑤X;----------------û❎X;¢X;Page zeroá❎X;Ñ
  273. åDOSINI╱ ¬
  274. <∙}åRTCLOK╱④»
  275. åATRACT╱Mœ❎X;¨
  276. X;Misc.®❎X;בåVDSLST❎⇩זåSDLSTL❎0⇩ל
  277. àWSYNC❎
  278. קפåSDMCTL❎/⇩תåCONSOL❎סץåRANDOM❎
  279. <·}פβåSTICK0❎x⇩µ
  280. àTRIG0❎⓪סδ
  281. àNMIEN❎ק≡
  282. éCH❎ⁿ⇩⌡
  283. àCHBAS❎⌠⇩·åOLDSET❎α¯❎X;⇦⇧
  284. X;Audio    ⇧❎X;⇧
  285. àSKCTL❎פ③⇧åAUDCTL❎✓פ<√}⑧⇧
  286. àAUDF1❎פ⇧
  287. àAUDC1❎⇧פ"⇧
  288. àAUDF2❎⇩פ'⇧
  289. àAUDC2❎⇨פ,⇧
  290. àAUDF3❎⇦פ1⇧
  291. àAUDC3❎❎פ6⇧❎X;;⇧①X;P/M Graphics@⇧❎X;E⇧åGRACTL❎סJ⇧åGP<ⁿ}RIOR❎o⇩O⇧åPMBASE❎◆קT⇧åHPOSP0❎סY⇧åHPOSP1❎⇧ס^⇧åHPOSP2❎⇩סc⇧åHPOSP3❎⇨סh⇧åHPOSM0❎⇦סm⇧åHPOSM1❎❎סr⇧åHPOSM2❎╱סw⇧åH<²}POSM3❎◆ס|⇧åSIZEP0❎✓סü⇧åSIZEP1❎    סå⇧åSIZEP2❎
  292. סï⇧åSIZEP3❎♪סÉ⇧
  293. àSIZEM❎ סò⇧❎X;Ü⇧♪X;Colorsƒ⇧❎X;ñ⇧åPCOLR0❎ij⇩⌐⇧åPCOLR1❎<³}IJ⇩«⇧åPCOLR2❎א⇩ø⇧åPCOLR3❎ב⇩Õ⇧åCOLOR0❎ג⇩©⇧åCOLOR1❎ד⇩א⇧åCOLOR2❎ה⇩ו⇧åCOLOR3❎ו⇩כ⇧åCOLBAK❎ז⇩ע⇧åHCOLR0❎⑥סש⇧åHCOLR1<¯}❎⑦סף⇧❎X;α⇧④X;System Routinesσ⇧❎X;Ω⇧åSIOINV❎eΣ∩⇧åSETVBV❎\Σ⌠⇧åXITVBL❎bΣ∙⇧❎X;³⇧⑧X;-------------------⇨⇩⑦X; PROGRAM VARIABL=}ES✓⇩⑧X;-------------------
  294. ⇩╱╱Ç②⇩❎X;⑦⇩①X;Global misc.⇩❎X;!⇩åVBICTL②✓⇧;;VBI CTrL. flag&⇩əäPNT1②✓⇩;;Misc. PoiNTer+⇩⑨äTEMP②✓⇧=⇧};;TEMP storage0⇩àIMAGE②✓⇧;;IMAGE pointer5⇩əåCOLTIM②✓⇧;;COLor TIMer:⇩åBORDER②✓⇧;;BORDER color?⇩åCURSOR②✓⇧;;CURSOR colorD⇩⑨å=⇩}COLMSK②✓⇧;;COLor MaSKI⇩åCONKEY②✓⇧;;CONsole KEY flgN⇩❎X;S⇩②X;Cell DatabaseX⇩❎X;]⇩əâPOP②✓⇩;;bcd POPulationb⇩⑨äMOST②✓⇩;;bcd max=⇨} pop.g⇩⑧äMODE②✓⇧;;growth MODEl⇩àGENER②✓⇩;;bcd GENERationq⇩❎X;v⇩⑦X;Placement routines{⇩❎X;Ç⇩əäCURX②✓⇧;;CURsor X pos.à⇩əäCURY②=⇦}✓⇧;;CURsor Y pos.è⇩⑧àSOUND②✓⇧;;SOUND flagÅ⇩⑦äTONE②✓⇧;;sound TONEö⇩àPRESS②✓⇧;;trig PRESS flagÖ⇩⑨âDIR②✓⇧;;stick DIRect.ß⇩äDIS=❎}T②✓⇧;;cursor DISTanceú⇩åSELECT②✓⇧;;SELECT key time¿⇩❎X;¡⇩①X;RegenerationØ⇩❎X;Ã⇩åACTIVE②✓⇧;;ACTIVE cells¶⇩əàCOUNT②✓⇧;;temp C=╱}OUNTerIJ⇩⑦âROW②✓⇧;;current ROWה⇩əâCOL②✓⇧;;current COLUMNי⇩àCHORD②✓⇧;;current CHORD #ס⇩❎X;ר⇩④X;Color Constantsם⇩❎X;∞⇩ç@GENTXT=◆}╱ז;;GENer labelΣ⇩ç@GENNUM╱V;;GENer numberΘ⇩ç@GR0BAK╱;;GR.0 BAcKground∈⇩ç@GR0LUM╱
  295. ;;GR.0 text LUM.≤⇩à@NUM1╱è;;NUMber=✓} color 1°⇩à@NUM2╱ê;;NUMber color 2²⇩å@BOARD╱⑧;;BOARD squares⇩⇨③à@CELL╱F;;CELLs◆⇨❎X; ⇨④X;Misc. Constants①⇨❎X;⑥⇨⑨âEOL╱¯;;=    }EOL character⇨❎X; ⇨②X;-------------%⇨①X; GLOBAL DATA*⇨②X;-------------/⇨❎X;4⇨╱╱9⇨əéPM②❎⇨;;Player/Missile>⇨⑧àMISSL②❎⇧;;me=
  296. }mory...C⇨♪âPL0②❎⇧H⇨♪âPL1②❎⇧M⇨♪âPL2②❎⇧R⇨♪âPL3②❎⇧W⇨àCHSET②❎⇦;;New CHar SET\⇨äDISP②◆α⇧;;DISPlay memorya⇨②àBOARDäDISP②✓ff=♪}⇨②äTEXTäDISP②◆Õ⇧k⇨àCADRL②❎⇧;;Regenerationp⇨àCADRH②❎⇧;;data storage...u⇨
  297. àCTYPE②❎⇧z⇨⑨àTSAVE②✓(;;Temp buffer⇨❎X;ä⇨⑦X;---= }---------------ë⇨⑥X; PROGRAM MAINLINEÄ⇨⑦X;------------------ô⇨❎X;ÿ⇨◆❎ ¥⇨    àRESETó⇨②-;;Kill decimalº⇨ə åSETSYS;;Set-up system=
  298. }¼⇨ êREDEFINE;;Redef. chsetõ⇨ə àTITLE;;Do title scrn.À⇨ə àSETUP;;Set-up program†⇨äMAIN àPLACE;;Place cellsij⇨⑦ äLIFE;;Create =}life!ד⇨⑦!äMAIN;;Loop foreverט⇨❎X;נ⇨⑥X;-----------------ק⇨⑤X; VBLANK MAINLINEך⇨⑥X;-----------------∧⇨❎X;π⇨◆âVBIΦ⇨②-;;Kill deci=}malϕ⇨⑨QåVBICTL;;Get VBI flag≥⇨⑦GàNOVBI;;If <0, exit≈⇨⑦Q>✓;;else, turn offⁿ⇨⑨PåATRACT;;attract mode⇧⇦ çANIMATE;;Animate cell=⓪}s╱⇦ åBCOLOR;;Do border color♪⇦QåVBICTL;;Get flag again⓪⇦əHàNOVBI;;If not 0, exit⑤⇦⑧ äDING;;Do ding soundə⇦#åCURSOR;;Flash =①}cursor...⇦♪QåCURSOR$⇦♪PåCOLOR3)⇦àNOVBI!åXITVBL;;Bye-bye VBI!.⇦❎X;3⇦④X;---------------8⇦③X; SET-UP SYSTEM=⇦④X;--------------=②}-B⇦❎X;G⇦X;Among other things, set upL⇦X;the VBI and any variablesQ⇦X;associated with it thatV⇦#X;need be initialized only =③}once.[⇦❎X;`⇦
  299. åSETSYSe⇦ åSIOINV;;Init sounds...j⇦
  300.  àQUIETo⇦⑦Q>4àRESET;;Steal thet⇦PåDOSINI;;reset vector...y⇦ Q>5àRESET~⇦På=④}DOSINI②✓⇧â⇦①$>╱¯;;Init VBIê⇦⑨&åVBICTL;;variables...ì⇦♪&åCOLTIMÆ⇦⇦2ù⇦
  301. &àIMAGE£⇦
  302. %>4âVBIí⇦
  303. $>5âVBIª⇦◆Q>✓◆½⇦♪!åSETVBVã⇦❎X;Œ⇦⑤X;-=⑤}---------------´⇦④X; SHUT OFF SOUND™⇦⑤X;----------------ג⇦❎X;ח⇦X;This is a general purposeמ⇦X;routine that initializesצ⇦#X;=⑥}sound channels 1,2 & 3.  It isן⇦!X;not responsible for handling§⇦X;routine-specific flags.Γ⇦❎X;τ⇦    àQUIET∮⇦③Q>✓⇨;;Initialize±=⑦}⇦⑤PàSKCTL;;sound and÷⇦①Q>✓;;turn off√⇦⑨PåAUDCTL;;channels 1,2❎④PàAUDC1;;and 3...❎❎
  304. PàAUDC2
  305. PàAUDC3❎⇦:④❎❎X;⑨❎⑦X;---------=⑧}---------❎⑥X; REDEFINE CHARSET#❎⑦X;------------------(❎❎X;-❎①X;Move charset2❎❎X;7❎ êREDEFINE<❎⑥$>✓;;Move set fromA❎åMOVSET=⑨}QåOLDSET9;;$E000 toF❎③PàCHSET9;;RAM...K❎⓪QåOLDSET②❎⇧9P❎PàCHSET②❎⇧9U❎⓪QåOLDSET②❎⇩9Z❎PàCHSET②❎⇩9_❎⓪QåOLDSET②❎⇨9d❎PàCHSE=ə}T②❎⇨9i❎⇦2n❎♪HåMOVSETs❎❎X;x❎⑨X;Redefine a few chars}❎❎X;é❎⑦$>✓?;;Redefine charsç❎ àREDEFQåCHRDAT9;;2 thru 10 asî❎PàCHSET②✓⓪9=};;the arena'sæ❎
  306. 0;;bordersû❎
  307. IàREDEF¢❎❎X;á❎④X;Install new setÑ❎❎X;¬❎ Q>5àCHSET»❎
  308. PàCHBASœ❎⇦:¨❎❎X;®❎③X;Character dataב❎❎X;ז❎⑥å=}CHRDAT♪╱=╱=╱=╱¯ל❎♪╱=╱=╱¯=╱¯פ❎❎X;ת❎♪╱¯=╱¯=╱=╱ץ❎♪╱¯=╱=╱=╱β❎❎X;µ❎♪╱ס=╱ס=╱ס=╱סδ❎♪╱ס=╱ס=╱ס=╱ס≡❎❎X;⌡❎♪╱♪=╱♪=╱♪=╱♪·❎=}♪╱♪=╱♪=╱♪=╱♪¯❎❎X;⇦╱♪╱=╱=╱=╱    ╱♪╱✓=╱✓=╱♪=╱♪╱❎X;③╱♪╱=╱=╱=╱≡⑧╱♪╱⓪=╱⓪=╱ס=╱ס╱❎X;"╱♪╱♪=╱♪=╱✓=╱✓'╱♪╱=╱=╱=╱,╱❎X;1╱=}♪╱ס=╱ס=╱⓪=╱⓪6╱♪╱≡=╱=╱=╱;╱❎X;@╱④X;---------------E╱③X; PRINT MESSAGEJ╱④X;---------------O╱❎X;T╱X;This routine prints an =}EOLY╱ X;terminated internally-coded^╱ X;string on the message line.c╱❎X;h╱X;Call with:m╱!X;  x reg. - lo byte of stringr╱!X;= }  y reg. - hi byte of stringw╱❎X;|╱    àPRINTü╱⑥&äPNT1;;Save stringå╱⑤'äPNT1②✓⇧;;addressï╱◆%>✓É╱åDOCHARQ@äPNT17;;Get a charò╱=!}R>âEOL;;EOL?Ü╱əFàPADIT;;Yes, pad line.ƒ╱⑨PäTEXT8;;No, show charñ╱⓪3;;and do the⌐╱⑤HåDOCHAR;;next one«╱❎X;ø╱!X;Pad rest of lin="}e with blanksÕ╱❎X;©╱⑨àPADITQ>✓;;Blank charא╱⑧àDOPAD)>✓(;;All done?ו╱⑨EåPREXIT;;Yes, return.כ╱əPäTEXT8;;No, show blankע╱⓪3;;L=#}oop untilש╱⑧HàDOPAD;;line is doneף╱♪åPREXIT:α╱❎X;σ╱!X;----------------------------Ω╱ X; NUMERICAL DISPLAY ROUTINES∩╱!X;------=$}----------------------⌠╱❎X;∙╱X;Show generation number³╱❎X;⇨◆
  309. åSHOGEN✓◆⑥%>✓;;Screen offset
  310. ◆③$>✓P;;Color mask②◆⑦QàGENER②✓⇧;;=%}Print...⑦◆✓ âBCD◆
  311. QàGENER!◆✓!âBCD&◆❎X;+◆④X;Show population0◆❎X;5◆
  312. åSHOPOP:◆⑥%>✓=;;Screen offset?◆③$>✓⓪;;Color maskD◆⑤QâPOP②✓=&}⇧;;Print...I◆✓ âBCDN◆✓QâPOPS◆✓!âBCDX◆❎X;]◆⑦X;Show starting pop.b◆❎X;g◆♪çSHOSTRTl◆⑥%>✓B;;Screen offsetq◆③$>✓P;;Color maskv◆⑤Qâ='}POP②✓⇧;;Print...{◆✓ âBCDÇ◆✓QâPOPà◆✓!âBCDè◆❎X;Å◆⑥X;Show largest pop.ö◆❎X;Ö◆♪çSHOMOSTß◆⑥%>✓G;;Screen offsetú◆③$>✓⓪;;Color mask¿=(}◆⑥QäMOST②✓⇧;;Print...¡◆✓ âBCDØ◆əQäMOST;;Fall into BCD..Ã◆❎X;¶◆⑦X;Print 2 BCD digitsIJ◆❎X;ה◆X;Call with:י◆⑧X;  a reg. - BCD da=)}taס◆X;  x reg. - color mask+16ר◆ X;  y reg. - offset from DISPם◆❎X;∞◆◆âBCDΣ◆③5;;Save BCD dataΘ◆&åCOLMSK;;Save color mask∈◆③=*}V?;;Move upper 4≤◆⑥V?;;bits into lower°◆⓪V?;;4 bits...²◆❎V?⇩✓LåCOLMSK;;make it ATASCII◆✓⑧PäDISP8;;and show it. ✓④3;;Goto nex=+}t pos.①✓④7;;Get original #⑥✓⑧M>╱;;mask upper half✓LåCOLMSK;;make it ATASCII ✓⑧PäDISP8;;and show it.%✓④3;;Goto next pos.*✓⓪=,}:;;and leave./✓❎X;4✓⓪X;-----------9✓X; SHOW MODE>✓⓪X;-----------C✓❎X;H✓♪çSHOMODEM✓⑥%>✓L;;Screen offsetR✓⑤$äMODE;;Get mode #W=-}✓⑦QäLET19;;Print first\✓əPäDISP8;;letter of modea✓⇦3f✓⑧QäLET29;;Print secondk✓⑤PäDISP8;;letter...p✓⇦3u✓⑤QäLET39;;and printz✓⑧=.}PäDISP8;;final letter✓⇦:ä✓❎X;ë✓X;Mode dataÄ✓❎X;ô✓⑤äLET1 ②✓@=AàRRSSFAÿ✓⑤äLET2 ②✓@=AàGGSSSA¥✓⑤äLET3 ②✓@=AàNQNQTAó✓❎X;º✓əX;---=/}------------------¼✓⑨X; MAIN SET-UP ROUTINEõ✓əX;---------------------À✓❎X;†✓    àSETUPij✓④Q>✓;;Set mode toד✓②PäMODE;;0 (RGN)ט✓⑨P=0}åSDMCTL;;Turn DMA offנ✓ çSETCELL;;Set cell dataק✓⑧ çSETCOLR;;Set colorsך✓ çSETDISP;;Set-up display∧✓ə àSETPM;;Set PM grphic=1}sπ✓⑦Q>✓>;;Enable DMA forΦ✓əPåSDMCTL;;screen and PMϕ✓:;;and exit!≥✓❎X;≈✓⑨X;--------------------ⁿ✓⑧X; INIT CELL DATABASE⇧    ⑨X;-=2}-------------------╱    ❎X;♪    $X;Reset all cell variables except⓪    #X;MODE which does not need to be⑤     X;changed when the cells ar=3}e.ə    ❎X;    ♪çSETCELL$    ⑥$>✓;;Clear out the)    ⑦&âPOP;;population....    ♪&âPOP②✓⇧3    ⑨&äMOST;;largest pop...8     &äMOST②✓⇧=    &àGENER②✓⇧;=4};Set generationB    ⓪2;;to 1 (BCD)G    
  313. &àGENERL    ⇦:Q    ❎X;V    ④X;---------------[    ③X; SET UP COLORS`    ④X;---------------e    ❎X;j    ♪çSETCOLR=5}o    ⑧$>✓✓;;Do 9 color regst    äCOLRQåCOLORS9;;Get a colory    PåPCOLR09;;& put in reg.~    ⑤0;;Repeat til doneâ        IäCOLRê    ⇦:ì    ❎X;Æ    ③X;=6}Initial colorsù    ❎X;£    
  314. åCOLORSí    ③♪å@BOARD;;PCOLR0ª    ③♪å@BOARD;;PCOLR1½    ③♪å@BOARD;;PCOLR2ã    ③♪å@BOARD;;PCOLR3Œ    ④♪ç@GENTXT;;COLOR0=7}´    ④♪ç@GENNUM;;COLOR1™    ④♪ç@GR0BAK;;COLOR2ג    ♪✓;;COLOR3ח    ♪✓;;COLBAKמ    ❎X;צ    əX;---------------------ן    ⑨X; SET-UP MAIN DISPLAY§=8}    əX;---------------------Γ    ❎X;τ    ⑨X;Clear display memory∮    ❎X;±    ♪çSETDISP÷    ⑧$>✓;;Clear 480 bytes√    ③A;;in two blocks
  315. äCLRDPäD=9}ISP9;;of 240 each...❎
  316.  
  317. PäDISP②✓≡9
  318.  
  319. ⇦2
  320. ◆(>✓≡④
  321.     HäCLRD⑨
  322. ❎X;
  323. ①X;Print labels#
  324. ❎X;(
  325. $>✓
  326. ;;Print-
  327.  äPRL1QåGLABEL9;;"GENERATION:=:}"2
  328. PäDISP②✓⇩9;;on line 0...7
  329. ⇦0<
  330.     IäPRL1A
  331. ③$>✓#;;Print cellF
  332. äPRL2QåLABELS9;;data labelsK
  333. PäDISP②✓⑤9;;on line 1...P
  334. ⇦0U
  335.     I=;}äPRL2Z
  336. ❎X;_
  337. ②X; Draw bordersd
  338. ❎X;i
  339. əQ>4äDISP②✓e ;;Draw then
  340. ⑧PäPNT1;;long sectionss
  341. ⑧Q>5äDISP②✓e ;;of thex
  342. ④PäPNT1②✓⇧;;bord=<}er}
  343. ⑧$>✓;;(15 chars long)é
  344. àBDRAWQ>✓B;;Print a pieceç
  345. əPäDISP②✓R9;;of top lineî
  346. ⑦Q>✓C;;and the bottomæ
  347. ⑨PäDISP②◆ª⇧9;;line p==}lusû
  348. ④%>✓;;part of the¢
  349. ②Q>✓E;;left sideá
  350. ♪P@äPNT17Ñ
  351. ④%>✓①;;and finally¬
  352. ⑦Q>✓D;;a piece of the»
  353. ③P@äPNT17;;right!œ
  354. ⑧QäPNT1;;=>}Add 20 to the¨
  355. ④,;;address of the®
  356. ⑧O>✓④;;current line soב
  357. əPäPNT1;;that we'll knowז
  358. QäPNT1②✓⇧;;where to printל
  359. ⑥O>✓;;the n=?}ext sideפ
  360. ④PäPNT1②✓⇧;;chars.ת
  361. ⑤0;;Finish drawing!ץ
  362.  
  363. IàBDRAWβ
  364. ❎X;µ
  365. ⑦%>✓F;;Add upper leftδ
  366. ⑤'äDISP②✓Q;;corner,≡
  367. ②3;;upper right=@},⌡
  368. 'äDISP②✓b·
  369. ①3;;lower left,¯
  370.  
  371. 'äDISP②◆Ñ⇧⇦♪⑤3;;and finally the    ♪'äDISP②◆À⇧;;lower right!♪❎X;③♪⑤X;Point to main DL⑧♪❎X;♪    =A}Q>4éDL"♪♪PåSDLSTL'♪    Q>5éDL,♪PåSDLSTL②✓⇧1♪❎X;6♪②X;Start up DLIs;♪❎X;@♪Q>4äDLI1;;Point to firstE♪③PåVDSLST;;DLI...J♪♪Q>5äDLI1=B}O♪PåVDSLST②✓⇧T♪⑧Q>✓ij;;Enable DLIs andY♪⓪PàNMIEN;;VBIs^♪❎X;c♪③X;Show cell datah♪❎X;m♪ åSHOGEN;;Show generationr♪⑨ åSHOPOP;;c=C}urrent pop.w♪ çSHOSTRT;;starting pop.|♪ə çSHOMOST;;Maximum pop.ü♪⑥!çSHOMODE;;and modeå♪❎X;ï♪⑥X;Main display listÉ♪❎X;ò♪éDL♪=D}✓p=✓p=✓pÜ♪④♪✓ה=4äDISP=5äDISPƒ♪╱♪✓éñ♪╱♪✓å⌐♪╱♪✓p«♪♪✓╱=✓╱=✓╱=✓╱=✓╱=✓╱=✓╱=✓╱=✓╱ø♪♪✓╱=✓╱=✓╱=✓╱=✓╱=✓╱=✓╱=✓╱Õ♪╱♪✓å©♪╱♪✓pא♪╱♪✓⇩ו♪⓪♪=E}✓A=4éDL=5éDLכ♪❎X;ע♪⑦X;Misc. display dataש♪❎X;ף♪⑨åGLABEL AïGENERATION:Aα♪⑨åLABELS AïPopulation Aσ♪⑦ AÉStarting    MostAΩ♪⓪ Aë =F}    ModeA∩♪❎X;⌠♪⑦X;------------------∙♪⑥X; MAIN SCREEN DLIs³♪⑦X;------------------⇨ ❎X;✓ X;Set the text luminance for
  372. ⑦X;th=G}e label line (1)② ❎X;⑦ ④äDLI15;;Save acc. ⑦Q>ç@GR0LUM;;Set text! ⑥PåHCOLR1;;luminance& ⑨PàWSYNC;;Wait for sync+ ⑨Q>4äDLI2;;a=H}nd point to0 ⑧PåVDSLST;;next dli...5 ♪Q>5äDLI2: PåVDSLST②✓⇧? ②7;;Restore acc.D ⇦9I ❎X;N "X;Set colors for the numbers onS ♪X=I};line 2X ❎X;] ④äDLI25;;Save acc.b ⑦Q>à@NUM1;;Set numberg ⑤PåHCOLR0;;color 1,l əPàWSYNC;;wait for sync,q Q>à@NUM2;;and set nu=J}mberv ④PåHCOLR1;;color 2{ əQ>4äDLI3;;Point to nextÇ ③PåVDSLST;;dli...à ♪Q>5äDLI3è PåVDSLST②✓⇧Å ②7;;Restore acc.ö ⇦9Ö ❎X;ß !X=K};Set colors for the cells andú ④X;border of board¿ ❎X;¡ ④äDLI35;;Save acc.Ø Q>à@CELL;;Set cell colorà ♪PåHCOLR0¶ ⑨PàWSYNC;;W=L}ait for syncIJ QåBORDER;;and set borderה ②PåHCOLR1;;colorי Q>4äDLI4;;Point to finalס ③PåVDSLST;;dli...ר ♪Q>5äDLI4ם PåVDSLST=M}②✓⇧∞ ②7;;Restore acc.Σ ⇦9Θ ❎X;∈ #X;Set text luminance for message≤     X;line° ❎X;² ③äDLI45;;Save acc⇩
  373. ⑦Q>ç@GR0LUM;;Set text◆
  374. P=N}åHCOLR1;;luminance, and
  375. ⑨PàWSYNC;;wait for sync①
  376. əQ>4äDLI1;;Point back to⑥
  377. ⑨PåVDSLST;;first dli...
  378. ♪Q>5äDLI1 
  379. PåVDSLST②✓⇧%=O}
  380. ②7;;Restore acc.*
  381. ⇦9/
  382. ❎X;4
  383. X;----------------------9
  384. əX; CLEAR MISSILE MEMORY>
  385. X;----------------------C
  386. ❎X;H
  387. ♪çCLRMISSM
  388. ⑤=P}$>✓;;Fill missileR
  389. ①A;;memory withW
  390. ⑧äCCLRPàMISSL9;;zeroes\
  391. ⇦2a
  392.     HäCCLRf
  393. ⇦:k
  394. ❎X;p
  395. ⑨X;--------------------u
  396. ⑧X; SET-UP PM GRA=Q}PHICSz
  397. ⑨X;--------------------
  398. ❎X;ä
  399. ④X;Clear pm memoryë
  400. ❎X;Ä
  401.     àSETPMô
  402.  çCLRMISS;;Clear missilesÿ
  403. ⑥$>✓;;Clear players¥
  404. A;;=R}0-3...ó
  405. àPMCLRPâPL09º
  406.     PâPL19¼
  407.     PâPL29õ
  408.     PâPL39À
  409. ⇦2†
  410. HàPMCLRij
  411. ❎X;ד
  412. X;Init pmט
  413. ❎X;נ
  414. ⑥Q>5éPM;;Point to pmק
  415. ③PåPMBASE;;memory=S}ך
  416. ③Q>✓⇨;;Turn on pm∧
  417. ⑤PåGRACTL;;graphicsπ
  418. &àSIZEM;;Set missl. sizeΦ
  419. ⑤>;;Set all playersϕ
  420. ⑧çSETSIZEPåSIZEP09;;to≥
  421. ⑤0;;quadrup=T}le width≈
  422. IçSETSIZEⁿ
  423. ⑤Q>✓④;;Set priority⇧PåGPRIOR;;w/5th player on╱❎X;♪⑦X;Draw board squares⓪❎X;⑤⑤%>✓;;Draw squaresə=U}âSQ1$>✓;;in players 0-3âSQ2QåSQRDAT9;;Get data byte$PâPL0②✓H8;;and put it in)PâPL1②✓H8;;each player.... PâPL2②✓H83=V} PâPL3②✓H88②3;;Next pm byte=⑤0;;Finish up a setB⑥IâSQ2;;of 4 squaresG◆)>✓ÇL⑧HâSQ1;;Complete boardQ❎X;V③$>✓⇨;;Set playe=W}r[àMOVSQQåPLHPOS9;;horizontal`əPåHPOSP09;;positions...e⇦0j
  424. IàMOVSQo⇦:t❎X;y⓪X;Square data~❎X;â⑥åSQRDAT♪╱כ=╱כ=╱כ=╱כê=X}♪╱כ=╱כ=╱כ=╱כì♪╱3=╱3=╱3=╱3Æ♪╱3=╱3=╱3=╱3ù❎X;£X;Player horiz. positionsí❎X;ª⑥åPLHPOS♪✓@=✓`=✓Ç=✓á½❎X;ãX;------------=Y}-------------ŒX; VB BORDER COLOR HANDLER´X;-------------------------™❎X;ג
  425. åBCOLORח#åCOLTIM;;Add 1 to timerמHåOLDCOL=Z};;If not 0, exitצ⑨QåRANDOM;;Get random #ן④M>╱;;Make it <16§④T?;;Mult by 16...Γ❎T?τ❎T?∮❎T?±PåBORDER;;Save the result÷=[}⑨QåRANDOM;;Get random #√④M>✓⇨;;Make it <4,④,;;add 6, and add❎⑦O>✓╱;;it to previous
  426. LåBORDER;;result for the⑦PåBORDER=\};;new color!④♪åOLDCOL:⑨❎X;⑧X;-------------------#⑦X; VB CELL ANIMATION(⑧X;--------------------❎X;2♪çANIMATE7⑦QàIMAGE=]};;Get image #<③T?;;and multiplyA⑤T?;;it by 8 for anF⑤T?;;index into theK?;;cell dataP⑤$>✓◆;;Copy 8 bytesU äANIMQåCELIM=^}G8;;from the dataZəPàCHSET②✓P9;;table into_④3;;char number 10d⇦0i    IäANIMn⑨$àIMAGE;;Point to nexts♪2;;imagex⑦(>✓⓪;;Last=_} one done?}④DàANXIT;;No, exité⑥$>✓;;Yes, reset itçàANXIT&àIMAGE;;Save new numî⇦:æ❎X;û④X;Cell image data¢❎X;á
  427. åCELIM=`}GÑ♪╱⑧=╱⑧=╱<=╱v¬♪╱~=╱<=╱⑧=╱»❎X;œ♪╱✓=╱=╱<=╱v¨♪╱~=╱<=╱⑧=╱®❎X;ב♪╱=╱=╱>=╱vז♪╱~=╱<=╱⑧=╱ל❎X;פ♪╱=╱⑧=╱>=╱wת♪=a}╱~=╱<=╱⑧=╱ץ❎X;β♪╱=╱⑧=╱<=╱µ♪╱w=╱<=╱⑧=╱δ❎X;≡♪╱=╱⑧=╱<=╱~⌡♪╱w=╱>=╱⑧=╱·❎X;¯♪╱=╱⑧=╱<=╱~⇦⓪♪╱v=╱>=╱=╱    ⓪❎X;⓪♪=b}╱=╱⑧=╱<=╱~③⓪♪╱v=╱<=╱=╱✓⑧⓪❎X;⓪♪╱=╱⑧=╱<=╱~"⓪♪╱n=╱<=╱⑧=╱⑧'⓪❎X;,⓪♪╱=╱⑧=╱<=╱~1⓪♪╱n=╱<=╱8=╱⓪6⓪❎X;;⓪♪╱=╱⑧=╱<=╱~@⓪♪╱n=╱|=c}=╱8=╱E⓪❎X;J⓪♪╱=╱⑧=╱<=╱~O⓪♪╱∈=╱|=╱⑧=╱T⓪❎X;Y⓪♪╱=╱⑧=╱<=╱∈^⓪♪╱³=╱<=╱⑧=╱c⓪❎X;h⓪♪╱=╱⑧=╱|=╱∈m⓪♪╱~=╱<=╱⑧=╱r⓪❎X;w⓪♪╱=╱8=d}=╱|=╱n|⓪♪╱~=╱<=╱⑧=╱ü⓪❎X;å⓪♪╱⓪=╱8=╱<=╱nï⓪♪╱~=╱<=╱⑧=╱É⓪❎X;ò⓪②①>îD:FLIFE2.M65Ü⓪◆❎α⇩ƒ⓪
  428.     àRESETñ⓪⇦╱~=╱<=╱⑧=╱r⓪❎X;w⓪♪╱=╱8<d³³¥EdəX;LIFE IN THE FAST LANEi!X;Atari 8-bit Ver 1.00 4-20-86n$X;Copyright 1986 Analog ComputingsX;Programmed by James HAf}aguex❎X;} X;Part IIé❎X;ç⑥X;-----------------î⑤X; VB DING HANDLERæ⑥X;-----------------û❎X;¢✓äDINGáəQàSOUND;;Get soundAg} vol.Ñ④,;;add distortion¬O>╱á;;value»⑥PàAUDC1;;and set itœ⑤QäTONE;;Set proper¨⑤PàAUDF1;;frequency®⑦QàSOUND;;If vol is Aq}⇩ב⇩b⇨¯¯¯¯¯¯¯¯¯¯¯¯B%⇦DOS     SYSB*)DUP     SYSB/SBATCH   M65B❎éBATCH   OBJBçBOOTCMP1M65B✓ªBOOTCMP2M65B⇨«BOOTCMP3M65B⇨õBOOTCMP4M65BœDRAGON  LSTBəפDUNEDIT BASB⇩∮DUNGEON1DATB⇩∈DUNGEON2DATB⇩≡DUNGEON3DATB⇩≥DUNGEON4DATB⇨⌠DUNGEON5DATBn≈FASTLIF1M65BÅe⇧FASTLIF2M65B⑨²⇧FASTLIFEOBJB;⑥⇩FASTSETSBASB✓Q⇩FASTSETSM65B♪Y⇩VSEARCH BASB
  429. d⇩WINDOW  BAS0ב⑧FçXITDING;;then exit!זə"àSOUND;;Else lower volל çXITDING:פ❎X;ת③X;--------------ץ①X; DRAW CURSORβ③X;--------------µAr}❎X;δ#X;The cursor consists of missles≡⑤X;zero thru three.⌡❎X;·♪çDRAWCUR¯⑧%äCURY;;Move 10 bytes⇦⇧⑧$>✓    ;;of cursor shape    ⇧As}àCDRAWQåCURDAT9;;data into⇧PàMISSL8;;missile memory③⇧⇦3⑧⇧⇦0⇧
  430. IàCDRAW"⇧❎X;'⇧⑦$>✓⇨;;Set horizontal,⇧⑧QäCURX;;positions for1At}⇧əåSETCHPPåHPOSM09;;the 46⇧⑤,;;missiles.  Each;⇧③O>✓⇩;;one is two@⇧⑤0;;units away fromE⇧⑤IåSETCHP;;previousJ⇧:;;missile.O⇧❎XAu};T⇧"X;Cursor shape data: 8 bytes ofY⇧!X;actual data plus leading and^⇧#X;trailing zeroes to make motionc⇧ X;easier.h⇧❎X;m⇧⑨åCAv}URDAT♪✓=✓τ=✓ü=✓ü=✓r⇧②♪✓=✓ü=✓ü=✓τ=✓w⇧❎X;|⇧X;----------------------ü⇧əX; CONSOLE KEY ROUTINESå⇧X;----------------------ï⇧Aw}❎X;É⇧əX;Init console key flagò⇧❎X;Ü⇧"X;Set CONKEY to 0 if no consoleƒ⇧"X;keys are pressed, else set itñ⇧    X;to 1⌐⇧❎X;«⇧♪çINITCAx}ONø⇧◆$>✓Õ⇧⑤QåCONSOL;;Get keys©⇧④R>✓◆;;If not downא⇧⑥FåNOCKEY;;set to 0,ו⇧③2;;else set to 1כ⇧②åNOCKEY&åCONKEYע⇧⇦:ש⇧❎X;ף⇧⑦X;ChAy}eck console keysα⇧❎X;σ⇧#X;Return 0 in acc. if no consoleΩ⇧"X;keys are pressed, else return∩⇧ X;the value of CONSOL in acc.⌠⇧❎Az}X;∙⇧
  431. åCHKCON³⇧⑧QåCONSOL;;Any console⇨⇩⑥R>✓◆;;keys pressed?✓⇩HàCCHK1;;No, check more!
  432. ⇩⑥Q>✓;;Yes, zero key②⇩PåCONKEY;;flag A{}and return⑦⇩
  433. :;;a zero!⇩❎X;!⇩⑦àCCHK15;;Save CONSOL&⇩⑧QåCONKEY;;Flag clear?+⇩əFàCCHK2;;Yes, go do it!0⇩④7;;No, get CONSOL5⇩⑧QA|}>✓;;back and return:⇩
  434. :;;a zero!?⇩❎X;D⇩àCCHK27;;A legal press!!I⇩④:;;Return CONSOL!N⇩❎X;S⇩X;------------------------X⇩X; A}}CELL PLACEMENT HANDLER]⇩X;------------------------b⇩❎X;g⇩X;Initializel⇩❎X;q⇩    àPLACEv⇩$>4äMSG0;;Print instruc-{⇩⑨%>5äMSG0;;A~}tion messageÇ⇩
  435.  àPRINTà⇩④Q>✓;;Init cursorè⇩⑨PäCURY;;coordinates...Å⇩◆Q>✓xö⇩    PäCURXÖ⇩⑨ çDRAWCUR;;Draw cursorß⇩ə çINITCON;;SetA} key flagú⇩⑧$>╱¯;;Clear any stray¿⇩③&éCH;;keypresses¡⇩⑤2;;Clear importantØ⇩⑧&àSOUND;;variables...Ã⇩
  436. &àPRESS¶⇩♪&åSELECTIJ⇩    &äDIAÇ}STה⇩⑧&åVBICTL;;Set VB modeי⇩❎X;ס⇩⑧X;Main placement loopר⇩❎X;ם⇩çCLRCLOKQ>✓;;Clear clock∞⇩♪PåRTCLOKΣ⇩əQåSELECT;;Decrement theAü}Θ⇩⑦FåHANGON;;select key∈⇩"åSELECT;;timer, if set.≤⇩❎X;°⇩åHANGONQåRTCLOK;;If 1/30 sec²⇩⑤R>✓⇩;;has elapsed,⇩⇨⑦DåNOTYET;;handlAé}e the◆⇨⑧ çMOVECUR;;cursor and ⇨!çCLRCLOK;;reset the clock①⇨❎X;⑥⇨åNOTYETQéCH;;If escape is⇨⑥R>✓;;pressed, call ⇨HàNOESC;;Aâ}the cell clear/%⇨⑨ àCLEAR;;reset routine*⇨⑥Q>╱¯;;And clear the/⇨②PéCH;;keyboard!4⇨❎X;9⇨ àNOESC åCHKCON;;If no console>⇨FåHANAä}GON;;keys, go loop!C⇨②W?;;If start isH⇨④EåNOSTRT;;pressedM⇨③Q>✓;;put the VBR⇨⑤PåVBICTL;;on hold,W⇨⑥ àQUIET;;kil sound,\⇨ çCAà}LRMISS;;clear cursor,a⇨⓪:;;and leave!f⇨❎X;k⇨əåNOSTRTW?;;If select isp⇨DçNEWMODE;;pressed, handleu⇨⑥Q>✓;;it, otherwisez⇨PåSAå}ELECT;;clear the sel-⇨FåHANGON;;ect key timer.ä⇨ çNEWMODEQåSELECT;;If timer isë⇨HåHANGON;;set, then bye!Ä⇨⑦Q>✓
  437. ;;A legal pAç}ress!ô⇨PåSELECT;;Reset key timerÿ⇨⑦$äMODE;;and add 1 to¥⇨①2;;the currentó⇨④(>✓❎;;mode makingº⇨əHåMODEOK;;sure it isn't¼⇨⑦$>✓Aê};;greater than 4õ⇨⓪åMODEOK&äMODEÀ⇨ çSHOMODE;;Show new mode†⇨⑥!åHANGON;;and loop!ij⇨❎X;ד⇨⑧X;Instruction messageט⇨❎X;נ⇨äMSG0 Aë}AÆ  Use joystick to Aק⇨⑥ AÅplace cells on Aך⇨ AàboardA∧⇨✓♪âEOLπ⇨❎X;Φ⇨⑤X;----------------ϕ⇨④X; CURSOR HANDLER≥⇨⑤X;-----------Aè}-----≈⇨❎X;ⁿ⇨♪çMOVECUR⇧⇦ çCHKTRIG;;Check trigger╱⇦⑨QåSTICK0;;If cursor is♪⇦⑦$äDIST;;moving, then⓪⇦⑧HåMOVING;;go move it!⑤⇦④R>Aï}✓;;If stick isə⇦əFçXITMOVE;;pushed, then⇦⑥PâDIR;;start up the$⇦⑥Q>✓✓;;cursor and go)⇦③PäDIST;;slie it!.⇦
  438. HàSLIDE3⇦❎X;8⇦åMOAî}VING$âDIR;;The cursor is=⇦RàOPDIR③✓❎9;;moving!  IfB⇦⑧HàSLIDE;;the stick isG⇦QàOPDIR③✓❎9;;being pulledL⇦⑦PâDIR;;in the direcAì}-Q⇦⑥Q>✓✓;;tion oppositeV⇦;;;of cursor[⇦əSäDIST;;motion, reverse`⇦⑨PäDIST;;its direction!e⇦❎X;j⇦àSLIDE$âDIR;;Calculate newo⇦AÄ}⑨QäCURX;;cursor x coordt⇦③,;;and make surey⇦OäXOFF③✓❎9;;it is legal...~⇦⇦?â⇦◆R>✓@ê⇦♪DåHOLDITì⇦◆R>✓¨Æ⇦④DâDOY;;Its legal!ù⇦❎X;AÅ}£⇦åHOLDITQ>✓;;Stop all motioní⇦⑨PäDIST;;if a bad coordª⇦⑦çXITMOVE:;;is found.½⇦❎X;ã⇦âDOYQäCURY;;Calculate newŒ⇦①,;;y coordAÉ} and´⇦OäYOFF③✓❎9;;make sure it™⇦④R>✓G;;is legal...ג⇦♪DåHOLDITח⇦◆R>✓ijמ⇦♪EåHOLDITצ⇦⑨PäCURY;;Save new y andן⇦⑥'äCURX;;new x, thAæ}en§⇦⑥"äDIST;;record moveΓ⇦⑥Q>✓;;and clear theτ⇦⑧PàPRESS;;trigger flag∮⇦!çDRAWCUR;;Re-draw cursor!±⇦❎X;÷⇦②X;Movement data√⇦❎AÆ}X;❎äXOFF♪✓⇧=✓⇧=✓⇧=✓=╱¯=╱¯=╱¯❎❎ ♪✓=✓=✓
  439. ❎ äYOFF♪✓⇧=╱¯=✓=✓=✓⇧=╱¯=✓=✓❎    ♪✓⇧=╱¯④❎!àOPDIR♪✓
  440. =✓    =✓♪=✓=✓╱=✓❎=✓◆=✓⑨❎    ♪✓=✓Aô}
  441. ❎❎X;#❎⑥X;-----------------(❎⑤X; TRIGGER HANDLER-❎⑥X;-----------------2❎❎X;7❎♪çCHKTRIG<❎⑨$àTRIG0;;If trigger isA❎⑨FåYESCHK;;Aö}pressed, theF❎②0;;trigger flagK❎⑨&àPRESS;;is clear, andP❎⑨àNOCHK:;;the cursor isU❎åYESCHKQäDIST;;aligned on aZ❎⑧HàNOCHK;;squAò}are, then_❎⑥QàPRESS;;process itd❎
  442. HàNOCHKi❎❎X;n❎④$>✓⇧;;Set triggers❎⓪&àPRESS;;flagx❎ə&àGENER;;Set generation}❎ 0;;to oneé❎&àAû}GENER②✓⇧;;Calculate scrnç❎ çCONVERT;;addr of cursorî❎③<;;Decimal mode!æ❎əQ@äPNT17;;If on a spaceû❎⑧FçADDCELL;;add a cell¢❎❎XAù};á❎⑦Q>✓;;Remove a cell!Ñ❎♪P@äPNT17¬❎⑧QâPOP;;Subtract (bcd)»❎②;;;one from theœ❎⑦S>✓⇧;;colony popula-¨❎⑨PâPOP;;tion, max. pop.Aÿ}®❎⑦PäMOST;;and startingב❎♪QâPOP②✓⇧ז❎◆S>✓ל❎♪PâPOP②✓⇧פ❎ PäMOST②✓⇧ת❎⑥$>✓û;;Go set properץ❎⑦HåSETSND;;ding soundβ❎❎X;µ❎çADDCELLAÖ}Q>✓
  443. ;;Add a cell!δ❎♪P@äPNT17≡❎⑥QâPOP;;Add 1 to the⌡❎④,;;colony popula-·❎⑧O>✓⇧;;tion, max. pop.¯❎⑥PâPOP;;and starting⇦╱①PäMOSTAÜ};;pop...    ╱♪QâPOP②✓⇧╱◆O>✓③╱♪PâPOP②✓⇧⑧╱ PäMOST②✓⇧╱⑤$>✓;;Go set sound"╱❎X;'╱⑨åSETSND-;;Decimal off!,╱④Q>✓;;Set correct1╱⑥PàA¢}SOUND;;add/remove6╱⓪&äTONE;;sound;╱⑨ åSHOGEN;;Show updated@╱⑨ åSHOPOP;;cell data...E╱  çSHOSTRTJ╱ !çSHOMOSTO╱❎X;T╱X;--------A£}--------------Y╱əX; COORDINATE CONVERTER^╱X;----------------------c╱❎X;h╱"X;Convert cursor pm coordinatesm╱X;to a screen meA¥}mory addressr╱❎X;w╱X;Call with:|╱!X;  curx  - cursor pm x coord.ü╱!X;  cury  - cursor pm y coord.å╱❎X;ï╱ X;Return:É╱ X;  pntAß}1  - base line addressò╱X;  y reg - column offsetÜ╱❎X;ƒ╱♪çCONVERTñ╱⑦QäCURY;;Convert pm y⌐╱④;;;coord to board«╱③S>✓G;;row numAƒ}berø╱③V?;;(0 to 15)...Õ╱❎V?©╱❎V?א╱⑤5;;Save the resultו╱əPäPNT1;;and put it intoכ╱⑥Q>✓;;the work areaע╱ PäPNT1②✓⇧ש╱⑤$>✓⇨;;NowAá} multiplyף╱ åMULT16TäPNT1;;the column numα╱⑥UäPNT1②✓⇧;;by 20 toσ╱③0;;determine theΩ╱IåMULT16;;offset from the∩╱②7;;beginningAí} of⌠╱④T?;;board memory.∙╱③T?;;This takes 2³╱⓪,;;steps: 1st⇨◆əOäPNT1;;mult the column✓◆⑨PäPNT1;;by 16, then by
  444. ◆QäPNT1②✓⇧;;4;Aó} now add the②◆⑧O>✓;;two results and⑦◆PäPNT1②✓⇧;;save the mess!◆⑦QäPNT1;;Finally, add!◆③,;;the offset to&◆O>4äDISP②✓d ;;tAú}he start+◆əPäPNT1;;of board memory0◆əQäPNT1②✓⇧;;for the base5◆⑥O>5äDISP②✓d ;;line:◆PäPNT1②✓⇧;;address! WHEW!?◆❎X;D◆⑥QäCURX;Añ};Convert theI◆①;;;cursor pm xN◆⑤S>✓0;;coord to theS◆④V?;;column offsetX◆④V?;;from the base]◆③V?;;line addres,b◆③?;;and put itAÑ} ing◆⓪:;;the y reg!l◆❎X;q◆⑧X;-------------------v◆⑦X; CLEAR/RESET CELLS{◆⑧X;-------------------Ç◆❎X;à◆    àCLEARè◆QâPOP②✓⇧;;If Aª}cell pop. isÅ◆HçCLEAROK;;0, then thereö◆⑨QâPOP;;is no reason toÖ◆⑧FåXITCLR;;clear them!ß◆❎X;ú◆çCLEAROKQ>4àBOARD;;If some¿◆⑦Aº}PäPNT1;;cells exist,¡◆⑥Q>5àBOARD;;fill theØ◆⑨PäPNT1②✓⇧;;16x16 boardÃ◆②$>✓;;area with¶◆åCLRROWQ>✓;;0s (spaces)...IJ◆◆%>✓ה◆②A¿}åCLRCOLP@äPNT17י◆⇦1ס◆♪IåCLRCOLר◆⑨QäPNT1;;Add 20 to cur-ם◆①,;;rent screen∞◆⑦O>✓④;;address to getΣ◆⑤PäPNT1;;address ofΘ◆əQäPNT1A⌐}②✓⇧;;next line...∈◆◆O>✓≤◆ PäPNT1②✓⇧°◆⇦0²◆♪IåCLRROW⇩✓❎X;◆✓ çSETCELL;;Reset cell data ✓⑧ åSHOGEN;;Display new①✓⑨ åSHOPOP;;celA¬}l data...⑥✓  çSHOMOST✓  çSHOSTRT ✓④åXITCLR:;;Return!%✓❎X;*✓⑥X;-----------------/✓⑤X; CHECK FOR PAUSE4✓⑥X;-----------------9✓A½}❎X;>✓"X;Only the accumulator is used!C✓❎X;H✓⑧àPAUSEQéCH;;Space barM✓①R>✓!;;pressed?R✓əHçNOPAUSE;;Nope, leave!W✓⑥QåRTCLOK;;YesA¼}! Save\✓②5;;clock value,a✓⑧ àQUIET;;shut up, andf✓⑥$>✓';;save whateverk✓åTCOPY1QäTEXT9;;text is onp✓⑧PàTSAVE9;;the messageu✓A¡}
  445. 0;;line...z✓♪IåTCOPY1✓ə$>4åPAUSED;;and print aä✓⑥%>5åPAUSED;;specialë✓③ àPRINT;;messageÄ✓❎X;ô✓⑥äPAUZQéCH;;Wait forÿ✓④R>✓!;;A«}a different¥✓FäPAUZ;;key.ó✓④$>✓';;When one isº✓åTCOPY2QàTSAVE9;;found, res-¼✓⑧PäTEXT9;;tore the oldõ✓⑤0;;message line...À✓♪A»}IåTCOPY2†✓③7;;Restore clockij✓♪PåRTCLOKד✓əçNOPAUSE:;;And go back!ט✓❎X;נ✓②X;Pause messageק✓❎X;ך✓åPAUSED AÉ                A∧✓Aã} Aç PausedAπ✓✓♪âEOLΦ✓❎X;ϕ✓④X;---------------≥✓③X; DELAY ROUTINE≈✓④X;---------------ⁿ✓❎X;⇧    X;Call with:╱    "X;  acc. - # of jifAõ}fies to wait♪    ❎X;⓪    X;Return a non-0 number if a⑤    !X;console key aborts the delayə    ⑤X;else return a 0.    ❎X;$    "X;Only the accuAØ}mulator is used!)    ❎X;.        àDELAY3    ⑤5;;Clear RTCLOK...8    ◆Q>✓=    ♪PåRTCLOKB    åDELAY27;;Wair until timeG    RåRTCLOK;;is up, or untilAø}L    FçTIMESUP;;a console keyQ    ⓪5;;is pressedV    ♪ åCHKCON[    ♪FåDELAY2`    ⇦7e    ⇦:j    çTIMESUPQ>✓o    ⇦:t    ❎X;y    ⑧X;-------------------~    ⑦XAœ}; MAIN LIFE ROUTINEâ    ⑧X;-------------------ê    ❎X;ì    ✓äLIFEÆ    ə çINITCON;;Init consoleù    əQâPOP②✓⇧;;If population£    əHåDOLIFE;;is zAŒ}ero, thení    ⑨QâPOP;;print a messageª    əHåDOLIFE;;saying so and½    ④$>4äMSG1;;exit...ã    ♪%>5äMSG1Œ    
  446. !àDOMSG´    ❎X;™    åDOLIFE$>╱¯;;CleAÀ}ar keyboardג    ◆&éCHח    ③2;;Use the firstמ    ①&àCHORD;;chordצ    çNEXTGEN äSCAN;;Scan boardן    QåACTIVE;;If no cells are§    HåUNSTAB;;aAÃ}ctive then theΓ    $>4äMSG5;;population hasτ    ⑧%>5äMSG5;;stabilized!∮    ⑨!àDOMSG;;(right Zink?)±     åUNSTAB$>4äMSG2;;Unsatble, so÷    ⑦AÕ}%>5äMSG2;;print life√    ③ àPRINT;;message
  447. ⑧ åGROWTH;;Regenerate!❎
  448. HçXITLIFE;;If aborted, bye
  449.  
  450. ⑨QâPOP②✓⇧;;If new popu-
  451. ⑦HäCONA¨}T;;lation is 0,④
  452. ⑨QâPOP;;then the colony⑨
  453. ⑥HäCONT;;is dead, so
  454. $>4äMSG3;;print a message#
  455. ⑧%>5äMSG3;;and exit...(
  456.  
  457. !àDOMSG-A´}
  458. ❎X;2
  459. äCONTQäMODE;;If in FaST mode7
  460. ⑧R>✓⇦;;check for pause<
  461. HåNOTFST;;or console keyA
  462.  àPAUSE;;then jump rightF
  463. ə åCHKCON;A†};into the nextK
  464. ⑧FçNEXTGEN;;generationP
  465. ⇦:U
  466. ❎X;Z
  467. åNOTFSTR>✓⇩;;If in Single_
  468. ⑧DçREGULAR;;Step mode,d
  469. àSSTEPQàTRIG0;;check foA¶}r ai
  470. FçNEXTGEN;;trigger press,n
  471. $>4äMSG4;;print a messages
  472. ⑨%>5äMSG4;;to the user,x
  473. ⑨ àPRINT;;check console}
  474. ⑥ åCHKCON;;keyA©}s, andé
  475. ③FàSSTEP;;repeat!ç
  476. ⇦:î
  477. ❎X;æ
  478. çREGULARQ>✓;;If in ReGularû
  479. PåRTCLOK;;mode, wait 1/2¢
  480.  çREGWAITQåRTCLOK;;a sec whileá
  481. A®}⑦R>✓;;checking for aÑ
  482. ⑧EçNEXTGEN;;pause or a¬
  483. ə àPAUSE;;console key...»
  484. ♪ åCHKCONœ
  485. FçREGWAIT¨
  486. ⇦:®
  487. ❎X;ב
  488.  àDOMSG àPRINT;;PrinA™}t message,ז
  489. ⑥Q>✓x;;wait a while,ל
  490. ④ àDELAY;;and thenפ
  491. ⑧çXITLIFE:;;exit life!ת
  492. ❎X;ץ
  493. əX;Life related messagesβ
  494. ❎X;µ
  495. äMSG1 AÆ NAij}o cells have beeAδ
  496. ə Aôn placed on the boaA≡
  497.      AérdA⌡
  498. ✓♪âEOL·
  499. äMSG2 AÆ           Let theA¯
  500. ② Aïre be life!A⇦♪✓♪âEOL    ♪äMSG3 AIJ}AÆ        The cell cA♪⑤ AÄolony has diedA③♪✓♪âEOL⑧♪äMSG4 AÆ   Press trigger fA♪⑨ AÆor next generationA"♪✓♪âEOL'♪äMSG5 AÆ Aא}    Cell populatiA,♪⑧ Aæon has stabilizedA1♪✓♪âEOL6♪❎X;;♪⑧X;-------------------@♪⑦X; PLAYFIELD SCANNERE♪⑧X;------------------Aב}-J♪❎X;O♪ X;Return # of active cells inT♪!X;ACTIVE and information aboutY♪!X;these cells in CADRL, CADRH,^♪X;and CTYPEc♪❎X;h♪Aג}✓äSCANm♪③Q>✓;;Clear cellr♪⑨PåACTIVE;;counter, andw♪⑦Q>4àBOARD③✓⑤ ;;move|♪⑧PäPNT1;;board addressü♪⑦Q>5àBOARD③✓⑤ ;;intoå♪⑤PäAד}PNT1②✓⇧;;PNT1...ï♪❎X;É♪⑦Q>✓;;Init row indexò♪✓PâROWÜ♪əàDOROWQ>✓;;Init columnƒ♪PâCOL;;indexñ♪àDOCOLQ>✓;;Clear counter⌐♪
  501. PAה}àCOUNT«♪⑤$>✓◆;;Scan 8 timesø♪ åSEARCH%çSCANADD9;;Get offsetÕ♪⑦Q@äPNT17;;Is there a©♪③R>✓
  502. ;;cell here?א♪HåNOCELL;;No, ignore Aו}it!ו♪⑨#àCOUNT;;Yes, add 1 toכ♪åNOCELL0;;the counter andע♪IåSEARCH;;keep searching!ש♪❎X;ף♪ə$àCOUNT;;If the currentα♪⑧%>✓⑤;;cAז}har is a spaceσ♪Q@äPNT17;;with 3 friendsΩ♪⑦HàACELL;;then grow a∩♪②(>✓⇨;;cell here⌠♪
  503. HàNOACT∙♪♪FåRECORD³♪àACELL(>✓⇩;;If it iAח}s a cell⇨ ⑦FàNOACT;;with 2 or 3✓ ⑥(>✓⇨;;friends, keep
  504. əFàNOACT;;it alive, else② åRECORD#åACTIVE;;kill it!⑦ ⑦$åACTIVE;;RecorAט}d any ⑨PàCTYPE9;;changes that! əQäPNT1;;are made to the& ④,;;cell colony...+ ⑧O>✓⑤;;(the cell is 210 PàCADRL9;;bytes ahead Aי}of5 ⑨QäPNT1②✓⇧;;the current: ③O>✓;;address in? ②PàCADRH9;;PNT1)D ❎X;I àNOACTQäPNT1;;Add 1 to PNT1N ②,;;so it pointsS ④O>✓⇧;Aכ};to the nextX əPäPNT1;;board square...] QäPNT1②✓⇧b ◆O>✓g PäPNT1②✓⇧l ⑦"âCOL;;Loop until 16q əIàDOCOL;;cols are done!v ⑧QäPNAל}T1;;Add 4 to PNT1{ ②,;;so it pointsÇ ⑤O>✓⇦;;to the firstà ⑧PäPNT1;;square in theè ⑨QäPNT1②✓⇧;;next row...Å ◆O>✓ö PäPNT1②✓⇧ÖAמ} ⑦"âROW;;Loop until 16ß əIàDOROW;;rows are done!ú ⇦:¿ ❎X;¡ X;Scan dataØ ❎X;Ã ⑦çSCANADD♪✓=✓⇧=✓⇩=✓④¶ ♪✓⑥=✓(=✓)=✓*IJ ❎X;ה X;-Aנ}---------------------י əX; GROWTH/DEATH HANDLERס X;----------------------ר ❎X;ם  X;Put growth/death characters∞ X;in properAס} places on boardΣ ❎X;Θ
  505. åGROWTH∈ əQäMODE;;If in FaST mode≤ ⑥R>✓⇦;;then skip the° əHäDOFX;;fancy animation² !çFSTMODE;;and juAע}st do it!⇩
  506. ⑥äDOFX$>✓◆;;Init the◆
  507. çSETCHARQ>✓;;growth/death
  508. ⑧PàCHSET②✓X9;;chars...①
  509. QåCELIMG9⑥
  510. PàCHSET②✓`9
  511. ⇦0 
  512. IçSETCHAAפ}R%
  513. ❎X;*
  514. ⑧%>✓;;Find all of the/
  515. $åACTIVE;;board locations4
  516. àPLOT1QàCADRL9;;where active9
  517. əPäPNT1;;cells or spaces>
  518. QàCADRHAצ}9;;are, and placeC
  519. PäPNT1②✓⇧;;growth or deathH
  520. ⑦QàCTYPE9;;charactersM
  521. HàDYING;;there so we canR
  522. ⑧Q>✓♪;;animate them...W
  523. ♪HåAק}PLOTIT\
  524.  
  525. àDYINGQ>✓ a
  526. ②åPLOTITP@äPNT17f
  527. ⇦0k
  528. HàPLOT1p
  529. ❎X;u
  530.  X;Now animate the growing andz
  531. !X;dying cells along with sound
  532.  XAר};effects if the current modeä
  533.  
  534. X;permits.ë
  535. ❎X;Ä
  536. ⑧$>✓◆;;Handle 8 framesô
  537.     &äTEMPÿ
  538. əäGROW$äTEMP;;Get growth¥
  539. ⑨%åGROIMG9;;image Aש}# andó
  540. ⑦$>✓;;copy the imageº
  541. əçGROANIMQåIMAGES8;;into¼
  542. ⑨PàCHSET②✓X9;char 11...õ
  543. ⇦3À
  544. ⇦2†
  545. ◆(>✓✓ij
  546. HçGROANIMד
  547. ④$äTEMP;;Get deatAת}hט
  548. ⑨%åDIEIMG9;;image # andנ
  549. ⑦$>✓;;copy the imageק
  550. əçDIEANIMQåIMAGES8;;intoך
  551. əPàCHSET②✓`9;;char 12...∧
  552. ⇦3π
  553. ⇦2Φ
  554. ◆(>✓✓ϕ
  555. HçDIEAAן}NIM≥
  556. ❎X;≈
  557. ⑦QäMODE;;If mode doesⁿ
  558. FçDOCHORD;;not allow sound⇧⑥R>✓⇩;;then skip the╱HçTIMEOUT;;sound routine♪çDOCHORD$àCHOAך}RD;;otherwise⓪⑨QàNOTE19;;generate the⑤⑦PàAUDF1;;appropriateəQàNOTE29;;3 note chord...
  559. PàAUDF2$♪QàNOTE39)
  560. PàAUDF3.⑨QäAם}TEMP;;Set volume and3⓪,;;distortion8⑧O>╱í;;(same for all 3=⑧PàAUDC1;;channels)...B
  561. PàAUDC2G
  562. PàAUDC3L❎X;QçTIMEOUTQ>✓;Aף};Now wait aV⑧PåRTCLOK;;short while[àSLEEPQåRTCLOK;;Get clock`①R>✓⇦;;Time up?e②EçGROMORE;;Yes!j àPAUSE;;No, check pauseAץ}o åCHKCON;;and console keyt⑤FàSLEEP;;and loop!y⑨ àQUIET;;A console key~⑥Q>✓⇧;;is pressed soâ⓪5;;set returnê⑦HåREPLOT;;A§}value to 1ì❎X;Æ çGROMORE"äTEMP;;Do all framesù⑧IäGROW;;and when done£çFSTMODEQ>✓;;set returní⓪5;;value to 0ª❎X;½X;UA∧}pdate board and cell dataã❎X;ŒåREPLOT%>✓´③<;;Decimal mode!™əàPLOT2$åACTIVE;;Get theגQàCADRL9;;address of eachח⑧PäPNTA∞}1;;of the activeמəQàCADRH9;;cells and putצəPäPNT1②✓⇧;;it into PNT1ןəQàCTYPE9;;Get cell type§əHàDODIE;;Cell is dying!Γ⑦Q>Aα}✓
  563. ;;Its growing soτ⑨P@äPNT17;;show a fully∮⑧QâPOP;;grown cell and±④,;;add one to the÷⑧O>✓⇧;;cell population√⑤PâPOP;;(in Aβ}decimalQâPOP②✓⇧;;mode of course)❎◆O>✓
  564. ♪PâPOP②✓⇧RäMOST②✓⇧;;If the cell pop④FåCKMOST;;is greater than⑨⑨DçPLOTNXT;;(AΓ}or=to) theåCKMOSTQâPOP;;highest pop so#⑨RäMOST;;far, then copy(DçPLOTNXT;;POP into MOST..-⓪çNEWMOSTQâPOP2    PäMOST7♪QâAπ}POP②✓⇧< PäMOST②✓⇧A !çPLOTNXTFàDODIEQ>✓;;Its dying soK⑨P@äPNT17;;plot a blankP③QâPOP;;space andU⑤;;;subtract 1 fromZ⑦AΣ}S>✓⇧;;the population_✓PâPOPd♪QâPOP②✓⇧i◆S>✓n♪PâPOP②✓⇧sçPLOTNXT"åACTIVE;;Loop tilx⑧HàPLOT2;;ACTIVE is 0!}❎X;éåXITGROAσ} àQUIET;;No sound!ç④QàGENER;;Add 1 toî④,;;generation (weæ⑤O>✓⇧;;are still inû⑨PàGENER;;decimal mode)¢
  565. QàGENER②✓⇧á◆O>✓ÑAµ}
  566. PàGENER②✓⇧¬①-;;No decimal!»ə$àCHORD;;Add 1 to chordœ③2;;number making¨⑦(>✓╱;;sure it is not®əHçCHORDOK;;greater thanבAτ}
  567. $>✓;;5...ז②çCHORDOK&àCHORDלə åSHOGEN;;Show new cellפ④ åSHOPOP;;data...ת  çSHOMOSTץ④7;;and return theβ④:;;correct valuAΦ}e!µ❎X;δX;Regeneration image data≡❎X;⌡⑥åGROIMG♪✓=✓✓=✓⓪=✓⑧·♪✓ =✓(=✓0=✓8¯⑥åDIEIMG♪✓8=✓0=✓(=✓ ⇦⓪♪✓⑧=✓⓪=✓✓=✓    ⓪❎X;⓪⑥åIMAΘ}AGES♪✓=✓=✓8=✓~③⓪♪✓~=✓<=✓⑧=✓⑧⓪❎X;⓪♪✓=✓=✓8=✓|"⓪♪✓|=✓8=✓⑧=✓'⓪❎X;,⓪♪✓=✓=✓8=✓|1⓪♪✓|=✓⑧=✓=✓6⓪❎X;;⓪♪✓=✓=✓⑧=✓<@⓪♪AΩ}✓<=✓⑧=✓=✓E⓪❎X;J⓪♪✓=✓=✓=✓<O⓪♪✓<=✓⑧=✓=✓T⓪❎X;Y⓪♪✓=✓=✓=✓8^⓪♪✓8=✓⑧=✓=✓c⓪❎X;h⓪♪✓=✓=✓=✓8m⓪♪✓8=✓=✓=✓r⓪❎X;w⓪♪Aδ}✓=✓=✓=✓⑧|⓪♪✓⑧=✓=✓=✓ü⓪❎X;å⓪X;Chord dataï⓪❎X;É⓪②àNOTE1♪✓≤=✓µ=✓ךò⓪ ♪✓כ=✓IJ=✓ÀÜ⓪②àNOTE2♪✓y=✓r=✓lƒ⓪ ♪✓f=✓`=✓[ñ⓪②àNOTE3♪✓<=✓A∮}9=✓5⌐⓪ ♪✓2=✓/=✓-«⓪❎X;ø⓪əX;---------------------Õ⓪⑨X; INTRO & TITLE STUFF©⓪əX;---------------------א⓪❎X;ו⓪⑤X;Do quickie introכAϕ}⓪❎X;ע⓪    àTITLEש⓪ə çINITCON;;Init consoleף⓪⑧Q>✓;;Clear colors...α⓪♪PåCOLOR1σ⓪♪PåCOLOR2Ω⓪♪PåCOLBAK∩⓪əQ>4âIDL;;Point to intro⌠⓪A∈}$>5âIDL;;display list...∙⓪♪PåSDLSTL³⓪&åSDLSTL②✓⇧⇨①⑥Q>✓<;;Wait a sec...✓①
  568.  àDELAY
  569. ①♪HåGOTOIT②①⑥$>✓    ;;"Fade on" the⑦①åFADEON#A∩}åCOLOR1;;magazine①③Q>✓⇧;;credits...!①
  570.  àDELAY&①♪HåGOTOIT+①⇦00①♪IåFADEON5①④Q>✓x;;Let it hang:①⑧ àDELAY;;around for a?①⑥HåGOTOA≡}IT;;sec, thenD①⑧$>✓    ;;fade to black..I①③çFADEOFF"åCOLOR1N①◆Q>✓⇧S①
  571.  àDELAYX①♪HåGOTOIT]①⇦0b① IçFADEOFFg①⑦Q>✓<;;Pause a littlel①A±}ə àDELAY;;before showingq①⑥HåGOTOIT;;the titlev①❎X;{①⑨X;Display title screenÇ①❎X;à①③$>✓⇨;;Set-up theè①àCLOADQçTCOLORS9;;propA≥}erÅ①əPåCOLOR09;;title screenö①0;;colors...Ö①
  572. IàCLOADß①Q>4âTDL;;Install the newú①$>5âTDL;;display list...¿①♪PåSDLSTL¡①&åSDA≤}LSTL②✓⇧Ø①⑤Q>✓;;Turn on cellÃ①⑥PåVBICTL;;animation¶①àTWAIT åCHKCON;;and wait forIJ①əFàTWAIT;;a console key!ה①⑥åGOTOIT:;;AHHhhA⌠}hhh.י①❎X;ס①⑦X;Intro display listר①❎X;ם①⓪âIDL♪✓p=✓p=✓p∞①②♪✓p=✓p=✓p=✓p=✓pΣ①②♪✓p=✓p=✓p=✓p=✓pΘ①╱♪✓p∈①╱♪✓B≤①
  573.     àISCRN°①╱♪✓A²①✓    âIDLA⌡}⇩②❎X;◆②⑥X;Intro screen data ②❎X;①②àISCRN Aæ       Analog ComA⑥②ə Aôputing presents    A②♪ Aä    A ②❎X;%②X;Title screen disA÷}play list*②❎X;/②⓪âTDL♪✓p=✓p=✓p4② ♪✓p=✓p=✓p9②╱♪✓F>②
  574.     àTSCRNC②②♪✓╱=✓╱=✓╱=✓╱=✓╱H②╱♪✓pM②╱♪✓╱R②    ♪✓p=✓pW②    ♪✓╱=✓◆\② ♪✓p=✓p=✓pa②╱♪✓╱fA≈}②╱♪✓Ak②✓    âTDLp②❎X;u②⑥X;Title screen dataz②❎X;②$àTSCRN♪✓=✓=✓
  575. =✓=✓=✓=✓=✓
  576. =✓ä②♪✓
  577. =✓
  578. =✓
  579. =✓
  580. =✓=✓
  581. =✓
  582. =✓
  583. ë② ♪✓
  584. =✓=✓Ä②❎X;A°}ô②!♪✓=✓=✓J=✓=✓=✓=✓=✓J=✓=✓Jÿ②!♪✓=✓=✓=✓=✓J=✓=✓=✓=✓=✓¥②❎X;ó②!♪✓=✓=✓
  585. =✓=✓=✓=✓=✓
  586. =✓=✓
  587. º②♪✓
  588. =✓
  589. =✓=✓=✓
  590. =✓
  591. A∙}=✓
  592. =✓=✓¼②╱♪✓õ②❎X;À②!♪✓=✓=✓J=✓=✓=✓=✓=✓J=✓=✓J†②!♪✓=✓=✓=✓=✓J=✓=✓=✓=✓=✓ij②❎X;ד②!♪✓=✓=✓
  593. =✓=✓=✓=✓=✓
  594. =✓=✓
  595. טA·}②!♪✓=✓=✓=✓=✓
  596. =✓=✓=✓=✓=✓נ②❎X;ק②♪✓=✓=✓J=✓J=✓J=✓J=✓=✓J=✓ך②♪✓J=✓=✓=✓=✓=✓J=✓J=✓J=✓J∧②    ♪✓=✓π②❎X;Φ②⑨ ②✓Ç=AÄ  INA√} THE FAST Aϕ②① ②✓Ç=AåLANE  A≥②ə Aô     CREATED BY    A≈②✓ Aü Aⁿ②⑨ ②✓Ç=AÄ    JAMES  HAGA⇧③① ②✓Ç=AåUE    A╱③ə ②✓@=AÅ    PRESS  Aⁿ}STARA♪③⓪ ②✓@=AàT    A⓪③❎X;⑤③⑧X;Title screen colorsə③❎X;③④çTCOLORS♪╱F=╱ə=╱û JAMES  HAGA⇧③① ②✓Ç=AåUE    A╱③ə ②✓@=AÅ    PRESS  @K¯¯ √ ן 6  j  ⇦* k! n$ י&L
  597.  ןÑÇ0⑧⌐àM r# V#ÑÇס
  598.  ⓪$µçÑçìו⇩LbΣ eΣ V ⌐à ⌐ à
  599. ó¯åÇåàΦåäá⑥ó ⌐◆L\Σ⌐⇨ìפ⌐ì✓פì⇧פì⇨פì❎פ`ó©α¥✓©β¥E³}    ©Γ¥
  600. ©π¥♪Φסσó?©ÿ ¥⓪✓ט⓪≈⌐✓ì⌠⇩`¯¯¯¯¯¯סססססססס♪♪♪♪♪♪♪♪✓✓♪♪≡⓪⓪סס♪♪✓✓סס⓪⓪≡åüäéáõüח¯≡╱ÖÕ
  601. זס⌠⌐ij(ã╱ÖÕ
  602. זE¯}ס÷`áóPÑⁿ ≈!É ,!ÑÅL,!á=ó⓪Ñï ,!ÑèL,!áBóPÑï ,!ÑèL,!áGó⓪Ñì ,!ÑîHåêJJJJ❎êÖ זh)❎êÖ ז`áLªÄ©\!Ö ז©a!Ö ז©f!Ö `rrssfggsssnqnqt⌐F}àÄì/⇩ ä! ö! ⌐! ϕ"⌐>ì/⇩`óåèåïåîåìåÉΦåÅ`ó✓©á!¥ij⇩ט⓪≈`⑧⑧⑧⑧זVóè¥ ¥≡ Φα≡ס⌡ó
  603. ©V"¥⇩ ט⓪≈ó#©a"¥⑤ ט⓪≈⌐eàü⌐ àéó⌐B¥R ⌐C¥ª
  604. á⌐Eæüá①⌐F⇧}DæüÑü⑧i④àüÑéi°!≤"àéט⓪םáFîQ זîb זîÑ
  605. זîÀ
  606. ⌐6ì0⇩⌐"ì1⇩⌐àì⇩⌐"ì⇧⇩⌐ijìק ≈  ❎! ③! !!LC!pppה éåp╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱╱åp⇩A6"'%.%2!4)/.ə0oF⇩}pulation3tarting-ost-odeH⌐
  607. ì⑦סì
  608. ק⌐Üì⇩⌐"ì⇧⇩h@H⌐èì⑥סì
  609. ק⌐êì⑦ס⌐œì⇩⌐"ì⇧⇩h@H⌐Fì⑥סì
  610. קÑåì⑦ס⌐מì⇩⌐"ì⇧⇩h@H⌐
  611. ì⑦סì
  612. ק⌐àì⇩⌐"ì⇧F⇨}⇩h@óè¥⇨Φס·` π"óè¥⌠"∩#⇦¥❎¥╱¥◆Φס±⌐ì◆ק⌐⇨ìסÄ ס¬¥✓סט⓪·⌐④ìo⇩áó©B#ÖH⇦ÖH❎ÖH╱ÖH◆זט⓪ϕijÇסτó⇨©R#¥סט⓪≈`ככככככככ33333333@`ÇáµàסF⇦}⑦¡
  613. פ)
  614.  
  615.  
  616.  
  617. àå¡
  618. פ)⇨⑧i╱❎åàå`Ñä
  619.  
  620.  
  621. ¿ó◆¨É#¥P✓זט⓪÷ªäΦα⓪É⇩óåä`⑧⑧<v~<⑧✓<v~<⑧>v~<⑧⑧>w~<⑧⑧<w<⑧⑧<~w>⑧⑧<~v>⑧<~v<✓⑧<~n<F❎}⑧⑧⑧<~n<8⓪⑧<~n|8⑧<~∈|⑧≡#δ$⑧<∈³<⑧⑧|∈~<⑧8|n~<⑧⓪8<n~<⑧Ñô⑧iáì⇧פÑöìפÑô≡⇩הô`ñÆó    ©@$Ö⇨זט⓪÷ó⇨Ñæ¥⇦ס⑧i⇩ט⓪≈`τüüüüτó¡סF╱}ח◆≡⇧Φåë`¡סח◆ס❎⌐àë`HÑë≡⇦h⌐`h`óϕá$ ן ⌐àÆ⌐xàæ $$ J$ó¯Äⁿ⇩ΦåôåòåÿåùåÇ⌐à④Ñÿ≡⇩הÿÑ④ח⇩É╱ ④%Lô$¡ⁿ⇩חס✓ .&⌐¯ìⁿ⇩ W$≡αjã♪⌐àÇ V  π"`jF◆}É╱⌐àÿ≡חÑÿסד⌐
  622. àÿªÄΦα❎ס⇩óåÄ C!L¥∮$τ%$5sejoysticktoplacecellsonboard¯ î%¡x⇩ªùס ח≡0àû⌐✓àùס③ªû§}%ס ©}%àû⌐✓8σùàùªûÑæ⑧}i%F✓}¿ח@É⇦ח¨É❎⌐àù`ÑÆ⑧}s%חGɱחijãϕàÆäæהù⌐àòL$$⇧⇧⇧¯¯¯⇧¯⇧¯⇧¯
  623.     ♪╱❎◆
  624. «⓪ס≡⇦טåò`Ñùס√Ñòס≈ó⇧åòåÅטåÉ ±%°õü≡⑨⌐æüÑè8Θ⇧àèàîÑïΘàïàF    }ìóûס⑦⌐
  625. æüÑè⑧i⇧àèàîÑïiàïàìóן⌐àôåö ≈ Φ%π& ❎! ③!L!!ÑÆ8ΘGJJJHàü⌐àéó⇨╱ü&éט⓪∙h
  626.  
  627. ⑧eüàüÑéiàéÑü⑧idàüÑéi àéÑæ8Θ0JJJ¿`Ñïס⇦Ñè≡2⌐fàü⌐F
  628. } àéó⌐áæüê⓪√Ñü⑧i④àüÑéiàéט⓪τ ä! ≈  ❎! !! ③!`¡ⁿ⇩ח!ס-Ñ④H V ó'©Õ
  629. ¥α⓪ט⓪≈óßá& ן ¡ⁿ⇩ח!≡∙ó'©α⓪¥Õ
  630. ט⓪≈hà④`0aused¯H⌐F♪}à④hד④≡✓H W$≡⌡h`⌐` J$Ñïס♪Ñèס◆óOá'LF'ó¯Äⁿ⇩ΦåΣ&∞'¥ ¯'ÑÖס◆óףá'LF'ówá' ן  ~(סOÑïס♪Ñèס◆óòá'LF'ÑÄח⇦ס     i& W$≡ח`ח⇩É②¡⓪ס≡™óÀá' ן  W$≡F }∩`⌐à④Ñ④חã¿ i& W$≡≥` ן ⌐x À&`.ocellshavebeenplacedontheboard¯,ettherebelife⇧¯4hecellcolonyhF
  631. }asdied¯0resstriggerfornextgeneration¯α'ף(#ellpopulationhasstabilized¯⌐àÖ⌐Qàü⌐ àé⌐à¢⌐à£⌐àÜó◆¶v(õüח
  632. ס⇩µÜט⓪≥F}ªÜá⑤õüס╱α⇨ס ≡✓α⇩≡əα⇨≡⑥µÖªÖ¥αÑü⑧i⑤¥α
  633. Ñéi¥αÑü⑧i⇧àüÑéiàéה£⓪»Ñü⑧i⇦àüÑéiàéה¢⓪Ü`⇧⇩④⑥()*ÑÄח⇦ס⇨L')ó◆⌐¥X✓©É#¥`✓ט⓪≥áªÖ©α
  634. àü©αàF}é©αס⇦⌐♪ס⇩⌐ æüטסµó◆åâªâ¶ó)ó¨Ø)¥X✓זΦα✓ס⌠ªâ¶¬)ó¨Ø)¥`✓זΦαץ(ת)✓ס⌠ÑÄ≡⇦ח⇩ס"ª¥©≥)ìפ©°)ì⇩פ©³)ì⇦פÑâ⑧iíì⇧פì⇨פì❎פ⌐à④Ñ④ח⇦ã⓪ i& W$≡≥ VF⓪} ⌐⇧Hס◆הâ⓪Æ⌐Há°ªÖ©α
  635. àü©αàé©αס(⌐
  636. æüÑè⑧i⇧àèÑïiàïדì≡⇩É"ÑèדîÉÑèàîÑïàìLw)⌐æüÑè8Θ⇧àèÑïΘàïהÖסØ V ÑÅ⑧i⇧àÅÑÉiàÉןª¥Φα╱ס⇩ó奠≈ F①} ❎! !!h`✓⓪⑧ (0880( ⑧⓪✓8~~<⑧8||8⑧8||⑧⑧<<⑧<<⑧ן)צ*88⑧88⑧⑧≤µךכIJÀyrlf`[<952/- J$⌐ìד⇩ìה⇩ìז⇩⌐F②}nó*ì0⇩Ä1⇩⌐< À&סJó    ∈ד⇩⌐⇧ À&ס>ט⓪≤⌐x À&ס4ó    מד⇩⌐⇧ À&ס(ט⓪≤⌐< À&סó⇨©ì+¥ג⇩ט⓪≈⌐¬ó*ì0⇩Ä1⇩⌐àÇ W$≡√`ppppppppppppppBé*An*!nalogF③}#omputingpresentsppppppFד*╱╱╱╱╱p╱pp╱◆ppp╱A¬*
  637.  
  638.  
  639.  
  640. ק*Å+
  641.  
  642.  
  643. JJJJ
  644.  
  645.  
  646.  
  647.  
  648. JJF④}JJ
  649. JJJJJJJJJJÇÇ⌐«Çœ¿ÑÇªíøœÇ¼í«ÑÇÇ#2%!4%$"9ÇÇÇǬí¡ÑøÇÇ¿íºŒÑÇÇÇÇ@@@@press@@stF⑤}art@@@@Fəûα⇩β⇩ 
  650. JJJJJJJJJJÇÇ⌐«Çœ¿ÑÇªíøœÇ¼í«ÑÇÇ#2%!4%$"9ÇÇÇǬí¡ÑøÇÇ¿íºŒÑÇÇÇÇ@@@@press@@stD⓪⇧o⇧p⇧p⇩küןSPñNUלFIמBEוOFהOFFSEקOמLINדFNñCURSOפFñLINנFLAוIJMOVEñטיCHBAצFIX¿FIןMEMTOסAñDLIñDLISקNSEקERפADRHחADRLנIOCאחCSETñJ⑦}Ç⇧⇩⇨⇦❎╱◆✓Ç    
  651. Ç♪
  652. ÇJ⑧}⓪①②@③④⑤Ç⑥Ç⑦⑧⑨əÇJ⑨}⇧%%*** FAST SETS SUBROUTINE WRITER¢⇩  *** BY: DARRYL W. HOWERTON¢⇨⑧⑧*** SEPTEMBER 1986¢⇦╱╱¢⑨!
  653. B⇨ ④⑦ APJə}④!
  654. A⇧⑥2u⑦✓Ç-@❎⑨@⑧④#-@⇩②Ç④((ü⑤④L2②@@②@⓪②@⑧&Ç④P    Ç④r2②②②J}④u$⑥d=6é-A⓪$④⑤6â-é④ä-à④!6å-ç④+ @P④=-@⇩②@╱⑥nN⑤-@⇦②@╱④8(SELECT A CHARACTER SET TO LOAD④D6J}ê-A⇧④N A⓪⑥x1╱(④1(♪⇩כנIJגחמו©®á⑤ë⑤⑤³³³³³³³³³³³³³³³³³³³³³⑤⑥é5 ⑦@⇧②@⇦②②ë④* Ap④5①@⇧⑥ז[J}
  655. @P④-@⇨②@╱④E(!SELECT A NAME FOR YOUR SUBROUTINE④Q6ê-A⇩④[ A⓪⑥ץ]
  656. @P④③è②ç④%-@⇩②@╱④J}A(⑥STARTING LINE NUMBER? ⑤④N⇩@⑥②ï④]◆ï4A⇩ ⑥µ(    è②à④③
  657. A`④6ê-A⇩ ④(6î-A:ï,⑥≡B◆î!B⇨ ②(④⑤(④8(²CANJ} NOT BE LARGER THAN 32000!④B
  658. A`É⑥·◆ìA⇨⑥⇦⇧^╱(④(① USE:   1. LINE 1④2(①        2. LINE 2④H(①        3. LINE 3④^J }(①        4. LINE 4⑥♪⇧_(⑥        5. TOP 2 LINES④<(⑨        6. BOTTOM 2 LINES④_(        7. WHOLE CHARACTER SET⑥⇧<╱(④/(J!}#  áדמקדפáקזדá∈⌡ϕΓσ≥áנהáךנרפáבזנחבדá⑤④<)@⇩②Ä⑥⑧⇧!◆Ä"@Ié-A⇩V④!6â-é⑥⇧7◆Ä"@Pé-A⇩V④#6ä-ä%é④16â-â&J"}A❎②④76å-é⑥ ⇧=◆Ä"@Qé-A⇩V④)6ä-ä%A❎②④16â-â&é④=6å-A❎②⑥"⇧5◆Ä"@Ré-A⇩V④)6ä-ä%A◆h④56å-A◆hJ#}⑥&⇧#◆Ä"@Sé-A❎②④#6â-â&é⑥*⇧/◆Ä"@Té-A❎②④#6ä-ä%é④/6å-A❎②⑥,⇧t
  659. @P④-@⇨②@⓪④F("INSERJ$}T DISK TO WRITE SUBROUTINE TO④X-@✓②@②④t(⑦PRESS⇩≥σ⌠⌡≥∈⑥WHEN READY⑥.⇧$⓪)@⇩②Ä④$◆ÄA⇧UA⇨⑥/⇧c
  660. @P④J%}-@✓②@⓪④<(⑧...WRITING SUBROUTINE...④N-@②②@②④c(⓪PLEASE STAND BY!⑥1⇧6
  661.  
  662. A`④⑨6ê-A⇨④6⑦@⇧②@✓J&}②②ë⑥6⇧jj(@⇧⑤î⑤Q MEMTOP=PEEK(106):CHBAS=MEMTOP-4:POKE 106,CHBAS-1:GRAPHICS 0:DIM MOVE$(43),CSET$(⑤é⑤⇧)⑥@⇧<
  663. J'} A ④<(@⇧⑤î⑤◆ MOVE$=⑤>:@4,⑤Å⑤>:@4,⑥J⇧I③✓Ç-ä⑨âə@d④ A ④I(@⇧⑤î⑤◆ CSET$(⑤Ç&å⑤⇩)=⑤>:@4J(},⑤⑥T⇧V⑦✓É-⑨@c④,6æ-F:Æ%É%Ç&@⇧,④DÆ%É%Ç&@⇧②A⇩U④VÆ%É%Ç&@⇧②æ⑥Y⇧Y⑨◆æ"@4)æ"A⇧U.6ô8J)}<ö,-É%Ç&å④?6ô8@⇧<ö,-æ④M6ö-ö%@⇧④Y6æ-@2⑥^⇧.⓪*@⇧②æ④④    É④*(@⇧⑤>:@4,④.    Ç⑥h⇧⓪⓪◆(öA⇦⑥r⇧=!✓Ç-J*}⑨ö&@⇧ə@⇦④+ A ④=(@⇧⑤î⑤⇧ ⑤⑥w⇧=⑦✓É-⑨@⇨④'◆É%Ç!ö&@⇧É-@⇦④=
  664. A⇨ë⑥|⇧WW(@⇧J+}⑤╱CSET$(⑤ô8<Ç%É,⑤⇧,⑤ô8<Ç%É,⑤◆)=CHR$(⑤ô8@⇧<Ç%É,⑤⇧)⑤⑥ü⇧-◆É @⇨*É%Ç ö&@⇧-(@⇧⑤⇧:⑤⑥à⇧②◆    J,}É④②(@⇧⑥å⇧◆◆    Ç⑥É⇧D
  665. A ④D(@⇧⑤î⑤' X=USR(ADR(MOVE$),57344,CHBAS*256,1024)⑥Ü⇧j
  666. A ④D(@⇧⑤î⑤& X=USR(ADJ-}R(MOVE$),ADR(CSET$),CHBAS*256⑤④P◆ä!@⇧j(@⇧⑤⇧+⑤ä&@⇧⑤⑥ñ⇧H⑧(@⇧⑤⇧,⑤é⑤⇧)④" A ④H(@⇧⑤î⑤⑥ POKE 7J.}56,CHBAS:RETURN⑥«⇧①@⇧⑥ä⇨-
  667. @P④-@⑤②@⓪④-(    finished!⑥Ä⇨<⑤-@⇨②@⑥④<("⇩ספדצצáIJמךáידךáקנáפד¡פרמ⑥J/}á⇩±©±⌡Θ⌠⑥⑥ÿ⇨  ◆F:A◆d,"A⇩UA     ⑥ó⇨f⑧◆F:A◆d,"@G*A◆d②A⇩U④GA⇧╱②F:A⇩✓,%@⇦④Q+④[
  668. J0}A    P④f%╱D:MENU⑥¼⇨5!6Ç-?:C:Å,<B❎sD<Æ<A⓪$,④+ AQ④5
  669. A⇧⑥À⇨╱╱⑤⑥Φ⇨r
  670.  
  671. A`④5(#(DRIVE #1 ASSUMED UNLESS SPECIJ1}FIED)④G-@⇩②@⑤④o(#PRESS:⇩≥σ⌠⌡≥∈⑥FOR DIRECTORY LISTING④r(⑥≥⇨h
  672. 6ë.④⓪è②ç④"A◆d②A⇩U④4-@⇩②@⓪④?(╱ENJ2}TER:④B(④[(③    FILENAME.EXT=> ⑤④h⇩@⑥⑤ï⑥ⁿ⇨⑦
  673. ◆ï4
  674. '④⑦
  675. A①⑥╱⇦èh◆ï7@⇧<@⇩,0⇩D:*ï7@⇧<@⇨,0⇨D1:*ï7J3}@⇧<@⇨,0⇨D2:*ï7@⇧<@⇨,0⇨D8:q6ë.⇩D:④Ç6ë7@⇨,.ï④è
  676. A⓪P⑥⓪⇦        6ë.ï⑥ə⇦}a◆ë7@⇩<@⇩,2⇧1)ë7@⇩J4}<@⇩,3⇧2*ë7@⇩<@⇩,0⇧:*ë7@⇩<@⇩,0⇧8sA⇧ò②A⇧`④}
  677. A`⑥$⇦    è②à④ (④$⑥L⇦g    è②à④③ @P④J5}%-@╱②@    ④D(əDIRECTORY FOR WHICH DRIVE?④V-@③②@②④g( [1, 2, OR 8]⑥Q⇦2⓪)@⇩②Ä④&◆Ä @I)Ä!@VÄJ6}-@I⑥V⇦G⓪6ï.╱D :*.*④*6ï7@⇩<@⇩,.>:Ä,④G⑦@⇧②@╱②②ï⑥`⇦O
  678. @P④-@❎②@❎④O(⑦①②②áגחפדבקJ7}נפךááגפחשד´áú⑤>:Ä%A⇧(,⑤⇦á②②❎⑥j⇦e✓Ç-@╱⑨@⑥Pə?P④,⇩@⇧②ï④;6ï.ï7@⇨,④e◆ï7@⇨<@②,4
  679. FREE SECTJ8}OA②⑥t⇦d ◆Ç"P:Ç,⑧-@❎②Ç④N(⇧|⑤ï7@⇧<@✓,⑤⇧ ⑤ï7@    <@①,⑤⇩⇩⑥⑤④Z6ì-@⇧④d
  680. A①`⑥~⇦N②-@ ②P:J9}Ç,④B(ï7@⇧<@✓,⑤⇧ ⑤ï7@    <@①,⑤⇧|④N6ì-⑥ê⇦◆◆    Ç⑥Æ⇦9'(   ə②②②áϕ∩≥σ¡ספדצצ´á≥σ⌠⌡≥∈á②②②⇨④9A◆d②A⇩UJ:}⑥£⇦4⑧◆F:A◆d,A⇩U*A◆d②A⇩U④4
  681. A① ⑥ª⇦
  682.  
  683. A①Ç⑥ã⇦4◆◆ì⑥-@ ②P:Ç,④((
  684.             |④46ì-⑥´⇦3((J;}   ə②áµΘ∈Θ≤ΦσΣ¡ספדצצ´á≥σ⌠⌡≥∈á②⇨⑤④3①@⇧⑥ג⇦.⑧◆F:A◆d,A⇩U*A◆d②A⇩U④.
  685. ê⑥מ⇦
  686.  
  687. A② ⑥ס◆Q①6î-î%@⓪④◆î!J<}B⇨'g)6ì-@⇧④56ê-A⇩ ④GA⇧ò②A⇩④Q
  688. A`⑥ם◆╱╱$⑥ê③~②6ò-F:A⇧╱,④ 6Æ-ò&@⇦④4A⇧╱②Æ&@⇧④@A⇩✓J=}②Æ④J+④d0@⇩②②@⇦④~0@⇧②②@②⑥Æ③X①6Æ-Æ$A⇩V④6è-A◆R④)╱ç-④56à-@⇧④O⑦@J>}⇩②@⇦②ç②⇩K:④Uè②à④X(⑥£③CC④ï;@⑤,②ë;@⑤,②û;à,②ô9à<A⇧(,②ü;@7,②ù;@②,⑥ª③>♪6ü.⇧ ④6ü7@7,.⇧ ④J?}+6ü7@⇩,.ü④>6ù. Hì
  689. ק¡סì    קh@⑥ã③Q!6Ç-?:C:Å,<B❎sD<Æ<A⓪$,④K6ÿ-F:A❎`,%F:A❎a,$A⇩V%@⇦④Qè②à⑥´③y⑦ÿ%@⇩J@}②@◆④+ÿ%@⇨②@╱④?ÿ%@❎②@③④Sÿ%@╱②@③④gÿ%@ ②A⇧A④yB❎Bå②A⇧Æ⑥ג③V⑦6Ç-P:C:ù,'JA}A⇩V,④*6É-C:ù,&Ç$A⇩V④6A❎②②É④BA❎③②Ç④VA◆V②Ö%@⇩⑥מ③l"(ə}         analog presents`④K($___FAST SETS___JB}    SUBROUTINE WRITER④l(      by` darryl w. howerton⑥ן③Q⑦✓É-⑨@⇨④+-@⇦②@⑨%É④96æ-É%@⇧④E◆É"@⇩QJC}6æ-⑥Γ③C⑦✓Ç-⑨@1④;(⇧⑤>:Ç%+æ&+É"@⇨,,$@2,⑤④?    Ç④C    É⑥∮③m⑤-@⓪②@⓪④,(②clearing arrays...④@✓ÇJD}-⑨@⇧④T✓É-⑨A⇧(④e6ô8Ç<É,-④i    É④m    Ç⑥÷③╱╱$⑥p⑦(
  690. @P④③è②à④
  691. A`❎④(①@⇧⑥u⑦'⑤-@⇨②@⓪JE}④$6Ü-F:A⇧ò,④''⑥z⑦,◆Ü"A⇧p,(②CAN'T FIND FILE=> ⑤ë⑤⇧!⑥ä⑦M◆Ü"A⇧D,(⑧NO DISK IS IN THE DRIVE!④M((OR DISK ISJF} WRITE PROTECTED)⑥Ä⑦7◆Ü"A⇧`(#DRIVE NOT AVAILABLE ON YOUR SYSTEM!⑥ÿ⑦-◆Ü"A⇧g-(⑨FILE REQUESTED IS LOCKED!⑥ó⑦8◆Ü"JG}A⇧i($DIRECTORY IS FULL! use another disk.⑥¼⑦3◆Ü"A⇧b(DISK IS FULL! use another disk.⑥À⑦#◆Ü"@⑧#(ILLEGAJH}L VALUE!!⑥ij⑦\◆Ü"A⇩(!SUBROUTINE LINE NUMBER OVERFLOW!!④\(" use smaller line number at prompt⑥ט⑦G⑤-@╱②@⑥④5(JI}⇩ספדצצáIJמךáידךáקנáבנמקחמרד⑥④GA◆d②A⇩U⑥ק⑦.⑧◆F:A◆d,A⇩U*A◆d②A⇩U④.
  692. ê⑥∧⑦
  693.  
  694. Aa⑥X.
  695.  
  696. Ap0④6¢-PJJ}:Æ'A⇩V,④.6£-Æ&¢$A⇩V⑥bg6¥-A✓H④#¥%@⇩②@◆④1¥%@⇦②£④?¥%@❎②¢④S¥%@✓②④g¥%@    ②@JK}⇦⑥l6ß-?:C:◆hhh¬LVΣ,<@⑥,⑥v╱╱$⑥}T②6ò-F:A⇧╱,④ 6Æ-ò&@⇦④,A⇧╱②Æ④26Ö-Æ④<+④T④Å;@C,②ƒ;A⇩VJL},⑥
  697. }556Å.+hhàצhàפhàרhàקhàשh¬ס⇩השáõפæקזס⇦µצµרטס≥הש⓪∈`⑥④}SS6ƒ7@⇧,.@ ⑧⑧0 >fnⁿכ3~lכ°9p`כ°<6ffכ°?0|`ijⁿ?0|JM}`ijij0`nכⁿ⑥}SS6ƒ7@e,.@33~fככ? ⑧⑧0ⁿ⇨⇨╱╱כx36|xןכ00``ijⁿ37kהה3;~~ץכ3ffכx⑥(}SS6ƒ7A⇧),.@>3f|ijij3JN}ffןl>3f|ןכ0|<≡? ⑧⑧0033ffכⁿ33ff|033k∈ה⑥2}SS6ƒ7A⇧ô,.@33<<ככ33<⑧0`?╱0`ⁿ ⑧⑧0⑧⑧⑧⑧⑧⑧⑧⑧x⑧⑧⑧⑧x✓6cJO}¯⑥<}))6Ç-?:C:Å,<B❎sD<Æ$A⇩V<A⓪$,⑥F}..6Ç-?:C:Å,<C:ƒ,<Æ$A⇩V%A◆h<A⇩V,⑥K};+✓Ç-Æ$A⇩V%A❎②⑨ÆJP}$A⇩V%A❎⑨④7Ç②④;    Ç⑥P}╱╱$⑥Ç⑥⑥⑨D:FASTSETS.BAS⑥:C:Å,<C:ƒ,<Æ$A⇩V%A◆h<A⇩V,⑥K};+✓Ç-Æ$A⇩V%A❎②⑨ÆH=³³ן⇨⇧ X; MOVE$ RAM MOVER SUBROUTINE⇩⑥X; BY D.W. HOWERTON⇨$X; CALL FROM BASIC WITH THE FORM:⇦&X; X=USR(ADR(MOVE$),FROM,TO,NR}#BYTES)❎'X; WHERE: FROM=MEM. LOCATION TO MOVE╱!X;          TO=TARGET LOCATION◆&X;      #BYTES=NO. OF BYTES TO MOVE✓❎X;
  698. ④NS}❎╱;;RELOCATABLE④äFROM╱פ;;ZERO PGE STORAGEəéTO╱ק;;FOR LOC USED IN(⑥âNUM╱ש;;SUBROUTINE2④7;;UNUSED-DISCARD<⑤7;;HI BYNT}TE OF FROMF⑥PäFROM②✓⇧;;STORE ITP⑥7;;LOW BYTE OF FROMZ③PäFROM;;STORE ITd⑤7;;HIGH BYTE OF TOn④PéTO②✓⇧;;STORE ITx④7;;LOW BNU}YTE OF TOé①PéTO;;STORE ITî④7;;HI BYTE #BYTESû②PâNUM;;STORE ITá④7;;LO BYTE #BYTES¬②>;;X IS COUNTER®④HàSTART;;GO AHEADז⑧NV}"âNUM;;PREVENT MOVINGל⑥ə;EXTRA PAGE OF MEMפàSTART%>✓;;USE FOR INDEXINGץäMOVEQ@äFROM7;;BYTE TO MOVEµ②P@éTO7;;MOVE IT≡⑤NW}3;;INCREMENT INDEX·⑦HäNEXT;;IF<>0 A PAGE¯⑥ə;HASN'T BEEN MOVED⇦⇧#äFROM②✓⇧;;INCREMENT THE⇧⑥#éTO②✓⇧;;HIGH BYTES⑧⇧äNEXT0;;-LNX}O BYTE COUNTER"⇧HäMOVE;;MOVE ANOTHR BYTE,⇧ə"âNUM;;-HI BYTE COUNTER6⇧⑨IäMOVE;;IF POS DO MORE@⇧⑤:;;RETURN TO BASIC⇧äNEXT0;;-LLq⓪⇧④⇧⑤⇧5⇧╱2╱חגבןA⑦Æ⇧⇩⇨A❎wd* VARIABLE SEARCHER *¢nBY  STEVEN ANDERSON *¢x$$* TYPE X=USR(15RZ}36) TO ACTIVATE¢é##FOR ALL ATARI 8-BIT COMPUTERS¢îUSES PAGE 6 OF MEMORY.¢ז%⑦✓Ç-A⑤6⑨A⑦æ④"ü④!Ç②ü④%    Ç⑥ל⑤⑤A⇩⇨R[}②@i⑥נ9⑤A⇩⇦②@X④'A⇩❎②@ê④9A⇩╱②A⇧U⑥פ╱╱⑤⑥Φ⇨@@⇧165,130,133,0,165,131,133,1,169,127,133,209,1R\}62,48,169,203¢≥⇨88⇧157,68,3,104,133,82,157,69,3,157,75,3,169,8,157,74¢ⁿ⇨55⇧3,169,3,157,66,3,32,86,228,160,0,177,0,16,16,41¢╱⇦R]}55⇧127,32,93,6,32,91,6,230,209,32,111,6,32,91,6,32¢⓪⇦88⇧93,6,230,0,208,2,230,1,165,0,197,132,208,219,165,1¢ə⇦@@⇧197,133,208,2R^}13,169,12,141,114,3,208,15,169,155,162,11,142¢$⇦88⇧114,3,162,0,142,72,3,142,73,3,162,48,76,86,228,165¢.⇦;;⇧136,133,2,165,137,R_}133,3,32,244,6,133,207,32,244,6,133¢8⇦::⇧208,201,128,176,121,32,244,6,32,244,6,32,244,6,201,2¢B⇦<<⇧176,9,32,244,6,201,155,208R`},249,240,220,32,244,6,201,20¢L⇦??⇧240,230,201,27,240,226,201,22,240,205,201,14,208,10,162,6¢V⇦<<⇧32,244,6,202,208,250,240,227Ra},201,15,208,6,32,244,6,170¢`⇦DD⇧208,238,197,209,208,213,165,207,133,212,165,208,133,213,32,170¢j⇦BB⇧217,32,230,216,160,255,13Rb}2,175,230,175,164,175,192,8,240,187¢t⇦>>⇧177,243,72,41,127,32,93,6,104,16,237,169,160,164,175,200¢~⇦88⇧145,243,208,228,160,0,Rc}177,2,230,2,208,2,230,3,96,0¢ê⇦⇧230,2,208,2,230,3,96,0¢Ç⑤⑤⑨
  699. D:VSEARCH.BAS⑥⇦ז⑧160,0,17200¢~⇦88⇧145,243,208,228,160,0,P^ ⇧0⇧1⇧q⇧R❎f❎HM¿IJSTARקןDAקזמצA⓪⇧⇧A⇧R⇩B⇨ûÇ⇨B⇨ù⑦⇦❎A⇧⑥╱@⑥◆@⑤
  700. əəWINDOW GRAPHICS DEMO¢④⑤⑤Ve}BY HOWARD GREEN¢əəFOR ANALOG COMPUTING¢(⓪⓪④Ç9@⑤,⑥2g
  701. +@⇩④A◆⇦②@    ④1A◆╱②@④④CA◆⓪②A⇧0Vf}④UA◆    ②@④④gA◆R②@⇧⑥<'⑤A◆✓②A⇧0④'A◆②②A⇧0⑥F/⑤-@⇦②@⇧④/(@╱⑤ A.N.A.L.O.G.⑥PVg}2⑤-@⇨②@╱④2(@╱⑤window graphics⑥Z0⑤-@⇦②@◆④0(@╱⑤
  702. demonstration⑥d))(!   PRESS START TO RETUVh}RN TO BASIC⑥n&ə6ü-F:A⇧╱,&@✓④&B❎By②ü⑥xO⑨6é-A⇩V$ü%A❎②④+A❎Y②@F④=B❎2w②@⇨④OA╱#②@❎Vi}⑥é+✓â-é%@ ⑨é%@5④'â②A⇧&④+    â⑥î①①6é-é%A⇩V⑥û+✓â-é%@⑨⑨é%@6④'â②A⇩U④+    â⑥á36à-@H④!Vj}B❎2V②@⇨④3B❎2X②@⇨⑥¬*⑦✓å-@⇧⑨@⑤④&6Ç8å,-④*    å⑥œ.⑧6Ç8@◆,-@⇧④.6Ç8@①,-6@⇧⑥®⑦⑦Vk}MAIN MOVE ROUTINE¢ז②6ç-R:,④6à-à%Ç8ç,⑥פ◆à!A⇧uà-A⇧u⑥ץ◆à @Hà-@H⑥µB❎2H②à④B❎2PVl}②à⑥≡  ◆F:B❎2y,@╱A⇩⑥·4⑤B❎2H②④'B❎2P②④1+④4⑤⑥Ç④④⑨ D:WINDOW.BAS⑥Ç⇦MGVm}y,@╱A⇩⑥·4⑤B❎2H②④'B❎2P②④1+④4⑤⑥Ç④④⑨ D:WINDOW.BAS⑥Ç⇦MGT