Commodore sayı 26, sayfa 48

Bu sayfadaki yazılar

Sayfanın metni

Sayfa 48

Bu POKE'u gönderen, Bandırma'dan Sinan BUĞDAYCI ve Manyas'tan Serdar AK'a teşekkür ediyoruz. Eğer bir oyunda kolaylık sağlayan bir ipucunu başkaları ile paylaşmak isterseniz bize gönderin:

Commodore Dergisi, Oyunlar İçin Kolaylıklar Köşesi Silahhane Cad. Ralli Apt. 59/3 80200 Teşvikiye-İstanbul Ouedex: Başlangıç menüsünden PLANE DESIGNER ekranını seçin ve 07356 77261 sayısını yazıp ateş tuşuna basın, Thundercats: Tüm düzeylerde sonsuz hakka sahip olmak isterseniz bilgisayarınızı RESET edin ve

POKE 35088, 173

komutunu girin. Oyunu başlatmak için SYS2064 komutunu verin.

MAKİNE DİLİ

Makine dili ile çalışırken kullanabileceğimiz adreslerden bazılarını görelim:

Adres Kullanım Şekli 0000-0001 Bu adreslerden birinde veya her ikisinde birden değişiklik yaparak zamanın belirli bir bölümü seçilir. 0043-0044 Bu adreslerde BASIC programın yerleştiği hafıza bölümünün başlangıç adresi saklanır. PEEK(43) + 256 * PEEK(44) komutu bu adresi verir. Bu adresleri POKE ederek BASIC programın hafızaya yerleşeceği adresi daha yukarı alabilirsiniz. Normalde BASIC programlar $0801 adresinden başlarlar. POKE komutları ile BASIC programı hafızanın üst bölümlerine alıp bu kısmı SPRITE'lar için kullanabilirsiniz. Bu adreslerde nümerik değişkenler tablosunun başlangıç adresi saklanır. Bu tablo genellikle BASIC programın arkasından başlar. Dizilerin saklandığı bölgenin başlangıç adresini içerirler. Tüm diziler bu bölümde saklanır. Dizilerin saklandığı bölgenin bitiş adresini içerirler. Alfanümerik değişkenlerin saklandığı bölümün başlangıç adresini içerirler. BASIC RAM'in sonu olan adresi taşırlar. Bu adresi değiştirerek makine dili için bellek ayırabilirsiniz. Ayırmış olduğunuz bellek BASIC programlarından korunur. Mesela BASIC RAM'in $4000'de bitmesini sağlamak için: POKE 55,0:POKE 56,64 komutunu vermeniz yeterli olur. Son basılan tuşun kodu bu adreste saklanır. Eğer bu adresin içeriği 64'se, hiçbir tuşa basılmamış demektir.

Program Döküm Eki'ndeki PROGRAM-3, PRINT komutuna yeni bir özellik ekleyecek. Bu program çalıştığında PRINT komutu ile yazılması istenenler ses çıkararak ve çizgi şeklindeki bir kursor yardımı ile yazılacak. Bu programı diskete veya kasete SAVE etmeden evvel kesinlikle çalıştırmayın, çünkü program çalışması sırasında NEW komutu ile kendisini siliyor. Programda yapılabilecek bazı değişiklikler: Eğer programı RUN STOP/RESTORE tuşu ile durdurursanız, Yeniden aktif hale getirmek için: SYS 679 Programı durdurmak için: POKE 806,202:POKE 807,241 Kursoru değiştirmek için: POKE 728,X Kursorun yanıp sönme hızı: POKE 733,Y INPUT A şeklindeki veri giriş komutu: Program akışı bu komuta geldiğinde kullanıcıdan sayısal veri girmesini ister. Eğer bu sırada sayısal değerden başka değer girilirse programın çalışması durur. INPUT A$ şeklindeki veri giriş komutu: Eğer gerekli veri girişi yapılmadan RETURN tuşuna basılırsa program çalışması durabilir. GET A$ komutunu kullanarak ilk sorunu halledebiliriz. İkinci sorun da GET A$ komutunun kullanılması ile giderilebilir. Ancak, GET komutu kullanımı sırasında kursoru göstermediği için ve bir kerede kullanıcıdan sadece bir tek karakter aldığı için çok kişi bu komutu kullanmaktan kaçınır. Veri girişi sırasında hataları önlesek bile, alınan veriler hatalı neticeler verebilir. Mesela, karşılaşabileceğimiz hatalara INPUT A$ komutunun kullanılışı ile bir örnek verelim. Örneğimizde kullanıcıdan sayısal bir değer almak istiyoruz. Veri girişi sırasında herhangi bir hata ile karşılaşmamak için veriyi A$ değişkenine alacağız ve

0045-0046

0047-0048

0049-0050 0051-0052

0055-0056

0203

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