Bu sayfadaki yazılar
Sayfanın metni
Sayfa 34
için MOUNT komutu kullanılır. Amiga ilk açılışta şu araç adlarını tanır:
Df0:,PRT:,SER:,RAW:,RAM:,CON: Amiga'ya bağlanacak yeni bir araçla ilgili bilgiler devs directory içindeki mountlist dosyasında mevcutsa MOUNT araç adı komutunu verebilirsiniz. Bu şekilde Amiga'nın tanıyabildiği araçlardan bazıları:
AUX: Seri port bağlantısını destekler. PIPE: Bir task'ın başka bir task'tan bilgi almasını sağlar. RAD: Fiziksel bir sürücü gibi çalışan RAM Disk. NEWCON: Con türü pencerelere shell penceresi özelliklerini (satırları kursorla editleme, önceki komutları kursorla geri çağırma (history buffer)) kazandırır.
SPEAK: Amiga'nın konuşma sentezleyicisini aktif hale getirir.
FROM dosya seçeneğiyle MOUNT komutunun, herhangi bir araçla ilgili bilgileri FROM ile belirtilen dosyadan okumasını sağlayabilirsiniz. Bu argümanı belirtmezseniz MOUNT komutu Mountlist dosyasına bakar.
Örnek:
1 > mount rad: NEWCLI Format: NEWCLI [PENCERE ÖZELLİKLERİ] [FROM dosya-adı] NEWCLI komutu, yeni bir pencerede, yeni bir task numarasıyla yeni bir CLI başlatır. Böylece Amiga'yı, CLI'den multitasking kullanma olanağına sahip olursunuz. Multitasking çalışma ile ilgili fazla bilgi için Amiga Dünyası Sayı 6, Amiga Dost yazısına bakın. Pencere özellikleri seçeneğine bir örnek verecek olursak:
1> newcli con:30/30/230/130/pencere Yeni pencere 200 piksel genişliğinde ve 100 piksel yüksekliğinde olacaktır.
FROM dosya-adı seçeneği, NEWCLI komutunu verip yeni bir CLI penceresi başlattıktan sonra, dosya-adı ile belirttiğiniz script dosyasının otomatik olarak çalıştırılmasını sağlar. Her NEWCLI komutunda S directory'si içindeki CLI-Startup dosyasının çalıştırıldığını daha önce belirtmiştik (Bakın: Amiga Dünyası, Sayı 5, Amiga Dost). Eğer script dosyası başka bir directory içinde yer alıyorsa path adını dosya adının başına eklemeyi unutmayın.
Örnek:
1 > newcli from s/basla NEWSHELL Format: NEWSHELL [PENCERE ÖZELLİKLERİ] [FROM dosya] Yeni bir shell penceresi ve ortamı başlatmak için NEWSHELL komutunu kullanabilirsiniz. Ancak NEWCLI komutundan farklı biçimde aşağıdaki noktalara dikkat etmeniz gerekli.
- Öncelikle MOUNT NEWCON: komutuyla yeni açılacak pencerenin newcon özelliklerine sahip olmasını sağlayın.
- Daha sonra RESIDENT CLI L:Shell-Seg System komutuyla shell-segment handler'ını bellekte hazır hale getirin.
Yukarıda verdiğimiz iki komut orijinal Workbench 1.3 startup-sequence dosyasında yer almaktadır ve Workbench yüklenirken bu komutlar da çalıştırılır.
S directory'si içindeki Shell-Startup dosyası, DOS işaretinin (prompt) nasıl olacağını belirler ve her NEWSHELL komutunda çalıştırılır.
Pencere özellikleri ve FROM dosya-adı seçenekleri, NEWCLI'ye benzer biçimde, yeni bir SHELL penceresinin istenen boyutlarda ve adı belirtilen dosya çalıştırılarak açılmasını sağlar.
Örnek:
1>newshell PATH Format:
PATH [SHOW] [directory ADD] [RESET] PATH komutu, diğer komut ve dosyaları bulmak ve yüklemek için DOS'un izleyeceği yolu (path) görmenizi, değiştirmenizi veya yeni yollar eklemenizi sağlar.
PATH komutunu argümansız veya SHOW seçeneği ile verecek olursanız DOS'un komut için bakacağı directory'lerin listesini alırsınız. Bu listedeki directory'lerin sırası aynı zamanda bakılma sırasını da belirtir.
Eğer DOS'un bir komut için bakacağı yolu kendiniz belirlemek isterseniz ADD seçeneğini kullanabilirsiniz. Örneğin:
1> path ram:c add komutundan sonra vereceğiniz komutlar için RAM diskteki C directory'sine bakılır. ADD seçeneği burada opsiyoneldir ve yazmasanız da olur.
RESET seçeneği ile eski path'leri silip bunların yerine yeni path'ler ekleyebilirsiniz. Örnek:
1> path reset df0:c ile RAM:c olan eski path iptal edilir ve df0:c yeni path olarak kullanılmaya başlanır.
PROMPT Format: Prompt işaret karakteri Bu komut DOS işaret karakterini değiştirir. CLI'nin orijinal karakteri task numarası ve onun arkasından gelen büyüktür işaretidir (1>).
PROMPT komutunun arkasına yeni DOS işaretini yazı olarak yazabilirsiniz. Eğer yazıda karakterlerin arasında boşluk varsa bu yazıyı çift tırnak içinde girin. Örnek:
1>prompt "komutu girin:" DOS işaretini PROMPT %N> yazarak eski haline getirebilirsiniz. Eğer SHELL kullanıyorsanız PROMPT "%n.%S> " komutuyla hem task numarasını hem de hangi directory içinde olduğunuzu (CD) görebilirsiniz.
Bu aylık da bu kadar. Önümüzdeki ay yeni komutlarla buluşmak üzere hoşçakalın.
Klavyeyle gezinmek için ← ve → tuşları.
Sayfa 35
Merhaba... Geçen sayı son olarak, Amiga Basic'in CLS komutunu incelemiştik. Dikkat ettiyseniz, komutları alfabetik sırasıyla ve Amiga'nız ile birlikte verilen kitapçıktaki sırayla anlatıyoruz. Komutlar biraz ilerlediğinde, örnek programcıklara başlayarak konuyu pekiştirmeye çalışacağız. Konunun en kolay anlaşılmasının yolu örneklerle çalışmak. Siz de küçük programlar yapıp yeni komutları kullanabilirsiniz.
COLLISION KOMUTU:
Kullanım Şekli: COLLISION(Obje-no) COLLISION fonksiyonu, objelerin birbiri ile ya da içinde bulundukları pencere çerçevesi ile çarpışması için kullanılır. OBJECT.SHAPE yönergesi ile tanımlanmış bir obje, başka bir obje ile ya da içinde bulunduğu pencerenin çerçevesi ile çarpıştığında, bir COLLISION oluşur. İşte hangi objelerin birbiriyle çarpıştığını tespit etmek için bu fonksiyon kullanılır.
Bu kullanım şekli, COLLISION'ın bir fonksiyon olduğu durumları belirtir. AmigaBasic aynı anda 16 çarpışmayı bir çarpışma kuyruğu (collision queue) halinde arka arkaya dizerek tutabilir. 16'dan sonraki tüm çarpışma bilgilerini atar. COLLISION fonksiyonunun her çağrılışında, kuyruktan bir çarpışma bilgisi atılarak yeni çarpışmalar için yer açılır.
COLLISION aslında tüm bilgisayarlarda BASIC'i aşan bir komut. Genelde profesyonel programcılar bu fonksiyon için Assembler ve C gibi dilleri kullanırlar.
Birbiri ardına yazılan her collision kuyrukta arka arkaya dizildiği için, arkadan gelen çarpışmaların her biri için bir gecikme süresi oluşur.
Komut formatında çarpışmaya sebep olan objenin numarası, parantez içinde yönergenin yanına yazılır. Obje numarası -1 ile OBJECT.SHAPE ile tanımlanan en yüksek obje numarası sınırlarında olabilir.
Fonksiyonun sonucu ise, obje numarasını vererek sorduğunuz obje ile çarpışan objenin numarasıdır. Tabii bu pencere ile çarpışmaların sonucu da olabilir.
obje-no 0 ise, fonksiyon, çarpışma kuyruğundan bir bilgi atmaksızın son çarpışmaya sebep olan objenin numarasını verir.
COLLISION(-1), çarpışmanın oluştuğu pencereyi verir. Bu birden fazla pencere kullandığınızda çarpışmanın hangi pencerede oluştuğunu bilebilmeniz açısından faydalıdır.
obje-no sıfır değilse, fonksiyon obje-no ile çarpışan objenin numarasını verir ve çarpışma kuyruğundan bir çarpışma bilgisi atılır.
Fonksiyon, -1 ile -4 arasında negatif bir değer alırsa, obje-no ile belirtilen obje içinde bulunduğu pencerenin dört çerçeve kenarından biri ile çarpışmış demektir:
-1 Üst kenar -2 Sol kenar -3 Alt kenar -4 Sağ kenar COLLISION ON COLLISION OFF COLLISION STOP KOMUTLARI: Kullanım Şekli: COLLISION ON
COLLISION OFF COLLISION STOP Bu komutlar, obje çarpışmalarının event trapping'i için kullanılan komutlardır. COLLISION ON komutu, bilgisayarın çarpışmalarını izlemeye başlamasını sağlar. COLLISION OFF komutu izlemeye son verir, COLLISION STOP ise bir COLLISION ON komutu gönderilene kadar çarpışmaları izlemeyi durdurur.
COLLISION ON komutu verildiğinde, bir çarpışma oluştuğu zaman ON COLLISION .... GOSUB ile uygun bir rutine dallanma yapabilirsiniz. Bu, çarpışma oluştuğunda event trapping'e olanak (event trapping'i hatırlıyorsunuz değil mi?) sağlamak demektir. Tabii sonra da COLLISION fonksiyonu ile çarpışan objeler tespit edilebilir.
COLLISION OFF, program içinde bir COLLISION ON yönergesi çalıştırılana kadar hiçbir event trapping'i umursamaz. COLLISION STOP fonksiyonu ile ise event trapping beklemeye alınır, ancak COLLISION ON yönergesi işletilince event trapping'i devreye sokar.
COLOR KOMUTU: Kullanım Şekli: COLOR [ön zemin renk-no] [,arka zemin renk-no] Kullanılacak ön ve arka zemin renkleri-
BASIC
ni belirtmek için kullanılır. AmigaBasic bu komutla verilen ön zemin renk numarasını çizim noktalarını, çizgileri, alan doldurma ve yazı rengi olarak kullanır. Arka zemin renk numarası ise tüm bunların arkasındaki zeminin renk numarası olarak verilir, ön zemin renk-no ve arka zemin renk-no bildirimlerinin herbiri, bir PALETTE yönergesinde tanımlanan renk numaralarına karşılık gelir.
Programda tanımlanmış bir COLOR yönergesi yoksa ve bir palet yönergesi sistem renklerini iptal etmemişse, AmigaBasic sistemdeki tanımlı renkleri kullanır. Bu renkler, başlangıçta ön zemin beyaz, arka zemin mavi olarak tanımlanmıştır. Workbench'teki Preferences aracından sistem renkleri değiştirilmişse, geçerli renkler bu renkler olur.
Başlangıçta tanımlı renkler ön zemin için 1 (beyaz), arka zemin için 0 (mavi)'dır. Örneğin ön zemin rengini portakal, arka zemin rengini siyah yapmak isterseniz, COLOR 3,2 yönergesini kullanmalısınız.
COMMON KOMUTU: Kullanım Şekli: COMMON değişkenlistesi
CHAIN komutu ile ana program içinden çağrılan bir alt programa değişken geçişlerini tanımlamak için kullanılır. Yönerge her zaman CHAIN yönergesi ile birlikte kullanılır ve programın herhangi bir yerinde olabilir. Ancak tanımlamanın programın başlangıcında yer alması tavsiye edilir. Çünkü böylece dallanma yapılmadan önce geçişi istenen değişkenlere karar verilecektir. Bu da, program kontrolünde olabilecek hataları azaltacaktır.
Program içinde birden fazla COMMON yönergesi kullanılabilir, ancak her değişken sadece bir kez belirtilir. Dizi değişkenleri, değişken ismine parantezler ("()") eklenerek ifade edilir. CHAIN yönergesinde ALL opsiyonu kullanılırsa, tüm değişkenler alt programa geçirilir ve COMMON yönergesi umursanmaz. Bir genel kullanım örneği verirsek:
CHAIN "program adı" COMMON A,b$,X%,Renkler(),dizi$()
CONT KOMUTU: Kullanım Şekli: CONT Bir programın çalışması Run menüdeki Stop seçeneği, CTRL-C, CTRL-F3 tuşları ya da program içindeki STOP komutu ile kesildiğinde, bu komut ile kaldığı yerden devam ettirilebilir.
Bu fonksiyon özellikle programın test edilmesinde STOP ile birlikte hata ayıklama için çok faydalıdır. Çalışma kesildiğinde programın aşamasında program değişkenlerinin değerleri sorulabilir ve dış pencereden doğrudan modda bu değerler değiştirilebilir. Sonra da yine bu modda CONT veya GOTO ile program tekrar çalıştırılabilir. GOTO komutu kullanıldığı durumlarda program burada belirtilen satırdan çalışmaya başlar. CONT bazen bir hata oluştuğunda da kullanılabilir. CONT, kesinti esnasında editlemeler yapıldığında geçerlidir. Bir STOP ve CONT kullanımı örneği vererek bu komutun tanıtımını tamamlayalım: