Konference: SAPI-1 a československé mikropočítače
Od: | Jiri Biba |
Datum: | 2.3.2012 01:03 |
Předmět: | Re: Oziveni PMD32-SD na Sapi |
Ahoj! Aha, to ze PMD32-SD chce sektory od 0 jsem si zatim nejak nevsiml -:) Nojo, ja je tam posilam od 1 a tak je jasny, ze jich pak musi byt u me o 1 vic... Takze ted je to o rozhodnuti. Ofset se u mechanik pouziva na to, aby se behem otacky diskety nacetlo nekolik sektoru. Proc ale ofset pouzivat u image disket na PMD? Kdyz ho v Sapi pro mechaniku "na PMD32-SD" uplne zrusim, a na PC taky skew nebude, tak to prece neni nic proti nicemu, ne? Pak budou sektory pro PMD32-SD vzdy od 0 uz z Bdosu. Nojo, ale pak by zase mohl byt problem s kompatibilitou SD karet s jinema masinkama. A jeste mam dalsi problem. Ten fyzickej kopirovak disket jede primo na Bios sluzbach. Umoznuje kopii mezi dvema klasickyma 8" mechanikama a mezi 8" mechanikou a PMD. Nojo, ale to budu muset rozlisovat, ze mechaniky maji sektory 1-26 a PMD32-SD ma sektory 0-25 a zejeste nema ofset... Pak je jeste moznost dva, nechat to tak jak to mam ted "sektory 1-27" s nepouzitym sektorem 0. Maka to, ze image disku zabira trochu vice mista na temer nekonecny karte a ze maximalni format ma trochu min je snad uplne jedno... Nevim, co myslis tim sachovanim. Cislovani log.sektoru od nuly je je u 3,5 a 5,25 disku nutny. Musi byt, protoze to vyzaduje blok/deblok mechanizmus. Koukal jsem jak to napsal Mercl, Lamac, Bartovsky a nemcouri u R1715 a vsichni cisluji sektory do blok/debloku od nuly po ctyrech za sebou. Samozrejme, ze fyzicky 512 bytovy sektory jsou pak na diskete od jedne. Jinak by to PC neprecetlo. WinHex mi to cte na PC korektne, takze to mam urcite spravne Jinak to cislovani sektoru pod hlavami jsem delal podle pokecu z netu, kde to takhle bylo doporuceny. Samozrejme, ze to slo udelat jinak, ale v ty dobe jsem jeste netusil, ze vzhledem PMD32-SD by to bylo lepsi udelat jinak. Jirka ----- PŮVODNÍ ZPRÁVA ----- Od: "Roman Bórik (sapi tu byla ta zakroucena vec pandora.cz)" <roman.borik tu byla ta zakroucena vec netkosice.sk> Komu: "Konference 'SAPI-1 a československé mikropočítače'" <sapi tu byla ta zakroucena vec pandora.cz> Předmět: Re: Oziveni PMD32-SD na Sapi Datum: 1.3.2012 - 20:14:18 > > > Tak ted mi prosim Romane rekni, proc kdyz je na > > diskete sektor 1-26, > > > tedy celkem 26 sektoru, musi se PMD konfigurovat > > na 27 sektoru. > > > Ted uz to jede. -:) > > Môžem sa mýliť, ale nemôžem sa zbaviť pocitu, že > si tým svojim "šachovaním" > s číslovaním sektorov a úpravou XLT tabuľky, aby > bola od 0, iba robíš viac > chaosu, ako v tom CP/M je ;-) > > Ako som už bol písal, PMD 32-SD vyžaduje > číslovanie sektorov od 0 po N-1, > kde N je počet logických sektorov na stopu > (parameter SECTORS_PER_TRACK v > images.cfg). A je na BIOSe a ovládači, aby tento > rozsah dodržal. Pokiaľ sa > požaduje od PMD 32-SD sektor s číslom, ktoré je > mimo tento rozsah, tak to > samozrejme musí skončiť iba chybou. > Takže si prever prípravu a transformáciu čísla > sektora. > > Pre úplnosť uvediem ešte drobné detaily. > BDOS interne vždy používa intervaly 0 až N-1, či > už sa jedná o sektory, > stopy alebo alokačné bloky. > Keď sa chystá BDOS čítať z nejakého alokačného > bloku (konkrétne jeden > logický sektor v rámci alokačného bloku), za > pomoci parametrov z tabuľky DPB > vypočíta číslo stopy a sektora v rámci fyzického > disku, kde sa požadovaný > sektor nachádza. K vypčítanému čislu stopy > pripočíta ešte parameter OFF z > DPB a s touto hodnotou zavolá rutinu SETTRK v > BIOSe. S vypočítaným číslom > sektora zavolá rutinu SECTRAN, ktorá mu vráti > transformované číslo sektora s > touto hodnotou zavolá rutinu SETSEC. > Rutiny SETTRK a SECTRAN sú volané VŽDY s hodnotami > v intervale 0 až N-1. > Rutina SETSEC je volaná s hodnotou, ktorá je > vrátená rutinou SECTRAN a tá je > už závislá od jej implementácie a tabuľky XLT. > Samozrejme záleží aj od toho, ako sa naloží s > hodnotou čísla sektora v > rutine SETSEC, či sa nerobí nejaká úprava +-. > > Roman > > --------------------- > sapi tu byla ta zakroucena vec pandora.cz > Konference o SAPI-1 > --- >
[2012/1 (114)] [2012/2 (102)] [2012/3 (30)] [2012/4 (9)] [2012/5 (18)] [2012/6 (32)] [2012/7 (143)] [2012/8 (197)] [2012/9 (161)] [2012/10 (43)] [2012/11 (90)] [2012/12 (37)]