SOS navod                     - 1 -                  TASWORD TWO
                Návod k programu SOS COPY verze 3
               ***********************************
                                    (C) LZR Soft, 3. března 1989
1. Úvod
========
       V této příručce naleznete dostatek informací o Vašem  no-
vém kopírovacím programu SOS COPY a ještě některé další užitečné
informace, které s problematikou práce se soubory přímo souvisí.
"Sosák" vznikl jako nástupce programu LADY COPY,proto se nejprve
zmíníme o něm.
2. Několik slov k LADY COPY
============================
       V současné době lze za nejrozšířenější kopírovací program
označit známý LADY COPY a z něho  odvozené  programy  MR.COPY  a
SUPERCOPY. Bohužel se však JVJ, původní autor programu, dopustil
při tvorbě LADY COPY několika zásadních chyb, které  se  nám  po
letech praxe  a  po  důkladné  disassemblaci  programu  podařilo
poměrně přesně diagnostikovat. Tímto nechceme autora  LADY  COPY
nijak napadat, naopak, patří mu dík  za  jeho  pionýrský  výkon,
nicméně považujeme za správné na tyto chyby upozornit a  zároveň
Vás informovat, že Váš  nový  program  podobné  chyby  v  žádném
případě neobsahuje. Tedy k chybám:
1) autor v návodu k LADY COPY ( program NAVODLACO.BI ) píše,  že
   soubory .DT a .SC musí být ukončeny blokem EOF. V tomto  pří-
   padě měl na mysli zjevně .DT a .LS . Program však  .LS  hlásí
   jako .DT ( což je jen drobný nedostatek ). Budete-li  se  ale
   zabývat .SC,  zjistíte,  že  nejen  .SC,  ale  vůbec  všechny
   soubory s rozšiřujícím attributem program odmítá načíst.
2) Při funkci COPY lze uvést v seznamu kopírovaných souborů "-",
   například "1-5". Pokud ale uvedete "5-1", to znamená větší až
   menší, program se zhroutí.
3) Očekává-li program text ( například jméno souboru  ),  řídící
   kódy se provádějí, což vede při překlepu k nabourání programu
   nebo dat.
4) Občas se při tisku do obrazovky objeví písmenko jinde než má.
   Tato zdánlivá maličkost způsobuje poškození dat,  která  jsou
   uložena ve VRAM ( tj. prvních 13 kB volné kapacity ), protože
   se do nich písmenko občas "strefí".
5) Překlepnete-li se při zadávání jednotlivých povelů,  zásobník
   povyroste o dva bajty.  Po  'n'  překlepech  je  znehodnocena
   informace o posledním nahraném souboru v kopírce  a  nezbývá,
   než LADY COPY a poškozený soubor nahrát znovu.
6) Nahrává-li se příliš mnoho nesouvislých dat,dojde k přetečení
   tabulky délek, po němž se program buď zhroutí nebo zacyklí.
7) Není-li před nahráním LADY COPY počítač "resetován", může  se
   vaše předcházející činnost odrazit v nefunkčnosti kopírky.
     Program LADY COPY má ještě další nedostatky, ty však nejsou
"destruktivního" charakteru, pouze snižují jeho užitnou hodnotu.
Tyto nedostatky zde neudeme  rozebírat.  JVJ  samozřejmě  nemohl
tušit, jak nároční a  zhýčkaní  uživatelé,  případně  šťouralové
budou jeho program používat a zařídit se podle toho.  Jeden  typ
uživatele však předpokládat mohl, totiž uživatele  bez  přídavné
paměti, pro něhož je program LADY COPY nepoužitelný.
                              - 2 -
3. Popis programu SOS COPY
===========================
       Program SOS COPY patří do kategorie komfortních uživatel-
ských programů ve strojovém kódu. Program je určen ke kopírování
programů z pásky na pásku.
       Uživatelé bez modulu přídavné paměti RAM jistě ocení,  že
mohou program bez problémů používat i bez ní. Program může totiž
pracovat v jakékoli ze standardních konfigurací počítače.
       Program  neumožňuje  narozdíl  od  LADY  COPY  měnit  typ
souboru ze souvislého na nesouvislý a naopak, a  nedovolí  měnit
délku souboru ( oboje může mít sice ve speciálních případech své
opodstatnění, ale jinak to vede k chybám ).
       Program je oproti stávajícím kopírovacím programům kratší
( má tedy větší kapacitu ),má lepší diagnostiku chyb,zobrazování
přípon jednotlivých souborů a umožnuje prohlédnout si i hlavičku
programu, který se nenahrál ( buď kvůli chybě na pásce, nebo  po
stisku klávesy  <RESET>  ).  Ostatní  funkce  jsou  shodné  nebo
podobné jako v programu LADY COPY.
       Program se nahrává do počítače  příkazem  TAPE.  Strojový
