Amiga Dünyası sayı 12, sayfa 45

Bu sayfadaki yazılar

Sayfanın metni

Sayfa 45

Merhaba arkadaşlar. Yine her zamanki gibi bir aradayız. Bu ayki yazımda, ilk olarak geçen ay verdiğim programların açıklamasını yapacağım. Daha sonra da kaldığımız yerden AMOS'un komutlarını açıklamaya devam edeceğim.

'HAM DEMO' programının açıklamasından başlayarak bu ayki AMOS tanıtımlarımıza başlayalım. Programın ilk satırında 320'ye 290 büyüklüğünde bir ekran açılır. Daha sonra da ekran monitor'e yerleştirilir. Bundan sonra 'cursor' kapatılır, ekran temizlenir ve renklerin yanıp sönmesi engellenir. Ekrana 'AMOS-HAM' yazısı yazıldıktan sonra, resmin çizilmesine başlanır. Burada üç tane iç içe 'for-next' döngüsü vardır. Ekranda göreceğiniz şekil burada çizilir.

'Colour B,B : Ink B : Bar 32,B* 15+32 To 288,B* 15+47' satırı ile mavi bileşeni B'ye eşit olan bir kutu çizilir. Daha sonraki döngülerde de sırayla kırmızı ve yeşil bileşenleri çizilir.

İkinci program. Mart sayısında yazdığım 'demo 2' programının benzeri. Bu program, açıklamasını gelecek ayki sayıda vereceğim 'rainbow' komutuna örnektir.

Şimdi de ekran komutlarının açıklamasına kaldığım yerden devam ediyorum. Bu sayımızda önce 'dual playfield', 'dual priority', 'screen height', 'screen width', 'screen colour', 'scin' ve 'cls' komutlarını yazacağım. Daha sonra da ekran kaydırma komutları olan 'def scroll' ve 'scroll' komutlarını anlatacağım.

KOMUT: Dual playfield KULLANILIŞ: Dual playfield e1,e2 Bu komut, AMOS'un en güçlü komutlarından biridir. Hepinizin bildiği gibi, AMOS aynı anda birden fazla ekranı gösterebilir. Fakat iki ekran üst üste geldiğinde, önde olan ekran diğerini kapatır. Bundan başka, monitör ekranının bir tarama satırında sadece bir ekran görüntülenebilir. Fakat bu 'The shadow of the beast' oyunundaki gibi, birbiri arkasında kayan ekranlar yaratılmasını engellemez. Bunu nasıl mı yapacağız? Tabii ki 'dual playfield' komutu ile! 'dual playfield' komutu, 'e1' ve 'e2' olarak belirtilen iki ekranın görüntülerini monitörde üst üste gösterir. İşin güzel yanı, bu ekranlara hala birbirinden bağımsız olarak kumanda edilebilmesidir. 'e1' ve 'e2' ekranları, daha önceden 'screen open' komutu ile tanımlanmış olmalıdır.

Ne yazık ki bu komutun da kendine göre kısıtlamaları vardır. Örneğin birleştirilen iki ekranın da aynı çözünürlükte olması gerekir. Bundan başka sadece belirli ekran kombinasyonları mümkündür. Bunlar aşağıdaki gibidir:

BURAK ÖZDEMİR 1.Ekran 2.Ekran renk sayısı renk sayısı 2 2 4 2 4 4 8 4 8 8 Sekiz'e dört ve sekiz'e sekiz'lik ekranlar sadece düşük çözünürlükte mümkündür. Bundan başka renklerin kullanımında da dikkat edilmesi gereken hususlar vardır. İki ekranın renkleri de birinci ekranın renk paletinden alınır. '0' numaralı renk saydamdır. '0' ile '7' arasındaki renkler birinci ekrana, '8' ile 15' arasındaki renkler de ikinci ekrana aittir. Örneğin ikinci ekrana çizim yapıyorsanız, 'Ink 4' komutu birinci ekranın renk paletinden '11' numaralı rengi seçer. Bu komutun kullanılışıyla ilgili bir örneği Mart sayımızda yazmıştım.

KOMUT: Dual priority KULLANILIŞ: Dual priority e1,e2 Normal olarak 'dual playfield' komutu ile birleştirilen iki ekrandan ilki, ikincisinin önünde gösterilir. 'Dual priority' komutu bu durumu tersine çevirmek içindir.

KOMUT: Screen height KULLANILIŞ: y=screen height [n] Bu komut 'n' numaralı ekranın yüksekliğini belirler. Eğer ekran numarası verilmemişse, o an aktif olan ekranın yüksekliği verilir.

KOMUT: Screen width KULLANILIŞ: g=screen width [n] Bu da 'screen height' komutu gibidir. Yalnız bu sefer ekranın genişliğini verir.

KOMUT: Screen colour KULLANILIŞ: r=screen colour [n] Bu komut, seçilen ekranda gösterilebilecek olan maksimum renk sayısını 'r' değişkenine atar.

KOMUT: Scin KULLANILIŞ: e=scin(x,y) 'scin' komutu, 'x' ve 'y' koordinatlarının hangi ekrana ait olduğunu bildirir. Burada 'x' ve 'y' değişkenleri 'hardware' koordinatları cinsindendir. Yani monitör ekranının koordinatlarıdır. Şimdi aşağıdaki kısa örneğe bakalım:

e=scin(X mouse.Y mouse)

Bu satır, 'e' değişkenine mouse'un o anda üzerinde olduğu ekranın numarasını verir.

KOMUT: Cls

KULLANILIŞ: Cls

Cls renk Cls renk x1,y1 to x2,y2 Bu komut, o an aktif olan ekranın tamamını ya da bir bölümünü silmek için kullanılır. Üç değişik kullanılış şekli vardır. Tek başına kullanıldığında, bütün ekranı siler. 'Cls renk' ile ekran silinir ve 'renk' değişkeni ile belirtilen renk ile doldurulur. Üçüncü kullanılış şeklinde ise, ekranın istenen bir bölgesi silinir ve renklendirilir.

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