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 **** ----------------------------------------------------------------