Format AtariDOS 3
From Atariki
Wersja z dnia 01:28, 8 wrz 2005 KMK (Dyskusja | wkład) ← Previous diff |
Wersja z dnia 02:40, 21 lut 2006 KMK (Dyskusja | wkład) Next diff → |
||
Linia 1: | Linia 1: | ||
- | http://krap.pl/mirrorz/atari/www2.asw.cz/kubecj/afsdos3.htm | + | Format dyskietki zastosowany w [[DOS 3.0|Atari DOS 3.0]] i przeznaczony do użycia ze stacją [[1050]]. |
- | {{stub}} | + | == Jednostka alokacji == |
+ | |||
+ | Jednostkę alokacji stanowi osiem sektorów, czyli 1k w [[SD]] i [[ED]] (DOS 3.0 nie obsługuje nic więcej). Całkowita pojemność dyskietki w [[SD]] i [[ED]] wynosi więc odpowiednio 90 i 130 jednostek alokacji. | ||
+ | |||
+ | Sektory ('''nie''' jednostki alokacji) 1-24 są zarezerwowane do użytku systemu, reszta dyskietki jest przeznaczona na pliki. Użycie sektorów systemowych jest następujące: | ||
+ | |||
+ | * sektory 1-9 zajmuje DOS | ||
+ | * sektory 10-15 są puste | ||
+ | * sektory 16-23 zajmuje katalog | ||
+ | * sektor 24 zajmuje mapa alokacji plików | ||
+ | |||
+ | Na pliki więc przeznaczone jest 87k w [[SD]] lub 127k w [[ED]]. | ||
+ | |||
+ | === Katalog === | ||
+ | |||
+ | Pojedyńczy wpis katalogowy zajmuje 16 bajtów. Ponieważ katalog zajmuje 8 sektorów, na dyskietce można by było umieścić do 64 plików, gdyby nie fakt, że w każdym sektorze katalogu pierwszy wpis jest zajęty przez DOS. Dlatego maksymalna liczba plików na dyskietce wynosi 56. Ten wpis systemowy składa się z 14 zer, a dwa ostatnie bajty mają wartość odpowiednio $57 $A5 dla [[SD]] i $7F $A5 dla [[ED]]. | ||
+ | |||
+ | Strukturę pozostałych wpisów katalogu przedstawia tabelka: | ||
+ | |||
+ | <table border = 1 cellpadding = 5> | ||
+ | <tr><td><b>Offset</b></td><td><b>Opis</b></td></tr> | ||
+ | <tr><td>$00</td><td> | ||
+ | <p>Bajt statusu:</p> | ||
+ | * bit 7 = 1 - wpis katalogowy istniejel jeśli tu jest 1, a w pozostałych bitach 0, to plik jest skasowany. | ||
+ | * bit 6 = 1 - plik istnieje. | ||
+ | * bit 5 - funkcja nieznana | ||
+ | * bit 4 - funkcja nieznana | ||
+ | * bit 3 - funkcja nieznana | ||
+ | * bit 2 - funkcja nieznana | ||
+ | * bit 1 = 1 - plik zabezpieczony przed zapisem lub skasowaniem. | ||
+ | * bit 0 = 1 - plik jest otwarty do zapisu | ||
+ | </td></tr> | ||
+ | <tr><td>$01-$08</td><td><p>Nazwa pliku dopełniona spacjami.</p></td></tr> | ||
+ | <tr><td>$09-$0B</td><td><p>Rozszerzenie nazwy pliku dopełnione spacjami.</p></td></tr> | ||
+ | <tr><td>$0C</td><td><p>Liczba jednostek alokacji zajętych przez plik.</p></td></tr> | ||
+ | <tr><td>$0D</td><td><p>Numer pierwszej jednostki alokacji zajętej przez plik. Numerowane są od zera.</p></td></tr> | ||
+ | <tr><td>$0E-$0F</td><td><p>Wielkość pliku w bajtach.</p></td></tr> | ||
+ | </table> | ||
+ | |||
+ | === Mapa alokacji plików === | ||
+ | |||
+ | Mapa alokacji plików znajduje się w sektorze nr 24. Każdy jej bajt odpowiada jednej jednostce alokacji obszaru plików, bajt o offsecie $00 odpowiada pierwszej jednostce alokacji, która zajmuje sektory 25-32 (i ma numer 0). Baj tten może przyjmować następujące wartości: | ||
+ | |||
+ | * $FD - koniec pliku (ostatnia jednostka alokacji zajęta przez plik) | ||
+ | * $FE - obszar wolny | ||
+ | * $FF - obszar zarezerwowany (jednostki alokacji wadliwe, nie istniejące itp.) | ||
+ | |||
+ | Każda inna wartość to numer następnej jednostki alokacji zajętej przez plik. | ||
+ | |||
+ | Ogólnie format DOS 3.0 przypomina w założeniach [[format AtariDOS 4.0]]. | ||
[[Kategoria:Atari 8-bit]] | [[Kategoria:Atari 8-bit]] |
Wersja z dnia 02:40, 21 lut 2006
Format dyskietki zastosowany w Atari DOS 3.0 i przeznaczony do użycia ze stacją 1050.
Jednostka alokacji
Jednostkę alokacji stanowi osiem sektorów, czyli 1k w SD i ED (DOS 3.0 nie obsługuje nic więcej). Całkowita pojemność dyskietki w SD i ED wynosi więc odpowiednio 90 i 130 jednostek alokacji.
Sektory (nie jednostki alokacji) 1-24 są zarezerwowane do użytku systemu, reszta dyskietki jest przeznaczona na pliki. Użycie sektorów systemowych jest następujące:
- sektory 1-9 zajmuje DOS
- sektory 10-15 są puste
- sektory 16-23 zajmuje katalog
- sektor 24 zajmuje mapa alokacji plików
Na pliki więc przeznaczone jest 87k w SD lub 127k w ED.
Katalog
Pojedyńczy wpis katalogowy zajmuje 16 bajtów. Ponieważ katalog zajmuje 8 sektorów, na dyskietce można by było umieścić do 64 plików, gdyby nie fakt, że w każdym sektorze katalogu pierwszy wpis jest zajęty przez DOS. Dlatego maksymalna liczba plików na dyskietce wynosi 56. Ten wpis systemowy składa się z 14 zer, a dwa ostatnie bajty mają wartość odpowiednio $57 $A5 dla SD i $7F $A5 dla ED.
Strukturę pozostałych wpisów katalogu przedstawia tabelka:
Offset | Opis |
$00 |
Bajt statusu:
|
$01-$08 | Nazwa pliku dopełniona spacjami. |
$09-$0B | Rozszerzenie nazwy pliku dopełnione spacjami. |
$0C | Liczba jednostek alokacji zajętych przez plik. |
$0D | Numer pierwszej jednostki alokacji zajętej przez plik. Numerowane są od zera. |
$0E-$0F | Wielkość pliku w bajtach. |
Mapa alokacji plików
Mapa alokacji plików znajduje się w sektorze nr 24. Każdy jej bajt odpowiada jednej jednostce alokacji obszaru plików, bajt o offsecie $00 odpowiada pierwszej jednostce alokacji, która zajmuje sektory 25-32 (i ma numer 0). Baj tten może przyjmować następujące wartości:
- $FD - koniec pliku (ostatnia jednostka alokacji zajęta przez plik)
- $FE - obszar wolny
- $FF - obszar zarezerwowany (jednostki alokacji wadliwe, nie istniejące itp.)
Każda inna wartość to numer następnej jednostki alokacji zajętej przez plik.
Ogólnie format DOS 3.0 przypomina w założeniach format AtariDOS 4.0.