Ú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