Bu sayfadaki yazılar
Sayfanın metni
Sayfa 43
ADI : S.BFLASH
20010 BELASH 10,0,1:PAUSE 5 BELASH 40,2,10:PARUSE & 00030 BELASH 5S 20040 BFLASH &
PROGRAM ADI : S.ON ERROR
ON FOR TÜ -i STEP -İ
00030 PRİNT "KOK 00040 NEXT I:END NO ERRÜR 68118 PRINT " HATALI HESAPLAMA, SATIR: "ER RLN
PROGRAM ADI
FCOL 6,15 90026 FOR 151024 Tü 2023:POKE Iİ,1İ:NEXT 229025 FOR Izi TO R,C, 20832 FÜR Izi TO 180:G0SUB 1İ000:FOR TO TO 108:NE XT 00040 END 21000
PROGRAM ADI : S.PAUSE
PRİNT SANİYE B :PAUSE SıPRINT TI$ "<RIİGHT>SIMDIİ D E 8 SANIYE...",SiPRINT TI$
PROGRAM ADI : S.PLACE
POKE 632,34:POKE 633,20 iPOKE "ASF 00020 POKE 632,34:POKE 633,20 198,3:1NPUT "2.KELİMENİZ 20040 PRİNT <3DOLİN>" RUN
PROGRAM ADI :
PRİNT 6,15 FOR Isi TO FOR Izi TO RNDS)415,
PROGRAM ADI S.NRM-BCKGNDS -COLOUR
209005
60030 00040
CSET iİ:COLOUR 15,15 VEB T ır
PRİNT "<RYSON>"ASIP RINT B$:PRIİNT "<RVSON>"B$ >) 4 FOR Isi TO 200:NEKT Aşz" " THEN 48 NRM
20068
—DEN A
PROGRAM ADI : S.INKEY
THEN 18 IF AND İNT<Cİ/2)-1/2 THEN PRİNT "SHİFT 18 IF Iİ<9 THEN PRİNT IF THEN PRİNT HIFT iğ PRINT "Cs F"I:60T0 18
22818
"Cz VE 5S
PROGRAM ADI :
00010 POKE 631,34:POKE 632,34:PÜKE 633,20 :POKE 198,3:1NPUT "iİ.KELİMENİZ 00020 POKE 631,34:PÜKE 632,34:POKE 633,20 iPOKE 198,3:1NPUT "2.KELİMENİZ 088030 INPUT "KACINCI HARF "ASİF ) THEN 38 PRİNT RUN
PROGRAM ADI S.INSERT POKE 631,34:POKE 632,34:POKE 635,20 :POKE "iİ.KELİMENİZ POKE 631,34:POKE 632,34:POKE 633,20 iPOKE 13938,3:1NPUT "2.KELİMENİZ A0030 INPUT "KACINCI HARF THEN 3â PRİNT RUN
PROGRAM ADI : S.DUP
00010 POKE 631İ,34:PÜKE 632,34:POKE 633,28
198,3:1INPUT "KELİMENİZ 00030 INPUT "KAC KERE"; 00040 IF LENCAS)*A>2SS THEN PRİNT "COK UZ
UN 68850 PRİNT RUN
PROGRAM ADI : S.AT
64":B$z"46 ERODOMMOC" FOR TO
FOR Isi TO 8:PRİNT KT
FOR T FOR EKT
TÜ
Isi TÜ âT(2041,841)B$:N
PROGRAM ADI : S.CENTRE
00018 20048
DIM FOR Isi TÜ FOR Js1 TO NEXT
b yu
FOR Isi Tü RINT
"<CLR>"
"<CLR
Klavyeyle gezinmek için ← ve → tuşları.
Sayfa 42
parametreleri şu zemin renklerini belirler:
renk1:Normal renk2:SHIFT+harf renk3:Negatif karakter (revers) renk4:SHIFT+negatif karakter
Tekrar normale dönmek için NRM komutu yeterli olacaktır. A$=POS(string1,string2) ile de kolayca string2'nin hangi karakterinden itibaren string1'in yer aldığı öğrenilebilir. Yukarıda verdiğimiz tüm komutlar, DUP dışında, sadece program içinde kullanılabilir. Direkt olarak ekrana yazıldıklarında elde edilen sonuçlar oldukça garip olacaktır.
Hata Komutları
Siz de mi, devamlı ERROR mesajları ile programınızın kesilmesinden bıktınız? Çaresi SIMONS' BASIC'de var.
Programın en başında ON ERROR GOTO XXXX komutunu kullanın. ON ve ERROR arasındaki boşluğa dikkat. Artık bir hata ortaya çıktığında bilgisayar işini durdurmayacak ve sizin belirttiğiniz satıra gidecektir. Siz de bu satırda gerekli işlemleri yaparsınız. Eğer artık programın geri kalan kısmında hata çıkmayacağına eminseniz ve ON etkisini kaldırmak istiyorsanız, NO ERROR kullanın. Artık hata olursa program duracaktır. Bu komutu kullanmanız gereken bir yer daha var. Eğer programda ON ERROR'u aktif hale getirmişseniz ve programı da STOP ile durdurmuşsanız veya program bitmişse, NO ERROR komutunu vermeniz gerekir. Yoksa bilgisayarınız bazı gariplikler yapacaktır. ON ERROR'la programı gönderdiğiniz satırda ERRN değişkeninden oluşan hatanın numarasını, ERRLN'den de hatanın oluştuğu satırın numarasını alabilirsiniz. Baktınız, hata çok büyük ve programın durması lazım. O zaman da OUT komutu ile en son oluşan hatanın mesajını verip programı durdurabilirsiniz.
Çevre Birimleri
SIMONS' BASIC gerek yazıcı, gerek disk ünitesi, gerekse paddle, lightpen, joystick gibi çevre birimlerini destekleyen komutlar da içeriyor. Bunlardan COPY, DIR, DISK ve MERGE komutlarını önceden görmüştük. Bunların yanısıra HRDCPY komutu ile, normal yazı ekranını COMMODORE 64'e bağlanabilen herhangi bir yazıcıdan bastırabilirsiniz.
SCRSV ile gene normal yazı ekranını diskete veya kasete kaydedebilirsiniz. Kullanımı tıpkı OPEN komutu gibidir. Örneğin:
SCRSV 1,1,2, “EKRAN” :REM kasete SCRSV 4,8,3, “EKRAN,S,W” :REM diskete
SCRLD ile de yazı ekranı tekrar ekrana yüklenir. Örneğin:
SCRLD 5,1,0, “EKRAN” SCRLD 9,8,0, “EKRAN,S,W”
Her iki emir de, hangi kanal kullanılırsa kullanılsın, CLOSE 1 yaparlar. Kimi SIMONS' BASIC türleri, ERROR komutu ile disk sürücüsünün hata kanalını okuyup ekrana yazar. PENX ve PENY değişkenleri, lightpen'in o anda ekranda gösterdiği X ve Y koordinatlarını içerirler. A=PENX örneğindeki gibi öğrenilebilirler. A=POT(no) yapıldığında da, birinci port'a bağlı paddle'lardan 'no' numaralı olanın o anki değeri elde edilir. Ya 0'dır ya da 1. İşte geldik son komutumuza... JOY değişkeni de, o anda joystick-2'nin durumunu belirtir. A=JOY ile elde edilecek sayıya göre aşağıdaki anlamları çıkarabiliriz:
0:Kol oynamıyor 1:Yukarı 2:Yukarı sağa 3:Sağa 4:Aşağı sağa 5:Aşağı 6:Aşağı sola 7:Sola 8:Yukarı
Eğer o anda ateş tuşu da basılıysa, sonuca 128 eklenecektir. Kimi SIMONS' BASIC'ler, önceden JOY1 veya JOY2 yapıp okunacak port'u ayarlayıp, sonra JOY değişkeninin kullanılmasını mümkün kılarlar. Örnek programımız da buna göre ayarlanmıştır.
Eveeeeet... Artık bitti. İnşallah işinize yaramıştır ve inşallah SIMONS' BASIC'le artık başınız belaya girmez.