Sayfanın metni
Sayfa 12
C64 TÜRKİYE #8 12 tax col lda #$00 sta $d800,x
Bu son kısımda ise sprite'ın X koordinat değerini değiştiriyoruz. Sonra bu değerden $10 (16) sayısını çıkarıyoruz. 3 kez sağa kaydırıp rengini değiştireceğimiz bellek pozisyonu için sütun değerini elde ediyoruz. Bu değeri X registerine kopyalıyoruz. En son olarak LDA komutunun parametresindeki değeri o anki renk belleği pozisyonuna yazıyoruz. exit jmp $febc
Son komutla ise kernaldaki işletim sistemi rutinine geri dönüyoruz. move_cnt .byte 0 ;O anki hareket sayacı delay_cnt .byte 0 ;O anki hareket gecikme sayacı text_cnt .byte 0 ;O anki text sayacı color .byte 7 ;Default renk (sarı) max_text .byte 10 ;Ekranda gösterilecek maksimum text sayısı max_del .byte $80 ;Default gecikme değeri max_move .byte $e0 ;Default hareket miktarı text1 .scrl "--------------" .scrl "c64 turkiye #8" .scrl "introlar icin" .scrl "sade bir efekt" .scrl "1x1 text fader" .scrl "code:hades/asc" .scrl " 10-05-2005 " .scrl "11111111111111" .scrl "22222222222222" .scrl "33333333333333" sdata =$09c0 ;Sprite datasının bulunduğu bölge .end
Klavyeyle gezinmek için ← ve → tuşları.
Sayfa 13
1x2 KARAKTER SETİ ;=======================================================================================; ; C64 için yeni karakter seti #7 (1x2 FONT) ; ; C64 TÜRKİYE dergisi sayı 8 için hazırlanmıştır ; ; 01-06-2005 / ismail "hades" şahin ; ; hades@amigaturk.com www.c64turkiye.com www.amigaturk.com c64turkiye@amigaturk.com ; ;=======================================================================================; Yazılım ile karakter setini değiştirmeye devam ediyoruz. *=$0801 .word nextline .word 2005 ; 2005 .byte $9e ; SYS .text "2061" ; 2061 .byte 0 ; komutu nextline .word 0
start etiketli yere kadar olan kısımda LIST komutuyla göreceğiniz 2005 SYS2061 satırını oluşturuyoruz. start sei lda $01 and #$fb sta $01
Önce interrupları durduruyoruz ve karakter romunu erişilebilir hale getiriyoruz. lda #$d0 ldx #$30 ldy #$00 sty $fb sta $fc sty $fd stx $fe
Karakter romunun ve Ram'e kopyalayacağımız yerin adreslerini tanımlıyoruz. ldx #$10 transfer lda ($fb),y sta ($fd),y iny bne transfer inc $fc inc $fe dex bne transfer lda $01 ora #$04 sta $01 cli
Yukarıdaki kısımda karakter romunu ram'e kopyalıyoruz.Daha sonra c64'ün bellek konfigürasyonunu eski haline getirip interruptları serbest bırakıyoruz. new_fonts lda #$30 ldx #$34 ldy #$00 sty $fb sta $fc