Format AtariDOS 4
From Atariki
Wersja z dnia 00:37, 21 lut 2006 KMK (Dyskusja | wkład) (→Jednostka alokacji) ← Previous diff |
Wersja z dnia 00:40, 21 lut 2006 KMK (Dyskusja | wkład) (→Jednostka alokacji) Next diff → |
||
Linia 4: | Linia 4: | ||
Jednostkę alokacji w tym formacie stanowi sześć sektorów, czyli 768 bajtów w [[SD]] lub 1536 bajtów w [[DD]]. Dyskietka zapisana jednostronnie w SD lub DD ma więc całkowitą pojemność 120 jednostek alokacji, z czego początkowo dostępne jest 118, gdyż dwie zajmuje VTOC. W DD dodatkowo pierwsza jednostka alokacji (sektory 1-6) oznaczona jest jako zawsze zajęta, obszar plików zaczyna się od następnej. | Jednostkę alokacji w tym formacie stanowi sześć sektorów, czyli 768 bajtów w [[SD]] lub 1536 bajtów w [[DD]]. Dyskietka zapisana jednostronnie w SD lub DD ma więc całkowitą pojemność 120 jednostek alokacji, z czego początkowo dostępne jest 118, gdyż dwie zajmuje VTOC. W DD dodatkowo pierwsza jednostka alokacji (sektory 1-6) oznaczona jest jako zawsze zajęta, obszar plików zaczyna się od następnej. | ||
+ | |||
+ | Dla [[QD]] całkowita pojemność dyskietki to 238 jednostek, z czego na pliki przeznaczone jest 236. | ||
Ze struktury mapy alokacji plików (zobacz niżej) można wywnioskować, że maksymalna pojemność systemu plików wynosi 248 jednostek alokacji, co w [[DD]] daje 380928 bajtów, czyli 372k. | Ze struktury mapy alokacji plików (zobacz niżej) można wywnioskować, że maksymalna pojemność systemu plików wynosi 248 jednostek alokacji, co w [[DD]] daje 380928 bajtów, czyli 372k. |
Wersja z dnia 00:40, 21 lut 2006
Format dyskietki zastosowany w AtariDOS 4, przygotowywany dla stacji dysków komputera Atari 1450XLD.
Spis treści |
Jednostka alokacji
Jednostkę alokacji w tym formacie stanowi sześć sektorów, czyli 768 bajtów w SD lub 1536 bajtów w DD. Dyskietka zapisana jednostronnie w SD lub DD ma więc całkowitą pojemność 120 jednostek alokacji, z czego początkowo dostępne jest 118, gdyż dwie zajmuje VTOC. W DD dodatkowo pierwsza jednostka alokacji (sektory 1-6) oznaczona jest jako zawsze zajęta, obszar plików zaczyna się od następnej.
Dla QD całkowita pojemność dyskietki to 238 jednostek, z czego na pliki przeznaczone jest 236.
Ze struktury mapy alokacji plików (zobacz niżej) można wywnioskować, że maksymalna pojemność systemu plików wynosi 248 jednostek alokacji, co w DD daje 380928 bajtów, czyli 372k.
VTOC
VTOC znajduje się w 58 i 59 jednostce alokacji, czyli zajmuje sektory o numerach od 349 do 360 ($015D-$168). Z tego jedenaście pierwszych sektorów (349-359) zajmuje katalog dyskietki, ostatni zaś sektor przeznaczony jest na mapę alokacji plików.
Katalog
Pojedyńczy wpis katalogowy zajmuje 16 bajtów. Ponieważ katalog zajmuje 11 sektorów, na dyskietce można umieścić do 88 plików w SD lub 176 w DD. Strukturę wpisu katalogowego przedstawia tabelka:
Offset | Opis |
$00 |
Bajt statusu:
|
$01 |
Liczba jednostek alokacji, jaką zajmuje plik. |
$02 | Offset ostatniego bajtu danych znajdujących się w ostatnim sektorze (nie jednostce alokacji!) pliku. |
$03 |
Numer bajtu w mapie alokacji plików, od którego zaczyna się informacja o rozmieszczeniu pliku na dyskietce. Inaczej mówiąc, jest to numer pierwszej jednostki alokacji zajętej przez plik, zwiększony o siedem. |
$04 | Funkcja nieznana, być może bajt zarezerwowany na przyszłość. |
$05-$0C | Nazwa pliku dopełniona spacjami. |
$0D-$0F | Rozszerzenie nazwy pliku dopełnione spacjami. |
DOS 4.0 nie pozwala założyć na dyskietce pliku o zerowej długości. Każdy nowo założony plik dostaje status $81. Po zamknięciu pliku DOS kasuje bit 0, jednak jeśli do pliku nie wpisano żadnych danych, status będzie miał wartość $80, co oznacza plik skasowany. Dopiero wpisanie co najmniej jednego bajtu powoduje, że funkcja CLOSE zmienia status zbioru na $40 (plik istnieje).
Mapa alokacji plików
Mapa alokacji plików zajmuje, jako się rzekło, ostatni sektor 59 jednostki alokacji, o znajomym skądinąd numerze 360, czyli $0168. Pierwsze osiem bajtów tego sektora zajęte jest przez system: