Bu sayfadaki yazılar
Sayfanın metni
Sayfa 33
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.
Klavyeyle gezinmek için ← ve → tuşları.
Sayfa 32
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.