Format AtariDOS 2.5
From Atariki
Wersja z dnia 11:45, 8 mar 2006 KMK (Dyskusja | wkład) (→Katalog) ← Previous diff |
Wersja z dnia 12:17, 8 mar 2006 KMK (Dyskusja | wkład) (→Katalog) Next diff → |
||
Linia 29: | Linia 29: | ||
* bit 3 - niewykorzystany | * bit 3 - niewykorzystany | ||
* bit 2 - niewykorzystany | * bit 2 - niewykorzystany | ||
- | * bit 1 = 1 - plik jest utworzony przez DOS 2.0 ([[DOS 1.0]] w przeciwnym wypadku) | + | * bit 1 = 1 - plik jest utworzony przez DOS 2.5 ([[DOS 1.0]] w przeciwnym wypadku) |
- | * bit 0 = 1 - plik jest otwarty do zapisu | + | * bit 0 = 1 - plik jest niedostępny dla DOS 2.0 (zajmuje sektory powyżej 720) |
<p>Ogólnie status $42 oznacza plik istniejący, $62 plik zabezpieczony przed zapisem, a $80 plik skasowany.</p> | <p>Ogólnie status $42 oznacza plik istniejący, $62 plik zabezpieczony przed zapisem, a $80 plik skasowany.</p> | ||
</td></tr> | </td></tr> |
Wersja z dnia 12:17, 8 mar 2006
Format dyskietki używany przez DOS 2.5 przeznaczony dla stacji 1050. Format ten stanowi rozszerzenie wcześniejszego formatu DOS-u 2.0.
Spis treści |
Struktura ogólna
Obsługiwana jest wyłącznie gęstość pojedyncza i średnia (SD i ED) przy czym w tej pierwszej stosowany jest format DOS-u 2.0, w związku z czym niniejsze hasło omawia tylko format stosowany w gęstości średniej.
Jednostką alokacji jest pojedyńczy sektor fizyczny o wielkości 128 lub 256 bajtów. Sektory nr 360 ($168) oraz 1024 ($0400) są zajęte na VTOC, w sektorach 361-368 ($0169-$0170) znajduje się katalog dyskietki. W sektorach 1-3 jest program ładujący DOS, a sektor nr 720 jest niewykorzystany. Całkowita pojemność dyskietki to 1040 sektorów 128-bajtowych (130k), ale ze względu na ograniczenia filesystemu wykorzystane są z tego tylko 1024 sektory (128k). Po odjęciu sektorów zajętych przez DOS początkowa pojemność dyskietki to 1010 wolnych sektorów (126,25k).
VTOC
VTOC składa się z dwóch części: pierwsza rezyduje w sektorze $0168 i dotyczy pierwszych 720 sektorów dyskietki, identycznie jak w formacie DOS-u 2.0. Jedyna różnica to zawartość bajtów, w których wykazana jest całkowita liczba możliwych do wykorzystania sektorów dyskietki: znajduje się tam wartość $03F2, czyli 1010, a nie, jak pod DOS 2.0, $02C3 (707). Liczba wolnych sektorów natomiast zawiera informację nie na temat całkowitej liczby wolnych sektorów na dyskietce, lecz dotyczy tylko pierwszych 720 sektorów dyskietki.
Druga część VTOC znajduje się w sektorze 1024 ($0400). Bajty od $00 do $79 tego sektora zajmuje mapa bitowa opisująca obszar 976 sektorów od nr 48 do nr 1023. Sektory 360-368 oraz 720 oznaczone są w niej jako zajęte.
W bajtach $7A i $7B zapisana jest liczba wolnych sektorów w obszarze, który nie jest opisany przez pierwszą część VTOC (czyli jest to liczba wolnych sektorów, jakie znajdują się powyżej sektora 720).
Katalog
Katalog zajmuje osiem sektorów o numerach od 361 do 368 ($0169-$0170). Pojedyńczy wpis ma 16 bajtów długości, jego strukturę przedstawia tabelka:
Offset | Opis |
$00 |
Bajt statusu:
Ogólnie status $42 oznacza plik istniejący, $62 plik zabezpieczony przed zapisem, a $80 plik skasowany. |
$01-$02 |
Wielkość pliku w sektorach. |
$03-$04 | Numer pierwszego sektora zajętego przez plik. |
$05-$0C | Nazwa pliku dopełniona spacjami. |
$0D-$0F | Rozszerzenie nazwy pliku dopełnione spacjami. |
Struktura katalogu jest taka sama, jaką mamy w DOS 2.0.
Mapowanie plików
Identyczne jak w DOS 2.0.