Commodore sayı 19, sayfa 47

Bu sayfadaki yazılar

Sayfanın metni

Sayfa 47

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. Disketimizin üzerinde G ile başlayan bir tek program olduğuna göre, LOAD komutunu verebiliriz. 1541, directory'de rastlayacağı G harfi ile başlayan ilk program dosyasını bilgisayara gönderecektir. Peki LOAD “*”,8 dese idik ne olacaktı? Tabii ki, F ile başlayan ilk dosya dolacaktı. Ancak burada 1541'in azizliğine uğrayabiliriz. Kimi zaman 1541'in kafası karışır ve bize istediğimiz dosyayı göndermez. Bunu önlemek için LOAD “:F*”,8 demek daha garantili olacaktır. İki nokta üst üste koymamız, 1541'in directory'i en baştan aramaya başlamasını sağlayacaktır. LOAD “:ZZ*”,8 komutunu verseydik, ilk iki harfi ZZ olan ilk dosya adı ZZZ olduğu için, o dosya yüklenecekti. Bir diğer özel karakter de soru işaretidir. Eğer dosya adının içinde bilmediğimiz ya da hatırlamadığımız bir harf varsa, bu harfin yerine soru işareti koyabiliriz. Örneğin LOAD “:?F”,8 verdiğimizde ikinci harfi F olan ve iki harflik ada sahip ilk program yüklenecektir. Bizim durumumuzda bu AF olacaktır (Dikkat, FF değil, çünkü o daha sonra geliyor). Eğer LOAD “*”,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ı VERIFY ile de kullanabilirsiniz. Bu tür bir dosya adını SAVE ile kullanırsanız, 1541 hata verecek, kırmızı ışık sizi hemen uyaracaktır.

Bu karakterleri directory yüklerken de kullanabilir, böylece sadece istediğimiz dosya adlarının bilgisayara gönderilmesini sağlayabiliriz. Örneğin LOAD “$:D*”,8 ile gelecek dosya isimleri DENEME, D, DD, DENEMEI ve DEN olacaktır. Eğer D* yerine DD* kullanırsak, sadece DD'yi görürüz. DE* ise bize DENEME, DENEMEI ve DEN dosyalarını gösterecektir. LOAD “$:?F”,8 diyerek iki karakter uzunluktaki dosyaların isimlerini isteyebiliriz; AF, DD, FF, ZZ gibi. LOAD “$:2F*”,8 sonucunda da AFITAP, AF ve FF dosyaları gelecektir. Şimdi ilginç bir konuya geldik.

Normalde SAVE “xxx”,8 komutu ile bir programı diskete gönderdiğinizde 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ı SEQ veya USR tipleri halinde de saklayabiliriz. Şu komutu verin:

SAVE

Şimdi directory'i yükleyip bir göz atın. DEN1 isimli bir dosyanın SEQ 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 kullanılan SEQ ve USR tiplerini kendi amaçlarımız için kullandık. Ancak bu dosyaları LOAD “DEN1”,8 veya LOAD “DEN2”,8 ile yükleyemeyiz. Kullanılacak komutlar:

LOAD “DEN1,S,R”,8 veya LOAD “DEN2,U,R”,8 olmalıdır.

Yukarıdaki SAVE ve LOAD komutlarında geçen R (Read, oku) ve W (Write, yaz) komutları, aslında veri dosyaları oluşturmakta kullanılır. Bunu da ileride göreceğiz. Hazır disketimizde PRG, SEQ ve USR tipi dosyalar varken, directory yüklemesinin bir diğer yönünü görelim: LOAD “$:*=PRG”,8 PRG tipi dosyaları, LOAD “$:*=SEQ”,8 ile sadece SEQ tipi dosyaları, LOAD “$:*=USR”,8 ile sadece

LOAD ile sadece USR tipi dosyaları, LOAD “$:*=DEL”,8 ile sadece

DEL tipi dosyaları, LOAD “$:*=REL”,8 ile sadece REL tipi dosyaları görmemiz mümkün olacaktır. Yukarıdaki komutlarda üç harfli dosya tipleri yerine sadece ilk harflerini de kullanabilirsiniz. Örneğin bu durumda disketteki SEQ tipindeki dosyalardan sadece ilk harfi B olan iki harfli dosya adları görünecektir. Tüm bunlardan farklı olarak, SAVE komutuna özgü bir diğer şekil daha vardır. Eğer disketimizin üzerinde XXX adlı dosya varsa, biz SAVE “XXX”,8 ile yeni bir dosya daha gönderemeyiz. Ya yeni dosyaya yeni bir isim vermemiz gerekir, ya da eski dosyanın yerine yenisini koymamız. İkincisini yapmanın da iki yolu var. Ya ileride göreceğimiz disket komutları ile eski dosyayı silmek ve SAVE “XXX”,8 komutunu yeniden vermek, ya da aşağıdaki komutu kullanmak:

SAVE “©:XXX”,8

1541, önce yeni dosyayı diskete alacak, sonra eski dosyayı silecektir. Dolayısıyla SAVE sırasında elektrik kesilirse eski dosya bozulmamış olacaktır. Ancak bu komutu kullanmanızı kesinlikle tavsiye etmiyoruz. Çünkü, DOS'daki küçük bir hata nedeniyle disketinizin üzerindeki birkaç programı bu komutu kullandıktan sonra kaybetmeniz olası. Bu satırları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 VERIFY işlemi sırasında 1541 takırdamaya başlarsa, disket üzerindeki bir alan fiziksel olarak bozulmuş demektir. İlk yapacağınız iş, eğer hâlâ bozulmamışlarsa, disketteki diğer dosyaları başka disketlere aktarmak.

Sonra da disketi yeniden formatlamayı deneyin. Eğer sonuç alamazsanız, disketi atmaktan başka bir çareniz yok.

Eğer SAVE işlemi sırasında bilgisayar READY verdiği halde kırmızı ışık yanıp sönüyorsa iki olasılık vardır. Ya aynı adlı bir dosya daha vardır ya da diskette geri kalan boş blok sayısı programınızı alamayacak kadar azdır. Önce başka bir isim deneyin, olmazsa da yeni bir disket, tabii ki formatlı olanlarından.

Şu ana kadar gördüklerimiz hep BASIC programların LOAD ve SAVE edilmesi içindi. Peki makine dili programlar için ne yapacağız?

Eğer disketinizde hazır makine dili programlar varsa, LOAD “İSİM”,8,1 ile yükleyebilirsiniz. Eğer 8'den sonra gelen 1'i unutursanız ve kazara RUN komutu verirseniz elde edeceğiniz sonuç, ERROR olacaktır. ,8,1 ile yükledikten sonra program kendiliğinden başlamamışsa, ya bir SYS komutu gerekmektedir, ki bu durumda SYS komutunun arkasından gelecek 0-65535 arası sayının bilinmesi gerekir, ya da RUN/STOP-RESTORE tuşlarına basmanız gerekmektedir. O programı alırken nasıl başlatılacağını da öğrenmiş olmanız gerekiyor.

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