kód se odkazuje pouze na MONITOR a není tedy závislý na modulu s
jazykem BASIC. Program dál vyžaduje, aby byl MONITOR v paměti do
které nelze zapisovat ( normálně je v ROM, ale v paměti 64kB RAM
může být i v RAM ). Jestliže je v počítači zasunut modul Basic-I
má program k dispozici &3C0F volné paměti, tj. 15375 bytů. Je-li
v počítači zasunut modul Basic-G nebo Basic-F, má program k dis-
pozici &4C0F volné paměti, tj. 19471 bytů. Pokud je ale  zasunut
modul přídavné paměti ( 32kB RAM nebo 64 kB RAM ),je k dispozici
již &BC0F volné paměti, tj. 48143 bytů!
       Program nemá horký start a po restartu počítače jej nelze
znovu spustit. Běh programu nelze přerušit jinak,než resetováním
počítače. Program využívá pro své potřeby veškerou dostupnou RAM
a celou VRAM. Při 'LOAD' se data nahrávají nejprve do RAM a  pak
do VRAM.
       Program "SOS COPY (S) V 02.18" je ochráněn proti nelegál-
nímu kopírování. Tím se snažíme předejít neoprávněným zásahům do
programu,aby nenastala stejná situace jako u MR.COPY: modifikací
programu LADY COPY vzniky některé zákeřné chyby. Přesto  je  nám
dopředu jasné, že se najde nějaký šikulka, který přijde  na  to,
jak ochranu zrušit. Proto  všechny  šikulky  prosíme,  aby  nově
vzniklé verze nešířili.
       Pro ty z vás, co máte moduly 64kB RAM ( libovolný typ  ),
připravujeme komfortní kopírovací program 80 000 byte FREE.
                              - 3 -
4. Ovládání programu
=====================
L - Load repeat - nahrává z pásky jednotlivé soubory, dokud:
    a) není plná tabulka ( 10 souborů );
    b) nenastane chyba při čtení z pásky;
    c) není stisknuta klávesa <RESET>;
    d) není načtena hlavička souboru, který se již do "kopíráku"
       pro svou délku nevejde;
    Povel vždy načte z pásky hlavičku, zobrazí ji celou ( jméno,
    přípona, attribut a adresy ) na pozici desátého souboru ( je
    před ní znak * ) a načítá podle ní pak i tělo, přičemž  prů-
    běžně zobrazuje velikost volné paměti. Ta se zmenšuje s kaž-
    dým načteným blokem o jeho délku + 1 byte informace  o  jeho
    délce. Je-li soubor nahrán, smaže se hlavička z 10té  pozice
    a vytiskne se na správném místě tabulky.
C - Copy - nahrává na magnetofon jednotlivé soubory, které mohou
    být zadány:
    a) stiskem samotné klávesy <RETURN>. Pak se kopírují všechny
       soubory v tom pořadí, jak jsou za sebou v tabulce;
    b) uvedením jejich čísel podle tabulky. Na pásce lze soubory
       oddělit větší časovou prodlevou, uvede-li  se  mezi  nimi
       mezera. Uvést lze až 32 položek ( čísla + mezery );
    I v případě a) je na obrazovce zobrazen seznam  kopírovaných
    souborů. Právě kopírovaný soubor je v tomto seznamu  označen
    podtržítkem a v tabulce dvojtečkou. Kopírování lze  přerušit
    stiskem klávesy <RESET>.
D - Delete - vymaže z tabulky poslední nahraný soubor. Povel  je
    nutné potvrdit stiskem 'Y'.
R - Rate's - nastaví nahrávací rychlost. Rychlost se zadává dvě-
    mi hexadecimálními číslicemi. Rozsah je omezen hodnotami &0A
    až &2F. Standardní nastavení rychlosti počítače je &21,běžně
    používaná vyšší rychlost je &14 ( default v programu ).
E - Edit in - změna údajů v hlavičce souboru. Soubor lze zadat:
    a) stiskem <RETURN> - naposledy nahraný soubor;
    b) číslem;
    Editovaný soubor je v  tabulce  označen  znakem  ">".  První
    dotaz je na jméno souboru, stiskem samotné klávesy  <RETURN>
    se jméno nemění. Při psaní lze použít CTRL klávesy -  řídící
    kódy se vždy zobrazí.  Dalším  dotazem  lze  měnit  attribut
    souboru, přičemž se kontroluje smysluplnost prováděné změny.
    Attribut se zadává stejně jako Rate's.  Následuje  dotaz  na
    počáteční adresu  programu  a  případnou  startovací  adresu
    programu ve  strojovém  kódu.  Ty  se  zadávají  jako  čtyři
    hexadecimální číslice. Stiskem samotné klávesy  <RETURN>  se
    nic nemění.
                              - 4 -
