Vše o MZ-800 - Basic MZ-800

 

Nahoru Další

 

 

        Obsah této stránky:

bullet

BASIC MZ-800

bullet

Další povely BASICu

bullet

Úprava klávesnice - psací stroj

bullet

Ukládání programu v BASICu do paměti (TOKEN)

bullet

Příkazy BASICu MZ - 800

bullet

Celkový přehled BASICu MZ - 800

bullet

Rozšíření BASICu

bullet

1. BORDER - barva okraje (BOR.)

bullet

2. SEARCH, LIST - s prázdnou řádkou

bullet

3. Pípnutí při READY

bullet

4. Zakázané zastavení pomocí BREAK

bullet

5. Zakázané přerušení pomocí SHIFT / BREAK

bullet

6. Změna kursoru v ALPHA módu

bullet

7. Možnosti ochrany programů v BASICu

bullet

8. Odstranění otazníku při INPUT

bullet

9. CONSOLE bez mazání obrazovky

bullet

10. Zrychlené SAVE a LOAD

bullet

11. Zlepšený příkaz TRON

*************************
**                     **
**   Vše o  MZ - 800   **
**                     **
*************************

BASIC MZ-800
Tento BASIC je ve dvou verzích, pro Q-disk a pro CMT. Zásoba povelů obou verzí BASICu je stejná. Ve verzi pro CMT jsou chyby, které byly ve verzi pro Q-disk opraveny. Také kapacita paměti u obou verzí je stejná. Jestliže máte možnost se dostat k verzi pro Q-disk, potom vám radím používat tuto verzi přetočenou na kazetu. Proto již 100% nesouhlasí jednotlivé adresy programů. Jedině prvních 8 KB je stejných. My se zde budeme zabývat hlavně Q-disk verzí.
 

Další povely BASICu
V BASICu MZ-800 jsou k dispozici další povely, které nejsou nikde uvedeny. Pro přehlednost jsou zde vyjmenovány a krátce vysvětleny.

BEEP     - písknutí  (440 Hz)
EDIT     - vypíše naposledy zpracovávané číslo řádky. Je také možno psát EDIT n .
FRAC     - vypíše desetinou část desetinného čísla A=FRAC (12.345)  =>  PRINT A  =>  .345
HEX$ (x) - převod dekadického čísla (x) na hexadecimální
MOD      - modulo dělení. Vypíše celočíselný zbytek při dělení. B=11 MOD 3  =>  PRINT B  =>  2
SPÁCE$   - vytvoří prázdný řetězec znaků.
LOAD ALL - tento příkaz provede nahrátí všech programů na Q-disku do RAM-disku. Tam se mohou snadno provést příkazy RENAME nebo DELETE.
SAVE ALL - teto příkaz provádí nahrátí všech programů z RAM na Q-disk.
 

Úprava klávesnice - psací stroj
MZ-800 nemá na klávesnici žádné zvláštní klávesy pro přehlásky a německé znaky. to bude nepříjemné především pro ty uživatele, kteří často používají mikropočítač pro zpracování textů a dat. Zvláštní znaky a přehlásky jsou uloženy ve znakovém generátoru a nechají se nadefinovat místo funkčních kláves F1 - F10.

  10 DEF KEY (1) = CHR$ (187): REM ü
  20 DEF KEY (2) = CHR$ (186): REM o
  20 DEF KEY (3) = CHR$ (173): REM u
  30 DEF KEY (4) = CHR$ (174): REM 
  40 DEF KEY (6) = CHR$ (185): REM A
  50 DEF KEY (7) = CHR$ (168): REM O
  60 DEF KEY (8) = CHR$ (178): REM U

Tímto krátkým programem se nadefinují přehlásky na funkční klávesy.
 

Ukládání programu v BASICu do paměti (TOKEN)
Program v BASICu se neukládá do paměti tak, jak je zobrazen na obrazovce, nebo jak se vkládá, ale interpret BASICu má pro každý příkaz číslo, kterému se říká kód. Podle tohoto kódu může potom interpretr s pomocí tabulky zjistit, o jaký příkaz se jedná. Výhoda je jasná. Místo aby si např. pro příkaz  -RESTORE- pamatovat 7 naků, stačí aby si pamatovat pouze dva znaky (kod), čímž je malá spotřeba paměti.
 

Příkazy BASICu MZ - 800
V této části si zopakujeme všechny příkazy BASICu, jejich zápis v kódu, přípustné zkratky a začátek programů v paměti. Koho by toto zajímalo, může si pomocí DISASSEMBLERu tyto programy (tabulky) prohlédnout, nebo i pozměnit. Kódy se rozdělují do tří skupin. V jedné skupině jsou příkazy, které nepotřebují žádný před-byt. Ve zbývajících skupinách jsou příkazy, které tento byt obsahují. Známe dva druhy 254 (FEh) a 255 (FFh). Na druh příkazu to nemá vliv. Mezi příkazy se vyskytují kódy, které nejsou obsazeny. Tyto jsou v naší tabulce označeny jako  "frei" (volné) a způsobují přímo skok do podprogramu, který vydává chybové hlášení "Syntax Error. Tento program začíná u obou verzí BASICu na adrese 6364h.

    příkaz       zkratka         TOKEN     QD-BASIC    CMT-BASIC
    ------------------------------------------------------------
    GOTO         G.               128        69AF         69AF
    GOSUB        GOS.             129        692A         692A
    volný                         130        6364         6364
    RUN          R.               131        606E         606E
    RETURN       RE.              132        68F9         68F9
    RESTORE      RES.             133        6E9E         6E9E
    RESUME       RESU.            134        64B6         64B6
    LIST         L.               135        6A9D         6A9D
    volný                         136        6364         6364
    DELETE       D.               137        620C         620C
    RENUM        REN.             138        62AB         62AB
    AUTO         A.               139        60CA         60CA
    EDIT         E.               140        6125         6125
    FOR          F.               141        6602         6602
    NEXT         N.               142        6609         6609
    PRINT        P.               143        6C9F         6C9F
    volný                         144        6364         6364
    INPUT        I.               145        6DD4         6DD4
    volný                         146        6364         6364
    IF                            147        69C2         69C2
    DATA         DA.              148        67FE         67FE
    READ         REA.             149        6DCD         6DCD
    DIM          DI.              150        8DCC         8D55
    REM                           151        67FE         67FE
    END          EN.              152        60B9         60B9
    STOP         S.               153        6468         6468
    CONT         C.               154        6499         6499
    CLS          CL.              155        7972         78FB
    volný                         156        6364         6364
    ON.          O.               157        6952         6952
    LET          LE.              158        650D         650D
    NEW                           159        618E         618E
    POKE         PO.              160        68A1         68A1
    OFF          OF.              161        6364         6364
    PMODE        PM.              162        A015         9F9E
    PSKIP        PS.              163        A07A         A003
    PLOT         PL.              164        A428         A3B1
    PLINE        PLI.             165        A0BC         A045
    RLINE        RL.              166        A0BE         A048
    PMOVE        PMOV             167        A0C2         A04B
    RMOVE        RM.              168        A0C5         A04E
    TRON         T.               169        61CC         61CC
    TROFF        TROF.            170        61DF         61DF
    INP                           171        681F         681F
    DEFAULT      DEF.             172        6F41         6F41
    GET          GE.              173        686C         686C
    PCOLOR       PC.              174        A12A         A0B3
    PHOME        PH.              175        A15F         A0E8
    HSET         H.               176        A162         A0EB
    GPRINT       GP.              177        A16D         A0F6
    KEY          K.               178        6B84         6B84
    AXIS         AX.              179        A1D5         A15E
    LOAD         LO.              180        6FFD         6FFD
    SAVE         SA.              181        73C0         733F
    MERGE        M.               182        7068         7068
    CHAIN        CH.              183        7053         7053
    CONSOLE      CONS.            184        6A61         6A61
    SEARCH       SE.              185        6A9B         6A9B
    OUT          OU.              186        6B0A         6B0A
    PCIRCLE      PCI.             187        A215         A19E
    PTEST        PT.              188        A3F3         A36C
    PAGE         PA.              189        A3F1         A37A
    WAIT         W.               190        67EE         67EE
    SWAP         SW.              191        74A6         7425
    volný                         192        6364         6364
    EROR         ER.              193        63F8         63F8
    ELSE         EL.              194        69E4         69E4
    USR          U.               195        67A4         67A4
    BYE          B.               196        6A59         6A59
    volný                         197        6364         6364
    volný                         198        6364         6364
    DEF                           199        6C31         6C31
    volný                         200        6364         6364
    volný                         201        6364         6364
    LABEL        LA.              202        67FE         67FE
    volný                         203        6364         6364
    volný                         204        6364         6364
    volný                         205        6364         6364
    WOPEN        WO.              206        6F59         6F59
    CLOSE        CLO.             207        6F8A         6F8A
    ROPEN        RO.              208        6F56         6F56
    XOPEN        X.               209        6F5C         6F5C
    volný                         210        6364         6364
    volný                         211        6364         6364
    volný                         212        6364         6364
    DIR                           213        742A         73A4
    volný                         214        6364         6364
    volný                         215        6364         6364
    RENAME       REN.             216        744B         73CA
    KILL         KI.              217        6F8B         6F8B
    LOCK         LOC.             218        7418         7397
    UNLOCK       UN.              219        7416         7395
    INIT         INI.             220        6F47         6F47
    volný                         221        6364         6364
    volný                         222        6364         6364
    volný                         223        6363         6364
    volný                    254  128        6364         6364
    CSET         CS.         254  129        6364         6364
    CRESET       CR.         254  130        6364         6363
    CCOLOR       CC.         254  131        6364         6364
    volný                    254  132        6364         6364
    volný                    254  133        6364         6364
    volný                    254  134        6364         6364
    volný                    254  135        6364         6364
    volný                    254  136        6364         6364
    volný                    254  137        6364         6364
    SOUND        SO.         254  138        9BAC         9B35
    volný                    254  139        6364         6364
    NOISE        NO.         254  140        9BE3         9B6C
    BEEP         BE.         254  141        6A56         6A56
    volný                    254  142        6364         6364
    volný                    254  143        6364         6364
    COLOR        COL.        254  144        7675         760B
    volný                    254  145        6364         6364
    SET                      254  146        7592         752B
    RESET        RESE.       254  147        7593         7529
    LINE         LIN.        254  148        75A1         7537
    BLINE        BL.         254  149        75A2         7538
    PAL                      254  150        7619         75AF
    CIRCLE       CI.         254  151        774C         76DE
    BOX          BO.         254  152        764B         75DE
    PAINT        PAI.        254  153        76FD         768F
    POSITION     POS.        254  154        75F5         758B
    PATTERN      PAT.        254  155        75C4         755A
    HCOPY        HC.         254  156        7968         78F1
    volný                    254  157        6364         6364
    volný                    254  158        6364         6364
    volný                    254  159        6364         6364
    SYMBOL       SY.         254  160        790F         78A1
    volný                    254  161        6364         6364
    MUSIC        MU.         254  162        9BE6         9B6F
    TEMPO        TE.         254  163        9BD9         9B62
    CURSOR       CU.         254  164        683B         683B
    VERIFY       V.          254  165        73A9         7328
    CLR                      254  166        619B         619B
    LIMIT        LIM.        254  167        68B5         68B5
    volný                    254  168        6364         6364
    volný                    254  169        6364         6364
    volný                    254  170        6364         6364
    volný                    254  171        6364         6364
    volný                    254  172        6364         6364
    volný                    254  173        6364         6364
    BOOT         BOO.        254  174        6A95         6A95
    INT                      255  128        95C2         954B
    ABS          AB.         255  129        95BD         9546
    SIN          SI.         255  130        9709         9692
    COS                      255  131        96F9         9682
    TAN                      255  132        97E8         9771
    LN                       255  133        9A4F         99D8
    EXP          EX.         255  134        992B         98B4
    SQR          SQ.         255  135        961F         95A8
    RND          RN.         255  136        98E6         986F
    PEEK         PE.         255  137        98DA         9863
    ATN          AT.         255  138        963D         95C6
    SGN          SG.         255  139        98A0         9829
    LOG                      255  140        9A43         99CC
    FRAC         FR.         255  141        7BC0         7B49
    PAI                      255  142        98B8         9841
    RAD          RA.         255  143        98B3         983C
    volný                    255  144        6364         6364
    volný                    255  145        6364         6364
    volný                    255  146        6364         6364
    volný                    255  147        6364         6364
    volný                    255  148        6364         6364
    volný                    255  149        6364         6364
    volný                    255  150        6364         6364
    volný                    255  151        6364         6364
    volný                    255  152        6364         6364
    volný                    255  153        6364         6364
    volný                    255  154        6364         6364
    volný                    255  155        6364         6364
    STICK        STI.        255  156        9060         8FE9
    STRIG        STR.        255  157        907F         9008
    volný                    255  158        6364         6364
    volný                    255  159        6364         6364
    CHR$         CHR.        255  160        889F         88BA
    STR$                     255  161        8931         8879
    HEX$         HE.         255  162        88F0         88F0
    volný                    255  163        6364         6364
    volný                    255  164        6364         6364
    volný                    255  165        6364         6364
    volný                    255  166        6364         6364
    volný                    255  167        6364         6364
    SPACE$       SPA.        255  168        8913         889C
    volný                    255  169        6364         6364
    volný                    255  170        6364         6364
    ASC          AS.         255  171        8992         891B
    LEN                      255  172        899C         8925
    VAL          VA.         255  173        89A4         892D
    volný                    255  174        6364         6364
    volný                    255  175        6364         6364
    volný                    255  176        6364         6364
    volný                    255  177        6364         6364
    volný                    255  178        6364         6364
    ERN                      255  179        887A         8803
    ERL                      255  180        8888         8811
    SIZE                     255  181        8852         87DB
    CSRH         CSR         255  182        8864         87ED
    CSRV                     255  183        8869         87F2
    POSH                     255  184        886E         87F7
    POSV                     255  185        8874         87FD
    LEFT$        LEF.        255  186        89B6         893F
    RIGHT$       RI.         255  187        89D3         895C
    MID$         MI.         255  188        89F0         8979
    volný                    255  189        6364         6364
    volný                    255  190        6364         6364
    volný                    255  191        6364         6364
    volný                    255  192        6364         6364
    volný                    255  193        6364         6364
    volný                    255  194        6364         6364
    volný                    255  195        6364         6364
    TI$          TI.         255  196        8A46         89CF
    POINT        POI.        255  197        896C         88F5
    EOF          EO.         255  198        893F         88C8
    FN                       255  199        8FBF         8F48
    volný                    255  200        6364         6364
    volný                    255  201        6364         6364
    volný                    255  202        6364         6364
    volný                    255  203        6364         6364
    volný                    255  204        6364         6364
    volný                    255  205        6364         6364
    volný                    255  206        6364         6364
 

Celkový přehled BASICu MZ - 800

Na následujících stránkách si popíšeme obě verze BASICu.

0000 - RAM - monitorová tabulka pro skok na 005A.

005B - Tabulka s počátečními adresami CTRL programy (řídící programy) až po 009A. Následuje příslušný program.

00DA - Zde začíná BASIC.

017C - Tabulka s počátečními adresami různých programů až do 022A.

0247 - Hexadecimální hodnota v registru HL se ukládá v decimálním ASCII formátu do registru DE.

02F8 - Zde se zkoumá, zda byla stisknuta prázdná klávesa (mezerník). Jestli-že ano, čeká se až bude stisknuta jiná klávesa.

0305 - Bude-li stisknuta klávesa BREAK, program bude přerušen.

0314 - Zde jsou krátké programy pro vedení ukazatelů pro proměnné a pro oblast řetězců.

0340 - Chybový text se zde převádí na srozumitelný text podle čísla chyby v akumulátoru.

03BE - Určuje způsob provozu obrazovky a zkoumá se připojení přídavné paměti VRAM.

0419 - Zde se nacházejí různé programy, které inicializují paletové registry a určují oblast přetáčení obrazu.

04EF - Až po 05AC jsou programy,které přestavují obrazovku na 40 nebo 80 znaků na řádek a mění ostatní programy odpovídajícím způsobem.

05AD - Tento program vypíše znak v akumulátoru na obrazovku.

0652 - Podprogram smaže celou obrazovku (CLS).

06CC - Podprogram maže znak na pozici kursoru.

0848 - Posouvá oblast přetáčení o jeden řádek nahoru.

0992 - Tento podprogram přemístní kursor do levého horního rohu obrazovky (HOME)

099B - Podprogram způsobí posun řádky, jestliže kursor nestojí na začátku řádky.

09AB - Podprogram způsobí v každém případě posun o řádek.

0A19 - Nastavení klávesnice - ALPHA mód.

0A1B - Nastavení klávesnice - psaní malých písmen.

0A1E - Nastavení klávesnice - GRAPH módu.

0A24 - Posun kursoru na pozici dalšího tabulátoru.

0AB4 - Program vyzvedne řádku z klávesnice a uloží ji od adresy DE.

0B21 - Program vyzvedne znak z klávesnice. Kursor přitom bliká. Znak se při skoku zpět nachází v akumulátoru.

0BF6 - Testuje se klávesnice. Není-li stisknuta žádná klávesa, v akumulátoru je nula (00), v opačném případě hodnota příslušné klávesy v ASCII kódu.

0C7C - Testuje se stisknutí funkčních kláves. V HL je uloženo která klávesa byla stisknuta.

0D22 - Testuje se klávesnice. Při stisknutí SHIFT+BREAK se nastaví přepínač na 0. Byl-li stisknut jen BREAK, čeká se tak dlouho dokud se opět nepustí.

0D47 - Zde začínají tabulky k přepočtu kódu kláves.

0D94 - Program vypisuje na obrazovku text, který je od adresy DE. Konečná značka textu musí být 0DH

0DC3 - Tabulka malých písmen ve video kódu

0E17 - Od této adresy jsou tiskové programy pro výpis na obrazovku nebo tiskárnu. Tyto programy sahají až po 0ED8.

0ED9 - V této tabulce se převádějí řídící znaky pro tiskárnu.

0EF9 - K této adrese přijdou skoky z ROM monitoru zpět do BASICu. Program, který je k dispozici se nesmaže.

0F4E - Program testuje, zda VRAM paměť obsahuje 32 Kb. Jestli-že ano, pak se na adrese 1D99 zapíše 01H

12B2 - Od této adresy leží text funkčních kláves.

13D2 - Tabulka, která přepočitává SHARP kód na ASCII a zpět.

15E0 - Tabulka udává povely monitoru a jejich počáteční adresy.

  D  DUMP              16C6
  M  MEMORY CORECTION  1738
  P  PRINTER           15FE
  G  GOTO              16C1
  F  FIND              175C
  R  RETURN (BASIC)    1644
  S  SAVE              1607
  L  LOAD              161E
  V  VERIFY            163B
  T  TRANSFER          17AC

2000 - Od této adresy až do 27D0 je celý obsah obrazovky. Při 40 znacích je potřeba jen polovina této paměti (23E7). Může být ale pouze čtena, například pro výpis na tiskárnu. Zápis do této oblasti nemá žádný vliv na obraz obrazovky. Po těchto programech začíná vlastní BASIC, tj. všechny povely atd. Protože BASIC je velmi rozsáhlý a podporuje různé podprogramy, nebudeme se jím zde zabývat, protože k tomuto účelu je podrobnější literatura.
 

Rozšíření BASICu
V následující části vám chceme ukázat, jak můžete program měnit. K tomuto účelu jsme napsali několik malých programů ve strojovém jazyce, které BASIC modifikují. Protože existují dvě verze BASICu, (kazetová a Q-disk verze), napsali jsme je pro obě dvě. Rozšíření nepotřebuje žádné přídavné místo v paměti, protože se používají oblasti, které jsou volné v samotném BASICu.
 

1. BORDER - barva okraje (BOR.)
Pomocí tohoto povelu si můžeme nadefinovat barvu okraje obrazovky. Za povelem  BOR. musí být konstanta, proměnná nebo funkce. Konstanta barev nabývá hodnotu  0 - 15 , což odpovídá tabulce v SHARP manuálu.

  pro kazet. verzi BASICu (dále jen, pro CMT)

    POKE 23017, 66,79,210
    POKE 21936, 205,218,132,123,1,207,6,237,121,201
    POKE 23709, 176,85

  pro Q-disk verzi BASICu (dále jen,    pro Q-disk)
 

    POKE 23017, 66,79,210
    POKE 21913, 205,81,133,123,1,207,6,237,121,201
    POKE 23709, 153,85
 

2. SEARCH, LIST - s prázdnou řádkou
Tento povel přidá za každou řádku jednu řádku prázdnou. To usnadňuje především u delších programů lepší přehlednost.

  pro CMT
 

    POKE 21946, 58,131,107,205,6,0,201
    POKE 27424, 205,146,85

  pro Q-disk

    POKE 21906, 58,131,107,205,6,0,201
    POKE 27424, 205,146,85

    prázdná řádka se zapíná - POKE 21909, 205
                     vypíná - POKE 21909, 201
 

3. Pípnutí při READY
Podprogram vytvoří při každém zobrazení READY ještě krátké pípnutí. Tím máte ještě akustickou kontrolu. To má smysl hlavně při dlouhých programových výpočtech, nebo při nahrávání.


  pro CMT

    POKE 21953, 205,62,0,17,240,99,201
    POKE 22650, 205,193,85

  pro Q-disk

    POKE 21899, 205,62,0,17,240,99,201
    POKE 22650, 205,139,85
 

4. Zakázané zastavení pomocí BREAK
Tento POKE zakáže použití příkazu BREAK. Program se nedá zastavit.

  pro CMT + Q-disk
 

    POKE 3368, 201 - zastavení je zakázané
    POKE 3368, 200 - zastavení je povoleno
 

5. Zakázané přerušení pomocí SHIFT / BREAK
Tento POKE zakáže přerušení programu pomocí SHIFT / BREAK.

  pro CMT + Q-disk

    POKE 22754, 62  - přerušení je zakázané
    POKE 22754, 202 - přerušení je povoleno
 

6. Změna kursoru v ALPHA módu
Pomocí tohoto POKE se může změnit zobrazení kursoru v ALPHA módu. Může být též zabudován do vlastních programů.

  pro CMT a Q-disk

    POKE 5009, 255,255,255,255,255,255,255,255

Toto je normální kursor. Chcete-li ho změnit musíte zadat vždy všech 8 bytů. Je tedy téměř neomezené množství změn kursorů.
Kursor se tvoří stejně jako PCG znak.

    POKE 5009, 255,129,129,129,129,129,129,255

Zde je návrh nového kursoru, vytvoří krabici.

Pozn.:   Za touto adresou následuje kursor v SHIFT / ALPHA a GRAPH módu.
 

7. Možnosti ochrany programů v BASICu
Tím že programy po nahrátí nejsou automaticky spuštěny, není v BASICu žádná možnost programy 100% chránit proti nedovolenému kopírování. Přesto existuje možnost programy po spuštění pomocí RUN chránit. Některé z těchto možností vám zde chceme krátce představit. Pomocí následujících POKE příkazů je BASIC modifikován takovým způsobem, že některé příkazy nemůže provádět.


  pro CMT

  ochrana proti SAVE  POKE 29503, 201
                      POKE 29503, 205  původ. nastav.
          proti LIST  POKE 27293, 201
                      POKE 27293, 62   původ. nastav.
          proti PEEK  POKE 39011, 201
                      POKE 39011, 229  původ. nastav.
          proti BYE   POKE 27228, 201
                      POKE 27228, 223  původ. nastav.

  pro Q-disk

  ochrana proti SAVE  POKE 29632, 201
                      POKE 29632, 205  původ. nastav.
          proti LIST  POKE 27293, 201
                      POKE 27293, 62   původ. nastav.
          proti PEEK  POKE 39130, 201
                      POKE 39130, 229  původ. nastav.
          proti BYE   POKE 27228, 201
                      POKE 27228, 223  původ. nastav.

