Turbo BASIC XL

From Atariki

Revision as of 14:19, 8 lip 2006; view current revision
←Older revision | Newer revision→
Jump to: navigation, search

Grafika:tbxl.png

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.

HexDecInstrukcja
$3856DPOKE
$3957MOVE
$3a58-MOVE
$3b59*F
$3c60REPEAT
$3d61UNTIL
$3e62WHILE
$3f63WEND
$4064ELSE
$4165ENDIF
$4266BPUT
$4367BGET
$4468FILLTO
$4569DO
$4670LOOP
$4771EXIT
$4872DIR
$4973LOCK
$4a74UNLOCK
$4b75RENAME
$4c76DELETE
$4d77PAUSE
$4e78TIME$=
$4f79PROC
$5080EXEC
$5181ENDPROC
$5282FCOLOR
$5383*L
$5484--
$5585RENUM
$5686DEL
$5787DUMP
$5888TRACE
$5989TEXT
$5a90BLOAD
$5b91BRUN
$5c92GO#
$5d93# (etykieta)
$5e94*B
$5f95PAINT
$6096CLS
$6197DSOUND
$6298CIRCLE
$6399%PUT
$64100%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.

Personal tools