Bu sayfadaki yazılar
Sayfanın metni
Sayfa 45
na kadar geliyor. Yol üzerinde bulunuyor. Vurulamıyor ve ancak üzerinden atlanarak kurtulunabiliyor. 4. BULUT: Sprite No: 4. 11. Km'den sonra gelmeye başlıyor ve tüm kalan yolda görülebiliyor. Arabanın üzerinden geçiyor. Zıplayıp ateş ederek yok edilebiliyor. Ya zıplamayın, ya da yok edin. 5. ŞEYTAN: Sprite No: 5. 26 Km'den sonra gelmeye başlıyor, 36 Km'ye kadar tepenizde dolaşıyor. Daha doğrusu zıplıyor. Ya sağa-sola giderek kaçın, ya da durun, yoksa Freddy'ye yem olursunuz. 6. KAMYONET: Sprite No: 6. 36. Km'den sonra gelmeye başlıyor ve oyunun sonuna kadar görülebiliyor. Sizi ezmek için arkadan yaklaşıyor. Vurulabiliyor, ama önce zıplayıp önünüze almanız, daha sonra vurmanız gerekiyor. Ama üzerinden zıpladıysanız dokunmayın, çünkü kayaları yok ediyor. 7. UÇAN DAİRE: Sprite No: 5-7-8, 56 Km'den sonra gelmeye başlıyor. Size mermi atıyor ve vurulamıyor. Tek kurtuluş ümidiniz kaçmak. Eğer yeterince hızlı olamazsanız, Freddy'nin rüyalarından hiçbir zaman kurtulamıyorsunuz. 76. Km'den sonra tüm yaratıklar yok oluyor ve rahat rahat araba sürmenin keyfini yaşıyorsunuz. 80 Km'lik yolu bitirdiğinizde HAPPY END sahnesini görüp mutlu oluyorsunuz. Derya Bey bu oyunu yazarken kullandığı programların da bir listesini göndermiş. Çoğunu henüz görmediysem de ne aradığınızı bilmeniz için isimlerini burada yazıyorum. Sanırım bir 45 oyun yapmaya yeterli olan malzeme, her tür iş yapmanız için yeterli olacaktır: (1) Sprite Tasarımı ve animasyonlar: PRO SPRITE. (2) Manzara karakteri: ACY-CREW LOGO EDİTÖRÜ. (3) Müzik: FUTURE COMPOSER'a ait bir blok ile, (4) Sinüs ve Swing Tabloları: BOUNCER ile. (Bu programı dergimizin 65. döküm ekinde yayınlamıştık.) Derya Bey'in yolladığı dökümanlar burada sona eriyor. Sanırım bu kadar bilgiyle makina dili bilen herkesin programı incelemesi mümkün olacaktır. Yaptığı güzel oyun ve harika grafikleri için Derya Bey'i kutluyorum ve başarılarının devamını diliyorum.
Mektuplar İçin Teşekkürler:
Yavaş yavaş arkadaşlarınızdan katılımlar olmaya başladı. Kimi yalnızca yazmış olmak için, kimi yaptıklarını anlatmak için, kimi de problemlerine çözüm bulabilmek için yazmışlar dergimize. Ben yalnızca problemlerine çözüm arayan arkadaşların mektuplarını cevaplayacağım burada. Cevaplayacağım ilk mektup Mahir Çipil ve Caner Şimşir'den gelmiş. Mahir ve Caner, kendilerine CMC diyorlar. İlk C Caner, M ile Mahir olsa gerek. O zaman grubun üçüncü elemanı kim? Ama belki de Caner grubun kurucusudur ve CMC Caner Mahir Caner anlamına geliyor. Çok mu egoistçe oldu? Her neyse kısaltmalarınızın uzun hallerini yollamayı unutmayın. Benim bu konuda takıntım vardır, uzun halini bulamazsam içim rahat etmez... Bu kadar gevezelik yeter. Gelelim CMC'nin sorunlarına: CMC, introların çoğunda açıldığını, yazıların da buralardan geçebildiğini görmüşler ve bunun nasıl yapılacağını soruyorlar. Ne yazık ki bu aylık köşem oldukça dolu. Bu yüzden bu sorularının cevabını gelecek ay tam bir konu olarak vereceğim. Konunun sonunda da Hi-Res hakkında özet bilgileri sıkıştırırım. Sanırım pek tatmin edici olmadı, ama en azından gelecek ay tüm cevaplara kavuşacaklarını biliyorlar. Bu arada benim C-64 oyunlarını açıklamam gerektiğini söylüyorlar, ama ne yazık ki bu imkansız, çünkü dünyaya benim kadar beceriksiz bilgisayar oyuncusu gelmemiştir sanırım. Bu yüzden oyun açıklamalarında hiçbir zaman benim adımı göremeyeceksiniz. İkinci mektup Özgür Geşli'den geliyor. Özgür'ün asıl problemi müziklerle. Oturup nota nota müzik yazamadığını, bu yüzden introlardan müzik yürütmek istediğini söylüyor. Bu işi nasıl yapacağını anlatmamı istemiş. İlk olarak söyleyeceğim, introlardan müzik yürütmenize gerek yok. Çünkü (umarım hâlâ bu şekilde satılıyordur) FUTURE COMPOSER adlı müzik editörüyle birlikte altmış kadar müzik de verilmişti bize. Bunların yirmisi bile güzel olsa yeterince introya malzeme olur sanırım. Ya da composer programlarını kullanabilen bir arkadaş bulup ısmarlama müzik yaptırırsınız. Her neyse, ben gene de müzik sökme yöntemlerini anlatayım. İlk olarak standart bir müzik yürütme sistemi bulunmadığını söylemeliyim. Müziği yürüttüğünüzde de sadece müziği mi aldığınızdan veya müziğin birazını almadığınızdan emin olmanız zordur. Eskiden beri benim yürüttüğüm müzikler 32 bloktan aşağı inmezken, Celal'in yürüttükleri (aynı müzikler) 16 blok civarı dolaşırdı. Şanssızlığınızdan olsa gerek, müzik yürütmeyi ben anlatıyorum: İlk olarak bellekte $D400-$D420 arasında işlem yapan yerlerin bir dökümünü alın (Expert kullanıyorsanız: K * D400 D420 komutunu kullanabilirsiniz). Müziği çalan rutinin bulunduğu yerde bir yığılma gözünüze çarpacaktır. Daha sonra bu bölgelerde olan bir rutinin çağrılıp çağrılmadığına bakın (eğer Expert'ünüz yoksa önce programın başlangıcı olabilecek bir yer bulun) ve bulduğunuzda adrese sıçradığınızda bir ses gelip gelmediğini kontrol edin. Buradan sonrası size kalmış, yerini bulduğunuz müzikteki fazlalıkları ayırmanız yeterli olacaktır. Ama bir Intro'dan müzik yürütüyorsanız, büyük bir ihtimalle müzik programı $1000 veya $1003'te başlayacaktır. Future Composer'ın müziklerine (yer değiştirilmediyse) $1800'de rastlayabilirsiniz. Biliyorum, biraz kabaca anlattım ama gerçekten de anlatarak öğrenilecek bir şey değil bu sorduğunuz. En iyisi üzerlerinde uğraşarak deneyim kazanmaya çalışın. Zaten zamanla müzik rutinlerini bile birbirinden ayırmaya başlayacaksınız. İkinci sorunuzda Cycle'ın ne olduğunu ve bir Cycle'lık zamanda elektronun ne kadar ilerlediğini sormuşsunuz.
Klavyeyle gezinmek için ← ve → tuşları.
Sayfa 44
Programından da Bahsedelim mi?
Oyun 7 adet interrupt rutininin birleşmesinden oluşmuş. Normal düzeyde ise program sonsuz döngüye giriyor. Yani tüm programın çalışması sadece interruptlarla yapılmış. Neden olduğunu anlamadıysam da, Derya Bey bunu özellikle yaptığını söylemiş. Sanırım iyi bir nedeni vardır bunun için. Programın kullandığı bellek bölgeleri ise şöyle: $0900-$1000: Tüm switchler, hesaplama ve zamanlama adresleri burada. Daha doğru bir tabirle değişkenler bölümü burası. Bazı önemli adresler ise şunlar: $09C8: Araba çarpışma açık/kapalı. $090B-$090C: Tüm zamanlama burada yapılıyor, 80 km burada sayılıyor. $090A: $D01E register bilgisi burada. $0908: Ateş açık/kapalı. $3800-$3C00: Arka kayan dağ manzaralarının resim dataları burada saklanıyor. $3D00-$4E00: Yaratıkların X 255 ($D010 bitleri) tablosu. Yaratıkların X sinüs tablosu. $0A00: Kamyon, uçan daire sinüs tablosu. $1220: Girişteki intronun renk şeritleri. $1270: Renk şeritlerinin zamanlama baytları tablosu. Şimdi de oyunu oluşturan 7 interrupt rutini hakkında daha detaylı bilgi verelim: 1. Interrupt: #$90 raster satırında başlıyor ve $1153 adresinde bulunuyor. Bu rutinin işi arkaplan görüntüsünü kaydırmak. 2. Interrupt: #$01 raster satırında başlıyor ve $1192 adresinde bulunuyor. Alt yolun kaydırılması ve müziğin çalınması işlerini hallediyor. 3. Interrupt: #$30 raster satırından başlıyor ve $1300 adresinde bulunuyor. Araba, kaya, bulut ve ateş hareketlerinin yapılmasını sağlıyor. 4. Interrupt: #$4A raster satırından başlıyor ve $15C4 adresinde bulunuyor. Zıplayan şeytana hayat veren rutin burada. 5. Interrupt: #$52 raster satırından başlıyor ve $16A8 adresinde bulunuyor. Uçan daire ve mermilerin hareketlerinden sorumlu rutin burada çalışıyor. 6. Interrupt: #$5B raster satırından başlıyor ve $2A8E adresinde bulunuyor. Kamyonun hareketleri burada ayarlanıyor. 7. Interrupt: #$62 raster satırından başlıyor ve $2568 adresinden başlıyor. Oyunun ana kontrol rutinleri burada toplanmış. Çarpışma kontrolleri, skorun yazılması, glow yapılması, GAME OVER ve HAPPY END sayfalarına geçilmesi tamamen bu rutin tarafından
gerçekleştiriliyor. Bu rutin bitince tekrar bir nolu interrupt'a sıçranıyor. C-64'ün yalnızca 8 adet sprite'ı olduğu için değişik karakterlerin bazı sprite'ları ortak kullanması gerekiyor. Bu karakterler ve hangi sprite'ı ne zaman kullandıklarıyla ilgili bilgileri aşağıda bulabilirsiniz: 1. CHEVROLET: Sprite No: 1. Sürekli kullanılıyor (0-80 Km). Joystick aracılığıyla sola ve sağa hareket edebiliyor, zıplayabiliyor ve sürekli ateş edebiliyor. 2. ATEŞ: Sprite No: 2. Sürekli kullanılıyor (0-80 Km). Araba tarafından atılıyor. Bulut, Kamyon ve Şeytanları vurabiliyor. Patlama efekti sırasında dokunduğu yaratıkları yok edebiliyor. 3. KAYA: Sprite No: 3. 2 KM'den sonra çıkmaya başlıyor ve oyun sonu-