

                      #####################
                      ###  Systm MB-02 ###
                      #####################


 Diskov systm MB-02 sa sklad z dvoch ast: zo samotnho DOSu
(BS-dos) a z opravenej a upravenej romky (BS-rom).  Tento  popis
sa konkrtne tka verzi BS dos 306 a BS rom 118.
 Samotn romka sa d poui aj samostatne  -  napli  do  EPROM
(alebo nahra do RAM od nuly) a da si ju namiesto pvodnej.


                       ##################
                       ### BS dos 306 ###
                       ##################


 Kad disk (v zkladnom reime) obsahuje 256  adresrov.  Tieto
adresre sa daj  logicky  usporiada  do  ubovolnej  truktry
(teda nie len do  stromu!).  Jedinm  obmedzenm  je,  e  kad
adresr me patri naraz iba do jednho nadadresra,  ale  zato
jeho nadadresrom me by aj  on  sm,  prpadne  s  niekokmi
almi adresrmi me tvori cyklick truktru !

 V kadom adresri me by ubovone vek poet sborov, ale z
technickch dvodov je tento poet obmdzen na 65279 sbov  pre
jeden adresr. ie na jednom disku me by teoreticky  celkovo
a 256*65279 sborov... (256*65279 = 16711424)

 Operan  systm  okrem  tandartnch  diskovch  sluieb  ete
umouje pomocou disku emulova  ben  magnetofnov  psku  i
kazetu. Lene pska ma na rozdiel  od  diskety  vdy  definovan
polohu - miesto v ktorom je prve pretoen a ke napete  load
bez mena, nahr sa prv program na ktor pota naraz.
 Preto bol vytvoren pecilny ukazovate nazvan "load-kurzor"
ktor ukazuje miesto, na ktor je "pretoen" disketou emulovan
pska.  Disketa  teda  predstavuje  256-stopov  (stopa=adresr)
magnetick psku ktor je pretoen tak, e  program,  na  ktor
ukazuje "load-kurzor" sa  bude  ako  prv  nahrva  pri  zadan
prkazu LOAD bez mena.

 Zkladn pskov (alebo kazetov) prkazy LOAD,  SAVE,  VERIFY,
MERGE normlne volaj romkov  load-save  rutiny  #4c2  a  #556.
Simulcia psky pomocou disku v tchto prkazoch  nastva  a  v
spomenutch load-save rutinch.  Preto  vetky  programy,  ktor
korektne volaj romku (#4c2 a #4c6 pre save a #556 a #562  pre
load) bud automaticky  bez  akchkovek  prav  fungova  aj  s
diskom.


                       Nov prkazy basicu
                       -------------------
 Vade tam kde sa oakva slo, je mon psa akkovek vraz,
ktor m seln vsledok. Tie vade tam, kde sa vyaduje  dky
reazec alebo meno,  mono  psa  akkovek  vraz  reazcovho
charakteru.
 Ak je nejak parameter prkazu napsan v <takchto ztvorkch>
znamen to e je nepovinn a mete ho vynecha.


                1. Prkazy pre nastavovanie cesty

 USR 15522 - presmerovanie  prkazov  LOAD,SAVE,VERIFY,MERGE  na
magnetofn (magnetofn bude aktulnym zariadnm).
 USR 15524 - presmerovanie  prkazov  LOAD,SAVE,VERIFY,MERGE  na
disk (disk bude aktulnym zariadenm).

 @ slo
 @ reazec
 Nastavenie aktulneho  disku.  Reazec  je  meno  diskety,  ale
hadanie disku poda mena nie je implementovan. Ak slo=0  tak
sa load-save rutinky presmeruj na kazetu (presne ako USR 15522)
 Ak sa m vykona @ s nenulovm parametrom, tak okrem nastavenia
danej mechaniky sa ete vykon USR 15524 - load-save rutinky  sa
presmeruj na disk.

 $ slo
 $ reazec
 Nastavenie aktulneho adresra na aktulnom disku.  Reazec  je
