home *** CD-ROM | disk | FTP | other *** search
/ Compute! Gazette 1994 July / 1994-07b.d64 / mutate! (.txt) < prev    next >
Commodore BASIC  |  2022-09-20  |  15KB  |  417 lines

  1. 1 poke53265,11:print"[147]":goto158
  2. 2 fori=1to(950*ts):next:return
  3. 3 pokepo,11:print"[147]            [153]#$%()*,/;*,[219][220][221]"
  4. 4 print"[155][192][192][192][192][192][192][192][192][192][192][192] [255][223][187][188][189][190]?[219][220][146][190]?[221][255][223][146] [155][192][192][192][192][192][192][192][192][192][192][192][192]":return
  5. 5 ifsc=-1thenreturn
  6. 6 ifsc=8thengosub47:return
  7. 7 sc=sc+1:fort=0to11:sc$(sc,t)=" ":next:tr=0:goto11
  8. 8 ifsc=-1thenreturn
  9. 9 ifsc=0thengosub47:return
  10. 10 sc=sc-1
  11. 11 pokeq,20:print:printr$"[158]"sc+1"screens in file"
  12. 12 iftrthenprintr$"[150]translated":return
  13. 13 printr$"[150]not translated":return
  14. 14 pokeq,x+y:print:print"[155][192][146] [158]"m$(y)" [155][191][146][145]":gosub43
  15. 15 print"^[159] "m$(y)" [155]_":ifg$=""theny=y+1:ify>wtheny=v
  16. 16 ifg$="[145]"theny=y-1:ify<vtheny=w
  17. 17 ifg$="[166]"thengosub5
  18. 18 ifg$="[220]"thengosub8
  19. 19 ifg$=chr$(13)theny=y-v+1:return
  20. 20 ifg$="[136]"org$=""thenreturn
  21. 21 goto14
  22. 22 q$="":poke198,0
  23. 23 getg$:print"@[157][146]";:ifg$=""then23
  24. 24 ifg$=chr$(13)thenprint" ":return
  25. 25 if(g$=chr$(20)andlen(q$))thenq$=left$(q$,len(q$)-1):goto31
  26. 26 iflen(q$)=l%then23
  27. 27 if(g$>"/"andg$<";")or(g$>"@"andg$<"[")org$=chr$(32)org$=chr$(160)then30
  28. 28 ifg$="!"org$="&"org$="'"org$="."org$="?"org$="[192]"then30
  29. 29 goto23
  30. 30 q$=q$+g$
  31. 31 printg$;:goto23
  32. 32 b=18:e=24
  33. 33 fori=btoe:gosub34:next:return
  34. 34 poke781,i:sys59903:return
  35. 35 poke781,23-i:sys59903:return
  36. 36 forl=1to50:next:return
  37. 37 open15,dv,15,"i0:":print#15,"r0:"+na$+"="+na$:input#15,er,er$:close15:return
  38. 38 open15,dv,15:input#15,er,er$:close15:return
  39. 39 printr$"   are you sure?":gosub47:x=25
  40. 40 printtab(x)"<y-n>":goto43
  41. 41 gosub64:print
  42. 42 printr$"   [158]<press a key>"
  43. 43 poke198,0
  44. 44 getg$:ifg$=""then44
  45. 45 return
  46. 46 pokez+1,70:pokez+6,249:pokez+24,15:pokez+4,17:pokez+4,16:return
  47. 47 pokez+24,15:pokez+5,45:pokez+6,165:pokez+4,33:pokez+1,6:pokez,5
  48. 48 fori=1to200:next:pokez+4,32:pokez+1,0:pokez,0:return
  49. 49 gosub44:ifg$="[133]"thenbo=bo+1:goto57
  50. 50 ifg$="[137]"thenbo=bo-1:goto57
  51. 51 ifg$="[134]"thenba=ba+1:goto59
  52. 52 ifg$="[138]"thenba=ba-1:goto59
  53. 53 ifg$="[135]"thenco=co+1:goto61
  54. 54 ifg$="[139]"thenco=co-1:goto61
  55. 55 ifg$="_"thenco=1:bo=0:ba=0:return
  56. 56 return
  57. 57 ifbo<0orbo>15thenbo=-15*(bo<0)
  58. 58 pokebr,bo:return
  59. 59 ifba<0orba>15thenba=-15*(ba<0)
  60. 60 pokebk,ba:return
  61. 61 ifco<0orco>15thenco=-15*(co<0)
  62. 62 return
  63. 63 pokeq,y:print:return
  64. 64 b=13:e=4
  65. 65 pokeq,b:print:fori=1toe:printr$em$:next
  66. 66 pokeq,b:print:return
  67. 67 ifsc=-1then69
  68. 68 gosub64:printr$" [150][191]+ [158]adds screens":printr$" [150][191]- [158]deletes screens":return
  69. 69 gosub64:printr$" [158]<crsr> keys select":printr$" <return> executes"
  70. 70 printr$"   <f7> or <stop>":printr$"   exits program":return
  71. 71 gosub64:printr$"    [158]select drive:":printr$"     <8> or <9>":gosub46
  72. 72 gosub43:ifg$="9"thendv=9:return
  73. 73 dv=8:return
  74. 74 y=21:gosub63:print"[150]status: "er": "er$:ifer$<>"ok"thengosub47:goto41
  75. 75 gosub46:goto41
  76. 76 y=21:gosub63:printbl$:b=23:e=24:goto33
  77. 77 b=19:e=24:gosub33:y=19:gosub63:gosub64:printr$"   [158]enter filename"
  78. 78 printtab(24)"to "f$:y=19:gosub63:print"[158]filename: [159]"fi$;:l%=14:q$=fi$:goto23
  79. 79 gosub64:printtab(25)f$:printtab(28-len(q$)/2)"[159]"q$:return
  80. 80 gosub64:printr$"  [158]there is nothing":printtab(24)f$:gosub47:goto42
  81. 81 gosub64:printr$"[158]this clears memory!":goto39
  82. 82 y=2:gosub63:printl1$"[192][192][192][192][[192][192][192][192] [153]miniscreen [155][192][192][192][192]]"
  83. 83 fori=1to12:printtab(17)"^"em$"_":next:printtab(17)"@[192]"l2$"[192]\":y=3:gosub63
  84. 84 print"[158]"tab(9)"line:":gosub63:fori=1to12:printtab(14)i:next:y=21:gosub63
  85. 85 printbl$:return
  86. 86 y=3:gosub63:forl=1to12:printr$em$:next:return
  87. 87 y=7:gosub63:print"[155][[192][192][192][192][192][192][192][192][192][192][192][192]]":print"^[150]current text[155]_"
  88. 88 print"^[150]for screen  [155]_":print"[155]@[192][192][192][192][192][192][192][192][192][192][192][192]\[159]":y=9:gosub63
  89. 89 printtab(11)s+1:return
  90. 90 ifq$=" "or(len(q$)=18andleft$(q$,1)<>" ")thenreturn
  91. 91 gosub76:y=21:gosub63:printtab(10)" [153]justify commands "
  92. 92 print" [153]<l>eft        [153]<r>ight        [153]<c>enter"
  93. 93 print" [153]<lf> crsr    [153]<rt> crsr   [153]<return> done"
  94. 94 pokeq,x+1:print:printr$em$:printr$"[145][150]"q$
  95. 95 gosub43:ifg$="l"then102
  96. 96 ifg$="r"then104
  97. 97 ifg$="c"then106
  98. 98 ifg$=""then107
  99. 99 ifg$="[157]"then109
  100. 100 ifg$=chr$(13)thenreturn
  101. 101 goto95
  102. 102 fori=1tolen(q$):z$=left$(q$,1):ifz$=" "thenz$="":q$=right$(q$,len(q$)-1)
  103. 103 next:return
  104. 104 fori=1tolen(q$):z$=right$(q$,1):ifz$=" "thenz$="":q$=left$(q$,len(q$)-1)
  105. 105 next:q$=right$(em$+q$,18):return
  106. 106 gosub102:q$=left$(em$,(len(em$)-len(q$)-2)/2)+q$:return
  107. 107 iflen(q$)<18thenq$=" "+q$
  108. 108 goto94
  109. 109 ifleft$(q$,1)=" "thenq$=right$(q$,len(q$)-1)
  110. 110 goto94
  111. 111 pokeq,x:print:printtab(24)"[158]"m$(y+v-1):return
  112. 112 y=3:gosub63:forl=0to11:printr$"[159]"sc$(s,l):next:return
  113. 113 gosub63:printtab(19)"[158]collecting garbage":printtab(20)by$:fr=fre(0):return
  114. 114 oncgoto115,116,117,118,119,120,121
  115. 115 print"";:fori=1to38:printw$;:goto123
  116. 116 print""tab(38);:fori=1to38:printw$"[157][157]";:goto123
  117. 117 fori=0to23:gosub34:gosub36:goto123
  118. 118 fori=23to0step-1:gosub34:gosub36:goto123
  119. 119 fori=1to19:print""tab(i)w$;:print""tab(38-i)w$"[157][157]";:goto123
  120. 120 fori=0to12:gosub34:gosub35:gosub36:goto123
  121. 121 fori=0to12:gosub34:gosub35
  122. 122 print""tab(1+i)w$;:print""tab(38-i)w$"[157][157]";
  123. 123 next:fori=1to250:next:return
  124. 124 forb=0to8:fore=0to11:ve$(b,e)="":next:next:tr=0:return
  125. 125 print"  "ve$(s,t)"":return
  126. 126 printr$" [158]reading font index":printr$"     from disk!":printr$"  "by$
  127. 127 na$="mutate!index":dv=8:gosub37:ifer=63then129
  128. 128 return
  129. 129 fori=0to29:fo$(i)="":mu$(i)="":next:lm=0:open2,dv,2,na$+",s,r":input#2,lm
  130. 130 lm=lm-1:fori=0tolm:input#2,fo$(i):next:close2:x=lm:gosub38
  131. 131 fori=0tox:mu$(i)=mid$(fo$(i)+em$,3,14):next:lm=x+7
  132. 132 fori=x+1tolm:mu$(i)=left$(em$,14):next:return
  133. 133 printr$"  [150]no font index on":printr$"     this disk!":gosub47:goto42
  134. 134 gosub64:gosub126:ifer$<>"ok"thengosub64:goto133
  135. 135 gosub46:return
  136. 136 b=4:e=8:gosub65:y=6:gosub63:gosub126:ifer$<>"ok"thengosub65:goto133
  137. 137 gosub65:y=7:gosub113:goto46
  138. 138 pokepo,11:pokea,128:print"[147]"len(fo$)tab(6)fo$:poke679,bo:poke680,ba
  139. 139 poke681,co:return
  140. 140 open3,3,3:print"";:input#3,fo$:x=val(left$(fo$,4)):fo$=mid$(fo$,6,x)
  141. 141 bo=peek(679):ba=peek(680):co=peek(681):pokea,192:return
  142. 142 gosub3:print"[155][192][192][192][192][192][192][192][192][192][192][192][192] video titler [155][192][192][192][192][192][192][192][192][192][192][192][192][192]"
  143. 143 print"[155][[192][192][192][192] [153]main [155][192][192][192][192]] [[192][192] [150]copyright 1992 [155][192][192]]"
  144. 144 print"^ [159]"m$(0)" [155]_ ^[153]compute publications[155]_"
  145. 145 print"^ [159]"m$(1)" [155]_ ^[153] international ltd. [155]_"
  146. 146 print"^ [159]"m$(2)" [155]_ ^[153]all rights reserved.[155]_"
  147. 147 print"^ [159]"m$(3)" [155]_ ^[153]author: gary noakes [155]_":print"^ [159]"m$(4)" [155]_ @"l3$"\"
  148. 148 print"^ [159]"m$(5)" [155]_ [[192][192][192][192][192][192][192] [153]font [155][192][192][192][192][192][192][192]]":print"@"l1$"[192]\ ^"em$"_"
  149. 149 print"[[192][192][192] [153]design [155][192][192][192]] ^"em$"_":print"^ [159]"m$(6)" [155]_ @"l3$"\"
  150. 150 print"^ [159]"m$(7)" [155]_ [[192][192][192][192][192][192] [150]prompt [155][192][192][192][192][192][192]]"
  151. 151 print"^ [159]"m$(8)" [155]_ ^"em$"_":print"^ [159]"m$(9)" [155]_ ^"em$"_"
  152. 152 print"^ [159]"m$(10)" [155]_ ^"em$"_":print"^ [159]"m$(11)" [155]_ ^"em$"_"
  153. 153 print"@"l1$"[192]\ @"l3$"\":print"[[192][192][192][192][192][192][192][192][192][192] [153]current status [155][192][192][192][192][192][192][192][192][192][192][192]]"
  154. 154 print"^        [159]filename:[155]"em$"_":print"^    [158]screen count:[155]"em$"_"
  155. 155 print"^   [150]text to video:[155]"em$"_":print"^        fontname:[155]"em$"_"
  156. 156 print"@"l2$l2$"[192]\":y=9:gosub63:printr$sa$:y=19:gosub63:printr$"[159]"fi$
  157. 157 gosub11:printr$""fo$:pokepo,27:return
  158. 158 bl$="[155][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][192][1