Blog:Prevod obrazov diskiet PMD 32 na fyzickú disketu a naopak
Z PMD 85 Infoserver
Prevod obrazov diskiet PMD 32 na fyzickú disketu a naopak
V súčasnosti sa s reálnym PMD 85 obvykle používajú súbory obrazov diskiet P32 s PMD 32-SD. Keď ale máte originálnu PMD 32, tak by bolo dobré vedieť dostať obrazy diskiet s novými hrami na fyzické diskety. Pred časom mi Jozef Kardoš opravil kedysi dávno získanú DPS originálnej PMD 32 a tak som sa pustil do vytvorenia fyzických diskiet, aby som si mohol vyskúšať PMD 85-3 s originálnou PMD 32 (v mojom prípade teda iba DPS PMD 32 s pripojenými mechanikami).
Budeme potrebovať 4 utility:
- Raw2Dsk - konverzia "čistého" (RAW) obrazu disku na DSK obraz disku (utility DSK <-> RAW)
- Dsk2Raw - konverzia DSK obrazu disku na "čistý" obraz disku
- CPDWrite - zápis DSK súboru na fyzickú disketu (utilita CPDWrite)
- CPDRead - vytvorenie DSK súboru z fyzickej diskety (utilita CPDRead)
Obraz diskety P32 --> fyzická disketa
Diskety používané na PMD 32 sú 5,25", DS (double sided / obojstranné), DD (double density / dvojitá hustota), 48 TPI (tracks per inch / stôp na palec). Diskety sú formátované na 40 stôp na stranu, 9 sektorov na stopu a 1 sektor má veľkosť 512 bytov, čo dáva celkom 2 x 40 x 9 x 512 = 368640 bytov a to je aj veľkosť súboru obrazu disku P32.
Jednou z dôležitých vecí je, že originálna PMD 32 formátuje diskety tak, že sektory na jednej stope nie sú uložené vo vzostupnom poradí od 1 do 9, ale sú "poprehadzované" a to na každej strane diskety inak (tzv. skew factor je tu 3). Na strane 0 sú sektory v poradí 3, 6, 9, 1, 4, 7, 2, 5, 8 a na strane 1 sú sektory v poradí 2, 5, 8, 3, 6, 9, 1, 4, 7. Naopak, súbor obrazu disku P32 musí byť vytvorený tak, aby boli sektory na stope lineárne za sebou, teda od 1 do 9.
To znamená, že súbor obrazu disku P32 potrebujeme skonvertovať do súboru obrazu disku DSK s tým, že v DSK súbore už budú sektory v požadovanom poradí. To urobíme nasledovne:
raw2dsk -t40 -s9 -l2 -q3,6,9,1,4,7,2,5,8 -w2,5,8,3,6,9,1,4,7 rawdisk.p32 dskdisk.dsk
Teraz, keď už máme vytvorený DSK súbor, môžeme ho zapísať na fyzickú disketu pomocou DOSovskej utility CPDWrite. Potrebujeme teda počítač, kde máme 5,25" (ideálne) DD mechaniku a MS DOS. Keďže utilita pristupuje priamo na radič disku, utilita nebeží v operačných systémoch s NT jadrom (od WinXP vyššie, ak sa nemýlim). Ja sám mám ale starší počítač iba s WinXP a tak to robím tak, že si pripravím DSK súbory na disk, ktorého partícia je vidieť "pod DOSom" a naBOOTujem zo "záchrannej diskety" Win98. Takto som prakticky v DOSe a môžem spustiť utilitu CPDWrite.
K CPDWrite patrí aj konfiguračný súbor CPDWrite.CFG, v ktorom sa definujú parametre použitej mechaniky. Parameter tracks nastavíme na hodnotu 0, aby sa tento parameter vzal z obrazu disku. Parameter drive je jasný, určuje písmeno mechaniky, na ktorú sa bude zapisovať. Parameter step sa nastavuje na hodnotu 2 v prípade, ak sa zapisuje na 360 kB disketu (DD) v 1.2 MB mechanike (HD), inak je 1. Parametrom media&type sa určuje typ diskety vs. mechaniky.
#tracks = 0 ; valid range is 1 - 85, 0 = use tracks value from image #drive = A ; A or B #step = 1 ; number of tracks to advance for each stepping pulse #media&type = 2 ; drive media and type used.. ; 0 for 1.2MB 5.25" floppy in 1.2MB drive ; 0 for 1.44MB 3.5" floppy in 1.44MB drive ; 1 for 360KB 5.25" floppy in 1.2MB drive ; 1 for 720KB 3.5" floppy in 720KB drive ; 2 for 360KB 5.25" floppy in 360KB drive ; 2 for 720KB 3.5" floppy in 1.44MB drive
Samotný zípis na fyzický disk prevedieme nasledovne:
cpdwrite dskdisk.dsk
Fyzická disketa --> obraz diskety P32
Pre vytvorenie DSK obrazu disku použijeme utilitu CPDRead. Je to opäť DOSovská utilita a tak pre ňu platí to isté, ako pre CPDWrite. Aj CPDRead má svoj konfiguračný súbor CPDRead.CFG. Parameter tracks určuje počet čítaných stôp na jednej strane, u nás 40. Parameter sides určuje počet čítaných strán, u nás 2. Parametre drive, step a media&type majú rovnaký význam, ako pri CPDWrite.
#tracks = 40 ; valid range is 1 - 80 #drive = A ; A or B #sides = 2 ; 1 or 2 (both) #step = 1 ; number of tracks to advance for each stepping pulse #media&type = 2 ; drive media and type used.. ; 0 for 1.2MB 5.25" floppy in 1.2MB drive ; 0 for 1.44MB 3.5" floppy in 1.44MB drive ; 1 for 360KB 5.25" floppy in 1.2MB drive ; 1 for 720KB 3.5" floppy in 720KB drive ; 2 for 360KB 5.25" floppy in 360KB drive ; 2 for 720KB 3.5" floppy in 1.44MB drive ; 2 for 720KB 3.5" floppy in 720KB drive
Obraz disku sa teda vytvorí nasledovne (prípona sa nezadáva, bude automaticky DSK):
cpdread dskdisk
Následne potrebujeme vytvoriť P32 súbor z DSK súboru. Použijeme na to utilitu Dsk2Raw. Ako bolo spomenuté vyššie, obraz disku P32 musí mať sektory lineárne za sebou od 1 do 9, čo zabezpečíme príslušným parametrom utility.
dsk2raw -q1,2,3,4,5,6,7,8,9 dskdisk.dsk rawdisk.p32
Prevedené obrazy diskov
Niektoré prevedené obrazy diskov P32 na DSK možno stiahnuť tu. V tomto archíve sa tie obrazy nebudú aktualizovať, skôr asi doplníme samostatné archívy hier jednotlivých softvérových skupín a podobne.