Commodore sayı 19, sayfa 62
Sayfanın metni

Sayfa 62

ZI

BURAK KİPER

RUN-STOP/RESTORE

TUŞUNU ENGELLEME

Bildiğiniz gibi çalışan bir programı RUN-STOP/RES-TORE tuşlarına basarak kırabilirsiniz. Bu tuşların etkisini

POKE 808,PEEK (808)-3 komutu ile kaldırabilirsiniz. Dilerseniz aşağıdaki ufak programı yazarak POKE komutunuzun etkisini görün.

410 POKE 808,PEEK (808)-3 20 PRİNT “Bu bir denemedir”;

30 GET AS:İF A$ THEN PRİNT:PRİNT“Program durduruldu” POKE792,51:POKE793,255

komutlarını kullanarak sadece RESTORE tuşunu da etkisiz hale getirmeniz mümkün. Ufak bir BASIC programı ile de RUN-STOP tuşunu etkisiz hale getirebilirsiniz.

10 TRAP 100 20 PRİNT “Bu bir denemedir.”; 30 GOTO 20 400 PRİNT “RUN-STOP tuşuna basıldı.” 4140 RESUME NEXT

SAVE KOMUTUNU ENGELLEME

SAVE vektörü de hafızanın üçüncü sayfasında bulunur, 818/819 LIST komutunu engellemekte kullandığımız teknikleri burada da kullanabiliriz, mesela;

POKE 818,61:POKE 819,255

komutu ile bilgisayar kendisine SAVE komutu verildiğinde açılış ekranına dönecektir. POKE komutları ile programlarımızı nasıl koruyabileceğimizi gördük, şimdi de bir iki ufak BASIC programı vasıtası ile programlarımızı nâsıl koruyabileceğgimizi görelim. İşe program döküm ekinde bulacağınız 4 numaralı programı yazarak başlayın. Yazdığınız programı RUN 63000 komutu ile çalıştırabilirsiniz. Herhangi bir BASIC programınızın sizin için önemli olan satırlarını gizlemek istediğinizde bu satıra herhangi bir komut yazmadan evvel beş tane kolon yazın, daha sonra o satırda bulunması gereken komutları yazabilirsiniz. Gizlemek istediğiniz satırlara örnek olarak üstünde programın çalışmasını sağlayacak olan şifreyi taşıyan bir satırı örnek verebiliriz. Gizlemek istediğiniz satırları olan bir programınız varsa programınızın sonuna 63000'inci satırdan evvel bizim verdiğimiz programı ekleyin ve gizlenecek satırların başına beş kolon koyun. İlk olarak RUN 63000 komutu vererek bizim programımızı çalıştırdığınızda önünde beş kolon bulunan satırlar görünmez olacak, sadece satır numaraları kalacaktır. DELETE 63000- komutunu verdikten sonra programınızı bu hali ile tekrar SAVE edin. Yalnız dikkat etmeniz gereken nokta, eğer programınızın orijinal halini saklamazsanız bir daha gizlediğiniz satırları kendinizin bile göremeyeceğidir. Gizleyici Programımızın açıklamasını yapalım: 63000: BASIC'in başlangıcı LI değişkenine saklanıyor. Eğer bu programı C64'te çalıştırmak istiyorsanız LI—45 yerine LI—-43 yazmanız gerekir. 63020: Programdaki her byte'ı tek tek kontrol etmek yerine program bağlantılarına bakıyoruz, böylece programımız daha hızlı çalışıyor. 63030: LI-0 olduğunda program sona erer. 63040: Ekrana o anki satır numarası yazılıyor. 63050: X$ değişkeninde korunmuş satırların numarası saklanıyor. 63060: Yeni başlayacak satır LI değişkeninin içeriğine eşittir. 63070: İncelenmekte olan satırın ilk beş karakterine bakılıyor. 63080: Her normal satır, yani başında beş kolon bulunmayan satır FL değişkenini bire, | değişkenini de sekize eşitler. 63100: Eğer FL— 1 ise bir sonraki satıra geçeriz, aksi takdirde üzerinde çalıştığımız program bitmiş de- Mektir. 63110: Üzerinde çalışılan satır korunur, satırın ilk kolonuna sıfır değeri gelir. Program sıfır değerini gördüğünde bunu satırın sonuna gelinmiş kabul eder, böylece o satır varolmasına rağmen gösterilmez.

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