1 Aralık 1987 Tarihli Commodore Gazetesi Sayfa 48

1 Aralık 1987 tarihli Commodore Gazetesi Sayfa 48
Metin içeriği (otomatik olarak oluşturulmuştur)

MON yardımı ile nasıl bilgi yazabi- leceğimizi görelim. Önce .R 12 00 ile 18/00'1 yükleyin. Tabii disketin ke- narındaki korumayı kaldırın (hata yaparsanız, sorumluluk size ait!..). Sonra da, .M A2 A6 komutunu ve- rerek ID ve 2A yazısını içeren byte'- ları ekrana getirin. Satırın en solun- daki değer A2 olacaktır ve bu bir tür satır numarasıdır; o satırdaki byte”- ların $A2 adresinden itibaren olan byte'lara ait olduğunu gösterir. Şimdi cursor ile A2'nin yanındaki beş byte'- lık bilginin üstüne 41 41414141 ya- zın, Sonra da RETURN tuşuna ba- sın. Sağ taraftaki karakterlerin AA- olduğunu göreceksiniz. Sıra geldi blokun yeni halini diskete yaz- maya. Aşağıdaki komutu kullanın: W Write (yaz) komutu blokun hafıza- daki yeni halini diskete yazacaktır. Şimdi de disketi bir kendine getire- lim, yani initialize komutunu gönde- relim: * .GI Sonra da $ ile directory'e bir göz atın, Nasıl, ID bölümü biraz değiş- miş, değil mi? Artık bu beş byte'a ya- zacağınız değerlerle oynamak sizin işiniz. Bu arada W komutunu biraz daha açalım. Yukarıdaki işlemi .W 12 00 olarak da yapabilirdik. Ancak, en son okuduğumuz blok 18/00 olduğu için ve DISKMON da bu bilgiyi sak- ladığından, gerek görmedik. Ancak 18/00'dan okuduğumuz bilgiyi bir başka bloka yazmak istersek (neden isteyelim ki?..) o zaman W”'yi tam bi- çimiyle kullanıp hangi TRACK'ın hangi SECTOR'üne yazılacağını be- lirtmemiz gerekir. Directory'nin 167-170 arası b ları 160 değeri ile doldurulm ve geriye kalan 171-255 a. nı, COMMODORE &4 elkitab bulabilirsiniz. 18/00'la olan ilgimiz bu kadar. Şimdi zincirin bir sonraki halkasına geçelim, yani 18/01'e. DISKMON'- dan bunu iki türlü yazabiliriz. Birin- cisi .7 1201 ile. Ancak directory'nin bir bloklar zinciri olduğunu ve bu zinciri takip edebilmek için bir yön- temin olması gerektiği, kullanıcı ko- laylığını sağlamak açısından aşikâr. Demek ki, ikinci bir yöntem daha var. Bildiğiniz gibi, 18/00'ın ilk iki byte'ında zincirin bir sonraki halka- sının adresi yeralıyordu. Buraya ulaş- mak için: .N Next (sonraki) komutunu kullana- biliriz. DISKMON otomatik olarak o anda hafızadaki blokun ilk iki byte'ının gösterdiği adresteki bloku okuyacaktır. Bunu S ile kontrol ede- bilirsiniz. Eğer hafızadaki blok baş- ka bir bloku göstermiyorsa, yani ilk byte'ı sıfır ise “End of file”” (dosya sonu) mesajı çıkacaktır ve zincirin so halkası hafızada durmaya devam edecektir. Gördüğünüz gibi, N komutu ile ISKMON'u tam anlamıyla öğrenip, kullanmak göründüğünden zor, fakat sonuç bu çabayı haklı çıkaracak nitelikte. *mantıksal' olarak bir sonraki bloka gidiyorsunuz. Bunun her zaman 'fi- ziksel” konuya blok olmadığını gör- müştük. Örneğin disketinizde 8'den fazla dosya varsa, directory'nin uçuncu halkası 18/02 değil 18/04 ola- osya yok ise, 18/01'den itibaren in- celememize devam etmeden, önce bir şey daha yapmanız lazım. Önce .X (exit, çıkış) komutu ile DISKMON”- dan çıkın. Ekranın sol üst köşesine çı- kacak olan şeyleri şimdilik boşverin. Başka bir disketinizden 3-5 blokluk (daha da uzun olabilir ama zaman alir) bir program (varsa, BASIC i) yükleyin ve de- dökümünün sağ tarafında isimlerini göreceksiniz. Şimdi bu byte'ları da birer birer inceleyelim... 0 ve | numaralı byte'lar, her za- man olduğu gibi, bir sonraki blokun adresini gösteriyor. 8'den fazla kayıt- lı dosyanız varsa, burası 18/04'ü (12 04) gösterir. Ondan sonra gelen byte'lar 30'arlık gruplar halinde dis- ket üzerindeki dosyalar ile ilgili bil- gileri içerir. Yani ilk 30 byte'lık grup (2-31,$02-$1F numaralı byte'lar) dis- kete ilk SAVE edilen dosya ile, bir sonraki grup ise ikinci dosya ile ilgili bilgileri saklar ve bu böylece disket- teki tüm dosyalara ait bılgıler direc- gilerini saklamak içi mışsa, 8*18 — 144 dosya ile ilgili bil- gi saklayabıhrız demektir. İşte sınır bu... İsterseniz 18/01'in yapısını tab- lo olarak görelim: BYTE ANLAMI 0-1 Sonraki blok 2-31 1. dosya 32-33 Kullanılmaz 34-63 2. dosya 64-65 Kullanılmaz 66-95 3 dosya 96-97 Kullanılmaz 98-127 4, dosya 128-129 — Kullanılmaz 130-159 — 5. dosya 160-161 — Kullanılmaz 162-191 — 6. dosya 192-193 — Kullanılmaz

Bu sayıdan diğer sayfalar: