1 Eylül 1987 Tarihli Commodore Gazetesi Sayfa 47

1 Eylül 1987 tarihli Commodore Gazetesi Sayfa 47
Metin içeriği (otomatik olarak oluşturulmuştur)

Eğer daha önce verdiğimiz dosya adlarını kullanmışsanız, disketimizin üzerinde G harfi ile başlayan bir tek program dosyası var demektir. Dis- ketimizin üzerinde G ile başlayan bir tek program olduğuna göre, LOAD *G6*”,8 komutunu verebiliriz. 1541, directory'de rastlayacağı G harfi ile başlayan ilk program dosyasını bil- gisayara gönderecektir. Peki LOAD **F** 8 dese idik ne olacaktı? Tabii ki, F ile başlayan ilk dosya dolacak- tı. Ancak burada 1541'in azizliğine uğrayabiliriz. Kimi zaman 1541'in kafası karışır ve bize istediğimiz dos- yayı göndermez. Bunu önlemek için LOAD “:F*",8 demek daha garan- tili olacaktır. İki nokta üstüste koy- mamız, 1541'in directory'i en baştan aramaya başlamasını sağlayacaktır. LOAD '*:2Z**”,8 komutunu versey- dik, ilk iki harfi ZZ olan ilk dosya adı ZZZ olduğu için, o dosya yüklene- cekti. Bir diğer özel karakter de soru işa- retidir. Eğer dosya adının içinde bil- mediğimiz ya da hatırlamadığımız bir harf varsa, bu harfin yerine soru işa- reti koyabiliriz. Örneğin LOAD “:9F”,8 verdiğimizde ikinci harfi F olan ve iki harflik ada sahip ilk prog- ram yüklenecektir. Bizim durumu- muzda bu AF olacaktır (Dikkat, FF değil, çünkü o daha sonra geliyor). Eğer LOAD “:2F**,8 verseydik, bu durumda uzunlukla ilgili kısıtlama ortadan kalkacak ve yüklenecek program AFITAP olacaktı. LOAD “*:*",8 verirsek disketteki ilk program yüklenecek. * ve ? ile oluşacak kombinasyonları VERİFY ile de kullanabilirsiniz. Bu tür bir dosya adını SAVE ile kullanırsanız, 1541 hata verecek, kırmızı ışık sizi he- men uyaracaktır. Bu karakterleri directory yükler- ken de kullanabilir, böylece sadece is- tediğimiz dosya adlarının bilgisaya- ra gönderilmesini sağlayabiliriz. Ör- neğin LOAD “$:D*”,8 ile gelecek dosya isimleri DENEME, D, DD, DENEMEİL ve DEN olacaktır. Eğer D* yerine DD* kullanırsak, sadece DD'yi görürüz. DE* ise bize DENE- ME, DENEMEİ ve DEN dosyaları- nı gösterecektir. LOAD “$:29”,8 diyerek iki karak- ter uzunluktaki dosyaların isimlerini isteyebiliriz; AF, DD, FF, ZZ gibi. AD “$:9F**,8 sonucunda da AFITAP, AF ve FF dosyaları gele- cektir.? Şimdi ilginç bir konuya geldik. Normalde SA VE **xxx”',8 komutu ile bir programı diskete gönderdiğiniz- de dosyanın tipi otomatik olarak PRG olacaktır. LOAD “xxx"”,8 ise XXX adlı PRG tipi bir dosya arayıp yükleyecektir. Ama küçük bir hile ile programlarımızı SEO veya USR tip- leri halinde de saklayabiliriz. Şu ko- mutu verin: SAVE “DENİ,5,W*,8 Şimdi directory'i yükleyip bir göz atın. DENİ isimli bir dosyanın SEO tipine sahip olduğunu göreceksiniz. Şimdi de şu komutu verin: SAVE “DEN2,U,W”,8 Tahmin edebileceğiniz gibi, şimdi de USR tipinde bir dosyamız oldu. Aslında bambaşka amaçlar için kul- lanılan SEO ve USR tiplerini kendi amaçlarımız için kullandık. Ancak bu dosyaları LOAD “DENL1”,8 veya LOAD “DEN2”,8 ile yükleyemeyiz. Kullanılacak ko- mutlar: LOAD “DENI,S,R”,8 veya LOAD “DEN2,U,R”,8 olmalıdır. Yukarıdaki SAVE ve LOAD ko- mutlarında geçen R (Read, oku) ve W (Write, yaz) komutları, aslında ve- ri dosyaları oluşturmakta kullanılır. Bunu da ileride göreceğiz. Hazır disketimizde PRG, SEÖO ve USR tipi dosyalar varken, directory yüklemesinin bir diğer tür”1 ü göre- lim: LOAD “$:*—-PRG”,8 ile sadece PRG tipi dosyaları, LOAD “$:*—SEÇ”,85 ile sadece SEO tipi dosyaları, LOAD “$:*—-USR”,8 ile sadece USR tipi dosyaları, LOAD “$:ı*-DEL”,8 ile sadece DEL tipi dosyaları, LOAD “$:*—-REL,8 ile sadece REL tipi dosyaları görmemiz müm- kün olacaktır. Yukarıdaki komutlarda üç harfli dosya tipleri yerine sadece ilk harf- lerini de kullanabilirsiniz. Örneğin bu durumda disketteki SEÖO tipindeki dosyalardan sadece ilk harfi B olan iki harfli dosya adları görünecektir. Tüm bunlardan farklı olarak, SA- VE Komutuna özgü bir diğer şekil daha vardır. Eğer disketimizin üze- rinde XXX adlı dosya varsa, biz SA- VE “XXX*,8 ile yeni bir dosya da- ha gönderemeyiz. Ya yeni dosyaya yeni bir isim vermemiz gerekir, ya da eski dosyanın yerine yenisini koyma- mız. İkincisini yapmanın da iki yolu var. Ya ileride göreceğimiz disket ko- mutları ile eski dosyayı silmek ve SA- E “XAX”,8 komutunu yeniden vermek, ya da aşağıdaki komutu kul- lanmak: SAVE “O:ıXXX”,8 1541, önce yeni dosyayı diskete alacak, sonra eski dosyayı silecektir. Dolayısıyla SAVE sırasında elektrik kesilirse eski dosya bozulmamış ola- caktır. Ancak bu komutu kullanma- nızi kesinlikle tavsiye etmiyoruz. Çünkü, DOS'daki küçük bir hata ne- deniyle disketinizin üzerindeki birkaç programı bu komutu kullandıktan sonra kaybetmeniz olası, Bu satırla- rın yazarı, bu acı tecrübeyi birkaç kez yaşadı... En iyisi, eski dosyayı silip yenisini ondan sonra göndermek. — Eğer bir SAVE, LOAD veya VE- RIFY işlemi sırasında 1541 takırda- maya başlarsa, disket üzerindeki bir alan fiziksel olarak bozulmuş demek- tir. İlk yapacağınız iş, eğer hâlâ bo- zulmamışlarsa, disketteki diğer dos- yaları başka disketlere aktarmak. Sonra da disketi yeniden formatla- mayı deneyin. Eğer sonuç alamazsa- nız, disketi atmaktan başka bir çare- niz yok, Eğer SAVE işlemi sırasında bilgi- sayar READY verdiği halde kırmızı ışık yanıp sönüyorsa iki olasılık var- dır. Ya aynı adlı bir dosya daha var- dır ya da diskette geri kalan boş blok sayısı programınızı alamayacak ka- dar azdır. Önce başka bir isim dene- yin, olmazsa da yeni bir disket, tabii ki formatlı olanlarından. Şu ana kadar gördüklerimiz hep BASIC programların LOAD ve SA- VE edilmesi içindi. Peki makina dili programlar için ne yapacağız?.. Eğer disketinizde hazır makina dili programlar varsa, LOAD “İSİM”',- 8,1 ile yükleyebilirsiniz. Eğer 8'den sonra gelen 1'i unutursanız ve kaza- ra RUN komutu verirseniz elde ede- ceğiniz sonuç, SYNTAX ERROR olacaktır. ,8,1 ile yükledikten sonra program kendiliğinden başlamamış- sa, ya bir SYS komutu gerekmekte- dir, ki bu durumda SYS komutunun arkasından gelecek 0-65535 arası sa- yının bilinmesi gerekir, ya da RUN/STOÖP-RESTÖORE tuşlarına basmanız gerekmektedir. ÖO progra- mı alırken nasıl başlatılacağını da öğ- renmiş olmanız gerekiyor. 47

Bu sayıdan diğer sayfalar: