dan bus'ı kullanıyor. Çoğu zamanlar COPPER ve BLIİTTER aktif değildir ve 68000'in tam hızında çalışmasına izin verirler. Aslında 68000'in bazı emirleri bus'ı tek sayılı zamanlarda kullanmak is- terler. (Her yerde olduğu gibi, 68000'in komutları arasında da uyumsuzlar var demek ki...) Böyle durumlarda; basit bir senkronizasyon olayıyla 68000'in boşluk bulana ka- dar beklemesi sağlanır. Yukarıda anlatılan paylaşım olayı bazı durumlarda değişebilir. Diyelim ki düşük çözümlemede dört bit- plane'den fazlasını kullandınız veya yüksek çözümlemeli ekranda iki bit- plane'den fazlasını kullandınız; böyle durumlarda ekranı çizen bit-plane DMA'sı 68000'in darbelerinden bir kısmını çalacaktır. Bundan başka ge- rek COPPER, gerekse BLIİTTER, 68000'den daha yüksek önceliğe sa- hiptirler. Bunlar, kendilerine gereken veriyi 68000'i beklemeden daha ön- ce alırlar. Blitter çalıştığı anda şayet 68000 sıkışık durumda kalırsa bunu blitter'e bildirir ve birkaç darbe ödünç alır; daha sonra blitter kont- rolü gene eline alır. Böylece blitter ça- lışırken bile 68000 birkaç darbe çalı- şabilme imkanına kavuşur. Gerekti- ğinde bu durum da ortadan kaldırı- labilir. Blitter'in register'lerinden bi- rinde yer alan blitter priority (önce- lik) bitini yaktığımız anda blitter işi bitene kadar 68000'e hiçbir şans ver- mez. Aslında bu olay göründüğü ka- dar kötü değil; düşünün bir kere, şa- yet blitter olmasaydı, ve onun işini 68000 yapmak zorunda olsaydı, AMIĞA'nın gücü gerek hız, gerekse verimlilik açısından oldukça düşecek- ti (onda bir gibi bir oranda). 9. MULTITASKING Başta dedik ki AMIĞA 'multıtas- king' (aynı anda birden çok iş yapa- bilen) bir alet. Basit olarak ele alın- dığında bu demek ki, AMIĞA aynı anda sprite'ları hareket ettirebilir, diski okuyabilir ve müzik çalabilir. Daha ciddi olarak ele aldığımızda de- ğişik window'larda (pencere) başka başka programların aynı anda çalış- masıdır MULTIİTASKING. AMIGĞA'nın multitasking yapabil- mesi biraz önce gördüğümüz birkaç özelliğine dayanıyor. Bunlar; inter- rupt değerlendirme yapısı ve EXEC'- te bulunan multitasking'e imkan ve- ren altprogramlar. Çevresel birim/'ses çipi tarafından yaratılan ve yönlen- dirilen interrupt'lar, task'lardan (iş- lerden) birbirine geçmeyi sağlar. Di- yelim ki herhangi bir çevresel birimin sinyali çevresel birim/ses çipine ulaş- tı, o da bunu 68000'e iletti ve gerekli interrupt oluştu. Böylece o çevresel birime ait interrupt altprogramı yü- rütülmüş olur. İnterrupt altprogramı ya çevresel birimin isteğini hemen ye- rine getirir, ya da bunun için yeni bir task (iş) belirler, daha sonra da alt- program sona erer. Her iki halde de işlemin sonunda AMIĞA “'task re- scheduler” (işleri yeniden düzene sok- ma) programını çağırır. Böylece sa- dece gerekli olan işlerin sistemi kul- lanabilmelerini sağlamış olur. 10. COPPER Copper, animasyon (canlandırma) çipinin içinde bulunan ve kendi prog- MIĞA'nın çeşitli ünitelerinde bilgisayarın donanım kaynaklarının tam kullanılması ve boşa harcanmaması ilkesi gözetilmiş. ramını yürüten bir yardımcı özel İş- lem ünitesidir (CO-PROCESSOR). Söz konusu programın yürümesi, ek- ranı çizen elektron ışınına bağlıdır. Bu kabiliyetinden dolayı COPPER, genelde özel işlem ünitelerinin grafik ve ses işlemlerini kontrol etmekte kul- lanılır. Böylece 68000 ana işlem üni- tesi, yorucu ve zaman harcayan bir işten kurtulmuş olur. COPPER'ın programları, bildiğimiz RAM belle- ğinde (ilk 512 KB'lık bölgede) duru- yor ve orada yürüyor. Program yü- rürken, gerek diğer özel işlem birim- lerinin, gerekse kendi register'lerine (yazmaçlarına) bir şey yazması gerek- tiğinde DMA (Direct memory access- — doğrudan bellek erişimi) tekniğini kullanıyor. Copper'ın emirleri sadece üç tipten oluşuyor. Bunlar: veriyi doğrudan re- gister'e yazmak; elektron ışınının bel- li bir pozisyonu geçmesini beklemek; üçüncü olarak da ışın belli bir pozis- yonu geçmişse bir sonraki komutu at- lamak (yürütmemek). Elektron ışını- nın pozisyonu diye bahsedilen para- metre, yatay olarak, 4 adet alçak çö- zünürlüklü grafik noktası, yani 8 adet yüksek çözünürlüklü grafik noktası hassasiyetine kadar kesin. Dikey ola- rak kesinlik ise yüzde yüz. COPPER'ın geniş kullanım ola- nakları, yazılan programın akıllıca ele alınması ile daha da genişletilebi- lir. Örneğin, copper'ın, kendi adres sayaç register'ine yazması sağlana- rak, belli bir şarta göre, bambaşka bir adreste bulunan bir altprogramı yürütmesi sağlanabilir. Başka bir ör- nek de, Copper'ın INTREO (inter- rupt regüest) register'inin 15'inci bi- tini yakmak suretiyle, 68000'in 6'ncı seviyede interrupt yürütmesi sağlana- bilir. Bilhassa bu son örnek, bilgisa- yarın içinde, oldukça karışık işlemle- rin gelişmesini sağlar. (Zaten, bu ale- tin içinde gerçekleşen olaylardan ba- sit olanına pek rastlanmamıştır.) Önemli bir olay da; COPPER'ın, elektron ışınını beklerken sistemin adres ve veri kanallarını meşgul etme- mesi. Böylece birçok başka bilgisa- yarda olduğu gibi, ışını bekleme sı- rasında ana işlem ünitesinin birkaç milisaniyesinin boşa harcanması gi- bi olaylarla karşılaşmıyoruz. Burada, gene bilgisayarın donanım kaynakla- rının tam kullanılması ve boşa har- canmaması ilkesinin korunduğunu görüyoruz. COPPER çipi, 68000'le çakışmak- sızın, tüm sistemin ana fonksiyonla- rından birçoğunu yerine getirir. Ör- neğin, her ekranın başında bit-plane (bit yüzeyi) ve sprite değerlerini taze- ler ve düzenler. Veya, ekranın orta- larında bir yerde, renk paletini değiş- tirebilir (böylece her ekranda 32 renk- ten fazlasını kullanmanız mümkün olur.), ve grafik modunu değiştirebi- lir (hafızadan tasarruf); bunlardan başka ekran hafızasını, titreme ve ka- rışıklıklar yaratmadan değiştirebilir. COPPER programları, görüntü iş- lemleri ile ilgili tüm olayların maksi- mum düzeyde kontrolunu sağlar. Fa- kat bu programları doğrudan yarat- mak oldukça zor olduğu için, sistem rom'unda, her türlü isteğe uygun programı yaratacak altprogramlar mevcut. 11. BELLEK ALANI Belleğin ilk 512 KByte'lık bölümü çip belleği diye anılıyor (bellek hari- 24 Commodore