Turbo BASIC XL
From Atariki
Odmiana języka BASIC dla komputera Atari XL/XE, stworzona w 1985 roku przez niemieckiego programistę Franka Ostrowskiego i rozpowszechniona jako program public domain przez czasopismo "Happy Computer". Oprócz wersji XL istnieje też odmiana przeznaczona dla komputerów serii 400/800.
Turbo BASIC wgrywa się do pamięci RAM komputera z dysku lub taśmy. Interpreter charakteryzuje się dużą ilością rozszerzeń w stosunku do oryginalnego Atari BASIC-a, istnieje też kompilator Turbo BASIC XL Compiler.
Pierwszorzędną zaletą Turbo BASIC-a XL jest jego szybkość, programy wykonywane są od trzech do pięciu razy szybciej niż w interpreterze Atari BASIC, co jest w sporej mierze wynikiem tego, iż Turbo BASIC ma własny, bardzo szybki pakiet procedur zmiennoprzecinkowych, który sprawdza się świetnie w większości zastosowań.
Spis treści |
Tokeny Turbo BASIC-a
Zasadnicza struktura programu w Turbo BASIC-u XL jest taka sama, jak w Atari BASIC - zmiany polegają wyłącznie na dodaniu nowych instrukcji, funkcji i operatorów do listy tychże znanych interpreterowi Atari BASIC.
Tokeny instrukcji
Tokeny o kodach poniżej 56 są takie same jak w Atari BASIC, patrz Tokeny instrukcji Atari BASIC.
| Hex | Dec | Instrukcja |
| $38 | 56 | DPOKE |
| $39 | 57 | MOVE |
| $3a | 58 | -MOVE |
| $3b | 59 | *F |
| $3c | 60 | REPEAT |
| $3d | 61 | UNTIL |
| $3e | 62 | WHILE |
| $3f | 63 | WEND |
| $40 | 64 | ELSE |
| $41 | 65 | ENDIF |
| $42 | 66 | BPUT |
| $43 | 67 | BGET |
| $44 | 68 | FILLTO |
| $45 | 69 | DO |
| $46 | 70 | LOOP |
| $47 | 71 | EXIT |
| $48 | 72 | DIR |
| $49 | 73 | LOCK |
| $4a | 74 | UNLOCK |
| $4b | 75 | RENAME |
| $4c | 76 | DELETE |
| $4d | 77 | PAUSE |
| $4e | 78 | TIME$= |
| $4f | 79 | PROC |
| $50 | 80 | EXEC |
| $51 | 81 | ENDPROC |
| $52 | 82 | FCOLOR |
| $53 | 83 | *L |
| $54 | 84 | -- |
| $55 | 85 | RENUM |
| $56 | 86 | DEL |
| $57 | 87 | DUMP |
| $58 | 88 | TRACE |
| $59 | 89 | TEXT |
| $5a | 90 | BLOAD |
| $5b | 91 | BRUN |
| $5c | 92 | GO# |
| $5d | 93 | # (etykieta) |
| $5e | 94 | *B |
| $5f | 95 | PAINT |
| $60 | 96 | CLS |
| $61 | 97 | DSOUND |
| $62 | 98 | CIRCLE |
| $63 | 99 | %PUT |
| $64 | 100 | %GET |
Tokeny o kodach powyżej 100 sa niezdefiniowane.
Tokeny operatorów i funkcji
Tokeny zmiennych
Błędy w Turbo BASIC-u
- uruchomienie programu: 10 TRAP 10:GET #1,A powoduje całkowite zapełnienie i "zawinięcie" się stosu procesora; instrukcja TRAP wprawdzie zdejmuje ze stosu pewną ilość danych, ale rzadko bywa to ilość właściwa. Ten sam błąd ma też Atari BASIC.
- porównanie dwóch funkcji CHR$ w jednym wyrażeniu jest zawsze prawdziwe, np. IF CHR$(1)=CHR$(2) THEN STOP spowoduje zatrzymanie programu. Ten sam błąd ma też Atari BASIC.
- kontrola składni nie przyjmuje słów kluczowych %GET, %PUT i -MOVE jeśli są wpisane małymi literami.
- kontrola składni przyjmuje zmienne tekstowe jako argumenty instrukcji GET, chociaż ta może zapisywać wartości tylko do zmiennych numerycznych.
- funkcja DEC źle działa, jeśli przekazana jej liczba szesnastkowa zawiera małe litery.
Ten artykuł to tylko zalążek. Możesz pomóc rozwojowi Atariki poprzez rozszerzenie go o więcej informacji.

