Turbo BASIC XL
From Atariki
Odmiana języka BASIC dla małego Atari, stworzona w 1985 roku przez niemieckiego programistę Franka Ostrowskiego i rozpowszechniona jako program public domain przez czasopismo "Happy Computer". Istnieją 2 wersje:
- Turbo-Basic 1.4 - dla komputerów 400/800 z min. 32KB RAM
- Turbo-Basic XL 1.5 - dla komputerów XL/XE. Ta wersja ładuje się częściowo do RAM-u pod ROM-em systemu operacyjnego, przez co udostępnia więcej pamięci na program użytkownika.
Turbo BASIC wgrywa się do pamięci RAM komputera z dysku lub taśmy. Interpreter charakteryzuje się większą ilością instrukcji 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ń.
Błędy w Turbo BASIC-u
- 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.
- kontrola składni akceptuje znak Esc (ASCII 27) w miejsce dwukropka jako separatora instrukcji. Ten sam błąd ma też Atari BASIC.
- 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.
- funkcja DEC źle działa, jeśli przekazana jej liczba szesnastkowa zawiera małe litery.
- zakończenie łańcucha tekstowego znakiem Ctrl/R (ASCII 18) powoduje takie zachowanie interpretera, jakby po cudzysłowie zamykającym łańcuch znajdował się średnik (np. ? "NATENCZAS ^R":? "WOJSKI" zachowuje się jak ? "NATENCZAS ^R";:? "WOJSKI").
Zobacz też
Ten artykuł to tylko zalążek. Możesz pomóc rozwojowi Atariki poprzez rozszerzenie go o więcej informacji.