Plazma sayı 6, sayfa 53

Bu sayfadaki yazılar

Sayfanın metni

Sayfa 53

komutunun bitleri aşağıdaki gibidir:

İlk word Açıklama Bit 0 Daima 1 Bit 15-8 Dikey pozisyon, Vertical beam position (VP) Bit 7-1 Yatay pozisyon, Horizontal beam position (HP) İkinci word Açıklama Bit 0 Daima 0 Bit 15 Bu bit 1 olduğunda WAIT komutu pozisyon ile birlikte aynı zamanda blitter'ın işini bitirmesini de bekler. (Blitter-finished-disable bit) Bit 14-8 Dikey karşılaştırma bitleri, Vertical position compare enable bits (VE) Bit 7-1 Yatay karşılaştırma bitleri, Horizontal position compare enable bits (called HE).

Burada dikkat ettiyseniz ilk word'ün ilk biti 1, ikinci word'ün ilk biti ise 0. Bu, komutun WAIT komutu olduğu anlamına gelir. İlk word'ün 0'ıncı biti 0 olduğunda ise komut MOVE komutu olarak yorumlanır.

MOVE

MOVE komutu bir hardware register'ına yazma işlemi yapabilmemizi sağlar. Bu sayede sistemin birçok bileşenini kontrol edebiliriz. Hardware register'larının $DFF000-$DFF1FE arasında olduğunu biliyoruz. Ancak MOVE komutunun bazı kısıtlamaları vardır:

1. MOVE komutu $000-$010 arasındaki ($DFFO00-$DFF010) yazma işlemi yapamaz!

register'lara

2. $010 ile $020 arasında register'lara yazma yapabilmesi ancak COPCON (Copper Control, $02E) register'ının Copper Danger bitinin (0'ıncı bit) 1 olmasıyla mümkündür.

3. $020'den büyük tüm register'lara yazma işlemi yapabilir.

MOVE komutunun bitleri aşağıdaki gibidir:

İlk word Açıklama Bit 0 Daima 0 Bit 8-1 Hardware register adresi Bit 15-9 Kullanılmıyor, 0 yapın İkinci word Açıklama Bit 0-15 Yazılacak değer

Aşağıdaki örnek copper listesi BPLCON0 ($0100) adresine $1200 değerini yazar, bu, tek bitplane'lik (2 renkli) bir ekran açılmasını sağlar. 2 ve 3. satırlarda BPL1PTH ($0E0) ve BPL1PTL ($0E2) adreslerine $0002 ve $0000 değerleri yazılır. Bu register'lar bitplane'in hafıza adreslerini tutar. Örnekte bu adres $00020000 olarak verilmiştir. Hemen ardından COLOR000 ($0180) adresine $0222 (koyu gri renk) değeri yazılır, COLOR01 ($0182) renk register'ına $0FFF değeri (beyaz) yazılır ve liste sona erdirilir.

DC.W $0100,$1200 DC.W $00E0O,$0002 DC.W $00E2,$0000 DC.W $0180,$0222 DC.W $0182,$0FFF DC.W SKIP

SKIP komutunun bitleri WAIT komutu ile aynıdır, tek fark her iki 0'ıncı bitin de 1 olmasıdır:

İlk word Açıklama Bit 0 Daima 1 Bit 15-8 Dikey pozisyon, Vertical beam position (VP) Bit 7-1 Yatay pozisyon, Horizontal beam position (HP) İkinci word Açıklama Bit 0 Daima 1 Bit 15 Bu bit 1 olduğunda verilen pozisyon ile birlikte aynı zamanda blitter'ın işini bitirmesi de beklenir. (Blitter-finished-disable bit) Bit 14-8 Dikey karşılaştırma bitleri, Vertical position compare enable bits (VE)

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