VRD navod                                            TASWORD TWO
                Návod k programu "VRD hand.CM"
              **********************************
                                       LZR Soft, 14.srpna 1988
1. Co je to "VRD hand"?
========================
    VRD hand je ovladač nového uživatelského zařízení "VRD:",
což je ve své podstatě RAM DISK 10kB realizovaný v nevyužité
oblasti VRAM při režimech TEXT a GI. Při použití režimu GI však
nelze používat sprity, respektive definovat jejich tvary,
protože by se tím zasahovalo do horních 2 kB disku. Režimy GII a
MULTICOLOR bezpečně ničí data uložená na disku.
2. K čemu se používá ?
=======================
    VRD hand lze přirovnat k disketě, o kapacitě 10220 bytů na
kterou lze zaznamenat jeden datový soubor libovolného typu. Tedy
.CM .VM .BF a .DT .K souboru na disku lze "přihrávat" ještě
další data ( APPEND ) a disk samotný je možné zaznamenat na mag-
netofon, případně jej z magnetofonu zaplnit. Tyto úkony se mohou
přirovnat k výměně diskety.
3. Jak se používá ?
====================
    Handler ( česky - ovladač zařízení ) je napojen na Basic-F
( nelze jej tedy používat v jiných modulech ) a vyžívá tyto
jeho příkazy:
OPEN "VRD:jméno souboru" FOR způsob přístupu AS # kanál
kde 'jméno souboru' může mít maximálně 9 znaků,
    'způsob přístupu' určuje zda na disk budeme data zapisovat,
    ( OUTPUT ), nebo je "přihrávat" ( APPEND ), nebo je číst
    ( INPUT ),
    'kanál' je číslo z intervalu 0 až 15.
Tento příkaz otevírá soubor daného jména na zařízení VRD po da-
ném kanálu.
CLOSE # kanál
Uzavírá soubor na daném kanálu, který je nebo byl otevřen.
PUT # kanál data
kde položka 'data' je stejná jako u běžného příkazu PRINT.
 ( Nelze pochopitelně použít CURSOR(...) ).
Příkaz ukládá data do otevřeného souboru na disku.
GET # kanál proměnné
kde položka 'proměnné' je stejná jako u běžného příkazu INPUT.
 ( Nelze pochopitelně použít "text" ).
Příkaz naplňuje proměnné daty z otevřeného souboru na disku.
Poznámka: Příkazy pracují s daty jako s bajty, vzájemně je od
sebe neoddělují a je tedy nutné data číst tak, jak byla uložena.
( To znamená nastavit LEN podle délek ukládaných řetězců ).
PRINT # kanál data
Obdoba příkazu PUT. Data jsou ale oddělována tak jako při tisku.
( CR/LF ).
INPUT # kanál proměnné
Obdoba příkazu GET. Příkaz bere na zřetel i oddělovače řádků.
RECORD # kanál délka dat
kde 'délka dat' je explicitní délka dat pro jednu položku při
    operacích GET a PUT. Příkaz RECORD je ignorován.
LIST "VRD:jméno souboru"
Stejné jako LIST na CMT: s tím, že se basický program ukládá
ve znakové formě nikoli na magnetofon, ale na disk.
SAVE "VRD:jméno souboru" adresy
kde 'adresy' mají stejný význam jako při použití magnetofonu.
Neuvedením adres se nahraje basický program.
VSAVE "VRD:jméno souboru" adresy
Obdoba příkazu SAVE, ale pro záznam VRAM.
OLD "VRD:jméno souboru"
Stejné jako OLD z magnetofonu. Nahraje se soubor z disku do RAM
nebo VRAM podle toho, jakého je typu. Místo jména lze uvést
otazník.
4. Jak se disk hlásí ?
=======================
   a) po nahrání programu 'VRD hand' je uživatel dotázán má-li
být provedena inicializace ( t.j. smazání ) disku. Poté
následuje hlášení o připojení zařízení k basiku. Je-li již
nějaké uživatelské zařízení připojeno, zůstává připojeno i nadá-
le.
   b) při nesprávném použití příkazů nebo jejich sledu, oznamuje
basic stejná čísla chyb jako při použití FX: . Pouze Err 190
neznamená poškozenou VRAM,ale nesprávný režim obrazovky ( deset-
krát horší chyba než Err 19 ).
5. Jak se ovladač opětovně připojuje k basiku ?
================================================
   Po CALL 0 nebo jiné katastrofě zůstává většinou v paměti RAM
zachován ovladač a v disku data. Není tedy nutné truchlit nad
ztrátou obojího. Stačí jen ovladač znovu připojit. A to příkazem
CALL startovací adresa a na dotaz inincializace odpovědět zá-
porně.
Speciálmí poznámka LZR Softu:
------------------------------
Je-li na disk zaznamenán soubor příkazem LIST, je nutné při jeho
zpětném nahrávání zajistit správný TYPE ( INT/DBL/STR ), jinak
by mohlo dojít k tomu, že například původně řetězcovým proměnným
bude dán význam proměnných typu INTEGER a katastrofa je hotová.
Totéž platí i při "sání" z CMT: .
Byla-li na disk zapsána příkazem PUT například tato data:
"AHOJ LIDI" a chceme-li je přečíst příkazem GET #kanál A$, musí-
me nejprve zajistit, aby A$ měla délku maximálně 9 ( LEN 9 ).
Aby bylo možno disk snadno zaznamenat na magnetofon, bylo vymyš-
leno následující:
SAVE "VRD:Ajméno souboru"
kde 'A' je CTRL/A ( SHIFT+CTRL+A ). Jméno je pak ochuzeno o je-
den znak ( A + osm znaků jména ). Na magnetofon je soubor zaz-
namenán bez 'A', tedy: "jméno souboru.VM" . Zpět se disk plní
normálním příkazem OLD "CMT:jméno souboru", kde CMT: může být
vynecháno .
6. Základní údaje o programu 'VRD hand'
========================================
Program je celý ve strojovém kódu a odkazuje se na ROM Basic-F.
----------------------------------------------------------------
Startovací adresa ( adresa autostartu ) : &
Adresa horkého startu                   :  není
Konec programu "machine code"           : &
Poslední adresa, využitá programem      : &
----------------------------------------------------------------
Program "VRX hand.CM" je verze VRD s větší kapacitou disku,která
je potřeba pro programy spolupracující s assemblerem ASMVRM.
                                Příjemnou práci
                                vám  všem přeje
                                team  LZR  Soft