http://ci5.speccy.cz
LOAD "world"

SinDiKat

ZX Magazin

hw.speccy.cz

ShuCon

LOGOUT

Softhouse ZX Spectrum

http://ci5.speccy.cz/news/vite-jak-jsou-ulozeny-data-v-mdos3.php
News
Tohle všechno by nikomu nemělo uniknout

Víte, jak jsou uloženy data v MDOS3?
7. 9. 2008 19:18 – rubrika News

Nebylo by na škodu, abych znovu připomenul, jak jsou organizovány data na disku, aby pak někdo nenavrhoval změny, které jsou nerealizovatelné

MDOS3 je emulátor D80. Využívá skutečnosti, že sektory na disketě a sektory na HDD mají stejnou velikost a že je možné odklonit rutiny pro práci s floppy. Pak je například požadavek na sektor 60 z floopy, pak se vezme začátek image diskety, přičte 60 a tento sektor se načte místo z floppy z HDD.

Data se pak skládají z image jednotlivých disket za sebou. Před každou disketou je však infosektor (o velikosti jednoho sektoru), který nese dodatečné informace o následující disketě. Pak už je jen image diskety (obraz diskety sektor po sektoru) o velikosti 94x9 sektorů, oproti původní 80x9.

V tomto image je značka, jméno diskety a zapínátko ochrany proti zápisu. Tady je popis dat:

OFFSET (dekadicky)  popis obsahu
0-3                 znacka DOSu (text: SDOS)
4-35                32 znaku popisu diskety
36                  WriteProtect ("0"=R/W, "1"=read only)
37-511              volne

1/značka DOSu má jen kontrolní charakter, ale být tam musí. Jsou to 4 velká písmena "SDOS", stejně jako je v BOOTu MDOS diskety.

2/popis diskety: 10-ti znakový název diskety je mnohdy nedostačující. Většinou mám normalní diskety popsány na štítku. 32 znaků bylo zvoleno tak, aby se mi to vešlo na jeden řádek na obrazovce (a k tomu jestě informaci o WriteProtectu).

3/Informace o WriteProtectu (ochrana proti zápisu) je uložena na disku, protoze to tak bude lepší. Prostě je to uloženo i pro příště. Pozor, tento bajt nemá hodnotu 0 nebo 1, ale je tam ulozen znak "0" (0x30H) nebo znak "1" (0x31H).

Systém MDOS3 byl napsán tak, že MDOS3 data byly uloženy ve speciálním oddíle s ID 49. To se ale nelíbilo lamerům, kteří nemají pořádný systém, takže jsem povolil a MDOS3 si umí data i vyhledat, bez ohledu na filesystem. Ale 2 základní požadavky jsou:

Nejlépe se to docílí tak, že data nakopírujeme na prázdný naformátovaný disk. Data v MDOS2.1 mají stejný formát a začínají dokonce na sektoru 2. Není tutíž možné před tyto data vložit jakýkoliv jiný nesmysl.

Formát 94x9 byl volen kvůli tomu, že FAT nelze rozšířit a zase by bylo škoda nevyužít místo.

Související články:
Vytisknout článek

Autor: SweetKomentářů: 2


Starší příspěvky:

Novější příspěvek: Přístup zakázán - 8. 9. 2008
Starší příspěvek: Load kurzor v MDOS3 - 2. 9. 2008

Úplně prehistorické příspěvky najdete v archívu rubriky.


Komentáře:

[1] dex (web) – 8.9.2008 19:24

k tomu, že datamusí být nekomprimována bych dodal, že by asi měla být i defragmentována...

[2] sweet – 8.9.2008 20:20

to Dex: samozřejmě máš pravdu, data musí být NEFRAGMENTOVÁNA. Chyba tisku. Opravím.


Přidání komentáře
Identifikace autora

Váš komentář

Nepoužívejte HTML značky ani entity, pouze text. URL začínající http:// nebo ftp:// budou zobrazeny jako odkazy (za URL nechejte mezeru, aby byl rozpoznán konec). Vložit můžete maximálně tři odkazy, jinak bude rozpoznán jako spam. Na jiné komentáře se odkazujte zápisem [XX], kde XX je číslo příspěvku. Jeden enter se zformátuje jako nový řádek, více enterů za sebou jako nový odstavec.