Waterloo Structured BASIC
Dieser Artikel beschreibt Waterloo Structured BASIC von Watcom. Außerdem gibt es Structured BASIC von Ariolasoft, das ebenfalls als Steckmodul vertrieben wurde, sowie Strubs.
Waterloo Structured BASIC | |
---|---|
Firma | University of Waterloo |
Verleger | Watcom |
Release | 1984 |
Lizenz | Vollversion |
Plattform(en) | C64 |
Genre | BASIC-Erweiterung |
Steuerung | |
Medien | |
Sprache(n) |
Waterloo Structured BASIC (auch Waterloo BASIC) ist eine BASIC-Erweiterung, die von der Computer Systems Group der University of Waterloo ursprünglich 1978 für die IBM Series/1 entwickelt wurde. Später wurde Waterloo BASIC auch für die IBM-Serien 370, 3030 und 4300 sowie den Commodore PET, 8032, VC 20 und C64 angepasst.
Waterloo BASIC ist eine ziemlich schlanke Erweiterung (das ROM des Steckmoduls ist nur zu etwa 4 kBytes belegt). Im Vergleich zu anderen Erweiterungen bringt sie relativ wenige Befehle mit, die es in erster Linie ermöglichen, besser strukturierten BASIC-Code (z.B. ohne GOTOs) zu schreiben.
Eigenschaften[Bearbeiten | Quelltext bearbeiten]
Unterstützung von mehrzeiligen IF-Bedingungen (dann ohne THEN) sowie optionalem ELSE:
1 INPUT A 2 IF A > 10 3 PRINT"A IST" 4 PRINT"GROESSER 10" 5 ELSE 6 PRINT"A IST" 7 PRINT"KLEINER ODER GLEICH 10" 8 ENDIF
IF/ELSEIF/ELSE/ENDIF-Konstruktionen:
1 INPUT A% 2 IF A% > 10 3 PRINT"A% GROESSER 10" 4 ELSEIF A < 5 5 PRINT"A% KLEINER 5" 6 ELSE 7 PRINT"A% GROESSER 4 UND KLEINER 11" 8 ENDIF
LOOP/ENDLOOP-Konstruktion mit QUIT:
1 A=0 2 LOOP 3 A=A+1 4 PRINT A 5 IF A>5 THEN QUIT 6 ENDLOOP
...sowie WHILE/ENDLOOP, LOOP/UNTIL und WHILE/UNTIL-Konstruktionen und Unterprogrammaufrufe per CALL/PROC/ENDPROC.
Ferner werden die Befehle RENUMBER, DELETE und AUTO zur Verfügung gestellt.
QUIT kann nicht zum Verlassen von FOR-Loops benutzt werden.
QUIT muss zum ordnungsgemäßgen Funktionieren alleine in einer Zeile oder unmittelbar auf das THEN eines alleine in einer Zeile stehenden IFs stehen.
Das Verschachteln der jeweiligen neuen Konstruktionen ineinander wird unterstützt.
Technische Details[Bearbeiten | Quelltext bearbeiten]
Benutzte Token
- $f3,$ff,$ff - IF
- $f4,$ff,$ff - CALL
- $f5,$ff,$ff - LOOP
- $f6,$ff,$ff - ENDLOOP
- $f7,$ff,$ff - UNTIL
- $f8,$ff,$ff - WHILE
- $f9,$ff,$ff - ELSEIF
- $fa,$ff,$ff - ELSE
- $fb,$ff,$ff - ENDIF
- $fc,$ff,$ff - PROC
- $fd,$ff,$ff - ENDPROC
- $fe,$ff,$ff - QUIT
RENUMBER, DELETE und AUTO funktionieren nur im Direktmodus und werden nicht tokenisiert.
Weblinks[Bearbeiten | Quelltext bearbeiten]
- Thema: VICE "Structured Basic Image" auf Forum64.de inklusive CRT und weiterführendem Buch