5. Práce se soubory
====================
       Pojem soubor v sobě obecně zahrnuje data a programy. Jako
data přicházejí v úvahu souvislé soubory  (  zaznamenaná  oblast
RAM nebo VRAM ) a nesovislé soubory ( vyprodukované  basikem  ).
Programy pak mohou být programy v jazyce basic nebo ve strojovém
kódu.
       V počítači SORD m.5 může být zasunut jeden ze tří  modulů
s jazykem Basic.Basické programy uložené na pásce jsou až na je-
den případ nekompatibilní. Program BI lze nahrát do BG,ale nelze
již opačně a nelze ani BG <--> BF. Jak tedy zařídit (  je-li  to
nutné ) vzájemnou přenosnost ? Lze to zařídit změnou attributu a
počáteční adresy přenášeného programu pomocí kopírovacího  prog-
ramu. Při komunikaci BG --> BI je to  jednoduché.  Stačí  změnit
attribut z 60 na 20 a počáteční adresu z 745A na 7383.  Je  však
nutné,aby program BG neobsahoval příkazy,které BI nezná ( ohlásí
to Err 12 in ... ). Proto je vhodné,napsat před programové řádky
příkaz REM. Při komunikaci BG <--> BF je nutné program nahrát na
pásek příkazem LIST "jméno" a pak v kopírovacím programu  změnit
attribut z 64 na 84, nebo případně naopak. Pozor!  Basic-F  může
obsahovat  basický  řádek  větší  délky,  než  jakou   přípouští
Basic-G.Proto je nutné napřed program v BF pohlédnout a případně
dlouhé řádky rozpůlit. Při BI <--> BF je nutné jít přes BG (  BI
neumí zaznamenat program příkazem LIST a takovýto  soubor  neumí
ani načíst ). Pro usnadnění práce existuje program FIG-BASIC.CM,
který, je-li nahrán do BF umí načíst BI a BG "rovnou".
       Programy ve strojovém  kódu  lze  obecně  provozovat  bez
ohledu na zasunutý basic. Výjimku tvoří malá  skupina  programů,
které se na některý basic odkazují. Ty je pak  možné  provozovat
jen v příslušném basiku.
6. Co je to attribut?
======================
       Attribut je první byte v hlavičce souboru a  určuje  jeho
typ. Jednotlivé bity mají tento význam:
bit hodnota 0                     hodnota 1
---+-----------------------------+------------------------------
 0  vždy pro Basic, lze i pro mc  program mc - machine code
 1  není autostart                je autostart
 2  souvislá data                 nesouvislá data
 3  paměť RAM CPU                 paměť VRAM VDP
 4  bez rozšiřujícího atributu    s rozšiřujícím atributem
 5 \
 6  > modul: 5     - Basic-I
 7 /         5 a 6 - Basic-G
             6     - FALC
             7     - Basic-F
---+-----------------------------+------------------------------
                              - 5 -
Podle atributu jsou určeny i přípony souborů:
00 - CM - data nebo program machine code bez autostartu
01 - CM -         - " -        - " -        - " -
02 - CM - program machine code s autostartem
03 - CM -         - " -        - " -
04 - DF - nesouvislá data vyprodukovaná jazykem Basic-F
08 - VM - data VIDEORAM
20 - BI - program v jazyce Basic-I
40 - FC - tabulka pro FALC
60 - BG - program v jazyce Basic-G
64 - LS - listing programu v jazyce Basic-G ( nesouvislá data )
78 - SC - kompletní mix údajů o obrazovce
80 - BF - program v jazyce Basic-F
82 - BF - program v jazyce Basic-F s autostartem
84 - DT - listing programu v jazyce Basic-F ( nesouvislá data )
Poznámka:
Machine code znamená program ve strojovém kódu procesoru.
Rozšiřující attribut  je  17tý  byte  hlavičky  a  určuje  další
vlastnosti souboru ( u .SC je to délka a zobrazovací režim ).
7. Závěr
=========
       Nakonec bychom Vás chtěli informovat o tom, že své připo-
mínky k programu můžete adresovat klubu SORD při 602.ZO Svazarmu
v Praze 6. Je v našem zájmu na podnětné  i  kritické  připomínky
reagovat. Tolik tedy k Vašemu novému programu SOS COPY.
                                       Příjemnou práci
                                       vám  všem přeje
                                        team LZR Soft