Bu sayfadaki yazılar
Sayfanın metni
Sayfa 69
Lo-res: 320 * 200: 8000 byte. Lo-res interlace: 320 * 400: 16000 byte. Lo-res interlace: 320 * 512: 20480 byte Hi-res: 640 * 200: 16000 byte Hi-res: 640 * 256: 20480 byte Hi-res interlace: 640 * 400: 32000 byte Hi-res interlace: 640 * 512: 40960 byte Bu modların bir plane için harcadığı hafıza budur.
Ayrıca renk için de hafıza harcarlar. Renk için bir resmin kaç plane olduğunu bulmak gerekir. Bu da şu şekilde hesaplanır: 2 renk: 1 plane 4 renk: 2 planes 5-8 renk: 3 planes 9-16 renk: 4 planes 17-31 renk: 5 planes
Burada bulduğunuz plane sayısını bir plane için harcanan hafıza miktarıyla çarparsanız resmin hafızada harcadığı toplam hafızayı bulursunuz. Genel olarak resimlerin hafıza kaplama formülü şudur: Hafıza = Yatay çözünürlük * Dikey Çözünürlük * Plane sayısı / 8 Örneğin 320*200 olan ve 4 plane'den oluşan bir resim: 320*200*4/8 = 40960 byte kaplar. 640*512 olan ve 3 plane'den oluşan bir resim 640*512*3/8 = 122880 byte kaplar. Dikkat hi-res resimler en fazla 16 renk yani 4 plane'den oluşurlar. Tabii standard modlara uymanız şart değil, örneğin 467*56 ya da 546*467 tipinde bir ekran da açabilirsiniz. (Ancak BASIC'de biraz zordur.) Umarım AMIGA'nın grafik yönetimi hakkında sizi bir fikir sahibi edebilmişimdir. Neyse şimdi ekran açmaya geçelim. SCREEN komutu SCREEN komutuyla istediğiniz türde bir ekran açabilirsiniz. Kullanımı şu şekildedir: SCREEN no, yt, di, rn, md
Buradaki parametreler şu şekilde kullanılırlar: no: Ekran numarası. 1-4 arasında olur. yt: Ekranın yatay çözünürlüğüdür. 1-640 arasında bir değer alır. di: Ekranın dikey çözünürlüğüdür. 1-512 arasında bir değer alır. rn: Yukarıda anlatıldığı gibi kaç renk kullanılacağını seçtikten sonra bulacağınız plane sayısını buraya yazın. md: Bu parametre şu dört değerden birisini şu halde alır: 0: lo-res ekran, 1: hi-res ekran, 2: lo-res interlace ekran, 3: hi-res interlace ekran. Örnekler: SCREEN 1, 320, 256, 5, 0: 320*256 çözünürlüğünde ve 32 renkli bir lo-res ekran açar. SCREEN 1, 640, 256, 4, 1: 640*256 çözünürlüğünde ve 16 renkli bir ekran açar.
dikey 400
Aynı anda dört ekran açabilirsiniz. (Bir de Workbench ekranı, etti mi beş) Ama hafızanız azsa bunu yapmanızı hiç tavsiye etmem. Haydaa o da ne? Bu ayki yerim gene bitmiş. Ehh köşemizin arttırılmasını istiyorsanız, sorularınız ya da sorunlarınız varsa, bir şeyler yapıp çevreye tanıtmak isterseniz ya da diğer arkadaşlarımızın gönderdiği programlara sahip olmak isterseniz adres: BAHADIR AKCAN Maşuklar Yokuşu 2/2 Beşiktaş/İstanbul Bir dahaki aya kadar stay cool..
nar a
Klavyeyle gezinmek için ← ve → tuşları.
Sayfa 68
Merhaba arkadaşlar, bu ay nasılsınız bakalım. Geçen ay gördüğümüz grafik komutlarına bu ay devam ediyoruz. Umarım komutları kavramışsınızdır.. Geçen ay yerimizin darlığından dolayı komutlarımızı örnekli olarak açıklayamamıştık. Bu ay örnekler ve yeni komutlarla devam edeceğiz. İşte size bir program. Enjoy it! Program 1'in satır satır açıklaması: Satır 5: Bu satırda REM komutunu görüyoruz. REM komutu programınızın istediğiniz yerine kendi notlarınızı yazma olanağı sağlar. Bunu sık sık yapmanız yararlı olur, çünkü yaptığınız bir programa üç beş ay sonra baktığınızda hangi rutinin ne işe yaradığını unutmuş olabilir ve benim makine dilinde programlama yaparken başıma geldiği gibi saatlerce 'ya abi bu rutini ben niye yazmışım ya?' diye düşünebilir, saçınızı başınızı yolabilirsiniz. Bu arada ufak bir not, REM komutu haliyle programın çalışmasında biraz yavaşlamalara yol açıyor. (Çok fazla değil) Zaten siz hız istiyorsanız SEKA köşesini okuyun. (Assembler!) Satır 10: Yazı dizimizin daha önceki sayılarında açıklanan basit bir FOR..NEXT döngüsü. A değişkenini 10'dan 50'ye doğru her seferinde beşer beşer arttırıyoruz. Satır 20: Bu satırda merkezi (150, 100) koordinatlarında olan ve çapı 10'dan başlayarak A değişkeniyle belirlenen bir daire. Renk belirlemesi ve diğer radyan açılarıyla uğraşmadığımız için tam bir daire elde ediyoruz. Çapı gittikçe arttırmamız bize içiçe daireler elde etme fırsatı veriyor. Satır 30: Döngüsünün diğer parçası. A değişkeni 50 olana kadar 10-30 numaralı satırlar işlenir. Satır 40: Yeni bir satır ve yeni bir FOR..NEXT döngüsüyle karşınızdayız. Bu kez de B değişkeni 1'den 10'a kadar birer birer arttırılıyor. Satır 50: B değişkenine bağlı olarak çizgi çizilmesi. Satır 60: B değişkenine bağlı olarak dikdörtgen çizilmesi. Satır 70: B değişkenine bağlı olarak içi dolu dikdörtgen çizilmesi. Satır 80: B değişkenini arttırmak için 40. satıra dönülür. Satır 90: Beep sesi çıkartarak ekranı flash eder. EKRAN AÇMA Normal AMIGABASIC ekranında sadece dört renk kullanabiliriz. Oysa AMIGA'mız bize otuziki renk kullanma fırsatı sunuyor. (Basic dışında 64 ve 4096 renk dahi kullanılabilir.) Öyleyse neden bu özellikleri kullanmayalım? Ekran açma konusuna girmeden önce AMIGA'da grafiklerin nasıl kullanıldığı konusunda biraz bilgi vermek istiyorum. AMIGA GRAFİKLERİ'mizde dört değişik grafik modu mevcuttur. Bu modlara göre kullanabileceğimiz renk sayısı da değişmektedir. Bu modlar lo-res, lo-res interlace, hi-res, hi-res interlace'den ibarettir. Lo-res modu: Lo-res'de monitörünüzün cinsine göre ekranda 320*200, PAL ekranda 320*256 çözünürlük kullanabilirsiniz. Maximum 32 renk kullanımına izin verir. Genelde grafikler bu modda hazırlanırlar. Lo-res interlace: Lo-res'den farkı dikey çözünürlüğün iki katına çıkmasıdır. NTSC ekranda 320*400, PAL ekranda 320*512 çözünürlük kullanabilir, 32 renk kullanabilirsiniz. (Bu 512k'da mümkün olmayabilir) Hi-res: Hi-res ile yatay çözünürlük iki katına çıkar. Ekranınız ne olursa olsun 640*200 ya da 640*256 çözünürlük. Hi-res modunda maximum renk sayısı 16'dır. Makine dilinde yapılabilecek bazı hilelerle bu rakam arttırılabilir. Hi-res interlace: Çözünürlüğü maximum seviyeye getirir. 640*400 ya da PAL ekranda 640*512'lik çözünürlük sağlar. Bu modun 1 MEG ya da daha fazla hafızaya sahip makineler tarafından kullanılması akıllıca olur. Ham modu:
Ham modu sadece lo-res'te çalışır ve 4096 renge kadar kullanıma izin verir. BASIC'te kullanılması mümkün değildir. Dual playfield: Dual yani çift görüntü alanı AMIGA'ya mahsus bir özelliktir ve muhteşem efektler yaratılmasına izin verir. Hani hep oyunlarda görürüz, mesela FIGHTER BOMBER'da uçağımızın kokpitini görüyoruz dışarıda da görüntüyü izliyoruz bu ne iştir diye soracak olursanız bu dual kullanılarak hazırlanmış bir olaydır. Dual playfield modunda 1, 3, 5 no'lu bitplane'ler 1 nolu, 2, 4, 6 no'lu bitplane'ler 2 nolu playfield'i oluşturur. Her iki playfield de kolaylıkla kaydırılabilir, renkleri değiştirilebilir, öncelik sırasına göre birbirlerinin arkasında ya da önünde görünebilir, vs. Bu konuda daha detaylı bilgi için SEKA köşesine de başvurabilirsiniz. Bu modlar şu şekilde hafıza harcarlar: