Operačný systém CP/M býval tradične uložený v prvých dvoch, takzvaných systémových stopách diskety, odkiaľ sa po zapnutí počítača skopíroval do pamäti RAM. Preto aby sa mohla nová disketa používať ako systémová ( bootovacia ), musí sa po naformátovaní skopírovať na jej systémové stopy obraz CP/M. Na to slúži program SYSGEN.
Pre PMD32-SD bol pod CP/M napísaný program CD.COM, ktorý umožňuje vytvorenie nového image ale bez možnosti nakopírovania obrazu systému na tento image. Ak používame NCB85 v spojení s PC ( vo funkcii terminálu ) nie je problém vytvoriť nový systémový disk programom CIM v PC. NTB85, v ktorom používam PMD32-SD je však samostatný počítač a preto som sa chcel zbaviť závislosti na PC a vytvárať bootovateľné obrazy diskov priamo v NTB85. Aby SYSGEN fungoval správne, potrebuje poznať formát disku. Pôvodná verzia predpokladá použitie štandardných 8" diskiet, s formátom 26 sektorov na stopu a 2 systémové stopy, čo sa nezhoduje s formátom diskov PMD32-SD pre NCB85, ktorý má 64 sektorov na stopu a 1 systémovú stopu. Úprava teda spočíva v zmene týchto parametrov.
Na tejto stránke som našiel zdrojový kód programu SYSGEN. Formát disku je popísaný v úvode zdrojového kódu. Upravený zdrojový kód som premenoval na SYSGEN32.ASM. Dôležité parametre sú
NSECTS : počet sektorov na stopu
NTRKS : počet systémových stôp
Formát disku pre 8" disketu :
( originál SYSGEN.ASM )
NSECTS EQU 26 ;NO. OF SECTORS PER TRACK
NTRKS EQU 2 ;NO. OF OPERATING SYSTEM TRACKS
NDISKS EQU 4 ;NUMBER OF DISK DRIVES
SECSIZ EQU 128 ;SIZE OF EACH SECTOR
LOG2SEC EQU 7 ;LOG 2 SECSIZ
SKEW EQU 1 ;SECTOR SKEW FACTOR
Formát disku pre NCB85 :
( SYSGEN32.ASM )
NSECTS EQU 64 ;NO. OF SECTORS PER TRACK
NTRKS EQU 1 ;NO. OF OPERATING SYSTEM TRACKS
NDISKS EQU 4 ;NUMBER OF DISK DRIVES
SECSIZ EQU 128 ;SIZE OF EACH SECTOR
LOG2SEC EQU 7 ;LOG 2 SECSIZ
SKEW EQU 1 ;SECTOR SKEW FACTOR
Zdrojový kód SYSGENu je napisaný v makro asemblery MAC od Digital Research. Je to nasledovník klasického ASM asemblera, dodávaného k CP/M. Výsledkom prekladu zdrojáku je okrem štandardných súborov typu .HEX a .PRN aj súbor .SYM, ktorý obsahuje zoznam symbolov použitých v zdrojáku. Súbor .SYM používa debugger SID, čo je nasledovník programu DDT. Súbor SYSGEN32.HEX prevedieme na typ COM programom LOAD.COM
Postup je štandardný :
- preloženie zdrojového súboru
A>mac sysgen32
- prevod súboru HEX na COM
A>load sysgen32
Použitie programu SYSGEN32 sa nelíši od použitia pôvodného SYSGENu.
Rozdiel je len v tom, že disky vkladáme v PMD32-SD do jednotlivých "mechaník" programom CD.COM.
Postup:
- v mechanike A: máme vložený image so systémom, v tomto prípade SYSTEM.NCB spolu s
programami CD.COM a SYSGEN32.COM
- do mechaniky B: vložíme existujúci image na ktorý chceme skopírovať systém napr.
A>cd b:novy.ncb
- alebo vytvoríme nový image napr.
A>cd $ b:novy.ncb
- v mechanike A: spustíme sysgen32.com
A>sysgen32
SYSGEN VERSION 2.0
SOURCE DRIVE NAME (OR RETURN TO SKIP)a
( zadáme meno jednotky so systémom, v tomto prípade a )
SOURCE ON A, THEN TYPE RETURN
( potvrdíme, že v jednotke A je vložený systémový disk )
FUNCTION COMPLETE
DESTINATION DRIVE NAME (OR RETURN TO REBOOT)b
( SYSGEN si skopíruje systém do pamäte a očakáva meno cieľovej jednotky, zadáme b )
DESTINATION ON B, THEN TYPE RETURN
( potvrdíme, že v jednotke B je vložený cieľový disk )
FUNCTION COMPLETE
DESTINATION DRIVE NAME (OR RETURN TO REBOOT)
(stlačíme RETURN (Enter) pre koniec alebo meno jednotky pre ďalšie kopírovanie)
 |
Pre názornosť screenshot z NTB85 |
Otestujeme výsledok:Teraz vložíme disk SYSTEM.NCB do jednotky B: a disk NOVY.NCB ( teraz už ako systémový) do jednotky A: po reštarte počítač nabootuje do CP/M.
 |
Stav po reštarte. Disk NOVY.NCB bol prázdny, preto na ňom systém nenašiel program CD.COM a vypísal CD? |
Uvedený postup je jeden z možných, SYSGEN umožňuje kopírovať systém s ľubovoľného disku na ľubovoľný cieľový disk.
Treba ešte poznamenať, že SYSGEN pracuje iba so systémovými stopami disku, tzn. neprepisuje žiadne iné dáta - súbory uložené na cieľovom disku. Preto môžme systém nakopírovať dodatočne aj na disky, na ktorých už máme nejaké súbory bez ich poškodenia.
Potrebné súbory na stiahnutie tu .