ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ- Prostota a primitivnost sama / / DoSfS / / ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ Ahoj, tak jsem tu zase, abych vás opìt tro¹ku pootravoval tìmi svými nesmysly. No, co se dá dìlat... Kdysi jsem tu nìkterým netrpìlivcùm nechal tabulku struktury jedné adresáøové polo¾ky. Je na èase, abych jí tro¹ku objasnil. Tak¾e nejdøív ji sem znova strèit... C: ³Komentáøe: ³Pascal: ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ filename[7] ³ ³ filename:array[0..7]of char ext[2] ³ ³ ext:array[0..2]of char char attr ³ ³ attr:byte char reserved[8] ³ ³ reserved:array[0..8]of char unsigned int time ³ LSB MSB ³ time:word unsigned int date ³ LSB MSB ³ date:word unsigned int abno ³È. Alok. Bloku L M³ abno:word unsigned long size ³LSB(L M) MSB(L M) ³ size:longint {neznamenkovy!} Directory entry Tak¾e na zaèátku je jméno souboru (8 písmen), ihned za ním (¾ádné teèky nebo tak podobnì!) následuje 3písmenná pøípona, potom atributový byte, rezervovaný kus, èas a datum posledního pøístupu (takové pochybné...:), èíslo prvního AB (alok. bloku, prostì clusteru) souboru (blí¾e viz FAT) a velikost souboru. Teï podrobnì o jednotlivých polo¾kách: ³ Jméno souboru: ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ Zdálo by se není co dodat, ale to by se jenom zdálo... Ono první písmeno jména souboru je docela dùle¾ité... Tak¾e: 00h - neobsazená polo¾ka - tou konèí pro DOS adresáø a i kdy¾ jsou za ní nìjaké smysluplné polo¾ky, prostì jakoby nebyly... E5h - zru¹ený soubor. Tzn. pøi jeho mazání se vlastnì pouze modifikuje FATka a pøed polo¾ku se strèí tohle. DOS ji mù¾e kdykoliv vymìnit za nìjaký nový soubor, ale dokud se tak nestane, lze nìjak (kdy¾ máte ¹tìstí) polo¾ku obnovit... (pozn. - pokud chcete nìjakou polo¾ku ruènì z adresáøe vy¹kodit nìjakým diskeditorem, E5h dostanete kombinací ALT+229 na numerické klávesnici) 05h - nahrazuje E5h. Tzn. pokud chcete mít na zaèátku jména souboru E5h, máte díky 05h mo¾nost... 2Eh - (teèka) pokud je jedna, tak je to polo¾ka adresáøe, ve kterém právì je - ukazuje "sama na sebe" a musí být v ka¾dém podadresáøi. Pokud jsou dvì, ukazují na rodièovský adresáø a také musí být v ka¾dém podadreesáøi. no a cokoliv jiného je prostì 1. znak... :) Pøípona jména je bez problémù. ³ Atributy souboru: ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ- Tak to u¾ je opìt zajímavé. Co bit to atribut, tak sledujte: Bit 0 - ReadOnly soubor - jenom pro ètení. Kdy¾ ho otevøete DOSem pro zápis, zaène nadávat. Bit 1 - Hidden soubor - skrytý soubor. Nejni zahrnut do norm. DOSového hledání v adresáøi. Bit 2 - System soubor - toté¾ co Hidden, System soubor je vìt¹inou toti¾ i Hidden... Bit 3 - Polo¾ka (jméno+pøípona) oznaèuje název disku (proto je omezen 11ti písmeny, pokud jste si øíkali proè zrovna takhle blbì...). Kdy¾ existuje jinde ne¾ v koøenovém adresáøi, nedìlá to dobrotu... Bit 4 - Polo¾ka ukazuje na podadresáø (vìt¹. size=0!) Bit 5 - Archivní bit - viz dokumentace k pøíkazùm BACKUP a RESTORE. Pokud je nepou¾íváte, mù¾ete si ho vyu¾ít k vlastním úèelùm - je nastaven pøi ka¾dém zápisu do souboru a nulován právì BACKUPem - potom pozná který soubor se od posl. zálohování zmìnil. Pozn.: ne, není to náhoda, ¾e tato maska shoduje s konstantami v Ccku i v TurboPascalu :) ³ Èas souboru: ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄ Urèuje èas poslední modifikace souboru: ³ MSB ³ LSB ³ hh=bin. èíslo 0-23 (hodiny) ÃÄÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÄ´ mm=bin. èíslo 0-59 (minuty) ³hhhhhmmm³mmmsssss³ ss=bin. èíslo sekund ve dvousekundových ÃÄÄÄÄÄÄÄÄÁÄÄÄÄÄÄÄÄ´ pøírustcích ³15 0³ Èas je ulo¾en v poøadí LSB MSB ³ Datum souboru: +ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ Urèuje datum poslední modifikace souboru: ³ MSB ³ LSB ³ rr=rok, 0-119 (1980-2099) ÃÄÄÄÄÄÄÄÄÅÄÄÄÄÄÄÄÄ´ mm=mìsíc, 1-12 ³rrrrrrrm³mmmddddd³ dd=den, 1-31 ÃÄÄÄÄÄÄÄÄÁÄÄÄÄÄÄÄÄ´ ³15 0³ Datum je ulo¾en v poøadí LSB MSB ³ Èíslo prvního AB: ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ- Urèuje èíslo prvního alokaèního bloku (clusteru) ve kterém je ulo¾en soubor (min. è. 2) - blí¾e viz FATka. Velikost souboru v je v bytech, není co dodat. Tak, to bychom mìli toto. Pøí¹tì se koukneme na poslední èást, a to na FAT tabulku. Pokud nìkdo nìèemu nerozumíte, neostýchejte se a v pohodì mailujte na pasky@pruvodce.cz, ceres@post.cz nebo pasky@libra.sinus.cz nebo na nìjaký jiný mùj e-mail (pasky@cyberspace.cz, kkcc@poboxes.com, apod...), pokud je vám jedno ¾e si toho v¹imnu tak do jednoho roku... Tak pac a pusu, pasky. Jakmile sesmolím tøetí èást, dopøedu ji najdete na adrese http://fly.to/pasky nebo pokud se vám nelíbí reklama tak http://lide.pruvodce.cz/pasky Hodnì ¹tìstí! (definitivnì dokonèeno, zformátováno a pøipraveno k odeslání v hvìzdné datum 31081999/2025) ÄÄ - (:c:) Pasky 1999 - http://fly.to/pasky - ceres@post.cz - pasky@libra.sinus.cz ÄÄ- PostScriptum: Omlouvám se za prùbì¾né mìnìní háèkování znakù, mùj nenapra- vitelný zlozvyk :)