home *** CD-ROM | disk | FTP | other *** search
/ 64'er 1989 May / 64er_Magazin_89-05_1989_Markt__Technik_de.d64 / letterprint.src (.txt) < prev    next >
Commodore BASIC  |  2022-10-26  |  7KB  |  240 lines

  1. 10 sys36864
  2. 20 .opt oo
  3. 30 *= $c000
  4. 142 vic =$d000
  5. 146 tmp =253
  6. 148 tmp2 =251
  7. 150 hires =$2000
  8. 152 cint =65409
  9. 154 reset =64738
  10. 156 key =198
  11. 158 rept =650
  12. 160 load =$ffd5
  13. 162 status =157
  14. 200 open =$ffc0
  15. 202 close =$ffc3
  16. 204 chkout =$ffc9
  17. 206 clrchn =$ffcc
  18. 208 setnam =$ffbd
  19. 210 setpar =$ffba
  20. 212 dr =4
  21. 214 return =$aad7
  22. 216 bsout =$ffd2
  23. 218 strout =$ab1e
  24. 220 get =65508
  25. 222 input =65487
  26. 224 clrx =59903
  27. 226 name =820
  28. 228 clall =$ffe7
  29. 230 setcr =58732
  30. 232 zeile =214
  31. 234 spalte =211
  32. 236 space =43839
  33. 900 jmp titel
  34. 1102 rebit .byt $80,$40,$20,$10,8,4,2,1
  35. 1210 mult =*
  36. 1212 .wor $2000,$2140,$2280,$23c0
  37. 1214 .wor $2500,$2640,$2780,$28c0
  38. 1216 .wor $2a00,$2b40,$2c80,$2dc0
  39. 1218 .wor $2f00,$3040,$3180,$32c0
  40. 1220 .wor $3400,$3540,$3680,$37c0
  41. 1222 .wor $3900,$3a40,$3b80,$3cc0
  42. 1224 .wor $3e00
  43. 1300 xx .wor 0
  44. 1302 yy brk
  45. 1304 x1 .wor 0
  46. 1306 y1 brk
  47. 1307 x2 brk
  48. 1308 y2 brk
  49. 1310 anz brk
  50. 1312 xcoord .wor 0
  51. 1314 x3 brk
  52. 1316 y3 brk
  53. 1318 kont brk
  54. 1320 qkont .byt 1
  55. 1322 wert brk
  56. 1324 modus brk
  57. 1326 mask brk
  58. 1328 zeig brk
  59. 1330 ormask brk
  60. 1332 prin brk
  61. 1400 zeichen .asc " .+ijlx&fz%omw#*@
  62. 1410 pre[131] =*
  63. 1411 .byt %0000 ; space 0
  64. 1412 .byt %0000
  65. 1413 .byt %0000
  66. 1414 .byt %0000
  67. 1415 .byt %0000 ; .     1
  68. 1416 .byt %0100
  69. 1417 .byt %0000
  70. 1418 .byt %0000
  71. 1419 .byt %0000 ; [170]     2
  72. 1420 .byt %0100
  73. 1421 .byt %0010
  74. 1422 .byt %0000
  75. 1423 .byt %0000 ; i     3
  76. 1424 .byt %0111
  77. 1425 .byt %0000
  78. 1426 .byt %0000
  79. 1427 .byt %0000 ; j     4
  80. 1428 .byt %1000
  81. 1429 .byt %0111
  82. 1430 .byt %0000
  83. 1431 .byt %0000 ; l     5
  84. 1432 .byt %1111
  85. 1433 .byt %1000
  86. 1434 .byt %0000
  87. 1435 .byt %1101 ; x     6
  88. 1436 .byt %0010
  89. 1437 .byt %0101
  90. 1438 .byt %0000
  91. 1439 .byt %0110 ; &     7
  92. 1440 .byt %1001
  93. 1441 .byt %1010
  94. 1442 .byt %1000
  95. 1443 .byt %1111 ; f     8
  96. 1444 .byt %0101
  97. 1445 .byt %0001
  98. 1446 .byt %0001
  99. 1447 .byt %1000 ; z     9
  100. 1448 .byt %1101
  101. 1449 .byt %1011
  102. 1450 .byt %1001
  103. 1451 .byt %1101 ; %    10
  104. 1452 .byt %0101
  105. 1453 .byt %1010
  106. 1454 .byt %1011
  107. 1455 .byt %1110 ; o    11
  108. 1456 .byt %1001
  109. 1457 .byt %1001
  110. 1458 .byt %1111
  111. 1459 .byt %1111 ; m    12
  112. 1460 .byt %1111
  113. 1461 .byt %1001
  114. 1462 .byt %1001
  115. 1463 .byt %1001 ; w    13
  116. 1464 .byt %1011
  117. 1465 .byt %1111
  118. 1466 .byt %1111
  119. 1467 .byt %1110 ; #    14
  120. 1468 .byt %1111
  121. 1469 .byt %1111
  122. 1470 .byt %0111
  123. 1471 .byt %1110 ; [172]    15
  124. 1472 .byt %1111
  125. 1473 .byt %1111
  126. 1474 .byt %1111
  127. 1475 .byt %1111 ; @    16
  128. 1476 .byt %1111
  129. 1477 .byt %1111
  130. 1478 .byt %1111
  131. 1500 hello .[198] "sys letterprint 1.3   von nikolaus heusler":.byt 13
  132. 1502 .[198] " tab(tab(tab(tab(tab(tab(tab(tab(tab(tab(tab(tab(tab(tab(tab(        zwengauerweg 18cmdcmdcmdcmdcmdcmdcmdcmdcmd
  133. 1504 .asc "[157][157][157][157][157][157][157]8000 muenchen 71":.byt 13
  134. 1506 .asc " [164][164][164][164][164][164][164][164][164][164][164][164][164][164][164][164][164][164][164][164][164][164][164][164][164][164][164][164][164][164][164][164][164][164][164][164][164][164]
  135. 1508 .byt 13:.[198] " bitte waehlen sie:
  136. 1510 .byt 13:.asc "  a: grafik laden":brk
  137. 1512 h2 .byt 13:.asc "  b: grafik zeigen
  138. 1514 .byt 13:.[198] "  c: invertieren
  139. 1516 .byt 13:.asc "  d: preview / <shift>: drucken
  140. 1517 .byt 13:.[198] "  e: kontrast:":.byt 13:.[198] "  f: drucker:
  141. 1518 .byt 13:.asc "  g: ende":.byt 13
  142. 1519 .asc " [164][164][164][164][164][164][164][164][164][164][164][164][164][164][164][164][164][164][164][164][164][164][164][164][164][164][164][164][164][164][164][164][164][164][164][164][164][164]
  143. 1520 .byt 13:.[198] " ein nss programm     (w) nh-060189-arr":brk
  144. 1530 namtxt .[198] " filename ? ":brk
  145. 1540 pritab .w[176] pri1,pri2,pri3
  146. 1542 pri1 .[198] "commodore mps":brk
  147. 1544 pri2 .[198] "ascii mit lf ":brk
  148. 1546 pri3 .[198] "ascii ohne lf":brk
  149. 1550 whatab .w[176] wha1,wha2,wha3
  150. 1552 wha1 .byt 8,13,15,0
  151. 1554 wha2 .byt 13,0
  152. 1556 wha3 .byt 13,10,0
  153. 1600 mentab .w[176] lade,look,invert,previ,k[145]trast,delpri,reset
  154. 3000 titel jsr clall:jsr c[181]:lda #[179]hello:ldy #[177]hello:jsr strout:lda #128
  155. 3002 sta rept:lda #0:sta vic[170]32:lda #6:sta vic[170]33:lda #[179]h2:ldy #[177]h2:jsr strout
  156. 3006 fur jsr k[145][164]ut:jsr outpri
  157. 3010 lda #0:sta key
  158. 3012 men jsr [161]:cmp #"":beq home:cmp #"str$":beq druck
  159. 3013 cmp #"a":bcc men:cmp #"h":bcs men:sbc #"@":asl:tay
  160. 3014 lda mentab,y:sta tmp:lda mentab[170]1,y:sta tmp[170]1:jsr [203][203]:jmp titel
  161. 3016 home lda #0:sta k[145]t:lda #1:sta qk[145]t:bne fur
  162. 3018 druck jsr [153]:jmp titel
  163. 3020 [203][203] jmp (tmp)
  164. 4000 show lda #59:sta vic[170]17:lda #29:sta vic[170]24
  165. 4002 ldx #4:stx tmp[170]1:ldy #0:sty tmp:lda #1
  166. 4004 faerb sta (tmp),y:iny:bne faerb:inc tmp[170]1:dex:bne faerb:rts
  167. 4010 invert jsr show:ldx #32:stx tmp[170]1:ldy #0:sty tmp
  168. 4012 inv lda (tmp),y:e[176] #[171]1:sta (tmp),y:iny:bne inv:inc tmp[170]1:dex:bne inv
  169. 4018 jmp [146]key
  170. 4100 hide ldy #0:sty tmp:sty tmp2:ldx #32:stx tmp[170]1:lda #64:sta tmp2[170]1
  171. 4102 hi lda (tmp),y:sta (tmp2),y:iny:bne hi:inc tmp[170]1:inc tmp2[170]1:dex:bne hi:rts
  172. 4200 rueck ldy #0:sty tmp:sty tmp2:ldx #32:stx tmp[170]1:lda #64:sta tmp2[170]1
  173. 4202 ru lda (tmp2),y:sta (tmp),y:iny:bne ru:inc tmp[170]1:inc tmp2[170]1:dex:bne ru:rts
  174. 4299 look jsr show
  175. 4300 [146]key lda #0:sta key
  176. 4302 wk cmp key:beq wk:dec key:rts
  177. 5000 reihe lda #[179]316:sta xx:lda #[177]316:sta xx[170]1:lda #79:sta x3
  178. 5002 r5 lda modus:bne r6:ldx #15
  179. 5004 r[175] jsr space:dex:bne r[175]
  180. 5006 r6 lda #0:sta yy:lda #49:sta y3
  181. 5010 r1 lda #0:sta anz:lda #3:sta y2:lda yy:sta y1
  182. 5012 jsr [161]:cmp #"":bne r3:rts
  183. 5015 r3 lda #3:sta x2:lda xx:sta x1:lda xx[170]1:sta x1[170]1
  184. 5022 r4 ldx y1:lda x1:sta xco[176]d:lda x1[170]1:sta xco[176]d[170]1:jsr po[181]
  185. 5024 tax:[175] (tmp),y:beq aus:inc anz
  186. 5026 aus txa:e[176] (tmp),y:sta (tmp),y:inc x1:bne n1:inc x1[170]1
  187. 5028 n1 dec x2:bpl r4
  188. 5030 inc y1:dec y2:bpl r3
  189. 5032 lda anz:clc:adc k[145]t:bpl [185]it:lda #0
  190. 5034 [185]it cmp #16:bcc kl16:lda #16
  191. 5036 kl16 tax:lda modus:beq hard:jsr soft:jmp beide
  192. 5038 hard lda zeichen,x:jsr bsout
  193. 5040 beide lda yy:clc:adc #4:sta yy:dec y3:bpl qr1:lda modus:bne nrt
  194. 5042 lda prin:asl:tax:lda whatab,x:ldy whatab[170]1,x:jsr strout
  195. 5050 nrt lda xx:sec:sbc #4:sta xx:lda xx[170]1:sbc #0:sta xx[170]1
  196. 5052 dec x3:bmi nr5:jmp r5
  197. 5054 nr5 rts
  198. 5056 qr1 jmp r1
  199. 5100 soft txa:asl:asl:sta zeig:lda #3:sta y2
  200. 5120 ldx yy:lda xx:sta xco[176]d:lda xx[170]1:sta xco[176]d[170]1:jsr po[181]
  201. 5124 cmp #10:bcc low:lda #%1111:.byt $2c
  202. 5128 low lda #%11110000:sta mask
  203. 5129 s5 ldx zeig:inc zeig:lda pre[131],x
  204. 5130 bit mask:bmi nosh[139]t:asl:asl:asl:asl
  205. 5132 nosh[139]t sta [176]mask:lda (tmp),y:[175] mask:[176]a [176]mask:sta (tmp),y
  206. 5134 iny:dec y2:bpl s5:rts
  207. 6030 po[181] txa
  208. 6034 lsr:lsr:lsr:asl:tay:lda mult[170]1,y:sta tmp[170]1:txa:[175] #7:clc:adc mult,y
  209. 6035 sta tmp:lda xco[176]d:[175] #$f8:adc tmp:sta tmp
  210. 6036 lda tmp[170]1:adc xco[176]d[170]1:sta tmp[170]1:lda xco[176]d:[175] #7:tax:lda rebit,x
  211. 6038 ldy #0:rts
  212. 7000 auf lda #0:jsr setnam:tay:lda #dr:tax:jsr setpar:jsr [159]
  213. 7002 ldx #dr:jsr chkout:rts
  214. 7100 lade jsr [142]:ldx #23:jsr [156]x:lda #23:sta zeile:jsr setcr
  215. 7102 lda #[179]namtxt:ldy #[177]namtxt:jsr strout:ldx #0:stx status
  216. 7104 [161]name jsr [133]:cmp #13:beq ret:sta name,x:inx:cpx #16:bcc [161]name
  217. 7106 ret txa:bne warwas:rts
  218. 7108 warwas txa:ldx #[179]name:ldy #[177]name:jsr setnam
  219. 7110 jsr show:ldx #8:ldy #0:jsr setpar:lda #0:tax:ldy #32:jsr [147]
  220. 7112 jmp [146]key
  221. 8000 [153] lda #0:sta modus:jsr hide:jsr show:jsr auf:jsr reihe:jsr rueck
  222. 8002 lda #dr:jmp [160]
  223. 8010 previ lda #1:sta modus:jsr hide:jsr show:jsr reihe
  224. 8012 jsr [146]key:jmp rueck
  225. 9000 k[145]trast lda k[145]t:clc:adc qk[145]t:sta k[145]t:cmp #[171]16:beq w[128]e
  226. 9002 cmp #16:bne now[128]e
  227. 9004 w[128]e lda qk[145]t:e[176] #[171]2:sta qk[145]t
  228. 9006 now[128]e pla:pla:jmp fur
  229. 9010 k[145][164]ut lda #15:sta spalte:lda #16:sta zeile:jsr setcr
  230. 9012 lda k[145]t:bne da:lda #"0":jsr bsout:bne [154]
  231. 9014 da sta wert:bpl plus:lda #[171]1:e[176] wert:clc:adc #1:sta wert:lda #"-":.byt $2c
  232. 9016 plus lda #"+":jsr bsout:lda wert:cmp #10:bcc kl10:lda #"1":jsr bsout
  233. 9018 lda wert:sec:sbc #10:sta wert
  234. 9020 kl10 lda wert:[176]a #"0":jsr bsout
  235. 9090 [154] jsr space:jmp space
  236. 9500 delpri ldx prin:inx:cpx #3:bcc kl3:ldx #0
  237. 9502 kl3 stx prin:jmp now[128]e
  238. 9510 outpri lda #14:sta spalte:lda #18:sta zeile:jsr setcr
  239. 9512 lda prin:asl:tax:lda pritab,x:ldy pritab[170]1,x:jmp strout
  240.