ZX Spectrum > PROGRAMOWANIE
Formaty dyskietek
steev:
--- Cytat: Phonex w 2019.01.26, 10:32:24 ---Spoko.
Ja nie miałem stacji DD, nic na takie nie pisałem. Trochę by mi zajęło przećwiczenie jak czytać, jak sprawdzać SD/DD, itd.
--- Koniec cytatu ---
To akurat całkiem proste. Dla TOS dyskietka DD to dyskietka mająca 160 ścieżek z jednostką alokacji 4k (zauważ że żadna z funkcji TOS nie ma opcji wyboru strony dyskietki)
A informacja o gęstości dyskietki jest zapisana w pierwszym sektorze (bajt $0e)
trojacek:
Wyjdę na czepialskiego (jak zawsze zresztą), ale dla porządku:
• TOS 140KB to SSDD (single-sided double density),
• TOS 620KB to DSQD (double-sided quad density).
Wiem, wiem - formatowanie z literką "d" na końcu jest mylące :)
Z kolei single density oznacza zapis z modulacją FM, dający pojemność o połowę mniejszą niż stosowany przez TOS zapis MFM. Ze względu na kompatybilność wsteczną WD1770 obsługuje FM, ale wiadomo, że MFM jest lepszy.
Jednostki alokacji - jak słusznie steev rzecze - to 4KB dla TOS 620KB (oraz 1KB dla TOS 140KB).
Z innych (być może przydatnych) informacji, w formacie dwustronnym (620KB) numeracja jednostek alokacji jest naprzemienna (raz strona 0, raz strona 1). Zmniejsza to szuranie głowicą w te i wewte przy odczycie i zapisie pliku zapisanego w kolejnych jednostkach alokacji.
Schodząc o piętro niżej bliżej sprzętu, sektory na ścieżce (TOS) mają numery logiczne różne od numerów kolejnych, bo "skaczą" co 7. Taki zabieg pozwala szybciej przeczytać całą ścieżkę, gdy procesor nie jest za szybki i nie ma DMA. Dla odmiany timexowy i polbritowy CP/M 2.2 "skacze" modulo 5, zachowując ten sam schemat organizacyjny dyskietki oraz strukturę katalogu, z dokładnością do numeru i rozmiaru ścieżki z katalogiem oraz brakiem folderów, które są zastąpione "userami" (tzn. chronologicznie było odwrotnie - foldery TOS zastąpiły userów CP/M).
Ergo - dałoby się napisać narzędzie (raczej i zwłaszcza pod CP/M), które w miarę automatycznie rozpoznaje, jaka dyskietka jest włożona i pozwala przenosić pliki między systemami.
Oczywiście w CP/M 2.2 nie ma programu START, przynajmniej nie w prosty sposób.
steev:
--- Cytat: trojacek w 2019.01.26, 23:25:04 ---Dla odmiany timexowy i polbritowy CP/M 2.2 "skacze" modulo 5, zachowując ten sam schemat organizacyjny dyskietki oraz strukturę katalogu, z dokładnością do numeru i rozmiaru ścieżki z katalogiem oraz brakiem folderów, które są zastąpione "userami" (tzn. chronologicznie było odwrotnie - foldery TOS zastąpiły userów CP/M).
--- Koniec cytatu ---
Jeśli 'timexowy' to ten z FDD, to niezupełnie.
Katalog zaczyna się na ścieżce '2' a nie '4'.
Inne jest też znaczenie bajtów 13 i 14 we wpisach katalogu.
trojacek:
--- Cytat: steev w 2019.01.27, 02:56:23 ---Jeśli 'timexowy' to ten z FDD, to niezupełnie.
Katalog zaczyna się na ścieżce '2' a nie '4'.
--- Koniec cytatu ---
Dlatego napisałem:
--- Cytuj ---z dokładnością do numeru i rozmiaru ścieżki z katalogiem
--- Koniec cytatu ---
Na domiar "złego", polbritowski CP/M ma tylko pół ścieżki katalogu (2KB), czyli limit plików wynosi 64.
ZbyniuR:
Tylko 64 nazwy nawet w tym formacie 620K ?
Jeśli dobrze rozumiem w TOSie można tworzyć katalogi, czy ich nazwy też wykorzystują te same miejsca na swoje nazwy?
Nawigacja
[#] Następna strona
Idź do wersji pełnej