meno adresra, porovnva sa iba prvch 10 znakov.

 ` slo
 ` reazec
 Nastavenie load-kurzora na dan sbor. [znak ` je libra]

 ubovon kombincia  tchto  troch  prkazov  tvor  parameter
"cesta" v alch prkazoch.  Vyhodnocuje  sa  zava  do  prava.
Napr: @ 3 $ 5 @ 8 $22 $"bubu" `  "ahoj"  znamen,  e  na  disku
zasunutho do mechniky 3 sa nastav aktulny adresr 5, na disku
8 sa nastav adresr 22, potom sa njde prv adresr po 22 ktor
m meno "bubu" a load-kurzor sa  v  tomto  adresri  nastav  na
sbor "ahoj".  Postupnos  tchto  prkazov  me  by  ukonen
bodkoiarkou (ak to syntax dkeho prkazu potrebuje).


             2. Prkazy pre manipulciu s disketou:

 .FORMAT <cesta>
 Zmazanie plne vetkch sborov a adresrov z diskety.  Disketu
je ete mon obnovi, pokia sa nesprav  SAVE.  Pred  samotnm
zmazanm sa ete vype dotaz, i  naozaj  chcete  tento  prkaz
poui. Zmazan dta sa ete daj obnovi prkazom UNERASE.

 .ERASE <cesta> data
 Logick zmazanie sborov. Sbory je ete mon obnovi. Fyzicky
sa zma a vtedy, ke sa  na  disketu  nieo  sejvne.  Zmazanie
sboru s  slom  0  znamen  zmazanie  celho,  aj  neprzdneho
adresra. Pred zmazanm  neprzdneho  adresra  sa  ete  vype
dotaz, i naozaj chcete tento adresr zmaza  -  podobne  ako  v
prkaze .FORMAT

 .UNERASE <cesta> data
 Obnovenie zmazanch sborov alebo adresrov. slo 0 znamen
obnovenie aktulneho adresra. Pozor, obnovuje sa len samotn
adresr, sbory v om je treba obnovi rune.
 Tmto prkazom je mon obnovova sbory a adresre aj po zmazan
celej diskety prkazom FORMAT - a to tak, e najprv treba obnovi
adresr ako tak (.UNERASE 0) a potom vetky potrebn sbory v om.
Pozor, sbory s zdanlivo obnoven u pri obnoven adresra, avak
samotne dtov sektory nie s ete obnoven, preto je potrebn na ne
aplikova prkaz UNERASE. Sbory, o ktor nemte zujem, moete zmaza
prkazom ERASE, aby v adresri nezavadzali.

 .RENAME <cesta> slo,reazec
 Premenovanie sboru "slo" na nov meno "reazec". Ak  slo=0
tak sa bude meni meno adresra. Pozor ! Meno adresra me  by
a 26-znakov.
 .RENAME <cesta> slo,slo
 Zmena zaiatonej adresy danho sboru.  Zmena  adresy  nultho
sboru (to je akoe cel  adresr)  znamen  definciu,  kam  m
tento adresr v stromovej truktre patri  (je  to  slo  jemu
nadradenho adresra).

 .MOVE <cesta> slo1,slo2
 Presunutie sboru "slo1" do adresra  "slo2".  Ak  slo1=0
tak sa bude presva cel adresr.
 .MOVE <cesta> slo;data
 Presunutie viacerch sborov pecifikovanch v  poloke  "data"
do adresra "slo".
 Poznmka: Presunutie sboru do toho istho adresra znamen iba
jeho presun na koniec tohto adresra.

 .PRESS <cesta>
 Utrasenie aktulneho adresra.

 .KILL <cesta>
 Zruenie vntornch CACHE pamt. Tento prkaz prakticky nie je
potrebn, pretoe operan systm si vykonva sprvu  vntornch
CACHE pamt plne automaticky.

 .SEARCH <!> <cesta> <local> <reazec>
 Hadanie danho reazca na diskete. Prehadvaj sa vetky men
adresrov (iba prvch 10 znakov) a  men  vetkch  existujcich
sborov. Vkrink znamen,  e  sa  bud  prehadva  aj  men
zmazanch sborov a vonch adresrovch poloiek. Prehadvanie
zana aktulnym adresrom, pokrauje a po adresr 255, a potom
zase od nultho a po aktulny.

 CAT  <.> <!> <cesta> <local> <slo>
 COPY <.> <!> <cesta> <local> <slo>
 Katalg  aktulneho  adresra  alebo  adresra  danho  slom.
Vkrink  znamen  vpis  aj  zmazanch  sborov   a    vonch
adresrovch poloiek.  Bodka  znamem  vpis  nie  od  zaiatku
adresra, ale od aktulnej pozcie load-kurzora.


 Poznmka: pecifikcia sborov dajom "data" m takto tvar:

          poloka <,poloka> <,poloka> <,poloka> ...

 kde poloka m takto tvar:

                      slo1 <TO <slo2>>
 alebo:
                           TO <slo2>

 kde slo1 znamen zaiatok intervalu (nezadan znamen  vetky
sbory od zaiatku adresra a slo2  znamen  koniec  intervalu
(nezadan znamen sbory a po koniec adresra). Samotn  slo1
bez spojky TO predstavuje iba jeden pecifikovan  sbor  (akoe
interval "slo1 TO slo1").

 Napr (v adresri je 32 sborov):
                TO 3 , 10, 20 , 13 TO 15 , 28 TO
 znamen tieto sbory:
                1,2,3,10,20,13,14,15,28,29,30,31


 Poloka <local> znamen loklne  nastavenie  inej  mechaniky  v
danom prkaze a  zana  identifikanm  znakom  '#'  za  ktorm
nasleduje seln vraz ktorho  vsledn  hodnota  identifikuje
dan mechaniku. Za tmto vrazom me na oddelenie nasledujceho
kontextu nasledova iarka (ak je to potrebn a vhodn).
 Naprklad nech 4 je aktulna mechanika. Potom prkaz
                            CAT #2,66
 vype katalg 66-teho adresra na disku v mechanike 2.


               3. Prkazy pre manipulciu s dtami:

   SAVE <!> <*> <cesta> <slo>  meno
   SAVE <!> <*> <cesta> <slo>  meno  SCREEN$
   SAVE <!> <*> <cesta> <slo>  meno  DATA var()
   SAVE <!> <*> <cesta> <slo>  meno  CODE adresa,dka
   LOAD <!> <*> <cesta> <slo> <meno>
   LOAD <!> <*> <cesta> <slo> <meno> SCREEN$
   LOAD <!> <*> <cesta> <slo> <meno> DATA var()
   LOAD <!> <*> <cesta> <slo> <meno> CODE <adresa <,dka>>
  MERGE <!> <*> <cesta> <slo> <meno>
 VERIFY <!> <*> <cesta> <slo> <meno>
 VERIFY <!> <*> <cesta> <slo> <meno> SCREEN$
 VERIFY <!> <*> <cesta> <slo> <meno> DATA var()
 VERIFY <!> <*> <cesta> <slo> <meno> CODE <adresa <,dka>>
 Ben kazetov prkazy. slo znamen nastavenie load-kurzora -
je plne rovnocenn poloke  "`"  v  parametri  "cesta".  Vetky
tieto prkazy pracuj v aktulnom  adresri,  alebo  v  adresri
pecifikovanom v ceste (ktor sa tm stva aktulny). SAVE  vdy
nahrva sbory na koniec adresra.  Vkrink  a  hviezdika  na
zaiatku prkazu sa ignoruj - kli syntaxi prkazov "LOAD !"  v
basicu 128 a "LOAD *" v  D80.  Vetky  prkazy  VERIFY  skutone
porovnvaj obsah pamti a v prpade nezhody o tom vypu riadne
chybov hlsenie.

 NEW <cesta> <local> parameter
 Nahratie a spustenie sboru pecifikovanho parametrom.  Ak  je
parameter slo tak sa nahr dan spustiten sbor z aktulneho
adresra. Ak je parameter reazec tak sa had sbor  s  takmto
menom v aktulnom adresri. Ak sa nenjde v aktulnom  adresri,
bude sa hada v nultom adresri. Ak sa  nenjde  ani  tam,  tak
chyba.
 Spustiten sbory s alebo "bytes" alebo "Program". Ak je dan
sbor basic tak sa normlne nahr a spust (ak m  nejak  LINE)
ako prkazom LOAD. Ak je dan sbor typu "Bytes" tak  sa  vykon
nasledovn innos:
 Nech je AAA zaiaton adresa sboru. Potom sa sprav:
    IF AAA >= #5d00 THEN CLEAR AAA-1
    LOAD parameter CODE AAA
    CONTINUE AAA
 Ak parameter nie je, tak sa vykon klasick basicov NEW.


                    4. Nov basicov funkcie

 Cieom  tchto  funkci  je  poskytn  programom   v    basicu
informcie, ktor by boli pre basic inak neprstupn (bez pomoci
strojku). Jedn sa  o  informcie  o  diskete,  o  jednotlivch
adresroch, o sboroch v tchto adresroch,...

 FN ?
 Vrti slo verzie systmu.

 FN @
 Vrti slo aktulneho drajvu.

 FN $
 Vrti slo aktuleho adresra.

 FN `
 Vrti polohu load-kurzora. [libra = SS+X]

 FN #
 Vrti poet sborov v aktulnom adresri.

 FN %
 Vrti poet vonch sektorov na aktulnom disku.

 FN *
 Vrti  32  znakov  reazec  v  ktorom  je  adresrov  poloka
obsahujca informcie o sbore  na  ktor  ukazuje  load-kurzor.
Naprklad FN *(7 TO 16) predstavuje meno sboru a FN *(6 TO  22)
vrti klasick magnetofnov hlaviku tohto sboru.
 Ak load-kurzor ukazuje mimo adresra, tak funkcia vrti przdny
reazec.
 Ak je HI(load-kurzor)=255 (vy bajt  255)  tak  tto  funkcia
vtedy vrti 32 bajtov poloku obsahujcu meno diskety.

 FN (c)
 Toto  je  pecilna  funkcia,  ktorej  vsledok   je    reazec
obsahujci cel pam od adresy 1 a po 65535.


                   Popis "cdd" copy-disk-disk
                   --------------------------
 Tento koprovac program bol roben pecilne  pre  viacdiskov
systmy, ale d sa poui aj na jednodiskovch systmoch.
 Po zadan parametrov kopirk nata do  pamti  toko  sborov,
koko sa mu zmest.  Pritom  vyuva  aj  priestor  obrazovky  a
priestor nad ramtopom. Po naloadovan  sborov  si  testuje,  i
cieov mechanika je toton so zdrojovou. Ak  nie,  hne  zane
sejvova a cel daiu innos vykonva samostatne, take  vbec
netreba zasahova.
 V prpade, e cieov disk sa nachdza v  tej  istej  mechanike
ako zdrojov, tak kopirk hlsenm  "Insert  dest.  disk"  vyzve
obsluhu, aby vloila  cieov  disk.  Podobne  hlsenie  "Insert
source disk" znamen, e kopirk chce ta  data  zo  zdrojovej
diskety. Ak treba nieo skoprova na  tej  istej  diskete,  tak
disk samozrejme meni netreba - sta iba stai ENTER.  Kopirk
si zapamt, e kopruje vrmci jednej  diskety  a  potom  u  o
vmenu neiada.
 Ak sa kopruje na  dvoch  rznych  mechanikch,  kopirk  poas
opercie s jednou mechanikou nech bea motor druhej mechaniky,
aby sa potom nezdriaval roztanm tohto motora.
 pecifikcia sborov v parametroch sa rob presne tak isto  ako
v prkazoch MOVE a ERASE - iba namiesto spojky  TO  treba  psa
apostrof.
 V prpade, e v zadanch parametroch  bude  syntaktick  chyba,
program  nezane  koprova,  ale  vype  HELP-strnku,  ktorej
sasou je aj presn popis syntaxe parametrov.


                 ******************************

________________________________________________________________
Index 960331163202                           Writen by Busy soft