Bu sayfadaki yazılar
Sayfanın metni
Sayfa 15
Diyelim ki Commodore-64 Türkçeyazar sisteminiz yok (niye yok, o da ayrı bir soru) ve Commodore'unuza Turkce değil Türkçe (veya Arapça veya Çince) yazdırmak istiyorsunuz. Yahut Commodore'un standart yazı karakterlerinden sıkıldınız, farklı bir yazı türünü denemeyi düşünüyorsunuz. İşte size göre bir program. Program, kısmen BASIC, kısmen de makina dilinde. Tamamını BASIC yapmak da mümkün; ama o zaman yaklaşık 500 kat daha yavaş işlediğinden, kısa zamanda sabır taşınızı çatlatması ihtimal dahilinde.
COMMODORE 64'ÜN GÖRÜNTÜ SİSTEMİ
Commodore 64'te tüm ekran kontrol işlemlerinin VIC (Video Interface Chip) isimli bir alet tarafından yapıldığını belki biliyorsunuz. VIC'ın asıl görevini, ekranı oluşturan 200*320 ışıklı noktayı yakıp söndürmek diye tanımlayabiliriz. Ekranda gördüğümüz her harf de, VIC'ın gözünde, 8*8 noktadan oluşan soyut bir şekil.
Commodore'un tuşlarından birine bastığımızda, bilgisayarın kendisinin yaptığı iş, basılan tuşun POKE kodu olan rakamı, 1024-2023 adresleri arasındaki "ekran belleğinde" uygun noktaya yerleştirmekten ibaret. Bu noktada devreye VIC giriyor ve ekran belleğindeki kod numarasına karşılık düşen bazısı yanık, bazısı sönük 64 noktalık bir diziyi ekrana gönderiyor. 64 noktalık bu dizileri de, ROM'dan her biri 8'er bitlik 8'er byte, yani 0-256 arası birer rakam olarak okuyor. 64 noktalı dizilerin rakam olarak nasıl tanımlandığını iyice anlamanız şart. Örnek olarak A harfini verelim: Büyük A harfinin bellekteki tanımı, o halde, 24, 60, 102, 126, 102, 102, 102, 0. Şimdi, ROM'daki bu standart tanımın yerine kendi tanımımızı koymak için yapacağımız, önce RAM belleğin bir bölgesinde kendi rakam dizilerimizi oluşturmak, sonra da VIC'i kandırıp, ekrana göndereceği noktaları ROM'dan değil, bizim seçtiğimiz RAM bölgesinden okumasını sağlamak.
Bu işin bir sürü inceliği var. Bunları burada ayrıntılarıyla anlatmaktansa, ilgilenenlerin Reference Guide'a başvur-
İkili Onaltılı Onlu 00011000 18 24 00111100 3C 60 01100110 66 102 01111110 7E 126 01100110 66 102 01100110 66 102 01100110 66 102 00000000 00 0
Klavyeyle gezinmek için ← ve → tuşları.
Sayfa 14
340 | eger tuslarina" 350 hypersacreen etkisini" 360 o zaman da," 380 330 print"Elllile yeniden baslatilabilir." 4070 gözübdü diğ gozub 38 ready.