1 Temmuz 1989 Tarihli Commodore Gazetesi Sayfa 24

1 Temmuz 1989 tarihli Commodore Gazetesi Sayfa 24
Metin içeriği (otomatik olarak oluşturulmuştur)

ıin konumunu belirtmek için doku- zuncu bir bite ihtiyaç duyarsınız, çün- kü bir bayt sadece 255'e kadar olan sayıları açıklayabilir. Sprite'lardan biri 256 nokta sınırını geçtiğinde, bu adresteki uygun bit açılmalı, geri dönüşte de kapatılma- lıdır. Örneğin sprite O sağa doğru bu sı- nırı geçiyorsa: POKE V4 16, PEEK (V416) OR | Eğer sprite 4 geçiyorsa, o zaman: POKE V4 16, PEEK (V4-16) OR 16 Sprite 0'1 geriye döndürürken: POKE V— 16, PEEK (V -4 16) OR 254 Sprite'ları konumlarken dikkat edilmesi gereken başka bir nokta da ekrandan kaybolmalarını isteseniz bi- İe sadece belli sınırlar içinde görüle- bilir olmalarıdır. Bu sınırlar yani sı- nır parametreleri gösterim boyutları- na ve sprite'ın genişletilmiş olup ol- madığına göre değişir. SPRITE HAZIRLAMA TEKNİĞİ Sprite'lar başka bir deyişle kendi dizayn ettiğiniz özel hareket edebilir objelerdir. Dizayn işleminden sonra bilgisayar sprite'ı hareket ettirmeni- ze, diğer sprite'lar veya grafiklerle ça- rpışmaları izlemenize hatta öncelik- lerini yani hangi sprite'ın diğerinin önünde hareket edeceğine kadar be- lirlemenize kadar yardım eder. SPRITE DİZAYNI Herhangi bir sprite 63 bayt bellek kullanır. Bunu her sırası yanyana üç bayt'tan oluşan 21 adet sıra olarak ifade edebiliriz. Bir bayt'ta sekiz po- zisyon olduğunu bildiğimizden her sı- rada 24 (3 bayt x 8) boşluğumuz ol- duğu ortaya çıkar. Yani sonuçta bir sprite 24 x 21 noktadan oluşan bir şe- kildir. Kareli defterlerinizden 24 x 21'lik bir kısmı işaretleyin. Bu sprite'nızı ifade edecek bir grid olacaktır. (Şekil - 1) Şimdi grid'i her birinde 8 kare ola- cak şekilde 3 eşit sütuna bölen çizgi- lerle ayırın. (Şekil - 2) Bu çızgiler daha sonra DATA ifa- deleri için gereken bayt değerlerini hesaplamakta kullanılacak. İlk sıra ve ilk sütun şimdi şu şekilde görüle- cektir: Şekil - 3) Tabii diğer 62 adet grafik (bayt) de aynı bu şekilde gözükecektir. Sprite'- ın istediğiniz kısımlarını işaretlemek 24 Sıra 1 Sıra 2 Sıra 3 Sıra 4 Sıra 1 Sıra 2 Sıra 3 Sıra 4 v.b. Sıra 1 Sıra 2 Sıra 3 Sıra 4 v.b. Sıra 1 Sıra 2 Sıra 3 Sıra 4 veya açmak için, 63 bayt'ın her biri için bir DATA ifadesi yazarsınız. Eğer ilk sıranın şu şekilde görünme- sini istiyorsanız: (Şekil - 4) Aşağıdaki gibi bir DATA ifadesi yazmalısınız: DATA 63,255,192 Bu şekilde kareli kâğıt üzerinde sprite'ınızı dizayn edip her sprite için bilgisayarın istediği 63 bayt'ın değer- lerini hesaplayın. SPRITE'I BELLEKTE SAKLAMA Sprite'ı çizip DATA ifadelerini he- sapladıktan sonra bu data'yı belleğe POKE etmelisiniz. Sprite'ları aşağı- daki tabloda gösterilen bellek alanla- rına rahatça yerleştirebilirsiniz. Bu iş için başka alanlar da kullanılabilir, ancak bu iş için bellekte yer ayırma- lısınız. Bunu yapan bir rutin için 55 ve 56 adreslerine bakın. (Şekil - 5) Eğer programlarınızı saklamak için teyp kullanıyorsanız # 13, # 14 ve 15 nolu pointer'ların gösterdiği ad- reslerin program yüklenirken veya saklanırken kullanıldığını hatırlayın. Bu iki işlem arada saklanan sprite da- ta'sının değişmesine neden olur. Bu # 392 18 (Şekil - 1) (Şekil - 2 — ı 4 1 Do gl8 d 31 l ı 4 1 ı “Şekil - 3) (Şekil - 4) işlemlerden sonra sprite'lar datalar- dan tekrar okunup belleğe POKE edilmelidir. Sprite datasını belleğe POKE et- mek için FOR/NEXT dönüsünü kul- lanın; örneğin: (Program - 2) SPRITE POİNTER'LARINI AYARLAMA Her sprite'ın bilgisayara sprite'ı ekrana koymak için gereken datayı nereden alacağını anlatan bir adresi vardır. Sprite pointerleri 2040-2047 (Şekil - 5) ADRES DATA (A) POINTER 832 13 896 14 960 15 12288 192 12352 193 12416 194 12480 195 12544 196 12608 197 12672 198

Bu sayıdan diğer sayfalar: