ÚVOD | Novinky | 8 Bitů | Příslušenství | Drobnosti | TTL | Kontakt
SAPI-1 | ONDRA | PMI-80 | PMD-85 | klony PMD-85 | klony SM50/40 | PETR | PLAN-80A | IQ151 | TNS | FK-1 | HVĚZDA | SP 830 | PCS 1-QR6000
ZPS | Technické prostředky | Programové vybavení | Dokumentace
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
B A S I C EXP ( V 5.0 )
DNE 25.3.87
(C) 1986 TESLA DIZ BRNO [PERINA]
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
BASIC EX(TEND OF) P(ASCAL) JE SHORA KOMPATIBILNI S
BASICEM V4.0 EX A JE NAVIC ROZSIREN O NASLEDUJICI PRIKAZY.
BASIC EXP JE URCEN PRO MIKROPOCITACE SAPI-1 A ONDRA.
1) RIDICI PROGRAMOVE STRUKTURY OBDOBNE PASCALU
IF-THEN-ELSE S MOZNOSTI DEKLARACE BLOKU (BEG-BEND)
A VNORENI ROZHODOVACICH PRIKAZU.
REPEAT-UNTIL PRIKAZ CYKLU.
WHILE-DO-WEND PRIKAZ CYKLU.
PROC JMENO(PAR1,PAR2,..VAR PARN.)...VOLANI PROCEDUR
JMENEM A PREDAVANI PARAMETRU.
FUNC JMENO(PAR1,PAR2...PARN) .......VOLANI VICERADKOVE FUNKCE
JMENEM VCETNE PREDANI PARAMETRU. (FUNKCE MUZE
PRACOVAT I SE STRINGOVYMI PROMENNYMI.)
ON-GOTO/GOSUB-ELSE
2) NOVE EDICNI FUNKCE
AUTO AUTOMATICKE CISLOVANI RADKU.
SEEK VYHLEDANI CASTI TEXTU PROGRAMU A PRECHOD
DO EDITORU.
@ MOZNOST EDICE PO CHYBE NEBO OPRAVE BEZ
ZADANI CISLA RADKU.
RENUM PRECISLOVANI PROGAMOVYCH RADEK A ODKAZU
NA NE V PRIKAZECH (GOTO, THEN...).
DELETE ZRUSENI CASTI PROGRAMU.
1-64999 JE MAXIMALNI POCET RADKU.
GENEROVANI KLICOVYCH SLOV KLAVESOU "->" A PISMENEM (A-Z).
3) MODUL PRO RIZENI PRERUSENI
INTRP ZADANI POCATECNICH PARAMETRU PRO RIZENI.
INTRP ON POVOLENI PRERUSENI.
INTRP OFF ZAKAZANI PRERUSENI.
4) DALSI ROZSIRENI
USING PRIKAZ PRINT JE ROZSIREN O MOZNOST RIZENI
FORMATU VYSTUPNICH DAT.
DEG ON/OFF PREPINANI MEZI RADIANY A DEGREE.
TR STEP TRASOVANI PO KROCICH.
SAVEB/LOADB UKLADANI A CTENI BINARNIHO KODU PROGRAMU.
SAVEP/LOADP UKLADANI A CTENI BINARNIHO SOUBORU TYPU
PRIVAT, KTERY NELZE VYPSAT ANI ZOBRAZIT.
SAVE "JMENO" MOZNOST ZADANI JMENA V PROGRAMU.
CLEAR JAKO DRUHY PARAMETR MUZE BYT POCET BYTE
PRO REZERVOVANI PAMETI.
CALL/USR MOHOU PRENASET DVA 16-TI BITOVE PARAMETRY.
P O Z N A M K A:
----------------
JDE O POPIS BASICU V5.0, KTERY JE IMPLEMENTOVAN NA ONDROVI.
PROTO NEKTERE FUNKCE NEMOHOU FUNGOVAT NA SAPI-1 S MONITOREM
V4.0 (NAPR. WND, LOAD B "JMENO.." ATD). VYUZITI TECHTO FUNKCI
NA SAPI-1 UMOZNI NOVY MONITOR V5.0.
RESERVOVANA SLOVA (BASIC EXP V5.0):
-----------------------------------
ABS AND ASC ATN AUTO BEEP BEG BEND BYE
CALL CHR$ CLEAR CLOSE CLS CODE CONT COS CURS
DATA DEF DEG DELETE DIM DO ELSE END ENDF
ENDP END EXP FILL FIND FN FOR FRE FUNC
GET GOSUB GOTO HEX IF INKEY INP INPUT INT
INTRP LEFT$ LEN LET LIST LLIST LOAD LOADB LOG
MID$ MODE NEW NEXT NOT ON OPEN OR OUT
PEEK POKE POS PRINT PROC PTR PUT READ REM
REPEAT RENUM RESTORE RETURN RIGHT$ RND RUN SAVE SAVEB
SAVEP SEEK SGN SIN SPC SQR STEP STOP STR$
TAB TAN THEN TO TRON TROFF TRSTEP UNTIL USING
USR VAL VAR WND WAIT WEND WHILE XOR
! @ + - / * ^ = &
# ( ) < > .
POZNAMKA: ONDRA MA MISTO MODE PRIKAZ FAST.
GRAFICKE PRIKAZY (BASIC EXP V5.0/G):
------------------------------------
AXES COLOR CLSG DRAW FILL GETP DEF CODE DEF FILL
GETX GETY LABEL MOVE PLOT SCALE DRAW INPUT
ARITMETICKE OPERATORY:
----------------------
+ ..... PLUS,SECITANI
- ..... MINUS,ODECITANI
* ..... KRAT,NASOBENI
/ ..... LOMENO,DELENI
^ ..... UMOCNENO
( ) ..... ZAVORKY
RELACNI OPERATORY:
------------------
> .... VETSI
< .... MENSI
= .... SHODNY
>= .... VETSI NEBO SHODNY
=< .... SHODNY NEBO MENSI
<> .... NESHODNY
LOGICKE OPERATORY:
------------------
NOT ... LOGICKA INVERZE,NEGACE
OR ... LOGICKY SOUCET
AND ... LOGICKY SOUCIN
XOR ... LOGICKA NEEKVIVALENCE
POZNAMKA:
---------
V DALSIM POPISU BUDOU POUZITY K DEFINOVANI TYPU PROMENNYCH,
VYRAZU A CISEL RADKU SYMBOLY, KTERE NEMAJI VZTAH K JAZYKU "BASIC"
A SLOUZI JEN KE ZKRACENI POPISU. JEDNA SE O SYMBOLY:
A ... CISELNA KONSTANTA, CISELNA PROMENNA NEBO ARITMETICKY
VYRAZ.
POUZITELNY CISELNY ROZSAH: 1.70141E+38 <-> 1E-38
0
-1E-38 <-> -1.70141E+38
S$ .. STRING (STRINGOVA KONSTANTA), RETEZCOVA PROMENNA NEBO
RETEZCOVY VYRAZ.
DELKU STRINGOVYCH PROMENNYCH NENI NUTNO DIMENSOVAT, NASTAVUJI
SE DYNAMICKY, JE POUZE NUTNO DEFINOVAT CELKOVY PAMETOVY PROSTOR
PRO RETEZCOVE PROMENNE POVELEM "CLEAR N" (N ... POCET BYTE).
NENI MOZNO SPOJOVAT RETEZCE, JEJICH VYSLEDNA DELKA BY BYLA
VETSI NEZ POCET ZNAKU RESERVOVANYCH POVELEM "CLEAR".
L ... LOG. KONSTANTA, LOG. PROMENNA, RELACE NEBO LOGICKY VYRAZ.
LOG. KONSTANTA ... 0, -1
LOG. PROMENNA .... PROMENNA, NABYVAJICI HODNOT 0 NEBO -1 (NOT 0)
RELACE ........... A=B DAT(I)>=C ALFA<>BETA A(I,J)<10
LOG. VYRAZ ....... A=B OR C=D ALFA<BETA AND A(I)=C M OR N AND O
HEX(80) XOR ALFA
N, LINE ................ CELE CISLO, CISLO RADKU (0 - 64999).
PAR,PAR1,PAR2 - PARN ... PARAMETR ( ARGUMENT ).
********************************************************************
INSTRUKCE JAZYKA
%%%%%%%%%%%%%%%%
DEKLARACE PROMENYCH A PRIRAZENI HODNOTY
=======================================
DIM ........... DEFINOVANI POCTU ROZMERU POLI, DOLNI MEZ INDEXU JE 0.
HORNI MEZ SE UVADI V PRIKAZU DIM. IMPLICITNI HODNOTA
JE 10 (NENI-LI PRIKAZ DIM UVEDEN). MAX. POCET INDEXU
(ROZMERU POLE) JE 8.
PR/ DIM A(15),B(20,M),A$(19)
VAR ........... DEFINOVANI PROMENNYCH A ODKAZU PRI VOLANI PROCEDUR.
PR/ VAR X,Y,Z
PROC JMENO(A,VAR X)
LET P=A ....... PROVEDE VYRAZ A PRIDELI VYSLEDEK PROMENNE.
"LET" NENI POVINNE !
PR/ LET A=B*C+D/E
LET B$=A$+B$
A=B*C+D/E
DEKLARACE FUNKCE A PROCEDURY
============================
DEF FNA(P) .... DEFINICE JEDNORADKOVE NUMERICKE FUNKCE JEDNE PROMENNE.
: PARAMETR SE NEMUSI VE VLASTNI FUNKCI VYSKYTOVAT, JE VSAK
DEF FNZZ(P) NUTNO JEJ ALESPON FORMALNE V NAZVU FUNKCE UVEST. VOLANI
FUNKCE SE PROVADI UVEDENIM JMENA FUNKCE.
PR/ DEF FNA(P)=P^2+P+10
DEF FNAB(N)=FNA(N)+N^2
DEF FNP(PI)=3.14159 ! ARGUMENT JE BEZVYZNAMNY,
! FUNKCE JE FORMALNE SPRAVNA,
! LEPE JE ALE: A=3.14159
DEF FNR(DG)=FNP(PI)/180*DG ! =A/180*DEG
FUNC JMENO(PAR1,...,PARN)
DEFINICE VICERADKOVE FUNKCE, POCET VSTUPNICH PARAMETRU
NENI OMEZEN. V TELU FUNKCE MUSI BYT JMENU FUNKCE PRIRAZENA
HODNOTA. DEKLARACE FUNKCE MUSI BYT UKONCENA PRIKAZEM ENDF.
VICERADKOVA FUNKCE SE MUZE POUZIT JAK PRO NUMERICKE
PROMENNE TAK I PRO RETEZCOVE PROMENNE.
PARAMETRY FUNKCE JSOU NEPOVINNE.
VOLANI VICERADKOVE FUNKCE SE PROVADI UVEDENIM JMENA FUNKCE,
KTEREMU PREDCHAZI ZNAK "&".
ENDF .......... UKONCENI DEKLARACE FUNKCE.
PR/ FUNC UHEL(A,B) ! PRIKLAD DEFINICE
.
.
UHEL=8*B+A/C ! VYSLEDEK
ENDF
PROC JMENO(PAR1,...,PARN)
DEKLARACE PROCEDURY VOLANE JMENEM. PARAMETRY JSOU NEPOVINNE.
PROCEDURA - PODPROGRAM MUZE BYT NA VICE RADCICH. DEKLARACE
PROCEDURY VOLANE JMENEM MUSI BYT UKONCENA PRIKAZEM ENDP.
PODOBNE JAKO V JAZYKU PASCAL SE DEKLARUJE FUNKCE NEBO
PROCEDURA PRED VOLANIM, T.J. NA ZACATKU PROGRAMU. NA ROZDIL
OD PODPROGRAMU SE DEFINICE PROCEDURY NEVYKONA.
ENDP .......... UKONCENI DEKLARACE PROCEDURY VOLANE JMENEM.
PR/ PROC NAZEV(P1,P2)
.
.
ENDP
VOLANI VIZ PRIKAZ GOSUB.
POZNAMKA K DEKLARACI FUNKCE A PROCEDURY VOLANE JMENEM:
- NAZEV FUNKCE I PROCEDURY MA NEOMEZENY POCET ZNAKU.
- NAZEV MUZE BYT SHODNY S NAZVY PROMENNYCH CI POLI.
- POCET PARAMETRU FUNKCE CI PROCEDURY NENI OMEZEN.
POCET SKUTECNYCH PARAMETRU PRI VOLANI FUNKCE CI PROCEDURY
VSAK MUSI ODPOVIDAT POCTU FORMALNICH PARAMETRU V JEJICH
DEKLARACI.
- DEKLARACE FUNKCI A PROCEDUR MAJI BYT NA ZACATKU PROGRAMU.
VOLANI FUNKCI, PODPROGRAMU A PROCEDUR
=====================================
FNA(P) ........ VOLANI DEFINOVANE FUNKCE.
:
FNZZ(P)
PR/ A=FNP(PI)
&JMENO(PAR1,...,PARN)
VOLANI DEFINOVANE FUNKCE, POCET PARAMETRU MUSI
ODPOVIDAT DEFINICI FUNKCE.
PR/ PRINT &UHEL(ALFA,BETA) ! VOLANI FUNKCE DEF. JMENEM
VOLANI PODPROGRAMU A PROCEDUR
-----------------------------
PODPROGRAMY V BASICU EXP MOHOU BYT VOLANY DVEMA ZPUSOBY: BUD, JAK JE
V BASICU OBVYKLE, VOLANIM CISLA RADKU A NEBO VOLANIM JMENEM S MOZNOSTI
PREDAVAT PARAMETRY. V OBOU PRIPADECH MUSI BYT PODPROGRAM UKONCEN
PRIKAZEM RETURN.
BASIC EXP BYL ROZSIREN O MOZNOST VOLANI PROCEDUR JMENEM S PRENOSEM
PARAMETRU. V TOMTO PRIPADE MUSI BYT PROCEDURA DEKLAROVANA POMOCI PRIKAZU
PROC A UKONCENA PRIKAZEM ENDP.
PODPROGRAM MUZE BYT VOLAN STEJNE JAKO PROCEDURA. VOLANIM PODPROGRAMU A
PROCEDUR JMENEM SE ZVYSUJE CITELNOST A PREHLEDNOST PROGRAMUV BASICU.
PODPROGRAM SE LISI OD PROCEDURY UMISTENIM V PROGRAMU (KE KONCI PROGRAMU)
A UKONCENIM (INSTRUKCI RETURN).
GOSUB N ....... VYVOLANI PODPROGRAMU (N=CISLO RADKU).
GOSUB JMENO(PAR1,...,PARN)
VYVOLANI PROCEDURY JMENEM A ZAVEDENI VSTUPNICH
PARAMETRU.
PR/ GOSUB NAZEV(A,B(J))
RETURN ........ NAVRAT Z PODPROGRAMU.
POZNAMKA: BASIC EXP TEDY UMOZNUJE:
1) VOLANI PODPROGRAMU CISLEM RADKU: "GOSUB N".
PODPROGRAM MUSI BYT UKONCEN PRIKAZEM RETURN. NEJVHODNEJSI
UMISTENI PODPROGRAMU JE NA KONCI PROGRAMU.
2) VOLANI PODPROGRAMU JMENEM: "GOSUB JMENO [(PAR1,...,PARN)]".
PODPROGRAM MUSI BYT DEFINOVAN POMOCI "PROC JMENO" (NUTNE PRO
PRENOS PARAMETRU), ALE UKONCEN JE PRIKAZEM RETURN. NEJVHODNEJSI
UMISTENI JE NA KONCI PROGRAMU.
3) VOLANI PROCEDURY JMENEM: "GOSUB JMENO [(PAR1,...,PARN)]".
PROCEDURA MUSI BYT DEFINOVANA POMOCI "PROC JMENO" A UKONCENA
PRIKAZEM ENDP. NEJVHODNEJSI UMISTENI JE NA ZACATKU PROGRAMU.
PR/ DEKLARACE A VOLANI PODPROGRAMU JMENEM:
:
30 GOSUB PRENOS
40 IF BETA>30 THEN GOSUB PRENOS ELSE GOSUB KONEC
:
:
1000 PROC PRENOS ! DEKLARACE JMENA PODPROGRAMU
1010 A=1 ! TELO PODPROGRAMU
:
1130 RETURN ! POVINNE UKONCENI - NAVRAT
PR/ POUZITI VAR T.J. PREDANI VYSLEDKU Z PROCEDURY ZPET
:
10 PROC AB(X,VAR Y)
20 Y=Y+X
30 ENDP
50 A=1:GOSUB AB(1,A)
:
PO PROVEDENI PROCEDURY BUDE A=2..!!
(VAR ... PUSOBI ZPETNE DOSAZENI DO PROMENNE.)
PRIKAZY PRO VETVENI PROGRAMU
============================
GOTO N ........ SKOK DO JINE CASTI PROGRAMU. PROMENNA JAKO CISLO RADKU
NENI POVOLENA.
PR/ GOTO 1000
IF L THEN PRIKAZ
PODMINENY PRIKAZ. PRIKAZ SE PROVEDE POUZE PRI SPLNENI
PODMINKY L.
IF L GOTO N ... PODMINENY SKOK NA CISLO RADKU N.
IF L THEN N ... TOTEZ
IF L THEN PRIKAZ1 : PRIKAZ2 : PRIKAZ3
PODMINENE PROVEDENI C E L E H O Z B Y T K U RADKU
(JESTLIZE JE SPLNENA PODMINKA L).
PR/ IF X>Y THEN A=4*B
IF A=B THEN PRINT D : A=A+3 : GOTO 200
IF L THEN PRIKAZ1 ELSE PRIKAZ2
UPLNY PODMINENY PRIKAZ. PRI SPLNENI PODMINKY L SE
PROVEDE PRIKAZ1, V OPACNEM PRIPADE PRIKAZ2.
PR/ IF A=B THEN A=1:PRINT "OK" ELSE A=0:PRINT "BAD"
BASIC V5.0 BYL DOPLNEN DVEMA PRIKAZY BEG A BEND, KTERE VYMEZUJI
VICERADKOVY BLOK PRIKAZU. NA TENTO BLOK LZE POHLIZET JAKO NA
JEDEN PRIKAZ. TO UMOZNUJE BASICU EXP VNOROVAT PODMINENE PRIKAZY
DO SEBE. VYCHAZELO SE Z PASCALOVSKYCH STRUKTUR BLOKU, KDE BLOK
JE DEFINOVAN PRIKAZEM BEGIN A UKONCEN PRIKAZEM END.
BEG ........... ZACATEK BLOKU PRIKAZU. HLAVNI POUZITI V PRIKAZECH
TYPU IF/THEN/ELSE.
BEND .......... KONEC BLOKU PRIKAZU.
JEDNOTLIVE PODMINKY LZE VNOROVAT VIZ:
PR/ 10 ! UKAZKY STRUKTUR IF/THEN/ELSE
20 A=1:B=1:C=1
30 IF A=B THEN PRINT"A,B .. SHODNE"
35 ELSE PRINT"A,B .. RUZNE"
40 IF A=C THEN
50 BEG
60 !...PROGRAMOVY BLOK (+)
70 PRINT"A=C"
80 BEND
90 ELSE
100 BEG
110 !...PROGRAMOVY BLOK (-)
120 PRINT"A<>C"
130 IF A=B THEN
140 BEG
150 !...VNORENA PODMINKA
160 PRINT"A<>C A A=B"
170 BEND
180 BEND
190 IF A=0 THEN PRINT A ELSE
200 BEG
210 PRINT B
220 ! JINY TVAR ZAPISU
230 BEND
240 IF C=A THEN BEG PRINT A:A=B*C/2:BEND ELSE PRINT C
PREPINACE
---------
PREPINACE UMOZNUJI VETVENI PROGRAMU NA ZAKLADE HODNOTY PROMENNE.
JE-LI HODNOTA PROMENNE "A" ROVNA 1 PROVEDE SE SKOK NA PRIKAZOVY RADEK N1,
PRO A=2 NA N2 ATD. V PREPINACICH LZE POUZIT PRIKAZU ELSE PRO VSECHNY
OSTATNI HODNOTY PREPINACE, KTERE NEJSOU UVEDENY V SEZNAMU, JINAK SE
PROVEDE NASLEDUJICI PRIKAZOVY RADEK. PREPINAC MUZE BYT PRO SKOKY NEBO
PRO VOLANI PODPROGRAMU.
ON A GOTO N1,N2,N3, ... ,NN
VETVENI PODLE HODNOTY VYRAZU
ON A GOSUB N1,N2,N3, ... ,NN
VYVOLANI SUBRUTINY DLE HODNOTY VYRAZU. JE MOZNE
POUZIT I ELSE. PRO ON/GOSUB JE MOZNO VYUZIT VOLANI
PODPROGRAMU JMENEM.
PR/ ON X-2 GOTO 1010,1050,1200
ON X GOSUB 2000,2010,2020
ON X GOSUB 111,222,333 ELSE 500
ON X GOSUB ALPHA,BETA,GAMA ELSE EMPTY
POZNAMKA: PRO PRIKAZ RENUM POUZIVEJTE POUZE CISLA RADKU NEBO
JMENA PROCEDUR V PRIKAZU ON .., NE SMISENY ZAPIS!
CYKLY
=====
BASIC EXP MA TRI TYPY CYKLU:
A) FOR-TO-STEP --NEXT CYKL S NASTAVENYM POCTEM OPAKOVANI
B) WHILE-DO --WEND CYKL POKUD JE SPLNENA PODNIMKA
C) REPEAT --UNTIL CYKL POKUD NENI SPLNENA PODMINKA
CYKLY TYPU B,C JSOU PREVZATY Z JAZYKA PASCAL A UMOZNUJI V BASICU
POUZIVAT ZAKLADU STRUKTUROVANEHO PROGRAMOVANI.
FOR P=A1 TO A2
PROGRAMOVA SMYCKA, KROK PO 1.
FOR P=A1 TO A2 STEP A3
PROGRAMOVA SMYCKA S KROKEM A3.
NEXT P ........ KONEC SMYCKY, NAZEV PROMENNE N E N I POVINNY!
NEXT SEZNAM ... KONEC DVOU A VICE SMYCEK.
PR/ 70 FOR B=10 TO -2 STEP -1
72 PRINT B
74 FOR A=2*X TO M(I)
76 PRINT A;
78 NEXT A
80 PRINT
82 NEXT B
WHILE ......... PROGRAMOVA SMYCKA TYPU WHILE (VIZ PASCAL).
DO ............ ZACATEK PRIKAZU WHILE.
WEND........... UKONCENI PRIKAZU WHILE.
PRIKAZ WHILE SE PROVADI DOKUD JE SPLNENA PODMINKA.
JE UKONCEN PRIKAZEM WEND.
PR/ 10 A=0
12 WHILE A<3 DO
14 B=0:PRINTA:......
16 WHILE B<2 DO
18 B=B+1:A=A+1:PRINT B:.....
20 WEND !KONEC B
22 PRINT:.....
24 WEND !KONEC A
REPEAT ........ PROGRAMOVA SMYCKA TYPU REPEAT (VIZ PASCAL).
UNTIL ......... PRIKAZ PRO VYHODNOCENI PODMINKY CYKLU.
PRIKAZ SE PROVADI DOKUD NENI SPLNENA PODMINKA.
PR/ 10 A=0
12 REPEAT
14 B=0
16 REPEAT
18 A=A+1:B=B+1:......
20 .
22 .
24 UNTIL B=2
26 UNTIL A>2
UKAZKA VZAJEMNEHO VNORENI PROGRAMOVYCH STRUKTUR
PR/ 10 ! UKAZKA STRUKTUR WHILE...WEND, REPEAT...UNTIL
20 A=1
30 WHILE A<3 DO
40 B=1
50 REPEAT
60 PRINT"A=";A;"B=";B
70 B=B+1 !..... PROGRAMOVY BLOK
80 C=1
85 IF C=B THEN PRINT "SHODA B,A"
90 WHILE C<2 DO
100 PRINT"C=";C
110 C=C+A !......PROGRAMOVY BLOK
111 IF A=1 THEN
112 BEG
113 GOSUB 1000 !....
114 GOSUB 1200
115 BEND
116 ELSE !MOZNO ZAPSAT TEZ: ELSE GOSUB 1200
117 BEG !NE VSAK: ELSE !NA DVA RADKY,
118 GOSUB 1200 ! GOSUB 1200 !ALE BEZ BEG A BEND
119 BEND
120 WEND
130 PRINT
140 UNTIL B=3
150 A=A+1
160 WEND
OPERACE VSTUPU
==============
VSTUP Z PAMETI
--------------
READ SEZNAM ... PRIDELUJE HODNOTY ZE SEZNAMU 'DATA' SEZNAMU PROMENNYCH.
PR/ READ A(1),A(2),A(3),X,B$
READ ALFA,BETA
READ Z$
DATA .......... SEZNAM HODNOT PRO 'READ'.
PR/ DATA 10,20,30,3.15,"KONEC"
DATA 3.5E-3,7.1E-3
DATA "JMENO"
RESTORE ....... NAVRAT UKAZATELE V SEZNAMU 'DATA' NA ZACATEK.
RESTORE N ..... -"- NA RADEK N (ROZSIRENI).
VSTUP SOUBORU
-------------
INPUT SEZNAM .. HODNOTY NEBO STRINGY Z KONZOLY SE PRIDELI PROMENNYM.
INPUT "TEXT";SEZNAM
TOTEZ JAKO PREDCHOZI, NAVIC SE VYPISE 'TEXT'.
INPUT #R SEZNAM
CTENI Z :RI:(MAGNETOFONU) MISTO :CI:(KONZOLY). NEPROVADI
SE ECHO NA :CO:(OBRAZOVKU).
PR/ INPUT A
INPUT ALFA,BETA,GAMA
INPUT Z$,K(I),X
INPUT "NAPIS JMENO";JM$
INPUT #R A$,B$,X
INPUT "TEXT1";A,"TEXT2",B,"TEXT3";C
V PRIKAZU INPUT MUZE BYT VICE NAPOVEDNYCH TEXTU
ZA ZNAKEM " MUZE BYT I (,), POTOM SE NAPOVEDNY
TEXT ODSUNE JAKO BY BYL V PRIKAZU PRINT.
INKEY ......... PREDA HODNOTU (DECIMAL) POSLEDNI STISKLE KLAVESY BEHEM
PROVADENI PROGRAMU, NENI-LI STISKNUTA ZADNA KLAVESA,
POTOM JE FUNKCE=0.
PR/ 12 IF INKEY > 0 THEN 100
OPERACE VYSTUPU
===============
PRINT SEZNAM .. TISKNOU SE STRINGOVE KONSTANTY, STRINGOVE PROMENNE,
( ? SEZNAM ) NUMERICKE KONSTANTY, NUMERICKE PROMENNE, FUNKCE A VYRAZY
DLE SEZNAMU.
PR/ PRINT "KOEFICIENT="; K ;"SILA="; S ;"KP"
PRINT A$,AFA,B$(I),
PRINT NOT 17
PRINT #H SEZNAM ...... HARDCOPY (CO + LP)
PRINT #P SEZNAM ...... DEROVAC
PRINT #L .......TISKARNA
PRINT #B .......BUCKET (NULOVY VYSTUP)
POZNAMKA: MISTO PRIKAZU 'PRINT' JE MOZNO UZIT ZKRACENE JEN '?'. LISTUJE
SE VSAK SPRAVNE 'PRINT'.
UVNITR SEZNAMU ZA PRIKAZEM 'PRINT' URCUJE TYP ODDELOVACE
UPRAVU TEXTOVEHO RADKU. ODDELENI CARKOU ZPUSOBI POSUN NA
NEJBLIZSI TABELACNI POSICI. ODDELENI STREDNIKEM NEVYVOLA ZADNE
DOPLNUJICI FUNKCE. ODDELOVACE JE MOZNO POUZIT I NA ZACATKU NEBO
KONCI RADKU.
PR/ PRINT ,,"TEXT";T;"JMENO";JM$;
FUNKCE PRO PRIKAZ "PRINT"
-------------------------
USING ......... UZIVATELSKE NASTAVENI FORMATU VYSTUPU NUMERICKYCH DAT.
POMOCI "#" SE PRESNE UDA ROZSAH ZOBRAZENI A POLOHA
DESETINNE TECKY. POUZITI JE PATRNO Z NASLEDUJICICH
PRIKLADU:
PR/ 10 A=12.34 : PRINT USING"##.#";A
12 B=123 : PRINT USING"####";B
14 C=.01234: PRINT USING".###";C
16 D=100.23: PRINT USING"##.#";D
18 E=1.23 : PRINT USING"####.####";E
: RUN ! PO ODSTARTOVANI VYPISE
12.3
123
.012
% 100.23 ! PRETECENI
1.2300
TAB(A) ........ DALSI TISK ZACNE OD POSICE 'A'. ZA TAB(A) NENI NUTNO
UVADET SYMBOLY (;),(,) PRO TISK.
PR/ PRINT "VYSLEDEK";V;TAB(30)"HLADINA = ";B
SPC(A) ........ VYSTOUPI 'A' MEZER.
PR/ PRINT SPC(10);"POCET=";P1;SPC(10);"CENA=";C
POS ........... POCET JIZ VYSTOUPENYCH ZNAKU OD ZACATKU RADKU.
PR/ PRINT "12345";POS
FAST N ........ VYSLE NA :CO: HODNOTU BYTE "N".
TENTO PRIKAZ JE POUZE U MIKROPOCITACE ONDRA.
PRIKAZY PRO PRACI SE SOUBORY
============================
FIND .......... NASTAVI PRIZNAK PRO OTEVRENI NOVEHO SOUBORU. OPERACNI
SYSTEM AUTOMATICKY PRI CTENI 1. ZNAKU (NAPR. Z KAZETY)
PROVEDE VYHLEDANI SOUBORU A PRECTE 1.BYTE.
(FIND LZE POUZIT I PRO UKONCENI CTENI ZE VSTUPNIHO SOUBORU)
PR/ FIND "JMENO SOUBORU"
OPEN .......... NASTAV PRIZNAK PRO OPERACNI SYSTEM PRO OTEVRENI SOUBORU
PRO ZAPIS. NA KAZETE MUZE BYT OTEVREN SOUBOR JEN PRO
CTENI A NEBO JEN PRO ZAPIS !!
OPEN "JMENO.TYP A POZNAMKA"
OTEVRENI SOUBORU SE ZADANIM JEHO JMENA PRIMO V PROGRAMU.
OPEN "@JMENO.TYP A POZNAMKA"
PROVEDE OKAMZITE OTEVRENI SOUBORU (BEZ VYHLEDAVANI, T.J.
FUNKCI APPEND MONITORU).
VYSE DVA UVEDENE PRIKAZY JSOU U SAPI-1 PODMINENY POUZITIM
MONITORU V5.0.
CLOSE ......... UZAVRI VYSTUPNI SOUBOR.
PR/ 10 OPEN ! OTEVRI SOUBOR NA KAZATE
11 PUT A ! A ZAPIS 1.BYTE
12 PUT B
13 PRINT #P "DALSI DATA..";B$,X,Y
.....
100 CLOSE ! UKONCENI SOUBORU
101 FIND ! OTEVRENI PRO CTENI
102 A=GET:IF A=HEX(1A) THEN PRINT "END OF FILE":GOTO 400
GET ........... CTE BYTE ZE VSTUPNIHO MEDIA ":RI:" (SNIMAC PASKY NEBO
KAZETA, PODLE HODNOTY IOBYTE).
PR/ 10 FIND ! OTEVRI SOUBOR
20 A=GET ! 1. CTENI VYHLEDA SOUBOR A CTE BYTE
22 A1=GET ! CTE 2.BYTE
30 IF A=0 THEN 100 ELSE INPUT #R B$
.......
100 FIND ! JINY SOUBOR
GET LINE ...... CTE BYTE, ALE KDYZ SKONCI SOUBOR, AUTOMATICKY POKRACUJE
NA RADKU "LINE".
PR/ 10 A=GET 100
20 PRINT CHR$(A)
30 ...
100 PRINT "KONEC SOUBORU":END
PUT ........... ZAPIS BYTE NA VYSTUPNI MEDIUM.
SPECIALNI FUNKCE PRO OBRAZOVKU
==============================
BEEP[N] ....... BEEP - PROVEDE ZVUKOVOU INDIKACI (SAPI-1).
BEEP[N,M[;N1,M1]]
TVAR PRIKAZU PRO ONDRU; N - TON, M - DELKA TONU.
CURS X,Y ...... NASTAV CURSOR NA HODNOTU X(0-39) A Y(0-23).
MODE A ........ NASTAV MOD ZOBRAZENI NA DISPLAY.
PR/ MODE 1 ! TISK
MODE 128 ! BLIKAJICI PODTRZENI
WND Y ......... "WINDOW" (OKNO) - RESERVUJ Y(0-15) RADKU OD HORNIHO
OKRAJE OBRAZOVKY. TYTO RADKY NEBUDOU PREPISOVANY.
POUZE PO NASTAVENI CURS X,Y JE MOZNE DO NICH ZAPISOVAT.
TENTO PRIKAZ JE U SAPI-1 PODMINEN POUZITIM MONITORU
V5.0.
WND X1,[,Y1[,X2[,Y2]]]
UPLNA DEFINICE OKNA - X1 ... HORNI OKRAJ
Y1 ... LEVY OKRAJ
X2 ... SPODNI OKRAJ
Y2 ... PRAVY OKRAJ
WND # ......... ZMENA OKNA. MOHOU BYT DEFINOVANA DVE OKNA A PRIKAZEM
WND # SE PROVADI JEJICH PREPINANI.
POZNAMKA: PO DEFINICI OKNA JE PRVNI VYSTUP NA OBRAZOVKU NUTNO PROVEST
DO OKNA (ADRESACI CURSORU NEBO ZAPSANIM PRIKAZU CLS).
CLS ........... CLEAR SCREEN - VYMAZ OBRAZOVKU (MIMO RESERVOVANOU
OBLAST).
PR/ 10 WND 5,4,12,30
12 CLS
14 PRINT "TISK DO OKNA 1"
16 WND # ! ZMENA OKNA
18 WND 13,0,23,40
20 CLS
22 PRINT "TISK DO OKNA 2"
24 WND # ! ZMENA OKNA
PRIME VSTUPNI/VYSTUPNI OPERACE
==============================
PEEK(A) ....... CTENI BYTE Z PAMETI Z ADRESY 'A' - FUNKCE.
POKE A1,A2[,A3,..]
ZAPIS BYTE 'A2' (PRIPADNE I DALSI BYTY) OD ADRESY
'A1' POCINAJE.
PR/ POKE HEX(4300),1,2 ! <4300>=01, <4301>=02
INP(A) ........ CTENI PORTU 'A' - FUNKCE.
OUT A1,A2 ..... ZAPIS BYTE 'A2' DO PORTU 'A1'.
WAIT A1,A2[,A3]
CEKANI NA VYSKYT MASKY 'A2' NA PORTU 'A1'. JE-LI
ZADANO A3, POTOM SE CEKA NA SHODU A POTE PROVEDENI
DALSI INSTRUKCE.
PR/ WAIT A1,A2 ODPOVIDA:
WAIT0: IN A1 ; CTI Z A1
ANI A2 ; MASKA
CPI A2 ; SHODA ?
JNZ WAIT0 ; NE, CEKEJ DAL
WAIT A1,A2,A3 ODPOVIDA:
WAIT1: IN A1
ANI A2
CPI A3 ; SHODA NA DATA ?
JNZ WAIT1 ; NE, CEKEJ
OBSLUHA PRERUSENI V BASICU EXP
==============================
INTRP LINE, ADR
INICIALIZUJI SE PARAMETRY PRO OBSLUHU PRERUSENI. PO
POVOLENI PRERUSENI "INTRP oN" SE PO VYKONANI KAZDEHO
PRIKAZU (BASIC) TESTUJE OBSAH PAMETOVEHO MISTA "ADR"
V PAMETI RAM. JE-LI 0 A POVOLENE PRERUSENI PRIKEZEM "ON",
POTOM SE PRERUSI PROGRAM V BASICU A SPUSTI SE PODPROGAM,
KTERY ZACINE NA RADKU "LINE". ZAROVEN SE OBSAH PAMETI
"ADR" PREPISE NA 0FFH A ZAKAZE SE PRERUSENI. PODPROgRAM
SE UKONCI PRIKAZEM "INTRP ON: RETURN" A POKRACUJE SE
V PROVADENI PRERUSENEHO PROGAMU.
INTRP ON ...... POVOLENI PRERUSENI PO PROVEDENI NASLEDUJICIHO PRIKAZU.
INTRP OFF ..... ZAKAZ PRERUSENI, POCATECNI NASTAVENI.
PR/ 10 INTRP 100, HEX(4300) ! IF 4300H=0 THEN GOSUB 100
12 INTRP ON ! POVOL PRERUSENI
14 .... ! PROGRAM..
50 INTRP OFF ! ZAKAZ
...
90 END
100 PRINT "PRERUSENI..."
102 IF PEEK HEX(4301)=1 THEN GOSUB 140 ! PODLE 4301H
! SE ROZHODUJE O OBSLUZE
104 INTRP ON ! POVOL PRERUSENI PO RETURN
106 RETURN
...........
!! POZOR !! - U SAPI-1 JE NUTNO PROVEST DOPORUCENE UPRAVY PRO PRERUSENI
OD ZPETNEHO BEHU (DESKA AND-1).
FUNKCE PRO RIZENI KOMUNIKACE S PROGRAMEM V ASSEMBLERU
=====================================================
HEX(N) ........ DOSAD HEX. HODNOTU.
PR/ X=CALL(HEX(130),1000) ! HEXADECIMALNE ZOBRAZI DESITKOVE
! CISLO. NA ADRESE 130H JE SLUZBA
! "DADR" MONITORU.
X=CALL(ADR[,HL[,DE]])
VOLANI PODPROGRAMU NA ADRESE (ADR). JE MOZNE NASTAVIT
HODNOTU (16 BITU) DO HL (PLATI L=C=A). OBSAH REGISTRU
HL PO NAVRATU SE ULOZI DO X.
Y=USR(ADR[,C[,DE]])
VOLANI PODPROGRAMU NA ADRESE (ADR). JE MOZNE NASTAVIT
(8 BITU) DO C NEBO A (PLATI L=C=A) A PO NAVRATU
Z PODPROGRAMU SE ULOZI REG. A DO PROMENNE Y.
REGISTRY B,DE,HL JE MOZNO U FUNKCI USR A CALL MENIT.
PR/ 1 AREG=USER(HEX(4300)) ! VOLANI PODPR. NA 4300H
2 DUMMY=USER(HEX(109),7) ! POSLI BELL NA "CO"
3 X=CALL(1234,HEX(1DE0)) ! 16 BITU PRENOS (HL)
4 A=USR(HEX(4300),12,7) ! VOLANI PODPR. NA ADRESE
! 4300H, L=C=A=12, E=7
CODE ADR;HEX DATA,....DATA
PRIKAZ CODE ULOZI OD ZADANE ADRESY DATA DO PAMETI.
TAKTO JE MOZNE ULOZIT DO PAMETI RAM TABULKU A NEBO
PODPROGAM. DATA SE PISI HEXADECIMALNE.
PR/ CODE HEX(40F0);3E,20,21,0,0,C9 ! ODPOVIDA PODPROGRAMU
! V ASSEMBLERU (I 8080)
40F0: MVI A,' '
LXI H,0
RET ; POVINNE !!
PTR(X) ........ DOSAD ADRESU PROMENNE X.
PR/ 10 DADR=HEX(130) ! SLUZBA MONITORU NA ADR. 130H
20 DUMMY=CALL(DADR,PTR(X)) ! TISKNI HEX.
STANDARTNI FUNKCE
=================
SGN(A) ........ SIGNUM (-1 PRO A<0, 0 PRO A=0, 1 PRO A>0)
INT(A) ........ CELOCISELNA CAST ( FRC = A-INT(A) )
ABS(A) ........ ABSOLUTNI HODNOTA
SQR(A) ........ ODMOCNINA
LOG(A) ........ PRIROZENY LOGARITMUS
EXP(A) ........ E UMOCNENO NA A
RND(A) ........ RANDOM-NAHODNE CISLO V ROZSAHU 0 AZ 1. ZAPORNY PARAMETR
OVLIVNI DALSI PRUBEH GENEROVANI RADY NAHODNYCH CISEL.
LZE JEJ POUZIT PRO POCATECNI NASTAVENI.
FRE(0) ........ DELKA VOLNE PAMETI V BYTECH.
FRE(A$) ....... DELKA VOLNE PAMETI PRO STRINGY (255 PO ZAVEDENI).
TRIGONOMETRICKE FUNKCE
======================
SIN(A) ........ SINUS
COS(A) ........ COSINUS
TAN(A) ........ TANGENS
ATN(A) ........ ARCUS TANGENS
DEG ON/OFF .... NASTAVUJE MODE ZADAVANI PARAMETRU PRO GONIOMETRICKE
FUNCE (SIN, COS, TAN A ANT). IMPLICITNE JE OFF.
JE-LI OFF, POTOM SE ZADAVAJI HODNOTY V RADIANECH,
JINAK SE ZADAVEJI VE STUPNICH (DEGREE).
PR/ 1 DEG OFF:A=SIN(0.123) ! RADIANY
2 DEG ON :B=SIN(30) ! DEGREE
STRINGOVE FUNKCE
================
VAL(S$) ....... CISELNA HODNOTA RETEZU, PRVNI NENUMERICKY ZNAK UKONCI.
STR$(A) ....... PREVOD CISELNE PROMENNE NA STRING.
CHR$(A) ....... PREVOD CISELNE PROMENNE NA ASCII ZNAK.
ASC("ZNAK") ... PREVOD ZNAKU ASCII NA KOD (DEKADICKY).
LEN(S$) ....... DELKA RETEZU (POCET ZNAKU).
LEFT$(S$,A) ... POCET 'A' ZNAKU RETEZU ZLEVA.
RIGHT$(S$,A) .. POCET 'A' ZNAKU RETEZU ZPRAVA.
MID$(S$,A) .... POCINAJE ZNAKEM 'A' DO KONCE RETEZU.
MID$(S$,A1,A2). POCINAJE ZNAKEM 'A1', POCET ZNAKU 'A2' RETEZU.
POZNAMKA: FUNKCE, JEJICHZ NAZEV KONCI '$', VYTVARI NOVY STRING.
K TOMU JE TREBA REZERVOVAT PRISLUSNY PAMETOVY PROSTOR
PRIKAZEM 'CLEAR A' NA ZACATKU PROGRAMU. PARAMETR 'A'
PRIKAZU UDAVA POCET BYTE, REZERVOVANYCH PRO STRINGY.
BEZ TOHOTO PRIKAZU JE CELKOVA KAPACITA 255 BYTE
(PO ZAVEDENI BASICU).
KOMENTARE
=========
REM ........... UMISTENI KOMENTARE DO ZDROJOVEHO PROGRAMU.
PR/ REM LIBOVOLNY TEXT
! ............. POZNAMKA. TENTO TYP POZNAMKY NELZE POUZIT V PRIKAZU
"DATA"!
(U MIKROPOCITACE ONDRA JE PRED "!" NUTNO UVEST I ":")
PR/ GOTO 100 ! SKOK NA KONEC - SAPI-1
GOTO 100 :! SKOK NA KONEC - ONDRA
UKONCENI PROGRAMU
=================
END ........... UKONCENI PROGRAMU, ZOBRAZI SE "READY".
STOP .......... PRERUSENI CHODU PROGRAMU, OHLASI SE "BREAK IN N",
POKRACUJE SE PRIKAZEM "CONT".
*************************************************************************
POVELY INTERPRETU BASIC:
========================
RUN ........... SPUSTENI VLOZENEHO PROGRAMU, MUZE MIT PARAMETR - CISLO
RADKU. PRED EXEKUCI PROGRAMU SE AUTOMATICKY NULUJI
VSECHNY PROMENNE.
NEW ........... VYMAZANI PAMETI PROGRAMU A VSECH PROMENNYCH (PRIPRAVA
PRO ZADAVANI NOVEHO PROGRAMU).
CLEAR[DELKA[,RAM]]
SMAZANI TABULEK PROMENNYCH. PRIPADNY PARAMETR UDAVA
REZERVACI PAMETI PRO STRINGY, PORIZENE STRINGOVYMI
FUNKCEMI NEBO PRIKAZEM "INPUT S$".
RAM .. UMOZNI ZMENIT KONEC PAMETI A VYTVORIT CHRANENOU
ZONU PRO ZAPIS DAT (CODE..). CASTY POZADEVEK JE, ABY NOVE
ZAVEDENY PROGRAM MOHL POUZIVAT DATA Z MINULEHO PROGRAMU.
PRIKAZ CLEAR X,RAM UMOZNUJE VYMEZIT V PAMETI CHRANENOU
ZONU (NEBO SLUZBA IODEF Z MONITORU). POMOCI POKE LZE DO NI
ULOZIT DATA A PO ZAVEDENI NOVEHO PROGRAMU A PO PRIKAZU
CLEAR JE MOZNE CIST PUVODNI DATA PRIKAZEM PEEK.
POVEL CLEAR MUZE BYT POUZIT I V PROGRAMU, ALE MUSI BYT
NA SAMOSTATNEM RADKU A HNED JAKO JEDEN Z PRVNICH PRIKAZU
PROGRAMU.
PR/ CLEAR 255,1000
BASIC VYPISE NOVY KONEC RAM
"END OF RAM 48512"
GOTO .......... SPUSTENI PROGRAMU BEZ NULOVANI TABULEK (PRO LADENI).
? SEZNAM ...... VYTISTENI HODNOT PROMENNYCH DLE SEZNAMU.
(PRINT SEZNAM)
BYE ........... SKOK DO MONITORU PRES RST 0.
EDICNI POVELY
-------------
LIST .......... LISTOVANI PROGRAMU OD POCATKU, LZE ZASTAVIT POMOCI
'CTRL-C' (ETX) NEBO PRERUSIT POMOCI 'CTRL-S'.
LIST N ........ OD RADKU "N".
LIST N,POCET .. OD RADKU "N" ZADANY POCET RADKU.
LLIST ......... TISK PROGRAMU NA TISKARNU.
RENUM [NOVE-CISLO[,STARE-CISLO[,OFFSET]]]
POVEL RENUMBER PROVEDE PRECISLOVANI PROGRAMOVYCH RADKU
VCETNE UPRAV V PRIKAZECH TYPU GOTO, GOSUB ...
IMPLICITNI NASTAVENI JE RENUM 10,10,10. PRECISLOVANI
SE PROVEDE OD RADKU "STARE-CISLO", KTEREMU SE PRIDELI
"NOVE-CISLO" S PRIRUSTKEM "OFFSET" AZ DO KONCE PROGRAMU.
AUTO LINE[,N] . AUTOMATICKE ZADAVANI CISLA RADKU.
LINE .. POCATECNI HODNOTA
N .. POCET RADKU O KTERY SE ZVYSI NASLEDUJICI CISLO
RADKU
VKLADADNI SE UKONCI ZADANIM PRAZDNEHO RADKU (CR) NEBO
'CTRL-C'.
SEEK TXSTRING[;LINE]
POVEL SEEK VYHLEDA V PROGRAMU TEXT (TXSTING JE LIBOVOLNY
TEXT MIMO ZNAKU: ' ',';' A CR).
HLEDANI ZACINA OD RADKU LINE (KDYZ NENI LINE ZADANO,
PAK LINE =0). PO VYHLEDANI SE ZOBRAZI RADEK I S POLOHOU
CORSORU. OBSLUHA RIDI DALSI VYHLEDAVANI PRIKAZY:
- ' '.. DALSI VYHLEDAVANI
- CR .. UKONCENI POVELU SEEK
N .. KAZDY JINY ZNAK = VOLANI EDITORU
DELETE START_LINE,END_LINE
ZRUSI USEK PROGRAMU OD RADKU PO RADEK.
@ LINE......... EDICE RADKU. EDICE SE PROVADI V HORNI CASTI OBRAZOVKY
A RESPEKTUJE OKNO. ZADA-LI SE POUZE ZKRACENY POVEL "@"
(BEZ LINE), AUTOMATICKY SE ZOBRAZI RADEK, KTERY BYL
NAPOSLED EDITOVAN A NEBO VE KTEREM BYLA CHYBA.
KOPIROVANI RADKU LZE PROVEST PRIKAZEM @, KDE SE PREPISE
CISLO RADKU NA NOVE. PUVODNI RADEK SE VSAK ZACHOVA!
POVELY PRO RIZENI EDICE JEDNOHO RADKU:
-> POSUN O ZNAK DOPRAVA (U SAPI-1 TABULATOR)
<- POSUN O ZNAK DOLEVA
LF POSUN O NEKOLIK ZNAKU DOPRAVA
ESC NASTAV KURZOR NA OPACNY OKRAJ RADKU
DEL ZRUSENI ZNAKU
CR UKONCENI EDICE RADKU
XXX KAZDY JINY ZNAK SE ZAPISE
TRASOVACI POVELY
----------------
TRON .......... START TRASOVANI PROGRAMU. NA OBRAZOVKU SE VYPISUJI CISLA
RADKU, KTERE PROGRAM REALIZUJE.
TROFF ......... KONEC TRASOVANI PROGRAMU.
TRSTEP ........ TRASOVANI PO KROCICH
' '..DALSI KROK
CR ..KONEC TRASOVANI
CONT .......... POKRACOVANI PROGRAMU PO "STOP" NEBO 'CTRL-C' (ETX).
PRACE SE SOUBORY
----------------
LOAD .......... ZAVEDENI PROGRAMU V ASCII. JE-LI V PAMETI JIZ
JINY PROGRAM, POTOM BASIC VYPISE "APPEND (Y/N)"
Y..PRIPOJI SE DALSI PROGRAM (MERGE)
N..ZRUSI STARY PROGRAM A ZAVEDE NOVY
LOAD B ........ ZAVEDE PROGRAM V BINARNI FORME DO PAMETI A AUTOMATICKY
ZAVEDENY PROGRAM ODSTARTUJE.
!! POZOR - BINARNI FORMA NENI PRENOSNA MEZI RUZNYMI
VERSEMI BASICU EX, EXP.
LOAD CODE ..... PRECTE BINARNI SOUBOR (VYTVORENY 'SAVE CODE' NEBO
'K_S' V MIKOSU) DO PAMETI.
SAVE .......... ZAPIS PROGRAMU V ASCII NA VNEJSI PAMET.
SAVE B ........ ZAPIS PROGRAMU V BINARNIM TVARU NA VNEJSI PAMET.
SAVE P ........ (PRIVATE) - ZAPIS PROGRAMU V BINARNI FORME S UTAJENIM,
TJ. PROGRAM PO NATAZENI PRIKAZEM "LOAD B" NELZE
PROHLIZET (LIST,SEEK).
SAVE CODE ..... ZAPISE NA KAZETU BINARNI SOUBOR.
POZNAMKA: U ONDRY A SAPI-1 S MONITOREM V5.0 LZE ZADAVAT JMENO
SOUBORU PRIMO V TEXTU PROGRAMU.
PR/ SAVE B "JMENO PROGRAMU"
LOAD B "JMENO PROGRAMU"
SAVE "@JMENO" ! ZNAK @ ZPUSOBI ZAPIS BEZ VYHLEDAVANI
! (V MIKOSU SE PROVEDE FUNKCE 'APPEND'
! MISTO 'OPEN')
POZNAMKY:
=========
BASIC EXP V5.0 VYHOVUJE NORME JAZYKA MINIMALNI BASIC.
PRIKAZ, PRED KTERYM NENI CISLO RADKU, SE PROVADI OKAMZITE.
CISLOVANE PRIKAZY SE UMISTUJI DLE CISEL RADKU DO ZDROJOVEHO
PROGRAMU. PRI SHODE CISLA JE PRISLUSNY RADEK PREPSAN.
MAXIMALNI POCET ZNAKU NA INSTRUKCNIM RADKU JE 132 VCETNE CISLA
RADKU A MEZER. MAXIMALNI CISLO RADKU JE 64999.
POCET MEZER MEZI CISLEM RADKU A PRVNI INSTRUKCI ZUSTANE UCHOVAN
5 FOR J=1 TO K
10 FOR I=1 TO 10
20 X=J*SIN(I):Z=Z/15+X:PRINT "X=";X,"Z=";Z
30 NEXT I
35 NEXT J
NAZVY PROMENNYCH MOHOU BYT VICEZNAKOVE (PRVNI VZDY PISMENO), ALE
ROZHODUJICI JSOU POUZE PRVNI D V A ZNAKY.
CELA RESERVOVANA SLOVA SE NESMI UZIVAT JAKO NAZVY PROMENNYCH.
PRO NUMERICKE PROMENNE A STRINGY JE MOZNO POUZIT TECHZE NAZVU
(NA PR. "B" A "B$").
MAXIMALNI DELKA JEDNOHO STRINGU JE 255 BYTE (BEZ OHLEDU NA DELKU
OBLASTI PRO STRINGY VYMEZENOU POMOCI 'CLEAR').
PRERUSENI CHODU PROGRAMU (PO 'RUN') JE MOZNE KLAVESOU 'CTRL-C' (ETX).
POTLACENI TISKU Z PROGRAMU SE PROVEDE STISKNUTIM 'CTRL-S'. OBNOVENI
TISKU OPAKOVANIM LIBOVOLNE KLAVESY.
******************************************************************************
HLASENI CHYB:
=============
ERROR XX IN LINE N - PROGRAMOVY REZIM
ERROR XX - POVELOVY REZIM
XX - TYP CHYBY, N - CISLO RADKU.
BASIC CEKA NA POVEL OBSLUHY. PO STISKNUTI "@" ( EDICE CHYBNEHO
RADKU) AUTOMATICKY ZOBRAZI TEXT RADKU, NA KTEREM BYLA HLASENA
CHYBA.
XX ... TYP CHYBY
..........................
NF ... NEXT WITHOUT "FOR"
SN ... SYNTAX ERROR
RG ... RETURN WITHOUT "GOSUB"
OD ... OUT OF DATA (NOTHING TO "READ")
FC ... FUNCTION ERROR
OV ... OVERFLOW VALUE
OM ... OVERFLOW MEMORY
US ... UNDEFINED STATEMENT (LINE)
BS ... INDEX OVERFLOW (BAD SUBSCRIPT - SUBSCRIPT OUT OF RANGE)
DD ... DOUBLE DIMENSION
/0 ... ZERO DIVIDE
ID ... ILEGAL DIRECT
TM ... TYPE MISMATCH
OS ... OVERFLOW STRING MEMORY SPACE
LS ... LONG STRING (>255 )
ST ... STRING FUNCTION TOO KOMPLEX
CN ... CONTINUE ERROR
UF ... UNDEFINED FUNCTION
WE ... WEND NESTING
UN ... UNTIL NESTING
BE ... BEND,BEG NESTING
M# ... TOO MUCH ## IN USING
ND ... NO BINAR DATA
PA ... PARAMETR ERROR
PE ... PROCEDURE END
FE ... FUNCTION END
VA ... VAR ERROR
EXTRA DATA IGNORED - PREBYTECNA DATA IGNOROVANA
REDO FROM START - PISMENO MISTO CISLICE (NOVY VSTUP)
P O Z N A M K A:
----------------
BASIC EXP V5.0, V5.0/G, MONITOR V5.0, MIKOS V5.0 BUDOU K DODANI
I S POPISEM V TESLE DIZ, HRONOVICKA 437, PARDUBICE. DALE UVITAME
VYSLEDKY VASICH TESTU A ZKUSENNOSTI JAK KLADNE TAK I JINE.
[]
ÚVOD | Novinky | 8 Bitů | Příslušenství | Drobnosti | TTL | Kontakt
SAPI-1 | ONDRA | PMI-80 | PMD-85 | klony PMD-85 | klony SM50/40 | PETR | PLAN-80A | IQ151 | TNS | FK-1 | HVĚZDA | SP 830 | PCS 1-QR6000
ZPS | Technické prostředky | Programové vybavení | Dokumentace