A. Jazyk na jednej strane
Všetky príkazy, funkcie a operátory na jednom mieste. Stĺpec AB hovorí, či slovo pozná Atari BASIC (súbory .abas); Turbo-BASIC XL (.tbas) pozná všetky. Stĺpec Kap. je kapitola, kde je slovo vysvetlené.
Slovami z týchto tabuliek sa nesmie začínať meno premennej (kapitoly 4 a 26); meno začínajúce na NOT sa vo výpočte číta ako NOT a zvyšok.
Príkazy Atari BASICu
| Príkaz | Tvar | Čo robí | Kap. |
|---|---|---|---|
BYE | BYE | ukončí program | 25 |
CLOAD, CSAVE | (editor) len hláška | 25 | |
CLOSE | CLOSE #k | zavrie kanál | 24 |
CLR | CLR | vynuluje premenné, zruší DIM | 13 |
COLOR | COLOR n | vyberie pero na kreslenie | 20 |
COM | COM A(n) | to isté ako DIM | 25 |
CONT | CONT | (editor) nerobí nič | 25 |
DATA | DATA a,b,c | hodnoty pre READ | 14 |
DEG, RAD | DEG | uhly v stupňoch, v radiánoch | 16 |
DIM | DIM A$(n),B(n),C(r,s) | vyhradí reťazec, pole, tabuľku | 6, 13 |
DOS | DOS | odíde do DOS-u | 25 |
DRAWTO | DRAWTO x,y | čiara z posledného bodu | 20 |
END | END | ukončí program | 3 |
ENTER, LOAD, SAVE | (editor) len hláška | 25 | |
FOR … NEXT | FOR I=a TO b STEP c … NEXT I | slučka s počítadlom | 10 |
GET | GET #k,A | prečíta bajt z kanála | 24 |
GOSUB … RETURN | GOSUB n | zavolá podprogram | 11 |
GOTO | GOTO n | skok na riadok | 9 |
GRAPHICS | GRAPHICS režim | prepne režim obrazovky | 19, 20 |
IF … THEN | IF podmienka THEN príkazy | podmienka | 8 |
INPUT | INPUT A, INPUT #k,A | prečíta riadok z klávesnice, z kanála | 7, 24 |
LET | LET A=5 | priradenie; slovo je nepovinné | 4 |
LIST | (editor) čísla 1–30 a hláška | 25 | |
LOCATE | LOCATE x,y,A | zistí pero bodu | 20 |
LPRINT | LPRINT čo | výpis na tlačiareň | 24 |
NEW | NEW | ukončí program | 25 |
NOTE, POINT | NOTE #k,S,B | zapamätá a nastaví miesto v súbore | 24 |
ON | ON X GOTO a,b, ON X GOSUB a,b | výber podľa čísla | 12 |
OPEN | OPEN #k,režim,0,"D:MENO" | otvorí kanál | 24 |
PLOT | PLOT x,y | bod | 20 |
POKE | POKE adresa,hodnota | zapíše bajt do pamäte | 18 |
POP | POP | zabudne posledný GOSUB | 11 |
POSITION | POSITION stĺpec,riadok | postaví kurzor | 19 |
PRINT, ? | PRINT a;b,c, PRINT #k;a | výpis | 3, 24 |
PUT | PUT #k,hodnota | zapíše bajt do kanála | 24 |
READ | READ A,B$ | prečíta hodnoty z DATA | 14 |
REM | REM text | komentár | 3 |
RESTORE | RESTORE, RESTORE n | DATA od začiatku, od riadka | 14 |
RUN | RUN | spustí program odznova | 17 |
SETCOLOR | SETCOLOR register,odtieň,jas | nastaví farbu | 19, 20 |
SOUND | SOUND hlas,výška,skreslenie,hlasitosť | tón | 21 |
STATUS | STATUS #k,S | stav kanála | 24 |
STOP | STOP | ukončí program s výpisom riadka | 17 |
TRAP | TRAP n | pri chybe skoč na riadok | 17 |
XIO | XIO príkaz,#k,a,b,"D:MENO" | zvláštna operácia zariadenia | 24 |
Príkazy Turbo-BASICu XL
| Príkaz | Tvar | Čo robí | Kap. |
|---|---|---|---|
-- | -- | nerobí nič (čiara vo výpise) | 26 |
*B, *F, *L | *B, *B - | BREAK ako chyba; FOR s nula prechodmi; odsadenie výpisu | 38 |
BGET, BPUT | BGET #k,adresa,koľko | blok pamäte zo súboru, do súboru | 34 |
BLOAD, BRUN | BLOAD "D:MENO" | nahrá, nahrá a spustí strojový kód | 37 |
CIRCLE | CIRCLE x,y,r, CIRCLE x,y,rx,ry | kružnica, elipsa | 35 |
CLOSE | CLOSE | bez čísla zavrie kanály 1–7 | 24 |
CLS | CLS, CLS #6 | zmaže obrazovku | 26, 35 |
DEL, DUMP, RENUM | (editor) len hláška | 38 | |
DELETE | DELETE "D:MENO" | zmaže súbor | 37 |
DIR | DIR, DIR "D:*.TXT" | vypíše súbory na diskete | 37 |
DO … LOOP | slučka bez konca | 29 | |
DPOKE | DPOKE adresa,hodnota | zapíše dva bajty | 34 |
DSOUND | DSOUND hlas,výška,skreslenie,hlasitosť | tón so šestnásťbitovou výškou | 36 |
ELSE, ENDIF | IF podmienka … ELSE … ENDIF | podmienka na viac riadkov | 27 |
EXEC | EXEC meno | zavolá procedúru | 30 |
EXIT | EXIT | opustí slučku DO, WHILE, REPEAT, FOR | 29 |
FCOLOR | FCOLOR n | pero pre FILLTO | 35 |
FILLTO | FILLTO x,y | čiara s výplňou doprava | 35 |
GET | GET K | bez kanála: počká na kláves | 32 |
GO# | GO# meno | skok na návestie | 30 |
INPUT | INPUT "text";A, INPUT "text",A | otázka v príkaze | 26 |
LOCK, UNLOCK | LOCK "D:MENO" | zamkne, odomkne súbor | 37 |
MOVE, -MOVE | MOVE odkiaľ,kam,koľko | skopíruje pamäť | 34 |
ON | ON X EXEC a,b, ON X GO# a,b | výber procedúry, návestia | 30 |
PAINT | PAINT x,y | vyplní uzavretú plochu | 35 |
PAUSE | PAUSE n | počká n päťdesiatin sekundy | 33 |
PROC … ENDPROC | PROC meno | procedúra | 30 |
PUT | PUT 65,66 | bez kanála: vypíše znaky na obrazovku | 32 |
RENAME | RENAME "D:STARE,NOVE" | premenuje súbor | 37 |
REPEAT … UNTIL | UNTIL podmienka | slučka s podmienkou na konci | 28 |
RESTORE, TRAP | RESTORE #meno, TRAP #meno | s návestím | 30 |
SOUND, DSOUND | SOUND | bez čísel: vypne všetky hlasy | 36 |
TEXT | TEXT x,y,text | text v grafike | 35 |
TRACE | TRACE, TRACE - | výpis čísel riadkov | 38 |
WHILE … WEND | WHILE podmienka | slučka s podmienkou na začiatku | 28 |
# meno | # meno | návestie | 30 |
%PUT, %GET | %PUT #k,číslo | číslo v šiestich bajtoch do súboru a späť | 34 |
Funkcie
| Funkcia | Čo vráti | AB | Kap. |
|---|---|---|---|
ABS(x) | číslo bez znamienka | áno | 5 |
ADR(A$) | adresa textu reťazca | áno | 18 |
ASC(A$) | kód prvého znaku | áno | 15 |
ATN(x) | arkustangens | áno | 16 |
CHR$(n) | znak s kódom n | áno | 15 |
CLOG(x) | desiatkový logaritmus | áno | 16 |
COS(x) | kosínus | áno | 16 |
EXP(x) | e na x | áno | 16 |
FRE(0) | voľná pamäť | áno | 18 |
INT(x) | celé číslo smerom nadol | áno | 5 |
LEN(A$) | počet znakov | áno | 6 |
LOG(x) | prirodzený logaritmus | áno | 16 |
PADDLE(n), PTRIG(n) | otočný ovládač a jeho tlačidlo | áno | 22 |
PEEK(a) | bajt z pamäte | áno | 18 |
RND(0) | náhodné číslo 0 až 1 | áno | 16 |
SGN(x) | znamienko: -1, 0, 1 | áno | 5 |
SIN(x) | sínus | áno | 16 |
SQR(x) | druhá odmocnina | áno | 5 |
STICK(n), STRIG(n) | joystick a jeho tlačidlo | áno | 22 |
STR$(x) | číslo ako text | áno | 15 |
USR(a,…) | zavolá strojový kód | áno | 23 |
VAL(A$) | text ako číslo | áno | 15 |
DEC(A$) | šestnástkový text ako číslo | – | 31 |
DPEEK(a) | dva bajty z pamäte | – | 34 |
ERR, ERL | číslo a riadok poslednej chyby | – | 38 |
FRAC(x) | desatinná časť | – | 31 |
HEX$(n) | číslo šestnástkovo | – | 31 |
INKEY$ | stlačený kláves, bez čakania | – | 32 |
INSTR(A$,B$,n), UINSTR | miesto textu v texte | – | 32 |
RAND(n) | náhodné celé číslo 0 až n-1 | – | 31 |
TIME, TIME$ | čas od zapnutia | – | 33 |
TRUNC(x) | odreže desatinnú časť | – | 31 |
Operátory
Od tých, ktoré sa počítajú najskôr, po tie, ktoré sa počítajú naposledy. Rovnako silné idú zľava doprava.
| Poradie | Atari BASIC | Turbo-BASIC XL navyše |
|---|---|---|
| 1 | ( ) | |
| 2 | porovnanie dvoch reťazcov | |
| 3 | mínus pred číslom, NOT | (NOT až na úrovni 8) |
| 4 | ^ | |
| 5 | & ! EXOR | |
| 6 | * / | DIV MOD |
| 7 | + - | |
| 8 | = <> < > <= >= | potom NOT |
| 9 | AND | |
| 10 | OR |
Tri veci, ktoré prekvapia:
-3^2je 9: mínus pred číslom sa počíta pred umocnením.2^3^2je 64: umocnenie ide zľava.NOTje v Atari BASICu „znamienko“ (NOT A=Bje(NOT A)=B), v Turbo-BASICu XL až za porovnaniami. So zátvorkou to vyjde v oboch rovnako.
Porovnanie dáva 1 (platí) alebo 0 (neplatí). AND, OR a NOT berú každé nenulové číslo ako „platí“.
Čísla a mená
| Atari BASIC | Turbo-BASIC XL | |
|---|---|---|
| čísla | 10 číslic, od 1E-98 po 9.99999999E+97 | to isté |
čísla s --int | celé, od −2 147 483 648 po 2 147 483 647; desatinné len premenné z REM @FLOAT (kapitola 50) | to isté |
| zápis | 12, 0.5, 1.5E6 | navyše $FF, %0–%3 |
| mená premenných | písmeno, potom písmená a číslice; len veľké | navyše _ a malé písmená |
| reťazec | MENO$, pred použitím DIM | to isté |
| pole | MENO(n) alebo MENO(r,s), pred použitím DIM, index od 0 | to isté |
| počet premenných | 128 | 256 |
| číslo riadka | 0 až 32767 | to isté; s --no-line-numbers žiadne (kapitola 47) |
| skratka príkazu | PR. je PRINT, . je REM | to isté |
| program z viacerých súborov | nie | s --modern a --no-line-numbers riadok INCLUDE "SÚBOR" (kapitola 47) |
Slová Basic26 pre skrytú pamäť
Platia len s voľbou --xmem, v oboch jazykoch. Kapitoly 44 až 46.
| Slovo | Tvar | Čo robí |
|---|---|---|
XBANKS | funkcia | počet bánk rozšírenej pamäte |
XPEEK, XDPEEK | XPEEK(b,a) | bajt, dva bajty |
XPOKE, XDPOKE | XPOKE b,a,v | zapíše bajt, dva bajty |
XFILL | XFILL b,a,n,v | vyplní n bajtov |
XMOVE | XMOVE sb,s,db,d,n | skopíruje n bajtov |
XPUT | XPUT b,a,A$ | zapíše znaky reťazca |
XGET$ | XGET$(b,a,n) | reťazec z n bajtov |
XPRINT | XPRINT b,a,s, XPRINT #k,b,a,s | vypíše text po bajt s |
XBGET, XBPUT | XBGET #k,b,a,n | blok zo súboru, do súboru |
XUNPACK | XUNPACK sb,s,db,d | rozbalí dáta z --pack |
XBANK | XBANK b | banka v okne natrvalo |
XANTIC | XANTIC b | obraz z banky |
Slová Basic26 pre hráčov a strely
Platia len s voľbou --modern, v oboch jazykoch. Kapitola 49.
| Slovo | Tvar | Čo robí |
|---|---|---|
PMGRAPHICS | PMGRAPHICS m | 0 vypne, 1 jemné pásy, 2 hrubé |
PMCREATE | PMCREATE n,T$,w,x,y | nakreslí objekt (0–3 hráči, 4–7 strely) |
PMSHAPE, PMCLEAR | PMSHAPE n,T$, PMCLEAR n | iný tvar, zmaže objekt |
PMMOVE, PMHPOS, PMVPOS | PMMOVE n,x,y | poloha |
PMWIDTH, PMCOLOR, PMPRIORITY | PMCOLOR n,odtieň,jas | šírka, farba, poradie s obrazom |
PMX, PMY, PMADR | funkcie | poloha, adresa pásu |
PMHIT, PMHITPF, PMHITPM | PMHIT(n,c) | nárazy od HITCLR |
HITCLR, PMWAIT | zabudne nárazy, počká na snímku | |
PMOVERLAP | PMOVERLAP(a,b) | prekrývajú sa? |
Späť: 50. Rýchle celé čísla · Ďalej: B. Voľby prekladača