kendi içinde ikiye ayrılır. İlk yarısı karakterlerin normal görünüşlerini, ikinci yarısı da negatif görünüşlerini taşır. Bu size bir şey hatırlattı mı? Yukarıda bahsettiğimiz ekran kodla- rını mesela? Öyleyse, bu setleri biraz daha derinlemesine inceleyelim... Her bir karakter, 8*8 noktadan oluşur. Commodore 64'ün 320*2000 noktalık bir ekran kapasitesi olduğu- na göre, yazı ekranının neden 40'ar karakterlik 25 satırdan oluştuğu or- taya çıkıyor. Peki bu karakterlerinin nasıl görüneceklerini VİC nereden bi- liyor? Tabil ki, bilgisayarımızın bel- leğindeki karakter tanımlamaların- dan. Her karakterimiz 8*8'lik bir matris oluşturduğuna göre, karakte- rin görüntüsüyle ilgili bilgiyi 8& byte içinde saklayabiliriz. Toplam 512 ka- rakterinin olduğuna göre 512*8 — 4096 byte, yani 4K hafıza bi- ze yeterli olacaktır. Bilgisayarımızda bu hafıza normal durumda $DO00- $DFFF (53248-57343) arasıdır. Ka- rakter tanımlamaları, ekran kodları- na göre sıralanmıştır. Örneğin ilk 8 byte ile"""(2*' karakteri, bir sonraki 8 byte ile de “A” harfi tanımlanır. Bu böylece sürer gider. İlk 256 karak- ter (karakter kodu 0-265) ile büyük harf ve grafik karakterlerinden olu- şan set tanımlanır. Bunun da ilk ya- rısı normal gösterim, ikinci yarısı ne- gatif gösterime ayrılmıştır. Sonra ge- len 256 karakter ise küçük/büyük harf gösteriminin normal ve negatif tanımlamalarından oluşur. VİC ek- randaki görüntüyü yaratırken, vide- oram'daki ekran kodlarının yardı- mıyla karakter tanımlamalarındaki doğru yeri bulur ve oradaki karakter tanımını ekrana getirir. Gördüğünüz gibi ekran kodları ile karakter tanım- lamalarının düzeni arasındaki benzer- lik sadece tesadüf değil. Ancak, ka- rakter tanımlamalarının bulunduğu bu bölge ROM olduğu için üstüne bir şey yazılamaz. ROM'u okuyabilmek için de normal PEEK komutu yeter- li olmamaktadır. Birazdan, verdiği- niz programları incelerken bu bölgey- le ilgili zorlukları hazır çözeceğimizi de göreceğiz. Bilgisayarı açtığınızda, karşınıza çıkan yazı ekranı normal renk mo- dundadır. Ancak, grafik ekranı gibi, yazı ekranını da çok renkli (multico- lor) hale sokabiliriz. Bunun için VIC'in 17 ve 22 numaralı yazmaçla- rının bit'leri ile oynamamız gereki- yor. Şu iki POKE komutu ile önce grafik ekranını ve birazdan açıklama- sına başlayacağımız extended color (geliştirilmiş renk) modunu kapatıp, multicolor'u aktif hale getiriyoruz. POKE 53265, PEEK (53265) AND 159 POKE 53270, PEEK (53270) OR 16 Yazı ekranını multicolor'a geçir- menin sağladığı en önemli olanak, özellikle oyun türü programlarda, renkli grafikleri sadece yazı ekranını kullanarak yapabilmek. Grafik ekra- nının &K, yazı ekranının İK olduğu- nu ve grafik ekranının gerek renk, ge- rekse nokta organizasyonunun ne ka- dar karmaşık olduğunu düşünürse- niz, multicolor karakterlerin prog- ramlamada ne kadar kolaylık yara- tacağını kolayca tahmin edebilirsiniz. Şimdi bu özelliğin derinliklerine ine- Diyelim ki multicolor'a geçtiniz. Bu durumda bilgisayarınızın kullana- bileceğiniz renk sayısı 16'dan 8'e ine- cektir. Hemen meraklanmayın. Ta- bil ki, bunun bize sağlayacağı bir fay- da var. Eğer ekrandaki bir karakte- rin rengi, daha doğrusu onun rengi- ni temsil eden renk RAM'ındaki byte'ın değeri 0-7 arasında ise, söz- konusu karakter normal modda gös- 50 i Commodore terilecektir. Dolayısıyla, multicolor moda geçtiğimiz halde normal karak- ter biçimlerini kullanma olanağımızı sürdürebiliyoruz. Düşünün, bu olma- saydı, çok renkli yazı ekranında oy- nanan bir oyunun skorlarını ekrana nasıl yazardık. Sakın multicolor harf- lerle demeyin! Neden mi? O zaman multicolor karakterlerin açıklaması- na girişelim... Eğer ekrandaki karakterimizin ren- gi olarak 8-15 arası bir renk belirle- mişsek, artık karakterimiz multico- lor'dadır. Yazı dizimizde defalarca belirttiğimiz gibi, multicolor modu- na karşılık feda ettiğimiz şey, yatay noktasal çözünürlüktür. Bu durum- da karakterimizin çözünürlüğü 4*8'e düşecektir ama, dört değişik renk kullanabilecektir. Her zaman olduğu gibi, yanyana duran iki noktanın al- dığı değere göre, oluşturdukları renk noktasının renginin nereden geleceği belli olacaktır. Bir tablo halinde bu ilişkiyi belirleyelim: o00: VİC'in 33. yazmaçı (Ü numa- ralı arkaplan rengi) Oo01: VİC'in 34. yazmaçı (İ numa- ralı arkaplan rengi) Wol0: VİC'in 35. yazmaçı (2 numa- ralı arkaplan rengi) Üoll: 8-15 arası tanımlanan, o ka-