Bu sayfadaki yazılar
Sayfanın metni
Sayfa 52
C64 için Püf Noktaları
Klavyeyle gezinmek için ← ve → tuşları.
Sayfa 53
Görüntü elde ederken ilginç efektler elde edilmesini sağlayan bir teknikten bahsedeceğiz. Tekniğimizin adı RASTER INTERRUPT. Bu tekniği anlatmadan evvel ekranda bir görüntünün nasıl elde edildiğini görelim. Ekranda görüntü, eğer yakından bakarsanız kolaylıkla görebileceğiniz çizgilerin birleşmesinden oluşuyor. Bildiğimiz gibi ekranda görünen karakterler sekiz çizgiden oluşur. Ekran kontrolünü sağlayan VIC chip'inin 18 numaralı yazmacında o anda gösterilen ekran satırının numarası yer alır. Bu yazmacın yer aldığı adres, 53248 numaralı adrestir.
PRİNT PEEK(53266)
Komutu çalıştığı anda ekranda gösterilmekte olan satırın numarasını elde ederiz. Ancak ekran bir saniyede 25 kere tarandığından bu değerler BASIC kullanılarak sağlıklı bir şekilde elde edilemez. Bu yüzden gerekli programı makine dilinde yapmamız gerekir. Ekranda gösterilen her satıra RASTER LINE adını veriyoruz. Bir RASTER ekranda gösterilmeden programı durdurmak mümkündür. Bu işleme RASTER INTERRUPT adı veriliyor. Bu işlem için Interrupt yazmacına gerekli değeri vererek merkezi işlemciyi durduruyoruz. Bundan sonra sıra istenilen satır numarasının belirtilmesine geliyor. Bunun için 18 numaralı yazmaca istediğimiz değeri veriyoruz. Interrupt işleminin makine dili kullanılarak gerçekleştirilmesi gerekir. Program döküm ekindeki ilk tam bu işlemi gerçekleştiriyor. Raster Interrupt işlemine örnek olarak program döküm ekindeki ikinci programa bakın. Bu program ekranın bir kısmının farklı bir fon rengiyle gösterilmesini sağlıyor. Böylece ekranda bir veya birden fazla satırı önemli olarak belirtebiliriz. Programın genel olması bakımından sadece farklı renkte gösterilen satırın rengini ve diğer kısımların renginin değiştirilebilmesi mümkün. Gerekli renk değişiklikleri POKE komutuyla yapılabilir. Örnek program renkli satırı standart raster satırı genişliğinde hareket ettirmenize izin veriyor. Bir raster satırı sekiz oluşuyor. Renkli satırı yukarı veya aşağı hareket ettirmek için kürsor tuşlarını kullanabilirsiniz. Fonksiyon tuşları ile satırın rengini, diğer tuşlarla geri kalan kısımların rengini değiştirebilirsiniz. İlk olarak birinci programı yükleyip çalıştırın. TAMAM yazısı çıktığında ikinci programı yükleyip çalıştırabilirsiniz. İkinci program renkli satırı kürsor tuşları ile istediğiniz şekilde kontrol etmenizi sağlayacaktır. Programı kendi amaçlarınıza uygun şekilde değiştirebilirsiniz. Raster satırı 251 ile 254 numaralı hafıza adreslerine POKE edildi. 251 ve 252 numaralı adreslere farklı rengin çıkacağı raster satırı, 253 ve 254 numaralı adreslere birinci ve ikinci karakterlerin renk kodları POKE ediliyor. Raster interrupt yapıldığında sadece arka plan renklerinin değiştirilmesinden başka işler de yapabiliriz. Mesela iki grafik ekranı birbirine karıştırılabilir. Veya ekranda hem yazı ekranı hem de grafik ekranı gösterilebilir. Hattâ bu yöntemle aynı anda iki ayrı karakter setini kullanmak bile mümkün olabilir. Bu yöntem kullanılarak normalde C64'de mevcut olmayan efektler elde edebiliriz. Normal olarak sekiz sprite'dan fazlası gösterilmezken raster interrupt ile bu mümkün oluyor. İlk olarak sekiz sprite'ı ekranın üst bölümünde gösteririz. Belirli bir raster satırına gelindiğinde sprite koordinatları ve belirteçleri ayarlanıp ekranın alt kısmında başka bir sekiz sprite daha gösterilir. İsterseniz ekranı ikiden fazla parçaya bölebilirsiniz.
OYUNLAR İÇİN KOLAYLIKLAR
Burada sözü oyunlar için çeşitli kolaylıklar gönderen arkadaşlarımıza bırakıyoruz. Whrirynd (Nurettin Ali BERKOL, İstanbul) Oyuna başladıktan sonra Joystick'i sola çekerek ve F1'e basarak diğer bölümlere geçebilirsiniz.
Commando, Punchy, Hunchback, Boulderdash, Falcon, Patrol, Miner 2049'er (Hakan KANTAŞ, İstanbul)
Commando : POKE 2225,X Punechy 1: POKE 15458,X Hunchback POKE 1647,X Boulderdash : POKE 4044,X Falcon Patrol : POKE 4140,X
Miner 2049'er : POKE 2685,65:POKE 2474,255 X: Almak istediğiniz hak sayısı. Phantoms of The Asteroid, Pitfall, Bmx Simulator, Orpehus and Undereworld, Ghostbusters (Ethem ELA GÖZ, Merzifon) Oyunları yükledikten sonra RESET edin ve POKE'ları yazın. SYS adressi ile çalıştırın.