m.5 news - 1 - 1/89
číslo 1/89
Vážení přátelé počítače m.5! Dostává se vám do rukou první číslo
buletinu, který si klade za cíl informovat vás o novinkách v ob-
lasti software i hardware na počítači, který vlastníte.
Pár slov k LADY COPY
=====================
V současné době lze za nejlepší kopírovací program označit známý
LADY COPY a z něho odvozené programy MR.COPY a SUPERCOPY.Buhužel
se však JVJ - autor tohoto programu, dopustil několika zásadních
chyb, které se mi po letech praxe a po důkladné dissasemblaci
programu podařilo přesně diagnostikovat.Tímto nechci autora LADY
COPY kritizovat,naopak mu patří dík za jeho výkon, nicméně pova-
žuji za správné na tyto chyby upozornit. Na toto téma již vyšel
ve zpravodaji klubu SORD při 602. ZO článek,ve kterém -rs- uvedl
návod, jak některé chyby odstranit, přičemž vycházel z mých ma-
teriálů. 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 drobný nedostatek ). Budeme-li se ale zabý-
vat .SC, zjistíme, že jej program neumí vůbec načíst!
2) Při funkci COPY lze uvést v seznamu kopírovaných programů "-"
například COPY:1-5 nebo COPY:34-80129A, rovněž lze jednotlivá
čísla oddělovat čárkami. Uvede-li se však COPY:5-1,to znamená
větší až menší, program se zhroutí.
3) Očekává-li program text ( například jméno ),CTRL kódy se pro-
vádějí, což vede ve většině případů 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 z volné kapacity), protože
se do nich písmenko občas "strefí".
5) Překlepne-li se uživatel při zadávání jednotlivých povelů,zá-
sobník povyroste o dva bajty.Po 'n' překlepech je znehodnoce-
na informace o posledním nahraném souboru v kopírce a nezbývá
než LADY COPY a poškozený program nahrát znovu.
6) Nahrává-li se příliš dlouhý soubor typu .DT,dojde k přetečení
dat a k následnému zhroucení, nebo zacyklení programu.
Jak vidno, nedostatků až až. Zajímavé je,že většina jich zůstala
až doposud neodhalena a nebo se nad nimi nikdo nepozastavil. Ze
zkušenosti vím, že problémy s kopírkou se řešily velice banálně.
Když se kopírka "zbláznila", nahrála se prostě znovu a jelo se
dál.Nebo když po zkopírování nějaký program nechodil,připisovalo
se to všemu možnému,jen ne kopíráku.Totéž i v případě, že nějaký
soubor nešel vůbec načíst ( viz výše zmíněné .SC ). Program LADY
COPY má ještě další nedostatky, ty však nejsou "destruktivního"
charakteru, pouze snižují jeho užitnou hodnotu. Tyto nedostatky
však nehodlám rozebírat. JVJ samozřejmě nemohl tušit,jak nároční
a zhýčkaní uživatelé, případně šťouralové budou jeho program po-
užívat a zařídit se podle toho. Jeden typ uživatele však autor
předpokládat mohl. Totiž uživatale bez přídavné paměti 32kB RAM.
Bez této maličkosti je program nepoužitelný a všichni "íčkaři"
se mohou jít klouzat. A nepomůže jim ani program PIRACY, který,
přestože je geniálně jednoduchý, má příliš mnoho omezení a chyb.
Jedinou spásou pro ně je zatím program SINGLE COPY, který se bo-
hužel objevil příliš pozdě ( na podzim roku 1988 ).
m.5 news - 2 - 1/89
Tyto problémy zůstanou otevřeny až do chvíle, kdy se v nabídce
mikrobáze objeví program SOS COPY,který by měl svými vlastnostmi
předčit všechny dosavadní kopírovací programy. V jediném případě
nepředčí SUPERCOPY - nemá volnou kapacitu 64kB ale "pouze" 47kB.
-lz-
Co v manuálech nenajdete
========================
V jazyce Basic-I existuje příkaz CLEAR, který má stejné funkce
jako příkazy CLEAR v jazycích Basic-G a Basic-F:
CLEAR - smazání všech basických proměnných
CLEAR m - vyhrazení velikosti pracovního prostoru pro basic
CLEAR,n - nastavení poslední adresy,kterou smí interpretr basiku
ješte použít
Syntaxe příkazu je odlišná od BG a BF. Lze uvést CLEAR bez para-
metrů, nebo pouze s oběma parametry.
V jazyce Basic-G má příkaz CONSOLE ješte dva parametry, které
nejsou v manuálu uvedeny:
CONSOLE [<A>][,<B>][,<C>][,<D>][,<E>][,<F>][,<G>]
Příkaz definuje vlastnosti klávesnice a obrazovky podle uvede-
ných parametrů. Neuvedený parametr ( dvě čárky ) zůstává beze
změny (0/1 znamená NE/ANO případně STRANKA 0/STRANKA 1):
A - zvuk při stisku klávesy (0/1)
B - možnost použití FUNC (0/1)
C - rolování obrazovky při dopsání dolů (0/1)
D - určení viditelné obrazovky (0/1)
E - určení obrazovky pro kurzor (0/1)
F - režim obrazovky: 0=M, 1=GII, 2=GI, 3=T
G - nahrávací rychlost 0 až 255, standard je 33, tj. 2030 Bd
Příkaz VSAVE bez uvedení adres, zaznamená na magnetofon mix úda-
jů o druhé obrazovce. O druhé proto, aby s nahrávanou obrazovkou
nebyl "sejvnut" i příkaz VSAVE "jméno".
Soubor vygenerovaný na magnetofon má tyto vlastnosti:
Hlavička souboru má atribut &78, což je při OLD, SKIP a VERIFY
hlášeno příponou ".SC".Rozšiřující atribut obsahuje horní 4 bity
systémové proměnné DIFLGP a zároveň určuje,z jakých bloků dat se
soubor skládá. Pro názornost je uvedena tabulka vlastností:
bity režim délka složení dat ( viz níže )
-----+-------+-------+-------------------------
0000 GI &1400 (A)+(B)+(D)+(E)
0010 GII &3C00 (A)+(B)+(C)+(D)+(E)
0100 M &0C00 (A)+(B)+(E)
1000 T &0C00 (A)+(E)
složení dat režim délka
----------------------------------------------+----------+------
(A) obsah obrazovky ( ascii kódy ) - GI,GII,M - &0300
- T - &0400
(B) vlastnosti spritů a případné barvy pro GI - GI,GII,M - &0100
- T - není
(C) tři generátory barev znaků pro GII - GII - &1800
- GI,M,T - není
(D) generátor tvaru spritů - GI,GII,M - &0800
- T - není
(E) generátor tvaru znaků - GI,M,T - &0800
( pro GII tři generátory ) - GII - &1800
----------------------------------------------------------------
m.5 news - 3 - 1/89
V jazyce Basic-F má příkaz SAVE pro zaznamenání basického pro-
gramu ještě jeden parametr, který není v manuálu uveden:
SAVE "zařízení:jméno"[#<n>]
Zaznamená data nebo program na magnetofon nebo jiné zařízení.Pro
zaznamenání na jiné zařízení než implicitní, se před jménem pro-
gramu musí uvést jméno zařízení ( max. 3 znaky ) oddělené dvoj-
tečkou. Uvedením čísla za '#' se určuje, zda-li má být program
v jazyce basic:
0 - po nahrání automaticky spuštěn;
1 - nekopírovatelný ( nelze již jeho SAVE z basiku );
2 - uzamčen pro editaci;
3 - uzamčen pro listing.
Jednotlivá čísla určují přímo dolní 4 bity čísla <n>. Například
uvedení #15 znamená nastavení všech bitů.Nastavení bitu 0 způso-
bí zapsání atributu &82 do hlavičky programu. Po nahrání progra-
mu s atributem &82 provede Basic-F automaticky RUN bez ohledu
na to,zda-li byl použit příkaz OLD či CHAIN.Uzamkneme-li program
nastavením některého z bitů 1 až 3,projeví se toto uzamčení bez-
prostředně u programu v paměti počítače a samozřejmě u programu,
který je takto vyprodukován. Obecně se uzamčení projevuje chybo-
vým hlášením Err 5 in 0,pokusíme-li se o akci,která je zakázána.
Odemknout lze stejným způsobem jako se zamyká - příkazem:
SAVE "jméno"#0 - samozřejmě, že program nemusíme nahrávat, stačí
jen odeslání tohoto příkazu a pak <SHIFT>+<RESET>. Pokud je ale
program uzamčen pro SAVE,máme smůlu a musíme použít HARD metody:
POKE PEEKW(&726C)-1,0
Tento příkaz způsobí odblokování všech uzamčení.
Příkaz NOLIST,který není v manuálu popsán zakáže zobrazování ba-
sických řádků. Program je plně funkční,ale nelze jej "listovat".
Nově přidané řádky se zobrazit dají a jsou umístěny před řádky
nezobrazitelnými. Je to dáno tím, jak jsou nezobrazitelné řádky
"vyrobeny".Příkaz NOLIST totiž přečísluje program tak jak by jej
přečísloval příkaz RENUM &8001,,1. Programové řádky jsou přečís-
lovány na záporné. Rutina příkazu LIST potom ví, že programové
řádky s nastaveným sedmým bitem nemá zobrazovat.
Odblokovat lze příkazem CALL &44F5,,,1.
-rs-
Tasword a 7mi jehličková D100, mBASIC verze 2
=============================================
Připravil jsem pro Vás programy, které umožňují tisknout správně
česky i na 7mi jehličkové polské tiskárně D100.Programy nahrajte
do počítače v tomto pořadí:
TASW.TISK.CM
tasw.tisk.BF
TISKv3.CM ( zařízení "PRS:" a "PRD:" )
CESKYv2.CM
Program CESKYv2.CM lze používat i samostatně. Jeho použitím lze
psát české znaky stejně jako v taswordu stiskem pravého SHIFTu.
Použitý znakový generátor se natahuje pokaždé při změně zobrazo-
vacího režimu ( přes CTRL kódy ) a obsahuje českou abecedu a ma-
tematické symboly ( řecká abeceda ). Tento set ( v knihovně pro-
gramů nahrán jako PITTNERv2.VM ) je nekompatibilní se standardem
jak jej navrhl LZR.Je to dáno tím, že jsem použil 2 naprosto rů-
zné abecedy. Standard LZR něco takového nepředpokládá. Zrušení
programu se provede příkazem CALL &F903, opačně se pak jeho ini-
cializace provede příkazem CALL &F900.
m.5 news - 4 - 1/89
Dále jsem uvolnil mezi uživatele již druhou verzi matematického
basiku ( program "mBASICv2.CM" ). Používat jej lze podle návodu
k první verzi. Druhá verze je rozšířena o příkazy:
MCD(x,y) { nejvetší spolecný dělitel }
ROMBERG(str,var,a,b,eps,[mink,maxk])
SORT pole,pole,...
a samozřejmě ještě mnohé další. Na úplný návod nebudete ( snad )
muset dlouho čekat.
-jp-
Slovo na závěr
==============
Doufáme, že i Vy jste našel v tomto buletinu nějaké nové zajíma-
vé informace. V tomto prvním čísle se sešlo poměrně hojně infor-
mací, v dalších číslech již se 4 stránkovým rozsahem nepočítáme.
Tento buletin je vyráběn naprosto nepravidelně na tiskárně BT100
a neklade si za cíl konkurovat klubovému zpravodaji. Jediná vý-
hoda, které se snažíme plně využít, je rychlost,s jakou se k Vám
nové informace mohou dostat.
redakce
----------------------------------------------------------------
**** Toto číslo bylo dáno do tisku 13. 2. 1989 ****
----------------------------------------------------------------