Bu sayfadaki yazılar
Sayfanın metni
Sayfa 14
lda $fc ;Yüksek bayt aküye ldx $fb ;Alçak bayt X registerine jsr $bdcd ;Onlu sayõya çevir ve ekrana bas tekrar jsr $ffe4 ;Tuşlarõ kontrol et cmp #$20 ;”SPACE” mi ? bne tekrar ;değilse bir daha dene ldx #$00 ;X registerini sõfõrla clear sta $0552,x ;Aküdeki değeri ekrana bas. Aküde “SPACE” ;olduğu için ekrana boşluk konacaktõr. inx ;X’i 1 arttõr cpx #$0b ;X=11 oldu mu ? bne clear ;olmadõysa tekrar jmp yeni ;olduysa yeni işlem için başa dön. ;------------------------------------------------------------------- bayt jsr hextus ;HEX sistem tuşlarõnõ kontrol et lda temp ;Geçici değeri oku asl ;Bir kez sola kaydõr asl ; “ “ “ “ asl ; “ “ “ “ asl ; “ “ “ “ sta $fb ;Üst nibble olarak sakla jsr hextus ;HEX sistem tuşlarõnõ kontrol et lda temp ;Geçici değeri oku ora $fb ;Üst nibble ile “OR” işlemi yap rts ;Geri dön hextus jsr $ffe4 ;T şlarõ kontrol et u cmp #$30 ;”0” mõ? bcc hextus ;küçükse tekrar oku cmp #$3a ;”:” mõ? bcs harf ;eşit veya büyükse harf kontrolüne git pha ;basõlan tuşun (ASCII) değerini yõğõna at sec ;Elde bitini “1” yap sbc #$30 ;Tuşun ASCII değerinden $30 (48) çõkart jmp devam ;zõpla! harf cmp #$41 ;Basõlan tuş “A” mõ? bcc hextus ;küçükse tuşlarõ tekrar oku cmp #$47 ;”G” mi? bcs hextus ;eşit veya büyükse tuşlarõ tekrar oku pha ;Basõlan tuşun (ASCII) değerini yõğõna at sec ;”Elde” bitini “1” yap sbc #$37 ;Tuşun ASCII değerinden $37 (55) çõkart devam sta temp ;Sonucu geçici olarak sakla asl ;Sonucu 2 ile çarp tax ;X = A lda colmem,x ;COLOR RAM için adresin LOW baytõnõ al sta $fd ;Sakla lda colmem+1,x ;COLOR RAM için adresin HIGH baytõnõ al sta $fe ;Sakla ldy #$00 ;Y registerini sõfõrla lda ($fd),y ;Renk Ram’õndaki adresin değerini oku sta oldcol ;Sakla
Klavyeyle gezinmek için ← ve → tuşları.
Sayfa 15
lda newcol ;Yeni renk değerini al sta ($fd),y ;Renk Ram’õndaki adrese yaz pla ;Yõğõndaki değeri al jsr $ffd2 ;Ekrana bas ldy #$a0 ;Y registerine $A0 yükle (Gecikme sayacõ) delay ldx #$00 ;X registerini sõfõrla jsr $eeb3 ;ROM’daki 1 milisecond delay rutinine git dey ;Sayacõ 1 azalt bne delay ;”0” olmadõysa gecikmeye devam lda oldcol ;Eski renk değerini oku sta ($fd),y ;Renk Ram’õndaki adrese geri yaz rts ;Alt rutinden geri dön ;------------------------------------------------------------------- ;Değişkenler, tablo(lar), yazõlar vs. bu kõsõmda bulunmaktadõr. ;------------------------------------------------------------------- oldcol .byte 0 newcol .byte 7 temp .byte 0 colmem .word $d829,$d82b,$d82d,$d82f .word $d879,$d87b,$d87d,$d87f .word $d8c9,$d8cb,$d8cd,$d8cf .word $d919,$d91b,$d91d,$d91f text .byte $8e,$d5,$c3,$b2,$c3,$b2 .byte $c3,$b2,$c3,$c9,$0d,$c2 .byte $30,$c2,$31,$c2,$32,$c2 .byte $33,$c2,$0d,$ab,$c3,$db .byte $c3,$db,$c3,$db,$c3,$b3 .byte $0d,$c2,$34,$c2,$35,$c2 .byte $36,$c2,$37,$c2,$0d,$ab .byte $c3,$db,$c3,$db,$c3,$db .byte $c3,$b3,$0d,$c2,$38,$c2 .byte $39,$c2,$41,$c2,$42,$c2 .byte $0d,$ab,$c3,$db,$c3,$db .byte $c3,$db,$c3,$b3,$0d,$c2 .byte $43,$c2,$44,$c2,$45,$c2 .byte $46,$c2,$0d,$ab,$c3,$b1 .byte $c3,$b1,$c3,$b1,$c3,$b1 .byte $c3,$c3,$c3,$c3,$c3,$c3 .byte $c3,$c3,$c3,$c3,$c3,$c9 .byte $0d,$c2,$20,$48,$45,$58 .byte $20,$2d,$20,$44,$45,$43 .byte $20,$43,$45,$56,$49,$52 .byte $49,$43,$49,$c2,$0d,$c2 .byte $4b,$41,$53,$49,$4d,$2f .byte $32,$30,$30,$32,$20,$28 .byte $43,$29,$48,$41,$44,$45 .byte $53,$c2,$0d,$ca,$c3,$c3 .byte $c3,$c3,$c3,$c3,$c3,$c3 .byte $c3,$c3,$c3,$c3,$c3,$c3 .byte $c3,$c3,$c3,$c3,$c3,$cb .byte $05,$0d,$00,$00,$00,$00 ;programõn sonu