Pozn.:   Tato ochrana je nedostačující. Jednoduší je chránit program proti zastavení, blokováním BREAK při běhu aINPUT, ošetření chyb a úpravou CTRL+RESET
 

8. Odstranění otazníku při INPUT
Především při obchodním použití bývá často otazník, který se zobrazuje při příkazu INPUT X považován za rušivý.

  pro CMT a Q-disk

    POKE 28213, 0,0
    POKE 28213, 63,32 - vymazání otazníku
    POKE 28213, 32,58 - bude psát dvojtečku

Pozn.: Provedete-li INPUT "";X  otazník tištěn není. Otazník se vytiskne pouze při neodeslání čísel.
 

9. CONSOLE bez mazání obrazovky
Jistě jste si všimli, že při provádění příkazu CONSOLE se nejprve smaže obrazovka a pak se teprve provede CONSOLE. Často by bylo vhodné, aby zbytek obrazovky zůstal zachován. Je možné provádět CONSOLE i bez předchozího smazání obrazovky. Ale pozor, musí se opatrně aby nebyl obraz na obrazovce zničen. (Teto postup není příliš korektní, může dělat samovolné přesuny na obrazovce.)

  pro CMT a Q-disk

    POKE 1257, 0,0,0    - bez smazání obrazovky
    POKE 1257, 205,82,6 - obrazovka se smaže

Prakticky není výhodné v případě, že byl obraz ji SCROLLován.
 

10. Zrychlené SAVE a LOAD
Pomocí povelů POKE máte možnost zvýšit rychlost nahrávání a přehrávání o více než dvojnásobnou rychlost. Naše pokusy prokázaly, že se zvýšenou rychlostí nezhoršila spolehlivost záznamu. Také příkazy WOPEN a ROPEN jsou zrychleny. Samozřejmě je také možnost staré, pomalé nahrávky převzít do nového formátu. K tomu potřebujete POKE aktivovat až po nahrátí. Nové rychlé nahrávky nemohou být náhrány bez rozšířeného BASICu a naopak.

  pro CMT a Q-disk

    Rychlé SAVE, LOAD     Normální SAVE, LOAD
    -----------------     -------------------
     POKE 15249, 35          POKE 15249, 76
     POKE 15255, 11          POKE 15255, 24
     POKE 15259, 49          POKE 15259, 105
 

11. Zlepšený příkaz TRON
Jistě jste si již všimli, že povel tron je v BASICu 800 naprogramován poněkud nedostatečně. A tak je například těžké hledat chybu v programu, když je obrazovka stále popsána čísly. My jsme povel TRON modifikovali tak, že je nyní možné zobrazovat číslo řádky stále v levém horním rohu. Vlastní stavba obrazovky tím zůstává zachována a je jednoduší program sledovat. Stisknutím BREAK můžeme být průběh programu ještě zpomalen.

  por CMT

    POKE 22400, 42,134,16,229,42,130,16,229,33
    POKE 22409, 0,0,34,130,16,33,0,128,34,134
    POKE 22421, 218,157,205,33,
    POKE 22425, 121,223,11,6,5,62,32,205,18,0,16,249,225,34
    POKE 22439, 130,16,225,34,134,16,195,6,98

Tento program je nový TRON program.

  spustí se                  POKE 25078, 195,128,87,
  starý TRON prog.(pro tisk) POKE 25078, 62,91,223

  pro Q-disk

    POKE 22421, 81,158,205,152

 

Úvod | Sharp MZ-800 | 8 bit klub Brno | Download | Kniha návštěv | Vyhledání na těchto stránkách | Mapa stránek

 

Tyto stránky byly naposledy aktualizovány dne 08. 02. 2014      Copyright © 05/2006 - SCAV - Pavel Brázda webmaster(c)scav.cz

 

 

Google