Bilgisayarınız OKUMA-YAZMA'yı Unutunca
Retro bilgisayarMerhabalar! Amiga, özellikle fiyatı göz önüne alındığında eşi az bulunur bir bilgisayar. Ancak bu güzel alet, zaman zaman canımızı sıkabiliyor. İlk örnek meşhur GURU'muz. İkinci sırada ise arada sırada bilgisayarımıza gelen cehalet rüzgarlarından olsa gerek, okuma yazmayı unutması, yani READ/WRITE ERROR vermesi. PC kullanıcıları benim gibi fanatik Amiga hayranlarını bu gibi minyatür hataları ön plana çıkararak kızdırmaktan her nedense büyük haz duyuyorlar. Sanki hayatlarında PC'de hiç Bad CRC read on Drive A: veya Stack Overflow System Halted mesajları görmemişler gibi. Bunları bir kenara bırakalım ve kendi sorunlarımıza dönelim. Maalesef size Guru mesajlarından kurtulmak için garanti bir yöntem veya program öneremeyeceğim. Programlama ve ek donanım kaynaklı olan bu Guru'lar bizi bir süre daha meşgul edecek.
Biz gelelim Read/Write Error'larına. Bu yazıda Amiga'nın disket hatalarının bir kısmına değineceğiz ve bunları yok edebilmek, yarattıkları zararları kaldırmak için kullanılabilecek birkaç programı açıklayacağız. Kullanılan terimleri ve çalışma prensipleri hakkında bir iki bilgiyi yazının başında kısaca açıklamak istiyorum.
Disketler ve Harddiskler bilgisayar programlarını saklamak için tasarlanmış yapılardır. Bilgisayar bu ortamlara veri kaydedebilmek için belli bir standart izler. Bu sayede programlar ve veri dosyaları, aynı sistemi kullanan tüm bilgisayarlarda kullanılabilirler. Amiga'da program kayıt edeceği ortamları belirli bir standarta göre düzenler, buna kısaca format adını veriyoruz. Standart bir Amiga-Dos, disketi 80 adet ize (Track) böler. Bu Track'leri ağaçların yaş halkalarına benzetebiliriz. Bu şekilde, disketimizin içten dışa doğru 80 halka manyetik olarak bilgi depolamaya uygun hale getirilir, bu halkaları gözle görmenize imkan yok meraklılarına belirteyim. Disketin iki yüzeyi var ve disk sürücüsü (DiscDrive) bu iki yüzeyi okuyabilmek için 2 adet okuyucu/yazıcı kafaya sahiptir. Track'ler her iki yüzey için eşit olarak düzenlenir. Daha sonra disket, 11 adet eşit boyda dilime ayrılır. Bu dilimler her Track'i eşit uzunlukta parçalara bölerler ve bu parçaların her birine bir sector denir. Amiga bu sektörlerin hepsine 512 byte'lık bilgi yazabilir. Bilgiler bu track'lerin alt birimleri olan sector'lerde saklanır. Erişimi kolaylaştırmak amacıyla sector'lerin hepsi sırayla numaralandırılmış ve bunlara Block adı verilmiştir. İlk track'in alt kısmındaki ilk sector'üne sıfır numaralı Block denilmiş ve numaralamaya her track'te önce alt sonra üst sector'ler sayılarak devam edilmiş.
Şimdi ufak bir hesap yapalım. Bir diskette 80 track var. Bu track'ler iki yüzeyde: 80 x 2 = 160. Her track 11 sector'e bölünmüş: 160 x 11 = 1760. Ve block adı da verilen bu sector'lerin herbirine Amiga 512 Byte'lık bilgi yazabiliyor: 1760 x 512 = 901120 Byte. Sonunda burada hesabıma itiraz edeceksiniz. Çünkü yeni formatlı disketleriniz bu kapasiteye sahip değiller. Haklısınız, çünkü Amiga her block'a 488 byte'lık bilgi yazar, geriye kalan 24 byte'lık kısmını (toplamın yaklaşık %5'i) ise, o block hakkında çeşitli bilgileri saklamak için kullanıyor. Hesabımızı düzeltelim. 1760 x 488 = 858880 Byte. İşte bu sayı, tanıdık gelmeli size.
Bu 24 byte içinde, en başta block'un ne tür bir block olduğu belirtilecek; diğer bilgiler bu türe bağlı olarak değişecektir. Yine de her block için Checksum adı verilen ve block'un içeriğini karakterize eden bir sayı bulunur. AmigaDos bir block yüklerken, bu sayıyı block'tan hesaplar ve block'ta yazılı olan ile karşılaştırır, arada fark bulunması sonucu, meşhur Read / Write hatası oluşacaktır.
Block'ların çeşitli türleri mevcut. Bu türler arasında en çok fikir sahibi olduklarınız, belki de Bootblock ve Rootblock. Disketin ilk iki block'una Bootblock adı verilir ve bu block'lar belirli bir formata sahiplerse, Amiga doğrudan burada bulunan bir programı çalıştırmaya başlıyor. Rootblock ise, 880 numaralı block'tan başlayan ve disketin içeriğinin saklı bulunduğu block türüne verilen isimdir. 880 numaralı block, bu açıdan çok önemlidir (Bu block illa da 880 olmak zorunda de-

F. Kağan GÜRKAYNAK ğil, ama neredeyse her zaman burada bulunuyor). Disketin hangi bloklarının dolu olduğunu gösteren haritanın yeri, disketin ismi, kayıt tarihi burada kayıtlıdır. Bazılarınız hemen Error Validating Disk 880 Checksum Error, laflarını hatırlamaya başladı. Bunun temel sebebini basitçe şu şekilde özetleyebiliriz: Her block gibi 880'in de bir Checksum'ı var ve eğer bu checksum'la hesaplanarak bulunan gerçek checksum değeri birbirini tutmuyorsa, Amiga bu block'un taşıdığı bilgilerin doğru olmadığını düşünerek (haklı olarak) hata verecektir.
Root'ta bulunan disketin neresinin boş olduğunu belirten bir yapıdan bahsetmiştim. Buna Block Allocation Map, yani Block işgal haritası (fazla strateji kokan bir terim oldu galiba) veya kıvama BAM adı verilir. Nerede olduğu Root block'ta yazılı olup, bir veya nadiren birkaç block yer kaplar. Aynı yapıya, ekran gibi bitlerden oluştuğu için Bitmap de dendiği olur. Disketinizden belirli bir programı sildiğinizde, Amiga, programı diskette arayıp sileceğine sadece yerini teşhis eder ve bu programın bulunduğu block'ları boş kabul eder. Bu sayede silinen programları yeniden bulmak olasıdır. Ancak silinen programın bulunduğu yere ilk fırsatta yeni birinin kopyalanacağını belirtelim. Son günlerde çıkan bazı kopyalama programları BAM özelliğini kullanarak kopyalama yapmakta, böylece gereksiz yere boş block'ları kopyalamaktan kurtulmaktadırlar. Bu tür bir kopyalama yapacaksanız, hedef disketinizin (fazla simülasyon oynamak tercümelere yansıdı) formatlı olması şart. Belki dikkat etmişsinizdir, Root ve Boot block'larının silinmesi, bir diskette bulunan tüm bilgilerin kaybolmasını sağlayacaktır. Bu yöntemi kullanarak bir disketi acele formatlamak mümkün. Kaliteli kopyalama programları ve disket utility'leri bu özelliği kullanırlar.
Gelelim diğer block tiplerine... Alt directory bilgilerinin bulunduğu User directory block, File header block ve Data block, size bahsedeceğim diğer block çeşitleri. Bir directory ile bir programın disket üzerinde saklanması oldukça farklıdır. Bu yüzden kopyalamaları ve silinmeleri de birbirlerinden farklıdır. En önemli soru, "bir program diskette nasıl saklanır?" sorusudur. Her program bir başlıktan (header) ve gerektiği kadar data block'larından oluşur. Başlık, programın kaç block yer kapladığını, ilk ve son block numaralarını, programın hangi directory'ye ait oldu-
Bilgisayarınız OKUMA - YAZMA'yı Unutunca.....
bunu tutar. Bilmiyorum aklınıza geldi mi, ama Amiga blockları sadece bir programa ayırabiliyor. Diyelim ki, biri 200 byte biri ise 35 byte uzunluğunda çok küçük iki adet dosyanız var (Mesela startup-sequence'lar). Bu iki dosya, toplam 235 byte yer kaplayacaklardır. Oysa Amiga, bu iki dosyayı saklamak için, 2048 byte yer ayıracaktır. Her program için bir Header ve bir data block'u, her block 512 byte'tan eder 2048 byte. Bir diskete bu iki dosyadan en fazla 440 adet yerleştirebiliriz (Neredeyse). Oysa Amiga'nın bu sistem özellikleri olmasaydı, bu dosyalardan tam 3834 adedini diskete sığdırabilecektik. Burada kazancınızın neredeyse 9 katı olduğunu belirtmeme müsaade edin. Programlama yapan arkadaşlar, bu miktarda bir kazancın ne demek olduğunu anlayacaklardır (20 Mb'lık harddisk ile 180 Mb'lık arasındaki fiyat farkını da düşünelim lütfen). Bu yüzden birçok programcı, verilerini doğrudan disketten okutmaktan hoşlanır, bu yönteme Trackloading adı verilir. Programcı, burada Track sector parametrelerini hatta disket yazma hızını ve kodlamayı bile değiştirebilir. Bugün birçok oyun bu sistemle yazılır. Programcı, sistemi kullanmadığından tüm yüklemeler için kendisi programlar yazar, (Shadow of the Beast'i yazan adam bu basit iş için pek zorlanmamış olsa gerek) bu açıdan tecrübeli programcılar değilseniz, sizin için bu yöntemi kullanmak o kadar kolay olamayacak.
Sistem, bu türde kullanılmış bir disket hakkında hiç bir fikir sahibi olamayacaktır. Kısmen doğrudan yazılmış disketler de mevcuttur. Sorun, eğer programlayan tarafından haberdar edilmemişse, sistemin bu doğrudan yazılmış kısımları boş olarak göstermesi olacaktır.
Amiga, Bootblock'u formatlı olup DOS veya KICK harfleriyle başlamayan veya Rootblock'u olmayan disketleri tanımayacak, bunları "Not a DOS disk in Drive .." olarak belirtecektir. Buradan sonra anlatacaklarımız, sistemi kullanan programlara ait disketler için geçerli olacaktır. Herhangi bir şekilde sistem bir hata var dediğinde, disketin yukarıda belirtildiği gibi doğrudan yazılmamış olduğundan emin olduktan sonra tamir işlemlerine geçin.
Yukarıda block tiplerini anlatmıştım, şimdi size bir fikir verebilmek için, block türlerini ve bu blockların bazı bölümlerinde nelerin bulunduğunu aşağıdaki tabloda sıralayacağım (Bir long = 4 byte, tüm adresler long cinsinden $ işaretini takip eden sayılar Hex). Tüm liste işinize yaramayacağından burada yayınlamıyorum, zaten birçok kaliteli disk programı, bu block'ları yorumlayabilecek güçtedir.
Burada programların saklanışında dikkat ettiyseniz, blok sırası ilk önce File-Header içinde belirleniyor, ancak her blok'un başında bir sonraki Data'nın numarası bir daha verilmiş. Bu ikisinin uyuşmaması bir başka sorun, sonuç yine Read/Write Error. Hemen bu konudayken bir hatırlatma daha. Data blockları eğer arka arkaya geliyorsa, kafa hiç zorlanmadan programı okuyacaktır. Ancak sık silmeler sonucu disketinizin arasında birçok irili ufaklı boşluklar oluşacaktır. En sonunda yeni kopyalayacağınız bir programı, sistem diskete arka arkaya kaydedemeyecek, programınızı disketin bu boşluklarına serpiştirecektir. Bu durum bilgisayar açısından çok sakıncalı olmamakla beraber, kafanın programı okuması için çok sık hareket etmesi gerekecektir. Drive'ın gırç gırç sesleri sizi gıcık etmese bile, yükleme süresinin uzaması, sizi de önlem alma yoluna sokacaktır. Disk Space Fragmentation adı verilen bu durum, en kolay olarak tüm disketi hafızaya alıp düzenleyerek yeniden disketin üzerine yazarak halledilir. Bu işin genel adı Optimization'dır. Xcopy başta olmak üzere birçok program, size bu iyiliği yapacaktır.
Evet, bu biraz uzunca kaçan açıklamaların ardından gelelim asıl konumuza. Read/Write Error'lara. Sistem bir disketi okurken bir sorunla karşılaşırsa, bu hatayı verecektir. Bunun çeşitli sebepleri olabilir, şimdi bunları inceleyelim.
- Bazı Virüsler, özellikle de Lamer Exterminator, disketinizin yazma koruması (Write Protect'i) yoksa disketinizin bazı blocklarını formatlayarak bilgi kaybına yol açarlar. Lamer Exterminator adlı virüs, rasgele denebilecek bir şekilde disketi arar ve bir Data block'u bulduğunda burasını Lamer! yazısı ile doldurur. Sonuç olarak bu data block'u kullanılmaz hale gelir.
- Amiga sistemi, block'lara birçok kontrol elemanı yerleştirir. Bunların en önemlisi Checksum'dır. Bu bilgi ile okunarak bulunan bilgilerin uyuşmaması halinde sistem bu bilgilere güvenmeyecek ve hata verecektir. Bu tür hatalar yine virüsler, bilinçsiz disket kurcalayan kullanıcılar ve zamansız olarak bilgisayarın kapatılması veya çakılması ile oluşur. Sistem, mesela rootblock'a yeni bir dosya ekler; ancak rootblock checksum'unu değiştiremeden veya bitmap üzerinde gerekli değişikliği yapamadan kapatılır veya çakılır, işte size en basitinden bir read/write hatası.
- Disket işlemi tamamlanmadan, disketin çıkartılması. Dikkatsizlik sonucu, disketin çalışıyor ışığı yanarken disketin çıkarılması esnasında muhtemelen okuma yazma yapan kafa, disket üzerinde bilgi kayıplarından, hatalı formatlara hatta en kötüsü fiziksel hatalara varan sorunlar çıkarır (Validating Errors). Tabii ki, bu söylediklerim sistemden yükleme yapan programlar kullanılırken geçerlidir. Birçok oyunda Drive ışığının sönmediğini, bu durumda disket değiştirilebildiğini farketmişsinizdir. Bu tür kullanıcı hatalarını önlemek için, yeni drive üreticileri elektronik disket çıkarma sistemleri geliştirmişler. Bunlar sayesinde, siz çıkış düğmesine basıyorsunuz, okuma yazma bitince disket dışarı çıkarılıyor.
- Son olarak program hataları. Bugüne dek kendi yaptıklarımın dışında okuma yazma yaparken sorun çıkaran program görmedim. Ancak, birçok program bir arada çalışırken aynı disket üzerinde işlem yapılınca temiz programlanmamış bazı programlar sorun çıkarabilmektedir.
Sorunları ve olası sebeplerini özetledikten sonra gelelim çözüm yollarına. Eğer
Rootblock LongByte İçerik Anlamı 0 2 Bir yapının başı olduğunu belirler. 5 Checksum Blocktaki tüm sayıların toplamını sıfır yapacak sayı 78 -1 Bu sayı-1 ise BAM geçerli 79 BAM BAM'ın hangi blokta olduğu 108 isim Disketin ismi, ilk karakter ismin uzunluğunu veriyor 127 -1 RootBlock'u belirler File Header Longbyte İçerik Anlamı 0 2 Bir yapının başlangıcı 1 Header Blok numarası 2 Toplam blok sayısı 4 İlk Data blok numarası 5 Checksum 6-77 Data-Blokları 77'den aşağı sıra ile data bloklarının yerleri 108 İsim Dosyanın ismi 125 Parent Dosyanın ait olduğu directory 126 Extension Tüm data blokları buraya sığmazsa burada devamın olduğu blok adresi yer alır, aksi takdirde değeri sıfırdır. 127 -3 veya $FFFD File Header olduğunu belirler
File List File Header'ı tamamlayan, aynı yapıda bir blok. Sadece ilk Long $10'a eşittir. Bu sayede File Header'den ayrılır.
User Directory LongByte İçerik Açıklama 0 2 Bir yapıyı belirliyor 5 Checksum 127 2 User-Directory için Data Block LongByte İçerik Açıklama 0 8 Türü = Data 1 Header Data Blok'un Header'ının bulunduğu blok numarası 2 Seq Num Bu block'un sıradaki kaçıncı block olduğunu gösterir 3 $ 1E8 Data sayısı (488), daha az olabilir 4 Sonraki Bir sonraki data blok numarası 5 Checksum 6'dan itibaren datalar Boot Longbyte İçerik Açıklama 0 DOS,KICK Disket türünü belirler. KICK A1000 için WORM bilgisi taşıyor 1 Checksum 2 $370 Rootblock adresi 3-127 Program veya data.
haftalığınız 6 sıfırlı bir sayı ise, en kolayı sorun çıkaran disketi, harddiski veya bilgisayarı atarak yenisini almaktır. Daha gerçekçi çözümler için, biraz yardıma ihtiyacınız olacak. Piyasadaki utility'leri araştırarak sizin için yararlı olacağını düşündüğüm birkaç tanesini açıkladım. Bu programlar arasından mutlaka bir ikisi işinizi görecektir. Programları yaptıklarına göre ayrı ayrı sınıflamayı uygun buldum.
1. Belirli fonksiyonu olan programlar Diskdoctor Disksalvage 2. Tamir için özelleşmiş programlar Quarterback Tools Fixdisk Diskcraft 3. Disket editörleri Disk monitor professional Workshop Sectorama Diskx
DiskDoctor Sağolsun, Commodore firmasının bilgisayarlarının yanında verdiği geniş (?!) program paketinin içinde, bize Validation hatası meydana gelmiş disketlerimizi hayata döndürmek için bir program vermiş. Temel olarak yaptığı, disketteki dosya yapısını mümkün olarak düzeltmeye çalışmak. Bunu yaparken dosyaları değil de, trackleri tek tek inceliyor. Sonuç, sadece ender durumlarda sorunları halledilmiş bir disket oluyor; asıl amaç, hata yüzünden erişemediğiniz programları mümkün olduğu ölçüde kurtarmak. Bu program, Workbench disketinizin C: directory'sinde mevcut. CLI'da çağrılan programa, parametre olarak hangi drive'da işlem yapacağını veriyorsunuz. İşlem bir süre sürdüğünden, tavsiyem bu işlemi yaparken yeni bir CLI ekranı açmanız (Run ile çalışmıyor).
NEWCLI DISKDOCTOR DiskDrive Adı DiskDrive adı olarak sadece DF0:, DF1:, DF2: veya DF3: verilebiliyor. HardDisk kullanıcıları, bu programı kullanmıyorlar. Amiga sisteminin üzerinde işlem yapmayı reddettiği disketlerdeki dosyaları kopyalamanız için yeterli olacaktır, fazlasını beklemeyin. Disk Salvage
Amiga ile yakından ilgilenenler, programın yazarını duyunca eminim heyecanlanacaklardır: Dave Haynie. Tanımayanlar için belirtelim; bu zat, Amiga'nın geliştirilmesinde A2000B modelini ve A2620 ile A2630 kartlarını geliştiren kişi.
Bu programın amacı, okuma hatası veren disketlerinizdeki bilgileri başka bir diskete kurtarmak. En kötü yanı, şu aşamada sadece iki drive ile çalışıyor olması. Program, benzerleri arasında en uzun çalışma süresine sahip olanı. Bunun sebebi, programın ilk olarak tüm disketi block block incelemesi ve yukarıda çok bahsettiğimiz uyumsuzlukları giderecek çözümler araması. Tüm yapıyı inceledikten sonra, formatlı bir diskete tüm dosyaları temiz bir şekilde kaydeder. Takdir edilecek bir özelliği, boş blokları da bir dosya olarak eklemesi. Bu sayede en az bilgi kaybı oluyor. İlk disketinizi formatlamak ise size kalıyor.
Program CLI'dan çalıştırılıyor ve parametre olarak kurtarmak istediğiniz disketin bulunduğu Drive ile boş formatlı hedef disketinin bulunduğu drive giriliyor.
Disksalvage DF0: DF1: Tekrar belirteyim, işlem oldukça sürüyor; sabırsız arkadaşlarımız yeni bir CLI açmayı unutmasınlar. Konusunda çok etkili olduğunu belirtebilirim. Ancak sınırlı bir uygulama alanı var. Disksalv olarak da geçen programı bulmak için, Utility disketlerini karıştırmak gerekecek. Digitech serisinin 13. disketinde olduğundan eminim. QUARTERBACK TOOLS
PC kullanıcıları, özellikle Norton'un disket ile ilgili kullanım programlarının değerini bileceklerdir. Benzer kalite ve kullanımı Amiga'da arayanlar için QuarterBack Tools, ilk akla gelen seçenek. QuarterBack, aslında Harddisk'teki programları disketlerde saklayarak bir nevi kopyasını oluşturan ve adına backup (yedekleme) programları denilen bir programdı. Aynı ekip, daha sonra disket üzerindeki hataları bulan, tamir eden bir program geliştirdi. İşte bu programın adı Quarterback Tools veya kısaca Tools.

Birçok özelliği, rahat bir kullanım içinde sunan kaliteli bir program. Disket üzerindeki işlemleri açısından birçok rakibi var, ancak Harddisk kullanıcıları için neredeyse tek seçenek. Disket üzerindeki okuma yazma hataları, en kötü ihtimalle disketteki bilginin kaybı ile sonuçlanıyor. Ancak takdir edersiniz ki, basit bir hata yüzünden koca harddiski formatlamak zorunda kalmak, gerçek bir hayal kırıklığı. Bu programı kullanmadan önce iki defa Harddiskimi formatlayıp yeniden düzenlemek zorunda kaldım (Her şeyin eski haline gelmesi neredeyse bir ayımı aldı.). Oysa Tools, birçok durumda Harddisk kullanıcılarına yardımcı oluyor.
Gelelim programa: En başta size, program çalıştığı anda sisteme bildirilmiş disketler (Volumes) sıralanacaktır. Burada disketlerin adını göreceksiniz. Hangisi ile ilgilenilecekse adı üzerine Mouse ile klik yapmanız yetecek. Ancak özellikle tek disk drive'ınız varsa, bu durum sizi rahatsız edebilir; disket yerine doğrudan sürücü üzerinde (içinde her ne varsa) ilgilenmek isteyebilirsiniz. Hemen sağ mouse tuşuna basarak menülere bakalım. Project menüsünde size yabancı olan bir seçenek yok. Sağında ise Display menüsü yer alıyor. Buradan ya sürücüleri ya da disketleri görebiliyorsunuz. DF0: bir sürücü ve Workbench 1.3, bir disket için birer örnek.
Seçiminizin ardından Ana Menüye geliyoruz. En üstte seçtiğiniz disket yazacaktır. Altında ise seçenekler var:
Display Volume Statistics: Size seçtiğiniz disket üzerinde çeşitli bilgiler verecektir. Proceed tuşuna basarak devam edebilirsiniz.
Goto Volume Reorganization Menu: Disketinizdeki Space Fragmentation sorunlarını giderebileceğiniz menü burası.
Buradaki seçeneklerin ilki, size disketinizin program dağılım haritasını verecektir. Turuncu bloklar, disketinizin boş kalan kısımlarını temsil etmektedirler. Disketteki boşluğun kaç parçaya bölündüğü, ayrıca belirtilecektir. Bu sayının az olması iyi durum. İkinci seçenek ile disket üzerinde bölünmüş dosyaların sayısını öğrenebilir, ve bilgi sahibi olabilirsiniz. Bu işlem yapılırken, siyah çubuk işlemin ilerleme durumunu gösterecek. Her an Pause ve Cancel seçenekleri ile işlemi durdurmanız veya kesmeniz mümkün. İşlem tamamlanınca, bölünmüş dosyaları ve toplam dosyaları belirtecektir. Reorganize Volume seçeneği ile bu bölünmeleri yok ederek disketinizi yeniden düzenleyebilirsiniz. Bu seçenek çalışırken, bazı dosyalarınız bozulabilir veya tümüyle silinebilir; bu açıdan önemli dosyalarınızı yedeklemeniz gerek. Program size bu uyarıda bulunacaktır. İşlem biraz sabır istiyor. Çok gerekli olmadıkça kullanmanızı tavsiye etmiyorum. Son seçenek ana menüye çıkarıyor bizi.
Restore Deleted/Lost Files: İşte kaliteli bir seçenek. Silinmiş dosyalarınızı yeniden yaratabilecek bir seçenek. İlk olarak belli bir dosyayı arayıp aramadığınız sorulacak. Burayı Return ile geçerek tüm kayıp dosyaları bulmanız mümkün. Daha sonra program disketi araştıracak ve kayıp dosyaları bulmaya çalışacaktır. En sonunda ise, tüm disketin içeriği verilecektir. Kurtarmak istediğiniz dosyayı mouse ile seçebileceksiniz. Rengi mavi olan dosyalar seçilmiş olanlar. Bu listeyi DiskMaster'da alıştığınız şekilde tarayabilir ve seçimlerinizi yapabilirsiniz. Solda alttaki iki seçenek ise, dosyaları seçilen diskete mi (Restore to Current Volume) yoksa bir başka diskete mi kopyalayacağınızı (Copy to different Volume) belirler. Dikkat ettiyseniz her menüde yukarıdan seçilebilecek menüler, yardımcı olacak şekilde az buçuk değişmekteler. Bunlardan yararlanabileceğinizden eminim. Detaylı bir açıklama çok yer kaplayacağından anlatmıyorum.
Volume Repair Menu: Yine etkili bir bölüm, ilk seçenekle, disketiniz üzerinde fiziksel hata bulunan bloklar işaretlenebilir. Bu sayede, Amiga bu blokları kullanmayacaktır. Tek sorun, disketteki boş yerin biraz azalması. Bence bir programın kaybolmasından veya disketi atmaktan daha iyi. İkinci seçenek, yine disketinizi inceleyerek hataları bulacaktır. Bunu, disketinizin durumunu öğrenmek için kullanabilirsiniz. Eğer burada çok hata görürseniz, üçüncü seçenek ile bunları olduğu kadar tamir etme imkanınız var. Program bulduğu hataları belirtecek ve size bir çözüm önerecektir. Bu çözüm, bazen dosyayı silmek olabilir, dikkat edin. Bu seçeneği, burada açıkladığım programlar içerisindeki en iyisi olmamakla beraber oldukça etkili. Tabii en iyisi tüm dosyaları kurtarmak, ama ne yazık ki bu her zaman mümkün değil.
Format: Fazla açıklama istemiyor. Unformat: Çabuk formatlanmış disketleri kurtarmanıza yarayacak. Xcopy ile formatladığınız bir disketten, bir daha bir şey geri almayı beklemeyin; sadece root ve boot'u silinmiş, kısmen formatlanmış disketler için geçerli.
Select a different Volume: Yeni bir disket seçmek için kullanılır. QuarterBack Tools, kaliteli bir program. Performansının sınırları var ve mucizeler yaratmıyor, ancak güvenilir ve temiz bir program. Yaptığı işi temiz yapıyor ve insanda olumlu bir etki bırakıyor. Bir Harddisk kullanıcısı ise, bu programı bir kurtarıcı olarak görecek ve er geç bu programa sahip olmaktan mutlu olacaktır. Hemen bir hatırlatma; programı açıklarken kullandığım renkler orijinal Workbench renkleri.
FIXDISK Gerçekten kaliteli bir programla karşı karşıyayız. Amiga'da özellikle Utility türü programlarda sık göremediğimiz bir kalite mevcut. Program çalışınca kendisine bir pencere açıyor. Bu pencerenin üst tarafında sistem tarafından belirlenen diskler bulunuyor. Bunlardan birini seçerek başlıyoruz. Programın gözüme çarpan tek kötü yanı, burada yer alıyor. Harddiskleri görüyor, ama araştırmıyor.

Hemen bir mesaj, araştırılacak disketi yerleştirmemizi istiyor; ardından tek tek track'ler okunuyor. Program bulduğu özel blokları sıralayacaktır. Bu sıralamada ilk sayı, dosyanın bağlı bulunduğu directory; ikinci sayı ise dosyanın File Header Block'unun numarası. Tüm disketi okuduğu zaman ise, program penceresinde diskette bulabildiği tüm dosyaları ve directory'leri gösterecektir. Bu dosyaların önünde bulunan sayılar, o dosyanın Header Block'unun disket üzerindeki yeridir. Program silinmiş bir header ile karşılaşırsa, bunu da gereken yerde gösterecektir.
İşlemler için bir menümüz ve sağ tarafta işlem tuşlarımız var. Program ilk başladığında, sağ taraftaki bu seçeneklerin bazılarının seçilemez durumda olduğuna dikkat etmişsinizdir. Bu seçenekler, diskete yazı yazmayı ve hatta değiştirmeyi öngörmekteler. Bu fonksiyonları kullanabilmek için, menüde bulunan Write Enable seçeneğini seçmiş olmalıyız. Menü'de bulunan ikinci seçenek ise, programın disket erişiminde karşılaştığı hata mesajlarına aldırmamasını sağlar.
Gelelim, sağ tarafta bulunan seçeneklere: En üst sıradaki ilk iki seçenek, directory'lerde dolaşmanız için kullanışlı olacak. Parent, bir üst directory'ye geçiş için (tabii ki, böyle bir directory mevcut ise), Root ise disketin root directory'sine geçmek için kullanılır. En sağda ise, seçtiğiniz herhangi bir dosyayı ASCII veya HEX olarak görmenizi sağlayacak Show seçeneği bulunuyor. Bu seçeneği kullanınca, ilk olarak seçtiğiniz programı HEX olarak mı, yoksa ASCII olarak mı görmek istediğiniz soruluyor. HEX'i seçerseniz, yine ASCII karşılıkları gözüküyor. Bunun ardından istediğiniz dosyanın Header'da belirtilen sıra ile mi, yoksa Data block'larında verilen Link'lerle mi okunacağı soruluyor. Dosyanızı artık inceleyebilirsiniz. q tuşu ile buradan çıkmak mümkün.
Bir alttaki seçenek ile, dosyalarınızın bütünlüğünü araştırabilirsiniz. Burada Deleted, sadece silinen dosyaları; Selected, seçilmiş dosyaları ve All, disketteki tüm dosyaları aramak için kullanacağınız komutlar. Daha önce çalıştığından emin olduğunuz programlar "121 file not an object module" hatası verdiklerinde, bu seçeneklerle sebebini araştırabilirsiniz. Bulunan hatalar, programların yazıldığı pencerede belirtilecektir.
Bir altta bulunan seçeneklerden soldaki ikisi, silinen bir dosyayı yeniden yaratmaya yarar ve Undelete Files adını taşır. Yine burada, Selected ile tek bir dosyayı ve All ile diskette bulunan tüm silinmiş dosyaları kurtarmak mümkündür. Bunun için tek şart, programın silinen dosyalara ait File Header Block'larını bulabilmesidir. Program daha sonra bu Header'dan aldığı bilgiler doğrultusunda Data Block'larını bulmaya çalışacaktır. Eğer block'lar herhangi bir nedenle bulunamazsa veya bulunan block'lar başka programlarca kullanılıyorsa, Fixdisk bunu size bildirecektir.
Burada bulunan üçüncü seçenek, disketinizde bulunan kayıp track'leri kurtarabilmek ve/veya incelemek amacıyla kullanılan Recover Track seçeneğidir. İlk seçildiğinde, disketinizdeki bozuk track'leri sıralayacaktır. Disketinizde bozuk track olmaması sizin incelemenizi etkilemeyecek, sadece bir mesajla bu durum size bildirilecektir. Daha sonra yukarıda istediğiniz track'i seçebileceğiniz bir Requester çıkacaktır. İstediğiniz track'i seçtikten sonra, Read ile bu track içindeki block'ları görebilirsiniz. Penceredeki Sec Track içinde sektör numarasını; Starting with Block içindeki ilk dört Long'un içeriğini; Crc, fiziksel durumunu ve Bmap ise, bloğun dolu olup olmadığını belirtir. En üstte yeni bir track okumak, track'i formatlayarak yazmak veya çıkmak için seçenekler mevcuttur.
Bir altta dosyaları kopyalamak için Copy seçeneği bulunuyor. Bu seçenekte de tek veya tüm dosyaları kopyalamak mümkün. Kopyalama yapılırken, Header'daki mi yoksa block'lardaki sıralamanın mı göz önüne alınacağı sorulduktan sonra, kopyalama hedefi istenir. Validate Disk seçeneği, zaten kendini açıklıyor.
Daha da altta bulunan Wipe Files seçeneği, silinmesi istenen bir dosyayı disketten tümüyle atmak için kullanılır. Bildiğiniz gibi, normal Delete komutu dosyayı silerken sadece Bmap ve Directory yapılarını değiştirir. Dosyanın disket üzerindeki fiziksel varlığına dokunmaz. Programın Wipe seçeneği, istenen bir dosyayı tümüyle ortadan kaldıracaktır. Device Info seçeneği, disket hakkında size pek de yabancı olmadığınız bir iki bilgi verecektir. Delete'in fonksiyonu hakkında şu veya bu şekilde zaten yeteri kadar çok şey duydunuz. Fixdisk hem programlama tekniği, hem de kullanışlılık açısından örnek bir program. Yapılması istenen işi güvenilir bir şekilde yapıyor. Diğer programlar içerisinde işlevleri en kuvvetli olanı Fixdisk. Programın keşfedebildiğim tek ama büyük eksiği, harddisk kullanıcılarına hitap etmemesi. Birçok faydasını göreceğinizi umduğum bir program. Şiddetle tavsiye ederim. Diskcraft:
1986 yılından kalma bu program, türünün ilk örnekleri arasında yer almakta. Zamanında Amiga'nın çok renkliliği programı yazanları büyülemiş olsa gerek ki, programlarının rengarenk olmasına özen göstermişler.

Programın kullanım alanının büyük bir kısmını disketi temsil eden kutucuklar kaplıyor. Ufacık kutucuklar disket üzerindeki block'ları temsil etmekte. Bu kutucukların renklerinin işlemlere göre ne anlamlara geldikleri sol alt köşeden okunabilir. Program, sadece disketler üzerinde işlem yapmakta. Tüm fonksiyonları Disk Operations ve Dos Operations isimli iki menüde toplanmış.
Disk Operations menüsünde Dump a Sector seçeneği, bir block'un içeriğini görmenizi; Check For Errors, disket üzerindeki hataları bulmanızı; Fix Disk Errors, bu hataları gidermenizi sağlayacaktır. Diğer seçenekler açıklama istemiyor.
Dos Operations menüsündeki Display
Allocated Blocks ve Locate a File seçenekleriyle, disket üzerinde dosyaların yerlerini inceleyebilir; Check Dos Structure seçeneğiyle Dos hatalarını bulabilir; Recover Lost Data ve Repair Dos Structure seçenekleriyle hataları tamir etmeyi deneyebilirsiniz.
Seçeneklerinin bolluğuyla dikkati çekmesine rağmen, bu seçeneklerin gösterdiği zayıf performans ile çabucak unutulacak bir program. Her zaman kullanışlı ve yararlı olmamasına karşın, arada sırada işinizi görme ihtimali olan bir program.
Bu yukarıda saydığım programların hepsi disket tamiri için özelleşmiş fonksiyonlara sahip programlar. Genel adları disket monitörleri olan bazı programların belirli fonksiyonları, özellikle bazı sorunlarımızı çözmemize yardımcı olacaklardır. Bu sorunların başında, virüslerce katledilen dosyalarımızı kısmen de olsa kurtarma yolları geliyor. Mucizeler yaratmamıza tabii ki imkan yok. Ancak Lamer Exterminator başta olmak üzere bazı virüsler, disket üzerinde rasgele buldukları Data Block'larını formatlamaktadır. Sonuç, bu dosyanın işletimi sırasında ortaya çıkan bir Read/Write hatası. Eğer kaybolan bloktaki orijinal Next Block ve Parent Block bilgileri ile Checksum'u düzeltirsek, 488 byte'ını kaybetmiş olmakla beraber dosyayı kurtarabiliriz. Özellikle resim dosyalarında başarı oranı çok yüksektir. Bunların yanında Dos üzerinde yapmak istediğimiz değişiklikler ve beraberinde getirdiği sorunlar için, bu programlar yardımcı olacaktır. Son olarak ise, tüm burada anlatılan yapıları görmek ve incelemek hatta oynamak isteyen arkadaşlar için vazgeçilmez bir yardımcı olacaklardır.

Disk Monitor Professional: Belki kullanması en kolay olan program ya da en havalısı değil. Ancak disket işlemleri üzerinde üzerine başka program tanımıyorum. Bu mükemmel programın detaylı açıklaması daha önceden yapılmıştı. Detaylara girmeden bazı özelliklerini hatırlatmak istiyorum. Block üzerindeki her türlü oynama için bu program ideal. Sadece Hex olarak değil, assembler dilinde program olarak bile değişiklik yapmak mümkün. Programın bir menüsü, olduğu gibi Checksum'lara ayrılmış durumda. Utilities kısmında ise, hata arama fonksiyonlarından silinmiş programları kurtarmaya kadar birçok özellik mevcut. Program işlemlerini disketler veya harddiskler üzerinde yapabiliyor. Bu konuda en az sorun çıkaran programların da başında geliyor.
Diskmonitor Professional, disket üzerinde genel olarak özelleşmiş bir program. Bir monitor ile yapılabileceklerin hepsini hatta fazlasını yapmak mümkün. Ancak tamir konusunda özelleşmiş programlarla yarışamayacağı da açık.
Workshop: Sevimli ve kullanışlı bir program, Workshop. Block'lar üzerinde Hex ve ASCII değiştirmelere izin veren basit ama kullanımı rahat bir program. Harddiskleri de inceleme olanağı tanıyor; ancak konu ile ilgili menünün sadece 4 boşluğu olduğundan, kayıp sürücülerle karşılaşılabiliyor. Her blok hakkında ayrıntılı bilgi verebilen bir program olması, konu ile ilgilenenlerin hoşuna gidecektir.
Sectorama: Sizi bilmem, ancak ben CLI'dan parametre ile çağrılan programlardan aynı ekranda birkaç laftan fazla bir şey beklemiyorum (Disk Salvage veya DiskDoctor gibi). Bu önyargıyı kaybetmenin en iyi yolu, Sectorama kullanmak. Programa CLI'dan incelenmesi istenen sürücünün adı ile giriliyor. Sectorama DF0: gibi. Program, temel olarak bir disket editörü. Ancak çok kaliteli programlanmış ve oldukça kullanışlı. Tüm block'u görüntülemek için interlace'den bir ekran açılmış. Renk seçimi, titremeyi oldukça kabul edilir bir boyuta düşürmüş. ASCII ve Hex editlerinin yanında, Checksum hesapları ve tamir olanakları sunan bir program. Yine ilişkili bloklar arasında tek tuşla hareket edilmesi, kullanımı ve araştırmayı basitleştiriyor. Her türlü bilginin daimi olarak göz önünde olması, yine programı anlaşılır kılıyor. Programın herhangi bir medya kısıtlaması yok. Harddisklerle de disketler olduğu kadar iyi anlaşıyor.

Diskx: Diskx, size tanıtmak istediğim son programcık. Adından anlaşıldığı üzere Steve Tibbet'in bir programı (Adam her nedense X'lere bayılıyor). Bu program, tanıtılanların en basit editleme ve tamir özelliklerine sahip. Ancak hepsi içinde, gerçekten en eğitici olanı. Her block'u ayrıntılı bir şekilde yorumluyor ve görüntülüyor. Değişiklik ve tamir ihtiyaçları için daha etkili bir program bulmanız gerekecek; ama disketlerinizi ve yapılarını tanımak istiyorsanız, en akıllıca seçim Diskx olacaktır. Menüleri fazlaca kendilerini açıklayan bu programı kurcalama zevkini size bırakıyorum. Fazla gelişmiş olmasa da, güvenilir kayıt ve atlama fonksiyonlarını takdir etmeden geçmek istemiyorum. Yazımızın sonlarında, size belki de en çok kullanılan programların başında olan Xcopy hakkında bir iki bilgi vermek istiyorum. Xcopy, disket kopyalamak için yazılmış programların en etkililerinden biridir. Gittikçe disket kopyalamada bir standart haline gelmiştir. Xcopy, birkaç değişik kopyalama yapmaktadır. DOScopy, sistemin kendi kopyalama şeklinin aynısıdır. Workbench'te bulunan Diskcopy ile, pratikte aynı işlevi görür. Doscopy+ ise yine DOS sistemini kullanan, ancak kopyalama yaparken daha az hafıza harcayan geliştirilmiş bir kopyalamadır. BAM copy'den daha önce bahsetmiştim. Gelelim meşhur NibbleCopy'ye. Bu kopyalama diskette belirli bir track ve sector düzenlemesinde beklediği bilgiyi aynen bir ikinci diskete aktarır. Bu kopyalama, genelde DOS formatını tam olarak kullanmayan programları kopyalarken kullanılır. Disketteki bilgilerin, Amiga'nın sistemine uygun olup olmadığı kontrol edilmez; bunun sonucu olarak hiç hata mesajı verilmez. Bu, disketin temiz olduğu anlamına gelmez. Diyelim, bir diskette Lamer virüsü zarar vermiş olsun ve siz bu disketi kopyalamak istiyorsunuz. DOS copy sırasında zarar verilen yerde kırmızı 6 sayısını göreceksiniz. Bu hata, kopyalanan track içinde normal block düzenlemesine uymayan bir block var demektir (Bu hatanın kaynağı her zaman virüs değildir !!!). Ne var ki, bu track de kopyalanacaktır, sadece kopyalanan track'in standarda uymadığı bildirilmekte. Şimdi aynı disketi Nibblecopy ile kopyalamayı deneyelim. Sonuç aynı olacaktır. Checkdisk seçeneği ile disketleri kontrol ederseniz, her iki diskette de aynı hatanın mevcut olduğunu göreceksiniz. Gerçek bir hata ise, 8'dir. Verify Error denen bu hata, verilerin aynısının ikinci diskete kopyalanamaması durumunda ortaya çıkar. Genelde diskette fiziksel bir hata sonucudur. Bu durumda, çok meraklı olan arkadaşlar, uğraşarak disketin BAM'ını değiştirebilir ve bu disketin sorun çıkaran block'larını dolu gibi gösterip bu disketten yararlanabilirler. Ne var ki Bootblock giderse, o disketi sadece özel format atarak oyun kaydeden oyunlarda Save disketi olarak kullanabilir veya içini açıp süs diye odanıza asabilirsiniz.
Son olarak, disketlerinizin yapısı ile oynarken dikkatli olun, sonra "Gettiii güzelim disketim" diye ağlamayın. Umarım bu yazı sizi biraz aydınlatmıştır. Benim tek derdim şu yazıyı yazabilmek için katlettiğim disketlerime neler olacak. Hoşçakalın...