Bu sayfadaki yazılar
Sayfanın metni
Sayfa 47
YAZMAÇ: 18 ($12) TANIM: Ekran tarama satırları inter- AÇIKLAMA: Bu yazmacı ve 17 numaralı yazmacın 7. bit'ini kullanarak 0-511 arası bir sayı yazarsanız, bu sayı, VIC tarafından oluşturulur oluşturulmaz kesinti (interrupt) yaratılması gereken ekran tarama satırını belirtir. Eğer bu yazmacı ve 17. yazmaçtaki ekstra bit'i okursanız, ekran tarama satırının (raster-line) o sırada hangi satırda olduğunu öğrenirsiniz. AÇILIŞ: 55 (%00110111)
YAZMAÇ: 19 ($13) TANIM: Lightpen X koordinatı. AÇIKLAMA: Lightpen'den bir sinyal geldiği sırada ekran tarama ışınının bulunduğu X koordinatı. AÇILIŞ: 0 (%00000000)
YAZMAÇ: 20 ($14) TANIM: Lightpen Y koordinatı. AÇIKLAMA: Lightpen'den bir sinyal geldiği sırada ekran tarama ışınının bulunduğu Y koordinatı. AÇILIŞ: 0 (%00000000)
YAZMAÇ: 21 ($15) TANIM: Sprite açık/kapalı. AÇIKLAMA: Her bir sprite'ın açık ya da kapalı olmasını bu yazmacın bit'leri kontrol eder. Eğer bir sprite'a ait bit 0 ise, o sprite görünmezdir. Eğer 1 ise, sprite görünürdür.
BİT numaralı BİT numaralı — sprite BİT numaralı — sprite BİT numaralı — sprite BİT numaralı — sprite BİT numaralı — sprite BİT numaralı — sprite BİT numaralı — sprite
AÇILIŞ: 0 (%00000000) YAZMAÇ: 22 ($16) TANIM: 2 numaralı kontrol yazmacı AÇIKLAMA: Çeşitli grafik özelliklerini kontrol eden bitlerin bir kısmı da bu yazmaçta bulunur. BİT 0-2: Sağa sola noktasal ekran kaymasının 0-7 (%000-111) arası nokta değerini gösterir. BİT 3: Ekranın kaç kolon olduğunu gösterir. 0 ise 38 kolon, 1 ise 40 kolon gösterilir. BİT 4: Multicolor (çokrenkli) renk kullanımını kontrol eder. 0 ise normal renk, 1 ise çokrenkli mod kullanılır. BİT 5-7: Kullanılmıyor. AÇILIŞ: 8 (%00001000) YAZMAÇ: 23 TANIM: Y yönünde sprite büyütme. AÇIKLAMA: Sprite'ların Y yönünde büyüyüp büyümemesini bu yazmacın bit'leri kontrol eder. Eğer bir sprite'a ait bit 0 ise, o sprite normal büyüklüktedir. Eğer 1 ise, sprite Y yönünde iki kat büyür. Ayrıca 29 numaralı yazmaca da bakınız.
BİT 0: 0 numaralı sprite BİT 1: 1 numaralı sprite BİT 2: 2 numaralı sprite BİT 3: 3 numaralı sprite BİT 4: 4 numaralı sprite BİT 5: 5 numaralı sprite BİT 6: 6 numaralı sprite BİT 7: 7 numaralı sprite
AÇILIŞ: 0 (%00000000)
YAZMAÇ: 24 ($18) TANIM: VIC'ın temel adresleri. AÇIKLAMA: Bu yazmaçta, karakter seti ve videoram (ekrandaki karakterlerin depolandığı hafıza kısmı) başlangıç adreslerinin hafıza içindeki yerinin üst bit'leri yer alır. Bunları değiştirerek (daha sonra bunu da göreceğiz), bu hafıza bölgelerinin yerini değiştirmek ve böylece aynı anda birkaç ekranı hafızada tutmak mümkün olacak.
Kullanılmıyor. : Karakter seti başlangıç ad- 11-13 numaralı bitleri. Yani bu üç bitin oluşturduğu sayıyı 2048 ile çarparak başlangıç adresini bulabiliriz. BİT 4-7: Videoram'ın başlangıç adresinin 10-13 numaralı bit'leri. Bu dört bit'in değerini de 1024 ile çarparak gerçek adresi bulabiliriz. AÇILIŞ: 20 (%00010100) YAZMAÇ: 25 ($19) TANIM: İnterrupt oluşma nedenleri. AÇIKLAMA: Bu yazmaçtaki bit'lerle, hangi sebepten ötürü interrupt (kesinti) yaratıldığı belirlenebilmektedir. BİT 0: Eğer 1 ise, ekran tarama satırı interrupt nedeni olmuştur (bkz. yazmaç 18). BİT 1: Eğer 1 ise, sprite-ekran çarpışması sebep olmuştur (bkz. yazmaç 31). BİT 2: Eğer 1 ise, sprite-sprite çarpışması interrupt yaratmıştır (bkz. yazmaç 30). BİT 3: Eğer 1 ise, 1 lightpen sinyal göndermiştir.
BİT 4-6: Kullanılmıyor. BİT 7: İlk dört bit'in en az biri 1 demektir. Bu yazmaç gerek BASIC'ten, gerekse makine dilinden okunduğunda, okunan değerin tekrar yerine yazılması gerekir. Yoksa çalışması hatalı olacaktır. AÇILIŞ: 15 (%00001111)
YAZMAÇ: 26 ($1A)
TANIM: İnterrupt oluşturma nedenleri. AÇIKLAMA: Programcı, bu yazmaçı kullanarak, hangi sebepten ötürü interrupt oluşması gerektiğini belirleyebilir. Bit'lerin durumu 25 numaralı yazmaç gibidir. Yukarıdaki olaylardan biri oluştuğunda, 25 numaralı yazmaçtaki bit 1 olmakta. Eğer programcı, 26 numaralı yazmaçtaki aynı bit'i önceden 1 yapmışsa, bilgisayar $0314/$0315 adreslerinde belirtilen adrese interrupt atlaması yapacaktır (bunu da anlatacağız). AÇILIŞ: 0 (%00000000) YAZMAÇ: 27 ($1B) TANIM: Sprite önceliği. AÇIKLAMA: Tıpkı daha önceki yazmaçlarda olduğu gibi, her sprite için bir bit ayrılmış durumdadır. Eğer bu bit 0 ise, sprite ekrandaki karakterlerin önünde görünecektir. Eğer 1 ise, karakterlerin arkasına saklanacaktır. AÇILIŞ: 0 (%00000000) YAZMAÇ: 28 TANIM: Çokrenkli sprite'lar. AÇIKLAMA: Bir sprite'ın tek renkli veya çok renkli olması bu yazmaçtaki bit'ler tarafından ayarlanır. Eğer bir sprite'a ait bit 1 ise, o sprite çokrenkli olarak görünecektir. AÇILIŞ: 0 (%00000000)
YAZMAÇ: 29 ($1D)
TANIM: X yönünde sprite büyütme. AÇIKLAMA: Sprite'ların X yönünde büyüyüp büyümemesini bu yazmaçın bit'leri kontrol eder. Eğer bir sprite'a ait bit 0 ise, o sprite normal büyüklüktedir. Eğer 1 ise, sprite X yönünde iki kat büyür. Ayrıca 23 numaralı yazmaça da bakınız. AÇILIŞ: 0 (%00000000)
YAZMAÇ: 30 TANIM: Sprite-sprite çarpışması. AÇIKLAMA: Her bir sprite'ın bir bit'i vardır. Eğer iki sprite birbirine
değerse, onlara ait bit'ler 1 olur. Aynı zamanda 25 numaralı yazmaçın BİT 2'si 1 durumuna gelir. Eğer yanan iki bit tekrar 0 yapılmazsa, hep 1 olarak kalırlar. Yani, temas bitince kendiliklerinden 0 olmazlar. AÇILIŞ: 0 (%00000000)
Klavyeyle gezinmek için ← ve → tuşları.
Sayfa 46
YAZMAÇ: 8 ($08) TANIM: 4 numaralı sprite'ın X koordinatı. AÇILIŞ: 0 (1100000000)
YAZMAÇ 9 (809) TANIM: 4 numaralı sprite'ın Y koordinatı.
AÇILIŞ: 0 (9400000000)
YAZMAÇ: 10 (S0A) TANIM: 5 numaralı sprite'in X koordinatı. AÇILI
0 (7000000000)
YAZMAÇ: 11 (S0B) tanım: 5 numaralı sprite'ın Y koordinatı. AÇILIŞ: 0 (9000000000)
TANIM: 6 numaralı sprite'in X koordinatı. AÇILI!
0 (%00000000)
YAZMAÇ: 13 ($0D) TANIM: 6 numaralı sprite'ın Y koordinatı. AÇILIŞ: 0 (%00000000)
YAZMAÇ: 14 ($0E) TANIM: 7 numaralı sprite'ın X koordinatı. AÇILIŞ: 0 (%00000000)
YAZMAÇ: 15 TANIM: 7 numaralı sprite'ın Y koordinatı. AÇILIŞ: 0 (%00000000)
YAZMAÇ: 16 ($10) TANIM: Sprite X koordinatlarının 9. bit'i AÇIKLAMA: 8 adet sprite'ın 256-511 arası koordinatlarını göstermek için gerekli 9. bit'leri içerir. Her bir bit, bir sprite'a aittir.
BİT 0: 0 numaralı sprite BİT 1: 1 numaralı sprite BİT 2: 2 numaralı sprite BİT 3: 3 numaralı sprite BİT 4: 4 numaralı sprite BİT 5: 5 numaralı sprite BİT 6: 6 numaralı sprite BİT 7: 7 numaralı sprite
AÇILIŞ: 0 (%00000000)
17 ($11) TANIM: 1 numaralı kontrol yazmacı. AÇIKLAMA: Çeşitli grafik özelliklerini kontrol eden bitlerin bir kısmı bu yazmaçta bulunur. BİT 0-2: Yukarı aşağı noktasal ekran kaymasının 0-7 (%000-111) arası nokta değerini gösterir.
BİT 3: Ekranın kaç satır olduğunu gösterir. 0 ise 24 satır, 1 ise 25 satır gösterilir. BİT 4: Ekranın açık ya da kapalı olmasını belirler. 0 ise kapalı, 1 ise açıktır. Eğer ekran kapalı kalırsa VIC, merkezi işlem ünitesini ekran yaratmak amacıyla yormayacaktır. Bu da, bilgisayarın işlemleri biraz daha hızlı yapmasını sağlayacaktır. Örnek vermek gerekirse, sprite kullandığınızda VIC, bir saniyenin %4'ünü kullanır.
BİT 5: Normal grafik modunun açık ya da kapalı olmasını ayarlar. 0 ise kapalı, 1 ise açık demektir. BİT 6: Extended (geliştirilmiş) renk kullanımını kontrol eder. 0 ise normal renk, 1 ise geliştirilmiş renk modu kullanılır. BİT 7: 18 numaralı yazmacın 9. bit'ini temsil eder, AÇILIŞ: 155 (%10011011)