Код: Выделить всё
Blava demo - cast so sinus-scrollom.
3 5b00 *s
4 5b00
5 5b00 ;==============================================================;
6 5b00 ;== Verzia 29 == Sin scroll+disp 2*2 == 23.07.1992 Busy soft ==;
7 5b00 ;==============================================================;
8 5b00 ini = #c000 hudba
9 5b00 ton = #c006
10 5b00 org #6000 "sts" 2. cast do BLAVA DEMO
11 6000 znaky ds #1000 Tretina znakov na #7800
12 7000 tabbod ds #0400
13 7400 tabsin ds #0100 (ram 7:#2800)
14 7500 bufy ds #0100
15 7600 b
16 7600 org #9000 Pomocne buffery
17 9000 bufsc0 ds #0400 pre scroller
18 9400 bufsc1 ds #0400
19 9800 bufsc2 ds #0400
20 9c00 bufsc3 ds #0400
21 a000 ff db #ff
22 a001 org bufsc0+#0220
23 9220 zn1 ds #20
24 9240 zn2 ds #20
25 9260 zn3 ds #20
26 9280 org #8200
27 8200 *c0
28 8200 z
29 8200 f3 p di
30 8201 ed733788 ld (sp+1),sp
31 8205 310082 ld sp,p
32 8208 3e14 ld a,#14 !!!
33 820a 01fd7f ld bc,#7ffd
34 820d ed79 out (c),a
35 820f cd7a87 call mkznak Vypocet znakoveho suboru
36 8212 cd1f87 call mkbod Vypocet adries bodov
37 8215 cdfb86 call mksin Vypocet sinusovej tabulky
38 8218 cdc384 call scini Inicializacia scrollera
39 821b cdfd87 call pusti Cakanie na pustenie klavesy
40 821e
41 821e 210080 ld hl,#8000 Im2 vektor
42 8221 7c ld a,h
43 8222 ed47 ld i,a
44 8224 ed5e im2
45 8226 3c inc a
46 8227 77 vi1 ld (hl),a
47 8228 2c inc l
48 8229 20fc jr nz,vi1
49 822b 24 inc h
50 822c 77 ld (hl),a
51 822d 3ec3 ld a,#c3
52 822f 21a783 ld hl,rut
53 8232 328181 ld (#8181),a
54 8235 228281 ld (#8182),hl
55 8238
56 8238 210040 ld hl,#4000
57 823b 110140 ld de,#4001
58 823e 01ff17 ld bc,#17ff
59 8241 75 ld (hl),l
60 8242 edb0 ldir
61 8244 210989 ld hl,text
62 8247 228c83 ld (byte+2),hl
63 824a 3e3e ld a,#3e
64 824c 329583 ld (key),a
65 824f cd00c0 call ini Inicializacia hudby
66 8252 fb ei
67 8253 310082 loop ld sp,p Hlavna slucka
68 8256 015382 ld bc,loop vypisujuca titulky hore
69 8259 c5 push bc
70 825a cd8a83 call byte
71 825d fe1e cp #1e
72 825f ca0688 jp z,exit
73 8262 b7 or a
74 8263 2007 jr nz,ll0
75 8265 210989 ld hl,text
76 8268 228c83 ld (byte+2),hl
77 826b c9 ret
78 826c Rozne prikazove kody v texte:
79 826c fe10 ll0 cp #10 #10 - zmazanie obrazovky
80 826e 2025 jr nz,ll1
81 8270
82 8270 3e05 cls ld a,#05
83 8272 210058 cc1 ld hl,#5800
84 8275 110158 ld de,#5801
85 8278 01ff01 ld bc,#01ff
86 827b 77 ld (hl),a
87 827c 76 hlt
88 827d 76 hlt
89 827e edb0 ldir
90 8280 3d dec a !!!
91 8281 f27282 jp p,cc1
92 8284 210040 ld hl,#4000
93 8287 110140 ld de,#4001
94 828a 010010 ld bc,#1000
95 828d 75 ld (hl),l !!! l
96 828e edb0 ldir
97 8290 ed432283 ld (xxx),bc
98 8294 c9 ret
99 8295
100 8295 300c ll1 jr nc,ll2 Menej ako #10
101 8297 47 ld b,a presun kurzora na danu
102 8298 cda782 call enter poziciu na novom riadku
103 829b 3e20 medz ld a,#20
104 829d cd0f83 call disp
105 82a0 10f9 djnz medz
106 82a2 c9 ret
107 82a3
108 82a3 fe12 ll2 cp #12 #12 = presun kurzora
109 82a5 2009 jr nz,ll3 na zaciatok noveho riadku
110 82a7 212283 enter ld hl,xxx
111 82aa 3600 ld (hl),#00
112 82ac 23 inc hl
113 82ad 34 inc (hl)
114 82ae 34 inc (hl)
115 82af c9 ret
116 82b0
117 82b0 fe80 ll3 cp #80 Viac ako #80 = cakanie
118 82b2 3814 jr c,ll4 1-128 sekund
119 82b4 e67f and #7f
120 82b6 4f ld c,a
121 82b7 0632 wait ld b,#32
122 82b9 cd8283 www call halt
123 82bc 3a9583 ld a,(key)
124 82bf fe3e cp #3e
125 82c1 c0 ret nz
126 82c2 10f5 djnz www
127 82c4 0d dec c
128 82c5 20f0 jr nz,wait
129 82c7 c9 ret
130 82c8
131 82c8 fe11 ll4 cp #11 #11 - PRINT AT
132 82ca 200c jr nz,ll5 [priame urcenie pozicie vypisu]
133 82cc cd8a83 call byte
134 82cf 67 ld h,a
135 82d0 cd8a83 call byte
136 82d3 6f ld l,a
137 82d4 222283 ld (xxx),hl
138 82d7 c9 ret
139 82d8
140 82d8 fe14 ll5 cp #14 #14 - aktualny riadok
141 82da 2007 jr nz,ll6 sa oznaci pre buduce zmazanie
142 82dc 3a2383 ld a,(xxx+1)
143 82df 32e882 ld (zmaz+1),a
144 82e2 c9 ret
145 82e3
146 82e3 fe15 ll6 cp #15 #15 - zmazanie
147 82e5 2028 jr nz,disp oznaceneho riadku
148 82e7 210000 zmaz ld hl,#00 [zhasnutie farby riadku]
149 82ea 45 ld b,l
150 82eb 4c ld c,h
151 82ec ed432283 ld (xxx),bc
152 82f0 29 add hl,hl
153 82f1 29 add hl,hl
154 82f2 29 add hl,hl
155 82f3 29 add hl,hl
156 82f4 29 add hl,hl
157 82f5 7c ld a,h
158 82f6 e603 and #03
159 82f8 f658 or #58
160 82fa 67 ld h,a
161 82fb 0e05 ld c,#05
162 82fd e5 zm1 push hl
163 82fe 0640 ld b,#40
164 8300 71 zm2 ld (hl),c
165 8301 23 inc hl
166 8302 10fc djnz zm2
167 8304 e1 pop hl
168 8305 76 hlt
169 8306 76 hlt
170 8307 0d dec c
171 8308 f2fd82 jp p,zm1
172 830b 0610 ld b,#10
173 830d 188c jr medz
174 830f
175 830f fe20 disp cp #20 Znaky medzi #20 az #7f
176 8311 d8 ret c sa normalne vypisu
177 8312 c5 push bc
178 8313 f5 push af
179 8314 3e18 ld a,#18
180 8316 2802 jr z,#02
181 8318 3e3e ld a,#3e
182 831a 324683 ld (dd3),a
183 831d f1 pop af
184 831e cd4885 call znadd
185 8321 01 db #01
186 8322 0101 xxx dw #0101 - pozicia vypisu na screen
187 8324 e5 push hl
188 8325 78 ld a,b
189 8326 87 add a,a
190 8327 87 add a,a
191 8328 87 add a,a
192 8329 e678 and #78
193 832b 6f ld l,a l=16*yyy
194 832c 2670 ld h,>tabbod
195 832e 56 ld d,(hl)
196 832f 24 inc h
197 8330 7e ld a,(hl)
198 8331 b1 or c
199 8332 5f ld e,a
200 8333 e1 pop hl
201 8334 d5 push de
202 8335 01ff10 ld bc,#10ff
203 8338 eda0 dd2 ldi
204 833a 7e ld a,(hl)
205 833b 12 ld (de),a
206 833c 23 inc hl
207 833d 1d dec e
208 833e eb ex de,hl
209 833f cdb786 call dole
210 8342 eb ex de,hl
211 8343 10f3 djnz dd2
212 8345 e1 pop hl
213 8346 181e dd3 jr ddend
214 8348 7c ld a,h
215 8349 0f rrca
216 834a 0f rrca
217 834b 0f rrca
218 834c e603 and #03
219 834e f658 or #58
220 8350 67 ld h,a
221 8351 012000 ld bc,#20
222 8354 1e47 ld e,#47
223 8356 cd7683 call zncol
224 8359 1e07 ld e,#07
225 835b cd7683 call zncol
226 835e 1d dec e
227 835f cd7683 call zncol
228 8362 1d dec e
229 8363 cd7683 call zncol
230 8366 212283 ddend ld hl,xxx
231 8369 34 inc (hl)
232 836a 34 inc (hl)
233 836b cb6e bit 5,(hl)
234 836d cbae res 5,(hl)
235 836f 23 inc hl
236 8370 2802 jr z,#02
237 8372 34 inc (hl)
238 8373 34 inc (hl)
239 8374 c1 pop bc
240 8375 c9 ret
241 8376
242 8376 e5 zncol push hl
243 8377 73 ld (hl),e
244 8378 2c inc l
245 8379 73 ld (hl),e
246 837a 09 add hl,bc
247 837b 73 ld (hl),e
248 837c 2d dec l
249 837d 73 ld (hl),e
250 837e e1 pop hl
251 837f cd8283 call halt
252 8382 3e7f halt ld a,#7f
253 8384 dbfe in a,(#fe)
254 8386 0f rrca
255 8387 d0 ret nc
256 8388 76 hlt
257 8389 c9 ret
258 838a
259 838a e5 byte push hl Nacitanie bajty z textu
260 838b 215555 ld hl,#5555
261 838e 7e ld a,(hl)
262 838f 23 inc hl
263 8390 228c83 ld (byte+2),hl
264 8393 e1 pop hl
265 8394 c9 ret
266 8395
267 8395 3ebf key ld a,#bf Test na enter
268 8397 dbfe in a,(#fe)
269 8399 0f rrca
270 839a d8 ret c
271 839b 21f488 ld hl,tend
272 839e 228c83 ld (byte+2),hl
273 83a1 3ec9 ld a,#c9
274 83a3 329583 ld (key),a
275 83a6 c9 ret
276 83a7
277 83a7 f5 rut push af Toto chodi v preruseni
278 83a8 c5 push bc
279 83a9 d5 push de
280 83aa e5 push hl
281 83ab dde5 push ix
282 83ad fde5 push iy
283 83af 3e03 ld a,#03
284 83b1 cd4488 call out+2
285 83b4 cd6c86 call move
286 83b7 cd4288 call out
287 83ba cdf684 call scroll
288 83bd cd4288 call out
289 83c0 cde383 call indc
290 83c3 cd4288 call out
291 83c6 cd1884 call inds
292 83c9 cd4288 call out
293 83cc cd06c0 call ton
294 83cf cd4288 call out
295 83d2 cd9583 call key
296 83d5 af xor a
297 83d6 cd4488 call out+2
298 83d9 fde1 pop iy
299 83db dde1 pop ix
300 83dd e1 pop hl
301 83de d1 pop de
302 83df c1 pop bc
303 83e0 f1 pop af
304 83e1 fb ei
305 83e2 c9 ret
306 83e3
307 83e3 3e41 indc ld a,#41 (#59)
308 83e5 67 ld h,a Zafarbenie indikatorov
309 83e6 6f ld l,a
310 83e7 32c25a ld (#5ac2),a
311 83ea 32e25a ld (#5ae2),a
312 83ed 32e65a ld (#5ae6),a
313 83f0 32c65a ld (#5ac6),a
314 83f3 32dd5a ld (#5add),a
315 83f6 32fd5a ld (#5afd),a
316 83f9 32f95a ld (#5af9),a
317 83fc 32d95a ld (#5ad9),a
318 83ff 22c35a ld (#5ac3),hl
319 8402 22e35a ld (#5ae3),hl
320 8405 22e75a ld (#5ae7),hl
321 8408 22c75a ld (#5ac7),hl
322 840b 22db5a ld (#5adb),hl
323 840e 22fb5a ld (#5afb),hl
324 8411 22f75a ld (#5af7),hl
325 8414 22d75a ld (#5ad7),hl
326 8417 c9 ret
327 8418
328 8418 01fdff inds ld bc,#fffd Indikatory hlasitosti
329 841b 3e08 ld a,#08
330 841d ed79 out (c),a
331 841f ed50 in d,(c) d=a
332 8421 3e09 ld a,#09
333 8423 ed79 out (c),a
334 8425 ed58 in e,(c) e=b
335 8427 3e0a ld a,#0a
336 8429 ed79 out (c),a
337 842b ed40 in b,(c) b=c
338 842d 78 o ld a,b
339 842e 83 add a,e
340 842f 1f rra
341 8430 67 ld h,a h=bc
342 8431 7a ld a,d
343 8432 83 add a,e
344 8433 1f rra
345 8434 6f ld l,a l=ab
346 8435 7a ld a,d
347 8436 80 add a,b
348 8437 1f rra
349 8438 4f ld c,a c=ac
350 8439 7a ld a,d
351 843a d9 exx "A"
352 843b 21c250 ld hl,#50c2
353 843e cd5684 call pas+1
354 8441 7d ld a,l "AB"
355 8442 cd5584 call pas
356 8445 7b ld a,e "B"
357 8446 cd5584 call pas
358 8449 d9 exx
359 844a 2c inc l
360 844b d9 exx
361 844c 79 ld a,c "AC"
362 844d cd5584 call pas
363 8450 78 ld a,b "C"
364 8451 cd5584 call pas
365 8454 7c ld a,h "BC"
366 8455 d9 pas exx
367 8456 fe10 cp #10
368 8458 3802 jr c,#02
369 845a 3e10 ld a,#10
370 845c 11b384 ld de,tabind
371 845f c6f0 add a,#f0
372 8461 83 add a,e
373 8462 5f ld e,a
374 8463 d5 push de
375 8464 cd6e84 call pss
376 8467 d1 pop de
377 8468 cd6e84 call pss
378 846b 2c inc l
379 846c d9 exx
380 846d c9 ret
381 846e
382 846e e5 pss push hl
383 846f 36ff ld (hl),#ff
384 8471 24 inc h
385 8472 cd8484 call psu
386 8475 0120f8 ld bc,#f820
387 8478 09 add hl,bc
388 8479 cd8484 call psu
389 847c 36ff ld (hl),#ff
390 847e e1 pop hl
391 847f 3e1f ld a,#1f
392 8481 ad xor l
393 8482 6f ld l,a
394 8483 c9 ret
395 8484
396 8484 1a psu ld a,(de)
397 8485 77 ld (hl),a
398 8486 13 inc de
399 8487 24 inc h
400 8488 1a771324 dw #771a,#2413
401 848c 1a771324 dw #771a,#2413
402 8490 1a771324 dw #771a,#2413
403 8494 1a771324 dw #771a,#2413
404 8498 1a771324 dw #771a,#2413
405 849c 1a771324 dw #771a,#2413
406 84a0 c9 ret
407 84a1
408 84a1 81818181 dw #8181,#8181,#8181
8181
409 84a7 81818181 dw #8181,#8181,#8181
8181
410 84ad 81818181 dw #8181,#8181,#8181
8181
411 84b3 ffffffff tabind dw -1,-1,-1,-1,-1,-1
ffffffff
ffffffff
412 84bf ffffffff dw -1,-1
413 84c3
414 84c3 210090 scini ld hl,bufsc0 POZOR !!!
415 84c6 110190 ld de,bufsc0+1 Tu zacina SCROLLer
416 84c9 01ff0f ld bc,#0fff
417 84cc 75 ld (hl),l najprv inicialiacia
418 84cd edb0 ldir
419 84cf 210074 ld hl,tabsin
420 84d2 010075 ld bc,bufy
421 84d5 7e sci0 ld a,(hl)
422 84d6 0f rrca
423 84d7 0f rrca
424 84d8 0f rrca
425 84d9 e61f and #1f
426 84db c68c add a,#8c
427 84dd 02 ld (bc),a
428 84de 3e04 ld a,#04
429 84e0 85 add a,l
430 84e1 6f ld l,a
431 84e2 0c inc c
432 84e3 20f0 jr nz,sci0
433 84e5 af xor a
434 84e6 32f784 ld (scroll+1),a
435 84e9 210064 ld hl,znaky+#0400
436 84ec 227385 ld (addzn),hl
437 84ef 218b88 ld hl,demo
438 84f2 220c85 ld (txtadd+1),hl
439 84f5 c9 ret
440 84f6
441 84f6 3e55 scroll ld a,#55 Srdce scrollera tvoria
442 84f8 3c inc a styri rutinky, ktore
443 84f9 e603 and #03 sa postupne volaju
444 84fb 32f784 ld (scroll+1),a po sebe kazdu 1/50 sec
445 84fe 285b jr z,sc0
446 8500 3d dec a Kazda pracuje nad svojim
447 8501 ca8785 jp z,sc1 vlastnym 512-bajtovym
448 8504 3d dec a scroll-buferom
449 8505 cae285 jp z,sc2
450 8508 c30986 jp sc3
451 850b
452 850b 218b88 txtadd ld hl,demo Precitanie znaku z textu
453 850e 7e ld a,(hl)
454 850f 23 inc hl
455 8510 220c85 ld (txtadd+1),hl
456 8513 87 add a,a
457 8514 2005 jr nz,scadd
458 8516 218b88 ld hl,demo
459 8519 18f3 jr txtadd+3
460 851b fe40 scadd cp #40
461 851d 3022 jr nc,sca1
462 851f 67 ld h,a
463 8520 6f ld l,a
464 8521 0607 ld b,#07 Zafarbenie spodnej tretiny
465 8523 ed733d85 ld (scsp+1),sp obrazovky [scrollu]
466 8527 31005b ld sp,#5b00
467 852a e5e5e5e5 sccol dw #e5e5,#e5e5
468 852e e5e5e5e5 dw #e5e5,#e5e5
469 8532 e5e5e5e5 dw #e5e5,#e5e5
470 8536 e5e5e5e5 dw #e5e5,#e5e5
471 853a 10ee djnz sccol
472 853c 315555 scsp ld sp,#5555
473 853f 3e40 ld a,#40
474 8541 cd4985 sca1 call znadd+1
475 8544 227385 ld (addzn),hl
476 8547 c9 ret
477 8548
478 8548 87 znadd add a,a
479 8549 fec2 cp 2*'a'
480 854b 3806 jr c,zna1
481 854d fef5 cp #f5 2*'z'+1
482 854f 3002 jr nc,zna1
483 8551 e6bf and #bf
484 8553 6f zna1 ld l,a
485 8554 2606 ld h,#06
486 8556 29 add hl,hl
487 8557 29 add hl,hl
488 8558 29 add hl,hl
489 8559 29 add hl,hl
490 855a c9 ret
491 855b
492 855b dd2a6685 sc0 ld ix,(sc0cur+1)
493 855f cd7185 call mmzz
494 8562 012000 ld bc,#20
495 8565 210090 sc0cur ld hl,bufsc0
496 8568 09 add hl,bc
497 8569 cb8c res 1,h
498 856b 226685 ld (sc0cur+1),hl
499 856e c35e86 jp scend
500 8571
501 8571 e5 mmzz push hl
502 8572 21 db #21
503 8573 5555 addzn dw #5555
504 8575 0610 ld b,#10
505 8577 7e sc98 ld a,(hl)
506 8578 dd7700 ld (ix+#00),a
507 857b 23 inc hl
508 857c 7e ld a,(hl)
509 857d dd7710 ld (ix+#10),a
510 8580 23 inc hl
511 8581 dd23 inc ix
512 8583 10f2 djnz sc98
513 8585 e1 pop hl
514 8586 c9 ret
515 8587
516 8587 cd0b85 sc1 call txtadd
517 858a 210094 sc1cur ld hl,bufsc1
518 858d dd212092 ld ix,zn1
519 8591 0610 ld b,#10
520 8593 dd7e00 sc11 ld a,(ix+#00)
521 8596 0f rrca
522 8597 0f rrca
523 8598 0f rrca
524 8599 0f rrca
525 859a e6f0 and #f0
526 859c 4f ld c,a
527 859d dd7e10 ld a,(ix+#10)
528 85a0 0f rrca
529 85a1 0f rrca
530 85a2 0f rrca
531 85a3 0f rrca
532 85a4 e60f and #0f
533 85a6 b1 or c
534 85a7 77 ld (hl),a
535 85a8 23 inc hl
536 85a9 dd2c inc xl
537 85ab 10e6 djnz sc11
538 85ad cb8c res 1,h
539 85af ed5b7385 ld de,(addzn)
540 85b3 dd212092 ld ix,zn1
541 85b7 0610 ld b,#10
542 85b9 dd7e10 sc12 ld a,(ix+#10)
543 85bc 0f rrca
544 85bd 0f rrca
545 85be 0f rrca
546 85bf 0f rrca
547 85c0 e6f0 and #f0
548 85c2 4f ld c,a
549 85c3 1a ld a,(de)
550 85c4 0f rrca
551 85c5 0f rrca
552 85c6 0f rrca
553 85c7 0f rrca
554 85c8 e60f and #0f
555 85ca b1 or c
556 85cb 77 ld (hl),a
557 85cc dd2c inc xl
558 85ce 23 inc hl
559 85cf 13 inc de
560 85d0 13 inc de
561 85d1 10e6 djnz sc12
562 85d3 cb8c res 1,h
563 85d5 dd212092 ld ix,zn1
564 85d9 cd7185 call mmzz
565 85dc 228b85 ld (sc1cur+1),hl
566 85df c35e86 jp scend
567 85e2
568 85e2 210898 sc2 ld hl,bufsc2+8
569 85e5 110098 sc2cur ld de,bufsc2
570 85e8 011000 ld bc,#10
571 85eb 23 sc21 inc hl
572 85ec eda0 ldi
573 85ee eaeb85 jp pe,sc21
574 85f1 cb8a res 1,d
575 85f3 2a7385 ld hl,(addzn)
576 85f6 22e385 ld (sc2+1),hl
577 85f9 0e10 ld c,#10
578 85fb eda0 sc28 ldi
579 85fd 23 inc hl
580 85fe eafb85 jp pe,sc28
581 8601 eb ex de,hl
582 8602 cb8c res 1,h
583 8604 22e685 ld (sc2cur+1),hl
584 8607 1855 jr scend
585 8609
586 8609 sc3
587 8609 21009c sc3cur ld hl,bufsc3
588 860c dd216092 ld ix,zn3
589 8610 ed5b7385 ld de,(addzn)
590 8614 0610 ld b,#10
591 8616 dd7e10 sc31 ld a,(ix+#10)
592 8619 0f rrca
593 861a 0f rrca
594 861b 0f rrca
595 861c 0f rrca
596 861d e6f0 and #f0
597 861f 4f ld c,a
598 8620 1a ld a,(de)
599 8621 0f rrca
600 8622 0f rrca
601 8623 0f rrca
602 8624 0f rrca
603 8625 e60f and #0f
604 8627 b1 or c
605 8628 77 ld (hl),a
606 8629 dd2c inc xl
607 862b 23 inc hl
608 862c 13 inc de
609 862d 13 inc de
610 862e 10e6 djnz sc31
611 8630 cb8c res 1,h
612 8632 dd216092 ld ix,zn3
613 8636 cd7185 call mmzz
614 8639 dd216092 ld ix,zn3
615 863d 0610 ld b,#10
616 863f dd7e00 sc32 ld a,(ix+#00)
617 8642 0f rrca
618 8643 0f rrca
619 8644 0f rrca
620 8645 0f rrca
621 8646 e6f0 and #f0
622 8648 4f ld c,a
623 8649 dd7e10 ld a,(ix+#10)
624 864c 0f rrca
625 864d 0f rrca
626 864e 0f rrca
627 864f 0f rrca
628 8650 e60f and #0f
629 8652 b1 or c
630 8653 77 ld (hl),a
631 8654 dd2c inc xl
632 8656 23 inc hl
633 8657 10e6 djnz sc32
634 8659 cb8c res 1,h
635 865b 220a86 ld (sc3cur+1),hl
636 865e
637 865e 227186 scend ld (addm+1),hl
638 8661 3e55 posy ld a,#55
639 8663 c6ff addy add a,-#01
640 8665 326286 ld (posy+1),a
641 8668 326e86 ld (addx+2),a
642 866b c9 ret
643 866c
644 866c move
645 866c dd210075 addx ld ix,bufy Presun jedneho konkretneho
646 8670 115555 addm ld de,#5555 scroll-bufera do screenu
647 8673 0e00 ld c,#00
648 8675 cb8a mm2 res 1,d
649 8677 dd6e00 ld l,(ix+#00)
650 867a 2670 ld h,>tabbod
651 867c 46 ld b,(hl)
652 867d 24 inc h
653 867e 7e ld a,(hl)
654 867f 24 inc h
655 8680 69 ld l,c
656 8681 b6 or (hl)
657 8682 6f ld l,a
658 8683 60 ld h,b
659 8684 3600 ld (hl),#00
660 8686 cdb786 call dole
661 8689 3600 ld (hl),#00
662 868b cdb786 call dole
663 868e 13 inc de
664 868f 060e ld b,#0e
665 8691 1a mm1 ld a,(de)
666 8692 77 ld (hl),a
667 8693 13 inc de
668 8694 24 inc h
669 8695 7c ld a,h
670 8696 e607 and #07
671 8698 2811 jr z,dolo
672 869a 10f5 doli djnz mm1
673 869c 13 inc de
674 869d 70 ld (hl),b
675 869e cdb786 call dole
676 86a1 70 ld (hl),b
677 86a2 dd2c inc xl
678 86a4 3e08 ld a,#08
679 86a6 81 add a,c
680 86a7 4f ld c,a
681 86a8 20cb jr nz,mm2
682 86aa c9 ret
683 86ab
684 86ab 3e20 dolo ld a,#20
685 86ad 85 add a,l
686 86ae 6f ld l,a
687 86af 38e9 jr c,doli
688 86b1 3ef8 ld a,#f8
689 86b3 84 add a,h
690 86b4 67 ld h,a
691 86b5 18e3 jr doli
692 86b7
693 86b7 24 dole inc h
694 86b8 7c ld a,h
695 86b9 e607 and #07
696 86bb c0 ret nz
697 86bc 3e20 ld a,#20
698 86be 85 add a,l
699 86bf 6f ld l,a
700 86c0 d8 ret c
701 86c1 3ef8 ld a,#f8
702 86c3 84 add a,h
703 86c4 67 ld h,a
704 86c5 c9 ret
705 86c6
706 86c6 ;Matematicky koprocesor celociselny
707 86c6
708 86c6 2600 krat ld h,#00 hl=e*a
709 86c8 6c ld l,h
710 86c9 54 ld d,h
711 86ca 87300119 db #87,#30,#01,#19
712 86ce 29873001 db #29,#87,#30,#01,#19
19
713 86d3 29873001 db #29,#87,#30,#01,#19
19
714 86d8 29873001 db #29,#87,#30,#01,#19
19
715 86dd 29873001 db #29,#87,#30,#01,#19
19
716 86e2 29873001 db #29,#87,#30,#01,#19
19
717 86e7 29873001 db #29,#87,#30,#01,#19
19
718 86ec 29873001 db #29,#87,#30,#01,#19
19
719 86f1 c9 ret
720 86f2
721 86f2 c640 cos add a,#40 a = cos(a)
722 86f4 e5 sin push hl a = sin(a)
723 86f5 2674 ld h,>tabsin
724 86f7 6f ld l,a
725 86f8 7e ld a,(hl)
726 86f9 e1 pop hl
727 86fa c9 ret
728 86fb
729 86fb dd218074 mksin ld ix,tabsin+#80 Vypocet tabulky
730 86ff fd210075 ld iy,tabsin+#0100 sinusu
731 8703 214a88 ld hl,sintab
732 8706 0641 ld b,#41
733 8708 7e mks1 ld a,(hl)
734 8709 dd7780 ld (ix+#80),a
735 870c fd7780 ld (iy+#80),a
736 870f ed44 neg
737 8711 dd7700 ld (ix+#00),a
738 8714 fd7700 ld (iy+#00),a
739 8717 23 inc hl
740 8718 dd23 inc ix
741 871a fd2b dec iy
742 871c 10ea djnz mks1
743 871e c9 ret
744 871f
745 871f dd210071 mkbod ld ix,tabbod+#0100 Vypocet
746 8723 210040 ld hl,#4000 adries vo videoram
747 8726 dd25 mkb1 dec xh [pre zrychlenie prace]
748 8728 dd7400 ld (ix+#00),h
749 872b dd24 inc xh
750 872d dd7500 ld (ix+#00),l
751 8730 cdb786 call dole
752 8733 7c ld a,h
753 8734 fe58 cp #58
754 8736 3803 jr c,#03
755 8738 21005b ld hl,#5b00
756 873b dd2c inc xl
757 873d 20e7 jr nz,mkb1
758 873f dd24 inc xh
759 8741 dd7d mkb2 ld a,xl
760 8743 0f rrca
761 8744 0f rrca
762 8745 0f rrca
763 8746 e61f and #1f
764 8748 dd7700 ld (ix+#00),a
765 874b dd7d ld a,xl
766 874d 2f cpl
767 874e 87 add a,a
768 874f 87 add a,a
769 8750 87 add a,a
770 8751 f6c7 or #c7
771 8753 325887 ld (set1+1),a
772 8756 af xor a
773 8757 cbcf set1 set 1,a
774 8759 dd24 inc xh
775 875b dd7700 ld (ix+#00),a
776 875e dd25 dec xh
777 8760 dd2c inc xl
778 8762 20dd jr nz,mkb2
779 8764 c9 ret
780 8765
781 8765 3e07 gett ld a,#07 !!!
782 8767 c9 ret
783 8768 d317 out (23),a toto tu je nanic
784 876a 210028 ld hl,#2800 [sluzilo pri odladovani]
785 876d 110078 ld de,#7800
786 8770 010008 ld bc,#0800
787 8773 edb0 ldir
788 8775 3e04 ld a,#04
789 8777 d317 out (23),a
790 8779 c9 ret
791 877a
792 877a 210058 mkznak ld hl,#5800 Tvorba znakoveho suboru
793 877d 110158 ld de,#5801
794 8780 0603 ld b,#03
795 8782 75 ld (hl),l
796 8783 edb0 ldir
797 8785 af xor a
798 8786 d3fe out (#fe),a
799 8788 cd6587 call gett
800 878b 210078 ld hl,#7800
801 878e dd211041 ld ix,#4110
802 8792 cddd87 call mkzn1
803 8795 214078 ld hl,#7840
804 8798 dd210a51 ld ix,#510a
805 879c cddd87 call mkzn1
806 879f 218c78 ld hl,#788c
807 87a2 dd210a30 ld ix,#300a
808 87a6 cddd87 call mkzn1
809 87a9 218078 ld hl,#7880
810 87ac dd21062a ld ix,#2a06
811 87b0 cddd87 call mkzn1
812 87b3 215878 ld hl,#7858
813 87b6 dd210426 ld ix,#2604
814 87ba cddd87 call mkzn1
815 87bd 215478 ld hl,#7854
816 87c0 dd210221 ld ix,#2102
817 87c4 cddd87 call mkzn1
818 87c7 21c078 ld hl,#78c0
819 87ca dd21023a ld ix,#3a02
820 87ce cddd87 call mkzn1
821 87d1 dd263f ld xh,#3f
822 87d4 cdda87 call mkzn
823 87d7 dd2620 ld xh,#20
824 87da dd2e01 mkzn ld xl,#01
825 87dd dd7c mkzn1 ld a,xh
826 87df eb ex de,hl
827 87e0 cd4885 call znadd
828 87e3 eb ex de,hl
829 87e4 e5 push hl
830 87e5 01ff10 ld bc,#10ff
831 87e8 eda0 mkz2 ldi
832 87ea 7e ld a,(hl)
833 87eb 12 ld (de),a
834 87ec 13 inc de
835 87ed 2d dec l
836 87ee cdb786 call dole
837 87f1 10f5 djnz mkz2
838 87f3 e1 pop hl
839 87f4 2c inc l
840 87f5 2c inc l
841 87f6 dd24 inc xh
842 87f8 dd2d dec xl
843 87fa 20e1 jr nz,mkzn1
844 87fc c9 ret
845 87fd
846 87fd af pusti xor a
847 87fe dbfe in a,(#fe)
848 8800 f6e0 or #e0
849 8802 3c inc a
850 8803 20f8 jr nz,pusti
851 8805 c9 ret
852 8806
853 8806 f3 exit di Ukoncenie tejto casti dema
854 8807 ed56 im1
855 8809 af xor a
856 880a ed47 ld i,a
857 880c d3fe out (#fe),a
858 880e
859 880e 01fdff ld bc,#fffd ticho
860 8811 3e07 ld a,#07
861 8813 ed79 out (c),a
862 8815 3ebf ld a,#bf
863 8817 d3fd out (#fd),a
864 8819 3e0d ld a,#0d
865 881b ed79 out (c),a
866 881d 3e80 ld a,#80
867 881f d3fd out (#fd),a
868 8821
869 8821 067f ld b,#7f
870 8823 3e10 ld a,#10
871 8825 ed79 out (c),a
872 8827 214058 ld hl,#5840
873 882a 114158 ld de,#5841
874 882d 010003 ld bc,#0300
875 8830 71 ld (hl),c
876 8831 edb0 ldir
877 8833 cdfd87 call pusti
878 8836 315555 sp ld sp,#5555
879 8839 fd213a5c ld iy,#5c3a
880 883d 215827 ld hl,#2758
881 8840 d9 exx
882 8841 c9 ret
883 8842
884 8842 3e00 out ld a,#00 Toto tu tiez sluzilo
885 8844 ee01 xor #01 len na odladovanie
886 8846 324388 ld (out+1),a
887 8849 ; out (#fe),a
888 8849 c9 ret
889 884a
890 884a 80838689 sintab dw #8380,#8986
891 884e 8c909396 dw #908c,#9693
892 8852 999c9fa2 dw #9c99,#a29f
893 8856 a5a8abae dw #a8a5,#aeab
894 885a b1b3b6b9 dw #b3b1,#b9b6
895 885e bcbfc1c4 dw #bfbc,#c4c1
896 8862 c7c9ccce dw #c9c7,#cecc
897 8866 d1d3d5d8 dw #d3d1,#d8d5
898 886a dadcdee0 dw #dcda,#e0de
899 886e e2e4e6e8 dw #e4e2,#e8e6
900 8872 eaebedef dw #ebea,#efed
901 8876 f0f1f3f4 dw #f1f0,#f4f3
902 887a f5f6f8f9 dw #f6f5,#f9f8
903 887e fafafbfc dw #fafa,#fcfb
904 8882 fdfdfefe dw #fdfd,#fefe
905 8886 feffffff dw #fffe,#ffff
906 888a ff db #ff
907 888b
908 888b 0357656c demo db #03,'Welcome to '
636f6d65
20746f20
909 8897 424c4156 db 'BLAVA DEMO'
41204445
4d4f
910 88a1 20202020 db ' '
20202020
20202020
20202020
20
911 88b2 01507265 db #01,'Press space '
73732073
70616365
20
912 88bf 746f2066 db 'to faster and '
61737465
7220616e
6420
913 88cd 656e7465 db 'enter '
7220
914 88d3 746f206e db 'to next part...'
65787420
70617274
2e2e2e
915 88e2 20202020 db ' '
20202020
20202020
20202020
20
916 88f3 00 db #00
917 88f4
918 88f4 1f1f1f tend db #1f,#1f,#1f
919 88f7 10 db #10
920 88f8 57616974 db 'Wait for a while'
20666f72
20612077
68696c65
921 8908 1e db #1e
922 8909
923 8909 82 text db #82
924 890a 10110207 db #10,#11,2,7
925 890e 52756d61 db 'Rumatisoft'
7469736f
6674
926 8918 120826 db #12,#08,'&'
927 891b 12 db #12
928 891c 04 db #04
929 891d 42757379 db 'Busy soft'
20736f66
74
930 8926 8210 db #82,#10
931 8928 11030e6f db #11,3,14,'or'
72
932 892d 811004 db #81,#10,#04
933 8930 42757379 db 'Busy soft'
20736f66
74
934 8939 120826 db #12,#08,'&'
935 893c 110a07 db #11,10,7
936 893f 52756d61 db 'Rumatisoft'
7469736f
6674
937 8949 82 db #82
938 894a 10 db #10
939 894b 1205 db #12,#05
940 894d 70726573 db 'present'
656e74
941 8954 811212 db #81,#12,#12
942 8957 20287370 db ' (specially for '
65636961
6c6c7920
666f7220
943 8967 20204461 db ' Danny Beach) '
6e6e7920
42656163
68292020
944 8977 82 db #82
945 8978 1003 db #10,#03
946 897a 424c4156 db 'BLAVA DEMO'
41204445
4d4f
947 8984 81120314 db #81,#12,#03,#14
948 8988 28417070 db '(Applause)',#81
6c617573
652981
949 8993 1584 db #15,#84
950 8995 10110003 db #10,#11,0,3
951 8999 436f6465 db 'Coded, packed',#03
642c2070
61636b65
6403
952 89a7 616e6420 db 'and design',#12
64657369
676e12
953 89b2 8111050e db #81,#11,5,14
954 89b6 627902 db 'by',#02
955 89b9 776f726c db 'world number'
64206e75
6d626572
956 89c5 110903 db #11,9,3
957 89c8 6f6e6520 db 'one in speccy'
696e2073
70656363
79
958 89d5 02 db #02
959 89d6 70726f67 db 'programming:'
72616d6d
696e673a
960 89e2 110e0781 db #11,14,7,#81
961 89e6 42555359 db 'BUSY SOFT',#84
20534f46
5484
962 89f0 10110001 db #10,#11,0,1
963 89f4 47726170 db 'Graphics,musics'
68696373
2c6d7573
696373
964 8a03 03 db #03
965 8a04 616e6420 db 'and design'
64657369
676e
966 8a0e 8111050e db #81,#11,5,14
967 8a12 62790214 db 'by',#02,#14
968 8a16 776f726c db 'world number'
64206e75
6d626572
969 8a22 01 db #01
970 8a23 6f6e6520 db 'one in graphic'
696e2067
72617068
6963
971 8a31 01 db #01
972 8a32 616e6420 db 'and music art:'
6d757369
63206172
743a
973 8a40 81110e06 db #81,#11,14,6
974 8a44 52554d41 db 'RUMATISOFT',#82
5449534f
465482
975 8a4f 15110703 db #15,#11,7,3
976 8a53 67616c61 db 'galaxy number',#83
7879206e
756d6265
7283
977 8a61
978 8a61 10 db #10
979 8a62 4e6f7720 db 'Now you can read'
796f7520
63616e20
72656164
980 8a72 12 db #12
981 8a73 6f757220 db 'our addresses...'
61646472
65737365
732e2e2e
982 8a83 82 db #82
983 8a84 10 db #10
984 8a85 42757379 db 'Busy soft:'
20736f66
743a
985 8a8f 110302 db #11,3,2
986 8a92 536c6176 db 'Slavo Labsky'
6f204c61
62736b79
987 8a9e 0147616c db #01,'Gallayova 13'
6c61796f
76612031
33
988 8aab 01427261 db #01,'Bratislava'
7469736c
617661
989 8ab6 01383431 db #01,'841-02',#01
2d303201
990 8abe 437a6563 db 'CzechoSlovakia'
686f536c
6f76616b
6961
991 8acc 110e00 db #11,14,0
992 8acf 54656c3a db 'Tel:+42-7-764705'
2b34322d
372d3736
34373035
993 8adf 86 db #86
994 8ae0 10 db #10
995 8ae1 52756d61 db 'Rumatisoft:'
7469736f
66743a
996 8aec 110302 db #11,3,2
997 8aef 5275646f db 'Rudo Priecinsky'
20507269
6563696e
736b79
998 8afe 204c6163 db ' Lackova 5'
6b6f7661
2035
999 8b08 01427261 db #01,'Bratislava'
7469736c
617661
1000 8b13 01383431 db #01,'841-04',#01
2d303401
1001 8b1b 437a6563 db 'CzechoSlovakia'
686f536c
6f76616b
6961
1002 8b29 110e00 db #11,14,0
1003 8b2c 54656c3a db 'Tel:+42-7-720554'
2b34322d
372d3732
30353534
1004 8b3c 86 db #86
1005 8b3d 10 db #10
1006 8b3e 20204d65 db ' Message from '
73736167
65206672
6f6d2020
1007 8b4e 2020626f db ' both authors: '
74682061
7574686f
72733a20
1008 8b5e 12 db #12
1009 8b5f 4e656368 db 'Nech zije HAVEL!'
207a696a
65204841
56454c21
1010 8b6f 84 db #84
1011 8b70 10110205 db #10,#11,2,5
1012 8b74 43726561 db 'Creation on'
74696f6e
206f6e
1013 8b7f 12 db #12
1014 8b80 03 db #03
1015 8b81 32342e30 db '24.07.1992'
372e3139
3932
1016 8b8b 110803 db #11,8,3
1017 8b8e 696e2042 db 'in BRATISLAVA'
52415449
534c4156
41
1018 8b9b 110a03 db #11,10,3
1019 8b9e 437a6563 db 'CzechSlovakia'
68536c6f
76616b69
61
1020 8bab 84 db #84
1021 8bac 10110205 db #10,#11,2,5
1022 8bb0 50726573 db 'Press enter'
7320656e
746572
1023 8bbb 12110605 db #12,#11,6,5
1024 8bbf 746f2063 db 'to continue'
6f6e7469
6e7565
1025 8bca 821084 db #82,#10,#84
1026 8bcd 00 db #00
1027 8bce k
1028 8bce l = k-z
1029 8bce end
addm 8670 * addx 866c * addy 8663 * addzn 8573 *
b 7600 * bufsc0 9000 * bufsc1 9400 * bufsc2 9800 *
bufsc3 9c00 * bufy 7500 * byte 838a * cc1 8272 *
cls 8270 * cos 86f2 * dd2 8338 * dd3 8346 *
ddend 8366 * demo 888b * disp 830f * dole 86b7 *
doli 869a * dolo 86ab * enter 82a7 * exit 8806 *
gett 8765 * halt 8382 * indc 83e3 * inds 8418 *
ini c000 * k 8bce * key 8395 * krat 86c6 *
l 09ce * ll0 826c * ll1 8295 * ll2 82a3 *
ll3 82b0 * ll4 82c8 * ll5 82d8 * ll6 82e3 *
loop 8253 * medz 829b * mkb1 8726 * mkb2 8741 *
mkbod 871f * mks1 8708 * mksin 86fb * mkz2 87e8 *
mkzn 87da * mkzn1 87dd * mkznak 877a * mm1 8691 *
mm2 8675 * mmzz 8571 * move 866c * o 842d *
out 8842 * p 8200 * pas 8455 * posy 8661 *
pss 846e * psu 8484 * pusti 87fd * rut 83a7 *
sc0 855b * sc0cur 8565 * sc1 8587 * sc11 8593 *
sc12 85b9 * sc1cur 858a * sc2 85e2 * sc21 85eb *
sc28 85fb * sc2cur 85e5 * sc3 8609 * sc31 8616 *
sc32 863f * sc3cur 8609 * sc98 8577 * sca1 8541 *
scadd 851b * sccol 852a * scend 865e * sci0 84d5 *
scini 84c3 * scroll 84f6 * scsp 853c * set1 8757 *
sin 86f4 * sintab 884a * sp 8836 * tabbod 7000 *
tabind 84b3 * tabsin 7400 * tend 88f4 * text 8909 *
ton c006 * txtadd 850b * vi1 8227 * wait 82b7 *
www 82b9 * xxx 8322 * z 8200 * zm1 82fd *
zm2 8300 * zmaz 82e7 * zn1 9220 * zn2 9240 *
zn3 9260 * zna1 8553 * znadd 8548 * znaky 6000 *
zncol 8376 *
Bytes:1 labels:113 errors:0