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