Programy pro M5 pod systémem CP/M
************************************
V tomto materiálu jsou popsány některé programy systému
CP/M, které využívají hw prostředí počítače SORD M5 a proto
z tohoto důvodu nemohou být používány v systémech CP/M na jiných
počítačích.
Poznámka:
tlačítkem @RESET je míněn hw spínač, restartující celý systém
počítače, klávesou <RESET> je míněno tlačítko na klávesnici.
BI, BG, BF, FALC, PEDIT, SCOPY, TVADJUST
==========================================
Programy jsou typu .COM a jedná se o interpretry jazyků
basic I, G a F, tabulkový procesor FALC, jednoduchý grafický
editor PAINT EDITOR, kopírovací program SUPER COPY, který je
určen pro kopírování SORD souborů z pásky na pásku a jednoduchý
program TV-ADJUST který zobrazí "monoskop", podle něhož je možné
si vhodně nastavit barvy na BTV či monitoru. Programy si samy
zajišťují zkopírování MONITORu ROM do paměti RAM. Aby mohl
MONITOR ROM fungovat i v RAM, je v něm zrušena kontrola paměti
RAM ( při ní by MONITOR sám sebe přepsal ) a následně pak musela
být zrušena také kontrola, při níž MONITOR ROM testuje sám sebe.
Protože neproběhne test paměti, nejsou správně nastaveny hodnoty
systémových proměnných začátku a konce RAM. Před spuštěním
basiků je proto tato hodnota změněna. Toto se však nepříznivě
projevuje při jejich restartu ( CALL 0 ), kdy je RAMTOP nastaven
na 8000H. Návrat do systému CP/M se děje stiskem tlačítka
@RESET.
CHESS, BUDIC, COBRA, TENNIS, POOYAN, ...
==========================================
Programy jsou typu .COM. Jsou to upravené "páskové" hry,
které si kopírují MONITOR ROM do paměti RAM, podobně jako to
dělají programy BI, BG, BF, ... a další.
Super Cobra
MSX1B.COM, MSX1C.COM
======================
Jedná se o emulátory systému MSX verze 1.B a 1.C. Verze
1.B emulátoru komunikuje s magnetofonem v původním formátu záz-
namu MSX, který je nekompatibilní se záznamem SORD M5. Verze
1.C komunikuje s magnetofonem ve formátu SORD M5, čímž je zjed-
nodušena přenositelnost MSX souborů mezi sordisty. Díky překrý-
vání pamětí RAM nelze na CP/M hardwaru, narozdíl od ostatních
modulů 64 KB RAM, měnit záznamovou rychlost ( RATE FACTOR ),
protože POKE zapíše hodnoru RF do RAM 64KB, zatím co při SAVE je
připojen MONITOR ROM spolu s vnitřní SRAM 4KB ( tato paměť je
pro zjednodušení nazývaná CACHE ), ve které zůstala hodnota RF
nezměněna. Návrat do systému CP/M se děje stiskem tlačítka
@RESET.
XMSX.COM
==========
Toto je emulátor systému MSX verze 1.B, doplněný o zaváděcí
podprogram, který nahraje do paměti také specifikovaný soubor
typu MSX ( uvedení jakékoli jiného typu je ignorováno ). Poté,
co je soubor nahrán, je do emulátoru zapsána namísto startovací
adresy basiku MSX startovací adresa nahraného souboru a emulátor
je poté odstartován. Soubor typu MSX musí začínat na adrese
8205H nebo vyšší a nesmí přesahovat adresu E400H. Nejdelší nah-
rávaný soubor proto může mít maximální délku 6200H bajtů. Soubor
typu MSX je nahrán na adresu, která je uvedena v jeho prvním
záznamu v prvním slově. Startovací adresa je ve druhém slově to-
hoto záznamu. Vlastní data začínají až od druhého záznamu. Náv-
rat do systému CP/M se děje stiskem tlačítka @RESET. Syntaxe
příkazu:
XMSX odstartuje pouze emulátor, stejné jako MSX1B
XMSX jméno odstartuje emulátor a poté soubor "jméno.MSX"
MSX.COM
=========
Jedná se o upravený BIOS emulátoru systému MSX, doplněný
o zaváděcí podprogram, který načte do paměti také specifikovaný
soubor typu MSX. Poté je BIOS odstartován. BIOS připraví v RAM
prostředí systému MSX a předá řízení načtenému souboru. Ten může
začínat kdekoli od adresy 3500H a výše a může mít délku až
AF00H bajtů. Soubor typu MSX je nahrán na adresu, která je uve-
dena v prvním slově prvního záznamu. Startovací adresa je ve
druhém slově tohoto záznamu. Vlastní data začínají až od druhého
záznamu. Při načítání tohoto souboru je zobrazen jeho původní
název, jaký měl na pásce. Tento název je uložen v prvním záznamu
od 17tého bajtu. Program MSX nekontroluje, zda-li má jím nahrá-
vaný soubor správný formát. Návrat do systému CP/M lze uskuteč-
nit stiskem obou kláves SHIFT ( pokud je takto program typu MSX
upraven ), nebo stiskem tlačítka @RESET. Syntaxe příkazu:
MSX vypíše informaci o správné syntaxi příkazu
MSX jméno odstartuje BIOS a poté soubor "jméno.MSX"
MSX jméno.typ odstartuje BIOS a poté soubor "jméno.typ"
CC-TAPE.COM
=============
Tento program slouží k oboustranné komunikaci mezi CP/M
a magnetofonovým páskem. Při kopírování příliš dlouhého souboru
na pásek je soubor rozdělěn na několik částí po 16 KB. Při načí-
tání souboru z pásku program očekává, že vyšší byte startovací
adresy souboru obsahuje číslo 01 a že poslední písmeno ve jménu
obsahuje číslici určující o kolikátou část souboru se jedná. Pro
poslední část je to znak nula.
CC-TAPE jméno.typ načte soubor z disku a zapíše ho na pásek
CC-TAPE načte soubor z pásky a zapíše ho na disk
TLOAD.COM
===========
Tento program funguje podobně jako CC-TAPE bez parametrů,
ale umožňuje načíst z pásky libovolný soubor, do maximální délky
53 KB. Ve specifikaci jména souboru lze použít hvězdičku, která
nahrazuje libovonou skupinu znaků. Načtený soubor je zapsán na
disk podle těchto pravidel:
- malá písmena ve jménu souboru jsou vždy převedena na velká,
nepřípustné znaky jsou nahrazeny znakem minus. Pokud je první
znak ve jménu mezera, je nahrazen vykřičníkem. Znaky následu-
jící za první mezerou ve jménu, pokud však tato mezera není na
první pozici ve jménu, jsou ignorovány.
- soubor "jméno.BN.CM", tzn. program pro emulátor systému MSX
verze 1.C, je převeden do podoby jméno.MSX, přičemž je přidán
první záznam tak, jak to vyžaduje program MSX.COM. Pokud jméno
začíná znakem @ $ nebo !, je tento znak ze jména vynechán.
- soubor jméno.CM, který začíná od adresy 2000H je převeden
na jméno.CDG
- soubor jméno.CM začínající na adrese 0100H nebo mající starto-
vací adresu na 0100H, je převeden na jméno.COM
- soubory, které nesplňují žádný z výše uvedených požadavků,
jsou zapsány jako jméno.SAV.
Běhěm práce programu, mimo okamžiku zapisování na disketu, je
možné disketu vyjmout a vložit jinou. Program si sám zajistí je-
jí přijmutí, tzn. její označení jako R/W. Je-li za specifikací
jména uvedeno písmeno O ( OVERWRITE ), znamená to, že je-li na
disku soubor shodného jména, jako soubor právě načtený z pásku,
je tento soubor z disku smazán a poté přepsán souborem nyní nač-
teným. V opačném případě zůstává na disku zachován původní sou-
bor a nový se na disk nezapíše. Program cyklicky načítá soubory,
dokud nenastane chyba ( plný disk, plný DIR, TAPE error
a podobně ). Soubory typu .DAT ( nesouvislé ) jsou preskočeny.
Práci programu lze předčasně ukončit stiskem tlačítka <RESET>.
Syntaxe příkazu:
TLOAD vypíše informaci o správné syntaxi příkazu
TLOAD jméno načte z pásku soubory "jméno?"
TLOAD * načte z pásku všechny nalezené soubory
TLOAD jméno O viz výše s přepisováním
TLOAD * O viz výše s přepisováním
TSAVE.COM
===========
Tento program je opačný k programu TLOAD.COM. Umožňuje zap-
sat na pásek libovolný soubor z diskety. Správně převádí soubory
typu MSX, CDG a COM. Na pásek zapíše všechny soubory vyhovující
specifikaci uvedené v prvním parametru. Provádění programu lze
předčasně ukončit stiskem tlačítka <RESET>. Syntaxe příkazu:
TSAVE vypíše informaci o správné syntaxi příkazu
TSAVE jméno.typ zapíše na pásek soubor jméno.typ
TSAVE *.* zapíše na pásek všechny soubory
CDG.COM
=========
Slouží k přípravě prostředí systému SORD M5 v operační pa-
měti a k zavádění programů do tohoto prostředí. Programy musí
být koncepčně pojaty stejně jako programy v SORD kartridžích.
Program v sobě obsahuje MONITOR ROM, který je upravený pro pro-
vozování v paměti RAM. MONITOR test paměti a test sama sebe pro-
vádí, takže systémové proměnné jsou nastaveny vždy správně a je
zjištěno i případné poškození MONITORu. Syntaxe příkazu:
CGD označí cartridge jako neexistující, připraví
MONITOR a odstartuje ho. Ten pak provede TAPE,
neb mu nic jiného nezbývá
CDG jméno načte soubor typu .CDG na adresu 2000H, připraví
MONITOR a odstartuje ho
CDG jméno.typ načte soubor uvedeného typu na adresu 2000H,
připraví MONITOR a odstartuje ho
*.CDG
=======
Tyto soubory osahují sordovské "kartridže" s interpretry
jazyků basic, tabulkovým procesorem FALC, grafickým editorem
PAINT DESIGNER, Hisoft Pascalem HP4T verze 1.5, programem M5
terminal a firemními hrami.
Step-Up
*.MSX
=======
Jedná se o MSX hry, kterých bylo na začátku roku 1992 okolo
dvou stovek. Většina původních ( na pásce ) jednodílných MSX her
byla pod CP/M převedena bez úprav, pouze u některých byly prove-
deny drobné úpravy týkající se ovládání joysticky. Všechny pře-
vedené vícedílné hry bylo nutné zcelit do jedné části. Několik
her, které nesplňují podmínky, které vyžaduje program MSX.COM
( například vyžadují postupné nahrávání pomocí MSX basiku nebo
se na MSX basic odkazují ) pod CP/M převedeno nebylo, ale lze
provozovat bez problémů ve verzi 1.D MSX emulátoru.
Pooyan
BIOS1.SYS, MSXBIOS.SYS, MSXDAT.SYS, GAME.COM
==============================================
Tyto soubory využívají dvoudílné programy, jejichž první
část je typu .COM nebo .EXE a druhá část je typu .SYS. Soubor
BIOS1 obsahuje úvodní obrazovku, která se zobrazuje na začátku
každé hry, která tento soubor využívá. Dál pak obsahuje BIOSovs-
ké podprogramy, na které se pak hry při svém běhu odkazují. Sou-
bor MSXBIOS je v podstatě první část emulátoru systému MSX
( jeho BIOS ). Soubor MSXDAT obsahuje stav všech systémových
proměnných při běhu systému MSX. Programy .COM se startují nor-
málně odesláním jejich jména, zatím co programy .EXE se startují
příkazem GAME jméno. Soubory .SYS musí být na stejném uživateli
jako soubor .COM nebo .EXE, pouze některé verze programů je vy-
žadují na uživateli 15. Nepřítomnost některého ze souborů .SYS
je oznámena hlášením File jméno not found s návratem do CP/M,
nebo hlášením ILLEGAL COPY OF DISK SYSTEM ABORTED, po kterém
nezbývá než CP/M znovu odstartovat stiskem @RESET. Přehled her,
které tyto soubory vyžadují:
CHOPTER sbírání lidí vrtulníkem
BERET Green Beret - voják prochází nepřátelským územím
CLIMBER šplhání po horské dráze
POLDO italská verze POOYAN.MSX
KONG Donkey Kong - vysvobození dívky ze zajetí king konga
GORF UFO střílečka
SMURF šmoula jde vysvobodit šmoulinku
SUBROC střílení na ufouny a monstra
ZAXXON letecká 3D střílečka
FARAON klasická bludišťovka
poznámka: hry, které vybízejí ke stisku číselných kláves vyžadu-
jí, aby spolu s číslem byla stisknuta i klávesa FUNC.
BREAK.COM, BREAK.OVR
======================
BREAK-IN je hra typu bourání cihel, avšak v provedení, kte-
ré se blíží profesionálně provedené hře ARKANOID na ATARI ST.
SORCERY.COM, SORCERY.OVR
==========================
SORCERY je typická bludišťová hra, ve které má hráč za úkol
osvobozovat zakleté kouzelníky.
KEY.COM
=========
Tento program zavede do nevyužité části paměti RAM, která
leží za BIOSem CP/M a za systémovými proměnnými ve vnitřní SRAM
počítače ( tzv. CACHE, viz výše ), texty pro funkční klávesy,
oživí tlačítko <RESET> a nastaví na obrazovce barvy - bílé znaky
na modrém pozadí ( to je vhodné zejména pro barevné monitory,
které nemají takový kontrast jako černobílé ). Rozmístění textů
na funkčních klávesách je shodné s programem ASMVRMv08 a je tu-
díž je výhodné pro programátory zvyklé psát v assembleru Z80.
Stisk tlačítka <RESET> vrací kód 27, což je na sordu chybějící
klávesa ESC.
PAD.COM
=========
Program pro kompletní vymazání pamětí RAM v počítači. Smaže
celou operační paměť a celou CACHE RAM. Smazání je potřeba
nejprve potvrdit. Po smazání je odstartován systém CP/M jako po
stisku @RESET. Nezbytná pomůcka, pokud chcete začít "pitvat" ně-
jaký program.
BW.COM a MD.COM
=================
BW je interpretr jazyka Basic-W ( tzv. BFWD, což je uprave-
ný Basic-F ) a MD je emulátor systému MSX verze 1.D. Bližší po-
pis obou programů je v příručkách BFWDnavod a BFWDpopis.
WMON.CON a EXTENDW.COM
========================
EXTENDW.COM je programová nadstavba WINDOWS monitoru, která
rozšiřuje počet jeho funkcí. WINDOWS monitor je "okénkový" prog-
ram, který je vypálený ve volné části EPROM s OS CP/M. Program
WMON.COM je určen pro ty uživatele, kteří nemají WINDOWS monitor
vypálený v EPROM. WMON.COM je verze WINDOWS monitoru rozšířená
o EXTENDW funkce, určená pro provozování v paměti RAM. Bližší
informace jsou v příručkách WINDOWnav a WINCPMnav.
Několik poznámek:
Program XMSX.COM se původně jmenoval MSX.COM. Protože s jeho
pomocí nebylo možné zavádět do paměti MSX programy začínající
pod adresou 8205H a MSX programy přesahující adresu E400H, byl
přejmenován a nahrazen novějším programem původního jména.
Program CDG vznikl díky tomu, že programy BI.COM, BG.COM
a BF.COM a ostatní cartridge programy upravují nedbale MONITOR
ROM a pak také proto, aby nebylo nutné speciálně upravovat každý
nový cartridge program.
Některé programy využívají maximum z dostupné paměti RAM a z to-
hoto důvodu je nebude možné provozovat v implementacích CP/M,
které mají modul BDOS umístěný na adrese nižší než E400H.
===== napsal LZR Soft, datum poslední editace: 30. 1. 1992 =====