Commodore sayı 6, sayfa 29

Bu sayfadaki yazılar

Sayfanın metni

Sayfa 29

VIC tarafından yönetilir. Sıra adresi verilince VIC RAS (Row address strobe-satır adresi darbesi) sinyalini, sütun adresi verilince VIC CAS (column address strobe-sütun adresi darbesi) sinyalini üretir. Tüm bu olaylar

6569

Karakter Modu Grafik Modu (Character Display mode) (Bit Map Mode) | | | |

Standart Çok renklik Genişletilmiş Standart bit — Çok renkli bir karakter karakter renk modu Map modu map modu modu modu

256 ile 256'yı çarparsanız sonucun 65536 olduğunu bulursunuz. Yani her bir RAM yongası 256x256'lık bir matristir. Mikroişlemcinin ürettiği 16 bitlik adres alçak ve yüksek anlamlı olmak üzere ikiye ayrılır ve bu matrisin sekizer bitlik satır ve sütun adresleri olarak kullanılırlar. (Bellek yongası üzerinde 8 bitlik adres girişi vardır.) 2'ye 1 çoklayıcılar sırayla satır ve sütun adreslerini verir. Çoklayıcılar bir bellek erişimi sırasında, yani 450 ila 500 nanosaniye içersinde olur. Bu anlatılanlar normal bellek erişimi ile ilgili idi. Bellek tazeleme ise biraz farklıdır. Sadece sadır adresi ve RAS sinyali gönderilerek tüm satır bir anda tazelenebilir. İşte bu RAS ve CAS sinyalleri ile karakter ve grafik modlarına ek olarak oyun programlarının yazılmasını kolaylaştırak için tasarlanmış olan sprite işlemlerine de donanım desteği verir. Görüldüğü gibi karakter display modu normal veri işlem programlarına grafik modu ve sprite donanımı da oyun programlarına donanım desteği sağlar. Gelelim VIC'in iç yapısına. Reference Guide'ın 454 ve 455. sahifelerinde 6569'un saklayıcılarının bir dökümü verilmiş.

6569 toplam olarak 16K adresleyebiliyor. Daha fazla bellek adresleyebilmek ve içerisinde 47 adet kontrol saklayıcısı var. VIC'in çalışmasını anlatırken, bunların fonksiyonlarına da değineceğiz.

Önce karakter gösterim modu'nu inceleyeceğiz. VIC bu modda 1000 byte'lik ekran belleğindeki karakter işaretçilerini (karakter kodlarını) alır ve bunları, ait oldukları karakterlerin nokta kodlarının saklandığı 2048 byte'lık nokta tablosunu gösterecek şekilde dönüştürür. Her karakter 8 x8 noktadan oluştuğu için 8 byte'lık bir yer işgal eder. 256 karakter ise toplam 2048 byte'lik yer doldurur.

VIC'in 16K'lık bellek adresleyebilmek için 14 bitlik bir adres üretmeye

24 ($18) VMİC CBİ3 CBİ2 CBİl — Memory Pointers 25 ($19) — — — İnterrupt Register 26 ($IA) — — — — EMBC ERST Enable İnterrupt 27 ($1B) M&DP M5DP M3DP M2DP MODP MOB-DATA Priority 28 ($1C) MZMC MEMC M5MC M4MC MİMC MOMC MOB Mülticolor Sel 29 ($1D) M6XE M5XE MA4XE M3XE M2XE MİXE MOXE MOB X-expand 30 MEM M5SM MAM M3M MM MİM MOM MOB-MOB Collision 31 M7D MED M5D MAD M3D M2D MİD MOD MOB-DATA Collision 32 ($20) > — ECO Exterior Color 33 ($21) — — — — Boc2 Boci BOCO Bkgd #0 Color 34 ($22) — — — — Bic2 BİCİ #1 Color 35 ($23) — — — — B2c2 B2CO Bkgd #2 Color 36 ($24) — — — — B3c2 B3CO Bkgd #3 Color 37 ($25) — — — — MM02 MMO MMOO MOB #O 38 ($26) — — — —, MOB Mülticolor #1 39 ($27) — — — — Moc2 Moci MOCO MOB O Color 40 ($28) — — — — MIC3 MİCİ MİCO MOB 1 Color 41 ($29) — — — — M2c2 M2CO MOB 2 Color 42 ($2A) — — — — M3c2 M3CO MOB 3 Color 43 ($2B) — — — Mâc2 MA4Cİ M4CO MOB 4 Color 44 ($2C) — — — — M5c2 M5Cİ M5CO MOB 5 Color 45 ($2D) — — — — Möc2 M6CO MOB 6 Color 46 ($2E) — — — M7C2 MZCİ MZCO MOB 7 Color NOTE: A dash indicates a no connect. All no connects are read as a “1.” Lİ

Klavyeyle gezinmek için ← ve → tuşları.