..----------------------------------------------------#---------R
.Pl72
.Mt3
.Mb8
.He****** ZX-BASIC *********** ZX-BASIC *********** ZX-BASIC ******
.Fo****** ZX-BASIC *********** ZX-BASIC *********** ZX-BASIC ******









      *****************************************************
      *****************************************************
      **                                                 **
      **   BBBBBB      AA       SSSS    IIII    CCCCC    **
      **   BB   BB   AA  AA   SS    SS   II   CC     CC  **
      **   BB   BB  AA    AA  SS         II   CC         **
      **   BBBBBB   AA    AA    SSSS     II   CC         **
      **   BB   BB  AAAAAAAA        SS   II   CC         **
      **   BB   BB  AA    AA  SS    SS   II   CC     CC  **
      **   BBBBB    AA    AA    SSSS    IIII    CCCCC    **
      **                                                 **
      ***********************************************Hmg.**
      *****************************************************









        Sprachbeschreibung fuer den Heimcomputer "ZX..."
        ================================================


Inhaltsverzeichnis:                               Seite

 1.  Allgemeines                                     2
 1.1. Zahlen, Variable, Strings
 1.2. Zeichen in der BASIC-Sprache
 1.3. Programmieranweisungen                         3
 1.4. Bildschirmnachricht
 2.  Modes und ihre Einschaltung                     4
 3.  BASIC-Meldungen und Fehlermeldungen             5
 4.  BASIC - Schluesselworte                         6
 5.  Speicheraufteilung                             21
 6.  Systemvariablen                                22
 7.  Code-Tabelle                                   24
 8.  Interne Formate                                26
 8.1. - BASIC-Zeile
 8.2. - Variable
 8.3. - Variablenfeld
 8.4. - Steuervariable                              27
 8.5. - String
 8.6. - Stringfeld




Jena, den 23. Februar 1987
.Pa
..---!---------!-----------------------------------------!-------
.He************************************   1. Allgemeines   *****  #


 1.1. Zahlen, Variable, Strings
 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~


     Zahlen:
            -werde bi z eine Genauigkei vo  Ziffer 
gespeichert De Zahlenbereic lieg zwische 

               1* 10E 38 und 4* 10E -39
     Zeilennummern:

             -E sin Zeilennummer zwische  un 999 zugelas
sen.


     Bezeichnung der Variablen:

             -Numerisch Variable habe beliebig Laenge da 
erst Zeiche mus ei Buchstab sein Leerzeiche 
werde ignoriert All Buchstabe werde i Klein
schreibweis umgewandelt Steuervariable (fue 
FOR/NEXT bestehe au nu eine Buchstaben.

             -Eindimensional Felde werde mi eine Buchsta
ben gefolg vo eine Zahleninde beginnen mi  
bezeichnet.

             -Zweidimensional Felde werde wi eindimensional 
bezeichnet weiter Erklaerunge sieh unte DIM.

             - Stringvariabl堠 werde wi numerisch Variabl 
gefolg vo "S bezeichnet.
                            |


     Struktur einer BASIC-Zeile:

             - Zeilennummer,
             - Schluesselwort,
             - Operation,
             - ENTER.

Programmzeile ohn Zeilennumme werde sofor 
abgearbeitet solch mi Numme gespeicher un 
be Programmstar mi RUN beginnen be de nied
rigste Zeilennumme abgearbeitet.




 1.2. Zeichen in der BASIC-Sprache
 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

     Zeichen   Funktion/ Verwendung
     ------------------------------------------------------------

     S         Dollar, bezeichnet Stringvariable.
     |
     'Apostroph Einschu vo NEWLIN innerhal eine 
PRINT-Anweisung, siehe dort.
     ( Klamme auf  Einschluss
     )         Klammer zu  ) von Ausdruecken.
     >=        groesser/ gleich ) Vergleichsoperatoren.
     <>        ungleich         )
     <=        kleiner/ gleich  )
     <         kleiner als      )
     >         groesser als     )
     |         Pfeil senkrecht; Potenzzeichen.
     ^
     -         Minus; Subtraktionszeichen/ negativ.
     +         Plus; Additionszeichen/ positiv, String-Addition.
     =         Gleichheitszeichen.
     , Komma setz 16-stellige Tabulato i PRINT-
Anweisung.
     ; Semikolon setz 16-stellige Tabulato i PRINT-
Anweisun ausse Betrieb.
     :  Doppelpunkt trenn Anweisunge innerhal eine 
Progammzeile.
     / Schraegstrich Divisionszeichen.
     " Anfuehrungsstriche schliesse Textkette ode 
String ein.
     . Punkt Dezimalpunk i Zahlen.




 1.3. Programmieranweisungen
 ~~~~~~~~~~~~~~~~~~~~~~~~~~~


    Korrektur:
               Mide Kursortaste da Zeiche "> au di z 
korrigierend Programmzeil setzen durc EDI 
Zeil i da Eingabefel holen Einfuegungen 
Loeschunge (DEL nac entsprechende Kursorbewe
gun vornehme un mi ENTEҠ Zeil wiede in 
Program uebernehmen.


    Programmanzeige:

LIS zeig da Program a erste Zeile LISԠ x 
a xx Zeile Is de Bildschir gefuellt er
schein di Frag "scroll?" Quittiere mi "Y 
(yes setz LIS seitenweise fort.




 1.4. Bildschirmnachricht
 ~~~~~~~~~~~~~~~~~~~~~~~~


     >         Anzeige der aktuellen Progammzeile.
     ?         ERROR-Anzeige innerhalb der Programmzeile.


     Die Bildschirmnachricht "?" wird blinkend dargestellt.
.Pa
..---!---------!-----------------------------------------!-------
.He**********************  2. Modes und ihre Einschaltung  *****  #




De eingeschaltet Mod wir i Eingabekurso dargestellt.


     K "keymode" Grundzustand Eingab堠 de BASIC-
Schluesselworte danac automatisc Umschaltun i 
de L-Mode mi ENTE wiede K-Mode.

     L "lettermode" e werde Kleinbuchstabe geschrie
ben.

     C "capitalmode" e werde Grossbuchstabe geschrie
ben Erreichba mi CAP SHIFT dauernd Einschal
tun mi CAP LOCK gleich Tast zu Rueckkeh i 
de L-Mode.

     G "graphics" Grafik-Modus erreichba bzw Rueck
setze mi GRAPHICS.

     E "extended" Erweiterte Modus erreichba mi CAP 
SHIFT+SYMBO SHIFT Diese Modu wir automatisc 
mi de nachfolgende Eingab zurueckgesetzt.
.Pa
.He**************  3. BASIC-Meldungen und Fehlermeldungen  *****  #

   Kode        Bedeutung
   --------------------------------------------------------------

     0         OK. Programmlauf fehlerfrei.

     1         NEXT without FOR.

     2      Varibl no found. Variabl wurd verwendet ohn 
das ih ei Wertzugewiese wurde.
     3 Subscrip ou o range. Indexzah fehlerhaf ode 
ausserhal de Zahlenbereiches.
     4  Ou o memory. Program z lang; zu viele GO SUB.

     5 Ou o screen. PRINT- ode INPUT-Anweisun mi z 
grosse Bildschirmadresse.
     6 Numbe to big. Zahlenbereic ueberschritten.

     7 RETUR withou GO SUB.

     8 En o file. Fehle be Microdrive.

     9 STO statement. STO i Programm Fortsetzun mi 
CONT(INUE be naechste Befehl.
     AInvali argument. Argumentfehle i eine Funk
tion.
     BIntege ou o range. Ueberschreitun de Zahlen
bereichs.
     CNonsens i BASIC. fehlerhaft BASIC-Zeile.

     D     BREAˠ - CON repeats. Unterbrechung CONT(INUE 
wiederhol Zeile be de unterbroche wurde.
     EOu o DATA. READ-Anweisun forder meh Date al 
i DAT angegeben.
     F Invali filename. SAV mi meh al 1 Zeiche 
ode ohn Namen.
     G N roo fo line. Programmspeiche voll.

     H  STOР i INPUT. INPUT-Anweisun wurd mi STO 
quittier CONT(INUE wiederhol INPUT-Anweisung.
     I FO withou NEXT.

     J Invali I/ device. Fehle be Microdrive.

     K Invali colour.

     L BREA int program. Programmunterbrechung CONT(I
NUE setz mi de nachfolgende Befeh fort.
     M Ramto n good. Di fu RAMTO angegeben Zah is 
falsch.
     N Statemen lost. Di angegeben Sprunganweisun is 
falsch.
     O Invali stream. Fehle be Microdrive.

     P F withou DEF.

     Q Paramete error. FN-Anweisun mi falsche Daten.

     R Tap loadin error. Fehle bei Einlese vo Band.
.Pa
.He***********************   4 BASI - Schluesselwort   ****  #
.Fo****** ZX-BASIC ****************************  ABS  bis  ATN  ***
..---!---------!-----------------------!-----------------!-------
-----------------------------------------------------------------
     Schluesselwort                                  Tastaturlage

Erklaerung:    na\nk\nv = numerischer Ausdruck\Konstante\Variable
               ia\ik\iv = Integer-Ausdruck\-Konstante\-Variable,
               sa\sk\sv = String-Ausdruck\-Konstante\-Variable,
               x\xS     = Buchstabe\ dto. mit "S"
                  |                            |
               bd       = Bedingung,
               st       = Statement,
               \        = "oder",
               .        = kein BASIC-Trennzeichen, es koennen
                          wahlfrei Semikolon, Komma oder Apo-
                          stroph  eingesetzt werden,
               [        Optionen koenne entfalle bzw.
                          wiederholen.

     Format(e)                         Beispiel
-----------------------------------------------------------------
     ABS       absoluter Wert                                EX G

ABӠ ergib di absolut Groess eine numerische Wertes d.h 
de Wer ohn Vorzeichen

     ABS (na)\ nk\ nv                  50 LET X = ABS(X-Y)
-----------------------------------------------------------------
     ACS       arcus Cosinus                              EX SS+W

ACӠ berechne de Wer eine Winkel au seine Cosinus Da 
Argumen dar zwische - un + liegen AC ergib de Wer de 
Winkel i Rad De Wer i Gra erhael ma durc Multiplikatio 
mi 180/PI.

     ACS (na)\ nk\ nv                  70 PRINT 180*PI*ACS(X*Y)
-----------------------------------------------------------------
     AND       Logisches AND                                 SS+Y

AN dien al Boolsche Operato u di Richtigkei eine Kombi
natio vo Bedingunge z testen Nu wen all Bedingunge 
erfuell sind wir di nac THE stehend Anweisun ausgefuehrt 
Is auc nu ein Bedingun 'falsch' wir zu folgende Befeh 
uebergegangen E is z beachten das be Kombinatio vo num 
Werte de Befeh AN nich i Uebereinstimmun mi de stan
dardmaessige Wahrheitstabelle ist.

     bd AND bd\ na AND na\ sa AND na    20 LET AS = BS AND Z
                                                |    |
-----------------------------------------------------------------
     ASN       arcus Sinus                                EX SS+Q

AS berechne de Wer eine Winkel au seine Sinus Di Anwen
dun erfolg analo de Befeh ACS.
-----------------------------------------------------------------
     AT                                                      SS+I

Erklaerungen siehe bei INPUT, LPRINT und PRINT.
-----------------------------------------------------------------
     ATN       arcus Tangens                              EX SS+E

ATΠ berechne de Wer eine Winkel au seine Tangens Di 
Anwendun erfolg analo de Befeh ACS.
-----------------------------------------------------------------
.Pa
.Fo****** ZX-BASIC ***************************  ATTR  bis  CAT  ***
-----------------------------------------------------------------
     ATTR      attribute                                  EX SS+L

ATTҠ ergib di Attribut (INK-Farbe PAPER-Farbe Helligkeit 
Blinken eine bestimmte Zeichenpositio (Angab al Argumen 
vert./hor. au de Bildschirm ATT kan ein Zah zwische  
un 25 ( Bit sein di sic wi folg zusammensetzt:
               INK-Farbe:     Bit 0 ... 2
               PAPER-Farbe:   Bit 3 ... 5
               BRIGHT:        Bit 6
               Blinken:       Bit 7

     ATTR(na,na)                       50 PRINT ATTR(V,H)
-----------------------------------------------------------------
     BEEP                                                 EX SS+Z

Erzeug i Lautspreche eine To vo gegebene Laeng un Hoehe 
Da erst Argumen definier di Tondaue i Sekunde (0...10) 
De zweit Wer gib di Tonhoeh i Halbtonschritte bezoge au 
da mittler "c an De Bereic reich vo -6 bi +69.

     BEEP na,na                        40 BEEP X,Y
-----------------------------------------------------------------
     BIN       binary number                                 EX B

BIΠ verwandel ein Binaerzah i di entsprechend Dezimalzahl 
Die wandelbare Binaerzahl kann max. 16 Stellen umfassen.

     BIN [1][0]                        20 PRINT BIN 11111110
-----------------------------------------------------------------
     BORDER                                                     B

BORDEҠ bestimm di Farb de Umrandun au de Bildschirm De 
Zahlenwer hinte BORDE wir au di naechst ganz Zah gerun
de un bestimm di Farb wi folgt:
     0  schwarz       1  blau          2  rot
     3  violett       4  gruen         5  hellblau
     6  gelb          7  weiss         
I Gegensat z IN un PAPE kan BORDE nich i ein PRINT-
Anweisun eingefueg werden.

     BORDER ia                         BORDER X+Y
-----------------------------------------------------------------
     BRIGHT                                               EX SS+B

BRIGHԠ fuehr dazu das Zeiche helle al gewoehnlic darge
stell werden De Wer nac BRIGH kan entwede "0" "1 ode 
"8 sein "BRIGH 1 ergib fue all folgende Zeiche heller 
Schrif au hellere Hintergrund de Wer "8 fuehr dazu das 
heller Zeichenpositione hel bleibe un "BRIGHԠ 0 erzeug 
wiede de Normalzustand Be Einbindun i eine PRINT- PLOT- 
DRAW- ode CIRCLE-Befeh is di Wirkun vo BRIGH au diese 
Befeh lokalisiert.

     BRIGHT ia [;]                     50 PRINT BRIGHT 1;"Ende"
-----------------------------------------------------------------
     CAT       Microdrive-Befehl                             EX U
-----------------------------------------------------------------
.Pa
.Fo****** ZX-BASIC **************************  CHR$  bis  COPY  ***
-----------------------------------------------------------------
     CHRS      character string                              EX U
        |

De Zeichensat besteh au de au de Tastatu zu Verfuegun 
stehende Zeiche plu Steuerzeiche plu benutzerdefiniert 
Zeichen Durc CHRӠ un eine Codezah kan jede Zeiche al 
                    |
Strin erhalte werden.

     CHRS (ia)\ ik\ iv [;][+]          40 PRINT CHRS 22+"ZX-85"
        |                                          |
-----------------------------------------------------------------
     CIRCLE    Kreis                                      EX SS+H

CIRCLŠ zeichne eine Krei au de Bildschirm Dabe sin al 
Argument di Horizontal- un Vertikalkoordinate de Mittelpunk
te sowi de Kreisradiu auzugebe (X  un  sin Pixelkoordi
naten X=0...255 Y=0...175) De Befeh dar eingeschoben Farb
statement enthalten.

     CIRCLE [st;]ia,ia,ia              80 CIRCLE X+1,Y+2,Z+5
-----------------------------------------------------------------
     CLEAR                                                      X

De Befeh CLEA loesch all Variablenwerte realisier CLS 
RESTORŠ un setz RAMTO zurueck Ein Adress nac CLEA setz 
RAMTOР au diese Wert D NE de Speiche nu bi RAMTO 
loescht kan ei Speicherrau definier werden de durc NE 
nich beeinfluss wird.

     CLEAR [na]                        CLEAR 65267
-----------------------------------------------------------------
     CLOSE#    Microdrive-Befehl                             EX 5
-----------------------------------------------------------------
     CLS       clear screen                                     V

CLS loescht den gesamten Displaybereich des Bilschirms.

     CLS
-----------------------------------------------------------------
     CODE                                                    EX I

CODŠ liefer di Codenumme de erste Zeichen i String Wen 
ei Nullstrin vorlieg ("") liefer COD de Wer "0".

     CODE (sa)\ sk\ sv                 20 PRINT CODE AS
                                                      |
-----------------------------------------------------------------
     CONT      continue                                         C

Wen ei Program anhael bzw unterbroche wurde kan e mi 
CONT(INUE fortgesetz werden Vorhe koenne eventuell Fehle 
korrigier werden.

     CONTINUE
-----------------------------------------------------------------
     COPY                                                       Z

Befeh i Verbindun mi de Drucker Erzeug ein Kopi de 
Bildschirms.

     COPY
-----------------------------------------------------------------
.Pa
.Fo****** ZX-BASIC ***************************  COS  bis  DRAW  ***
..
-----------------------------------------------------------------
     COS       Cosinus                                       EX W

COS liefert den Cosinus eines Winkels in Bogenmass.

     COS (na)\nk\nv                    10 PRINT COS(60*PI/180)
-----------------------------------------------------------------
     DATA                                                    EX D

DAT bilde ein List vo Date innerhal eine Programms Di 
einzelne Element koenne sowoh Zahlenwert al auc String 
sein jede Elemen wir durc ein READ-Anweisun eine Varable 
zugeordnet DATA-Anweisunge koenne a beliebige Stell i 
Programm stehen.

     DATA na[,na][,sa]                 30 DATA 31,"Jan",28,"Feb",
     DATA sa[,na][,sa]
-----------------------------------------------------------------
     DEF FN    define function                            EX SS+1

Durc DE F kan de Nutze ein Funktio definieren di nich 
al Schluesselwor zu Verfuegun steht Sowoh de Funktionsnam 
(z.B R al auc di Variable duerfe nu einzeln Buchstabe 
sein E wir nich zwische Gross- un Kleinschreibun unter
schieden.

     DEF FN x([x][,x])=na              20 DEF FN R(X,Y)=SQR(X/Y)
     DEF FN xS([xS][,x][,x][,xS])=sa
             |   |            |
-----------------------------------------------------------------
     DIM       dimension                                        D

DI dien zu Definitio vo Felder innerhal eine Programmes 
Di Indizierun laef vo  bi einschliesslic de angegebene 
Parameter De a weiteste recht stehend Paramete gib be 
String-Felder di String-Laeng an Stimme String nich mi 
de definierte Laeng ueberein werde di Element entwede bi 
zu End mi Leerzeiche aufgefuell (Strin kuerzer ode au 
di definiert Laeng abgeschnitte (Strin z lang).

     DIM x([na,]na)                    30 DIM Z(5,K+I)
     DIM xS([na,][na,]na)              40 DIM AS(C-D,10,F)
          |                                    |
-----------------------------------------------------------------
     DRAW                                                       W

DRA wir zu Zeichne vo Gerade un Kurve au de Bildschir 
verwendet Normalerweis wir ein  Lini ausgehen vo de durc 
vorherig PLOT- ode DRAW- Anweisunge erreichte Positio mi 
de i Argumen de Anweisun angegebene Schrittweite (hor. 
vert. gezeichnet Is de Anfangspunk noc nich definiert 
beginn di Gerad be de Positio "0,0" De Abstandskoordina
te (X,Y kan ei dritte Wer folgen de de Winke i Ra 
definiert de di Kurv al Kreislini durchlaeuft Di Kurv 
laeuf nac link be  positive un nac recht be  negative 
Argument.

     DRAW [st;]ia,ia[,ia]              20 DRAW X,Y
                                       30 DRAW X,Y,Z
-----------------------------------------------------------------
.Pa
.Fo****** ZX-BASIC ***********************  ERASE  bis  GO SUB  ***
..
-----------------------------------------------------------------
     ERASE     Microdrive-Befehl                          EX SS+7
-----------------------------------------------------------------
     EXP       Exponent                                      EX X

EX is ein mathematisch Funktio un liefer de Exponential
wer zu Basi "e".

     EXP (na)\ nk\ nv                  20 LET A=EXP(2*B*C+D*E)
-----------------------------------------------------------------
     FLASH                                                EX SS+V

FLASȠ fuehr dazu das Zeichenpositione blinken wobe sic 
PAPER- un INK-Farb abwechseln Paramete "1 bewirkt das all 
danac mi PRIN ode INPU angezeigte Zeiche blinken Parame
te "8 sorg dafuer das blinkend Zeichenpositione weiter
blinke un normal Positione norma bleiben "FLAS 0 loesch 
sowoh "FLASȠ 1 al auc "FLAS 8" FLAS kan auc i de 
Anweisunge PRINT INPUT PLOT DRA un CIRCL verwende werden.

     FLASH ia[;]                       20 PRINT FLASH 1;"Stop"
-----------------------------------------------------------------
     FN        function                                   EX SS+2

FΠ ruf ein mi DE F gewaehlt Funktio auf Sin kein 
Paramete z uebergeben muesse trotzde Klammer geschriebe 
werden Di Funktio benutz dan di gegenwaerti砠 ihre 
Variable zugeordnete Werte

     FN x([na][,na])                   20 LET X=FN R(A,B)
     FN xS([sa][,na][,na][,sa])        30 LET Y=FN S()
         |                                         |
-----------------------------------------------------------------
     FOR       Programmschleife                                 F

FO wir imme i Verbindun mi de Schluesselwoerter TO NEX 
un STE verwendet E werde hiermi Programmschleife organi
siert di entsprechen de Parameter nac FOR TϠ un STE 
durchlaufe werden De Abschlus bilde stet di Anweisun 
NEXT Di Steuervariabl dar nu au eine Buchstabe bestehen 
e besteh kei Unterschie zwische Gross- un Kleinschreibung 
Be Aufru de FOR NEXT-Schleif werde Variabl gleiche Namen 
geloescht De Paramete nac STE gib di Schrittweit a un 
kan auc negati sein Wir STE nich angegebe erhoeh sic 
di Steuervariabl be jede Durchlau u eins FOR NEXT-Anwei
sunge koenne beliebi ineinande verschachtel werden dabe 
mus di Reihenfolg de Steuervariable i de NEXT-Anweisun 
umgekehr z de i de FOR-Anweisun sein.

     FOR x=na TO na [STEP na]          40 FOR B=2*A TO 1 STEP -2
-----------------------------------------------------------------
     FORMAT    Microdrive-Befehl                          EX SS+0
-----------------------------------------------------------------
     GO SUB    Unterprogramm-Aufruf                             H

GO SU bewirk de Sprun z eine Unterprogramm da stet mi 
RETUR abgeschlosse sei muss Unterprogramm koenne beliebi 
of ineinande verschachtel werden.

     GO SUB ia                         25 GO SUB X-A
-----------------------------------------------------------------
.Pa
.Fo****** ZX-BASIC ************************  GO TO  bis  INPUT  ***
..
-----------------------------------------------------------------
     GO TO     Unbedingter Sprung                               G

Mi G T geh da Program z de i de Anweisun angegebene 
Zeilennumme un arbeite dor weiter Is dies nich vorhanden 
beginn di Fortsetzun de Programmabarbeitun be de naechst
hoehere vorhandene Zeilennummer.

     GO TO ia                          15 GO TO Y+B
-----------------------------------------------------------------
     IF        Bedingte Programmabarbeitung                     U

Di Anweisun I wir imme i Verbindun mi de Schluesselwor 
THE benutzt u di Entscheidun herbeizufuehren o bestimmt 
weiter Anweisunge ausgefuehr werde ode nicht Be erfuellte 
Bedingun wir de nac THE folgend Programmtei abgearbeitet 
sons erfolg di Fortsetzun i de naechste Programmzeile.

     IF bd THEN st[:st]                10 IF AS="NO" THEN  STOP
                                              |
     IF na THEN st[:st]                20 IF A+B=W THEN LET A=A+B
-----------------------------------------------------------------
     IN        Port-Eingabe                               EX SS+I

I gefolg vo eine Adress zwissche  un 6553 lies ei Byt 
ein sofer di angegeben Adress ein Port-Adress ist.

     IN (na)\ nk\ nv                   IN Port
-----------------------------------------------------------------
     INK       Farbsteuerung                              EX SS+X

IN bestimm di Farbe i de di Zeiche angezeigt Linie un 
Kurve gezeichne werden Solle all Zeiche einheitlic sein 
dan mus IN allei stehen Is de Befeh Bestandtei eine 
PRINT- INPUT- PLOT- DRAW- ode CIRCLE-Anweisung bezieh e 
sic nu au diese. Der Parameter hat dabei folgende Bedeutung:
     0 schwarz        1 blau           2 rot
     3 violett        4 gruen          5 hellblau
     6 gelb           7 weiss          8 transparent
     9 kontrastierendes schwarz oder weiss.

     INK ia[;]                         10 INK X
-----------------------------------------------------------------
     INKEYS                                                 EX N
          |

INKEY wir daz benutzt u be laufende Program ein Tasta
     |
tureingab festzustellen Wir kein Tast gedrueckt liefer 
INKEYS einen Leerstring, andernfalls das eingegebene Zeichen.
     |

     INKEYS
          |
-----------------------------------------------------------------
     INPUT     Tastatureingabe                                  I

INPU erlaub di Anforderun vo Date innerhal eine laufende 
Programms Di Anweisun kan i vielfache Weis benutz werden 
I de einfachste For werde ein Zah ode ei Strin i 
Eingabefel angefordert Sol di Eingab a andere Stell al 
i Eingabefel erfolge is mi de Anweisun A z arbeiten Al 
Paramete sin di Zeichenzeil (0...21 un -spalt (0...31 
anzugeben Normalerweis erzeug INPU be eine Stringvariable 
au de Displa zwe Anfuehrungszeichen zwische dene di Ein
gab erfolgt U di Anfuehrungsstrich z unterdruecke kan INPU zusamme mi LIN verwende werden. Siehe auch PRINT.

     INPUT [AT ia,ia;][st;][sk.][(sa).][(na).] nv\sv
     INPUT [AT ia,ia;][st;][sk.][(sa).][(na).] LINE sv

  7 INPU A 10,4;"Name:";N,"Name:";LIN MS'INK 2;"?";A(1)
                            |               |
-----------------------------------------------------------------
.Fo****** ZX-BASIC **************************  INT  bis  LLIST  ***
..
     INT       integer                                       EX R

INԠ liefer de ganzzahlige Tei eine beliebige gebrochene 
Zahl d.h e wir nu de Tei vo de Komm verwende bzw e 
wir stet abgerundet.

     INT (na)\ nk\ nv                  35 PRINT INT A
-----------------------------------------------------------------
     INVERSE                                              EX SS+M

INVERS fuehr dazu das a Zeichenpositione di Farbe vo IN 
un PAPE miteinande vertausch werden De nachfolgend Parame
te kan di Wert  ode  annehmen "1 bedeute Vertauschun 
"0 dere Aufhebung INVERS kan i ander Anweisunge eingebet
te werden Wir "INVERS 1 i Verbindun mi CIRCLE PLO ode 
DRAנ verwendet werde di Anweisunge i PAPER-Farb ausge
fuehrt d.h di angesprochene Pixe verschwinde vo Bild
schirm.

     INVERSE ia                        INVERSE X
-----------------------------------------------------------------
     LEN       length of string                              EX K

LEN ergibt die Anzahl Zeichen eines Strings.

     LEN (sa)\ sk\ sv                  20 LET X= LEN AS
                                                      |
-----------------------------------------------------------------
     LET       Wertzuweisung                                    L

LE wir verwendet u eine Variable eine Wer zuzuweisen I 
Gegensat z viele andere BASIC-Versione dar da Schluessel
wor LET nich weggelasse werden.

     LE nv=na LE sv=s              4 LE A=B+C:LE AS=BS+CS
                                                         |  |  |
-----------------------------------------------------------------
     LINE                                                 EX SS+3

Siehe INPUT oder SAVE.
-----------------------------------------------------------------
     LIST                                                       K

LISԠ erzeug ei Listin de sic gegenwaerti i Speiche be
findliche Programms LIS ohn Paramete schreib de Bildschir 
voll beginnen be de niedrigste Zeilennummer Danac frag 
de Compute "scroll?" Nac Druecke eine beliebige Tast 
ausse N SPACE BREA ode STO roll de Bildschir seitenweis 
hoc bi de gesamt Tex dargestell ist LIS gefolg vo eine 
Zeilennumme laess da Listin ers a diese Zeil beginnen.

     LIST [ia]                         LIST 20
-----------------------------------------------------------------
     LLIST     Drucker-Befehl                                EX V
-----------------------------------------------------------------
.Pa
.Fo****** ZX-BASIC **************************  LN  bis  LPRINT  ***
..
-----------------------------------------------------------------
     LN        logarithmus naturalis                         EX Z

L liefer de natuerliche Logarithmu de Argument (stet >0.

     LN (na)\ nk\ nv                   25 LET X=LN (Y*Z)
-----------------------------------------------------------------
     LOAD      Programm von Kassette lesen                      J

LOAĠ wir normalerweis al direkte Befeh zu Lade eine 
Programm vo de Kassett verwendet E kan abe auc innerhal 
eine Programm angewende werden Nac LOA folg i Anfueh
rungsstriche ei Dateiname de ei Stringwer au bi z 1 
Zeiche ist Be de Ausfuehrun werde zunaechs all i Rechne 
befindliche Programm un Variable geloescht da angefordert 
Program au de Ban gesuch un geladen I Befeh LOAĠ wir 
zwische Gross- un Kleinbuchstabe unterschieden Steh nac 
LOAĠ ei Nullstrin ("") wir da erst komplett Program 
geladen da de Rechne au de Ban findet LOA mi eine 
falsche (au de Ban nich vorhandenen Filename ergib da 
Inhaltsverzeichni de Kassett au de Bilschirm.

     LOAD sa                           LOAD "filename"
-----------------------------------------------------------------
     LOAD CODE                                             J EX I

De Befeh LOA COD dien zu Lade vo Maschinenprogramme ode 
Binaerdaten Di i Befeh LOA beschriebene Einschraenkunge 
bezueglic de Progammnamen gelte auc hier Di Paramete sin 
Adress un Anzah de Byte (optional).

     LOAD sa CODE ia[,ia]              LOAD CODE 16384,6912
-----------------------------------------------------------------
     LOAD DATA                                             J EX D

LOA DAT wir daz verwendet u Date vo Felder vo Ban z 
laden Fue ein fehlerfrei Arbei sin a End leer Klammer 
erforderlich Be de Ausfuehrun wir da angefordert Fel au 
de Ban gesucht Is e gefunde erschein au de Bildschir 
di Nachrich "Numbe array: ode "Characte array: gefolg vo 
Name un da Fel wir geladen All Felde gleiche Namen 
werde i Rechne vorhe geloescht E is z beachten das bei 
Einlese vo String-Felder jed i Rechne befindlich String-
Variabl gleiche Namen ebenfall geloesch werden.

     LOAD sa DATA x[S]()               280 LOAD "NAmen" DATA MS()
                    |                                         |
-----------------------------------------------------------------
     LOAD SCREENS                                          J EX K
                |

LOA  SCREEN  ermoeglich es ei  Bildschirmdispla  direk vo 
            |
Ban z laden Siehe LOAD.

     LOAD sa SCREENS                   100 LOAD "Bild" SCREENS
                   |                                         |
-----------------------------------------------------------------
     LPRINT                                                  EX C

Befeh i Verbindun mi de Drucker Laeuf paralle zu Dis
play.

     LPRINT [TAB ia;][AT ia,ia;][CHRS (ia);][st;][na.][sa.]
                                    |
-----------------------------------------------------------------
.Fo****** ZX-BASIC **************************  MERGE  bis  OUT  ***
..
-----------------------------------------------------------------
     MERGE     Programm nachladen                         EX SS+T

MERGŠ ermoeglich es ei zweite Program i de Rechne z 
lade ohn da bereit i Rechne befindlich z zerstoeren 
Allerding ueberschreibe eingelesen Zeile di scho i Rechne 
befindliche mi gleiche Zeilennummer Variable gleiche Namen 
werde ebenfall geloescht.

     MERGE sa                          MERGE "Nachladen"
-----------------------------------------------------------------
     MOVE      Microdrive-Befehl                          EX SS+6
-----------------------------------------------------------------
     NEW       Loeschbefehl                                     A

NEנ loesch de BASIC-Speicherbereic bi RAMTOP Eventuell 
benutzergewaehlt Grafi bleib oberhal vo RAMTOР unbeein
flusst.

     NEW
-----------------------------------------------------------------
     NEXT      Programmschleife                                 N

Siehe unter FOR.

     NEXT x                            NEXT Z
-----------------------------------------------------------------
     NOT       Negation                                      SS+S

NO wir verwende u di Wahrhei eine Bedingun umzukehren E 
is z beachten das di Bedingun i Klammer stehe muss 
fall si AN ode O enthaelt Folg NO ei numerische Wert 
ergib sic "0" wen de Wer nich Nul is un umgekehrt.

     NOT bd\ NOT na                    90 LET B=NOT A
-----------------------------------------------------------------
     OPEN#     Microdrive-Befehl                             EX 4
-----------------------------------------------------------------
     OR        Logisches ODER                                SS+U

O dien al Boolsche Operato u di Wahrhei eine Kombinatio 
vo Bedingunge z testen Sin ein ode mehrer Bedingunge 
wahr s is auc di Gesamtbedingun wahr O dien ausserde 
zu Durchfuehrun vo binaere Operatione a zwe numerische 
Werten E is z beachten das da BASI be numerische Werte 
nich i Uebereinstimmun mi standardmaessige Wahrheitstabelle 
arbeitet.

     bd OR bd\ na OR na                10 IF A=C OR A=D THEN ...
-----------------------------------------------------------------
     OUT       Port-Ausgabe                               EX SS+O

OUԠ sende ei Byt a ein angegeben Port-Adresse De Befeh 
folge zwe Parameter wobe de erst di Portadress zwische  
un 6553 angib un de zweit de auszugebende Wer darstell 
(0...255). Siehe auch IN.

     OUT ia,ia                         OUT Port,A
-----------------------------------------------------------------
.Pa
.Fo****** ZX-BASIC **************************  OVER  bis  PLOT  ***
..
-----------------------------------------------------------------
     OVER      Zeichen ueberlagern                        EX SS+N

OVEҠ wir daz benutzt Zeiche einande z ueberlagern OVE 
folg ei Parameter de "0 ode "1 sei kann "OVE 0 is de 
Standardzustand Hierbe wir bei Schreibe ei vorhandene 
Zeiche geloesch un durc ei andere ersetzt "OVE 1 fuehr 
zu Kombinatio beide Zeichen OVE kan auc mi PLOT CIRCL 
un DRA angewende werden A Kreuzungspunk zweie Kurve er
gib sic dan PAPER-Farbe Da Zeichne vo Kurve nochmal a 
de gleiche Stell mi "OVE 1 loesch di Kurve.

     OVER ia                60 PRINT AT 2,5;"A";OVER 1;AT 2,5;"""
-----------------------------------------------------------------
     PAPER     Farbsteuerung                              EX SS+C

PAPEҠ wir verwendet u di Hintergrundfarb fue da Bild
schirmdispla z waehlen De Paramete kan zwische  un  
liegen Sieh unte INK.

     PAPER ia[;]                       90 PAPER A+B
-----------------------------------------------------------------
     PAUSE                                                      M

PAUS kan verwende werden u ei Program fue bestimmt ode 
unbestimmt Zei anzuhalten PAUS folg ei Paramete zwische  
un 65535 E definier di Verzoegerun i 1/50-ste Sekunden 
Di PAUS kan durc Anschlage eine Tast unterbroche werden 
"PAUSŠ 0 ergib ein unbegrenzt Unterbrechung di andauert 
bi ein Tast angeschlage wird.

     PAUSE ia                          120 PAUSE 100 : REM 2 sec.
-----------------------------------------------------------------
     PEEK      Speicherzelle lesen                           EX O

PEEˠ liefer de Wer eine Speicherinhaltes PEEˠ folg al 
Paramete ein Adress zwische  un 65535.

     PEEK (ia)\ ik\ iv                 120 LET X=PEEK Adr1
-----------------------------------------------------------------
     PI        Kreiskonstante "Pi"                           EX M

PI liefert den Wert "3.1415927" zur Verwendung in Berechungen.
-----------------------------------------------------------------
     PLOT      Grafik-Befehl                                    Q

PLOԠ is ein Anweisun fue hochaufloesend Grafik u eine 
Punk a ein bestimmt Stell au de Bildschir z setzen Al 
Paramete sin di Horizontal- (X 0...255 un Vertikalkoordina
te (Y 0...175 anzugeben De gesetzt Punk erschein i de 
aktuelle INK-Farbe Nac "OVE 1 wir ei bestehende Punk a 
derselbe Stell i di PAPER-Farb umgewandelt nac "INVERS 1 
wir de Punk i de bestehende PAPER-Farb geplottet Nac 
"BRIGH 1 ode "FLAS 1 is di gesamt Zeichenposition i de 
da Pixe gesetz ist entwede hel ode blinkt.

     PLOT [st;]ia,ia                   60 PLOT INK 2;X,Y
-----------------------------------------------------------------
.Pa
.Fo****** ZX-BASIC *************************  POINT  bis  READ  ***
..
-----------------------------------------------------------------
     POINT                                                EX SS+8

POIN wir daz benutzt u festzustelle o ei Pixe a eine 
bestimmte Positio INK- ode PAPER-Farb hat Al Paramete sin 
di Horizontal- (0...255 un Vertikalkoordinate (0...175 anzu
geben POINԠ liefer de Wer "1" wen a de betreffende 
Stell INK-Farb herrsch un "0 be PAPER-Farbe.

     POINT(ia,ia)                      40 LET Z=POINT(X,Y)
-----------------------------------------------------------------
     POKE      Speicherzelle schreiben                          O

POKŠ wir verwendet u ei Byt a ein bestimmt Adress i 
Speiche z schreiben POK folge zwe Parameter de erst gib 
di Zieladress an de zweit da Byt selbst.

     POKE ia,ia                        20 POKE Pip,255
-----------------------------------------------------------------
     PRINT                                                      P

PRIN stell Date au de Bildschir dar De Befeh kan wei
ter Schluesselwort enthalten u Farb un Positio z definie
ren wi CHRS TAB AT INK PAPER FLASH BRIGHT INVERS un 
             |
OVER Si koenne beliebi eingefueg werden d si durc Semi
kolo begrenz werden Di Date koenne sowoh Zahle al auc 
String sein Mehrer Date i eine PRINT-Anweisun muesse 
durc Semikolon Komm ode Apostrop voneinande getrenn wer
den PRIN gefolg vo Daten di durc Semikolo getrenn sin 
zeig di Date nebeneinande ohn Zwischenraum Ein Trennun 
de Date durc Komm erzeug eine automatische 16-stellige 
Tabulator de di Date entwede a Zeilenanfan ode i de 
Mitt erscheine laesst PRIN mi Apostrop schreib di Date 
untereinander wei de Apostrop ei NEWLINŠ einschiebt Da 
Schluesselwor TA bilde eine Tabulator Di Zah hinte TA 
wir durc 3 geteil un de Res i de gleiche ode naechste 
Zeil al Spaltenposition ausgegeben. Siehe auch INPUT.

     PRINT [TAB ia;][AT ia,ia;][CHRS (ia);][st;][na.][sa.]
                                   |
     20 PRINT AT 1,5;"V.H.";TAB X;AS'"Ende von PRINT"
                                   |
-----------------------------------------------------------------
     RAND      randomize                                        T

RANĠ wir i Verbindun mi RN benutzt u Folge vo Zufalls
zahle z erzeugen De Paramete kan zwische  un 6553 
liegen Ei Wer ungleic Nul setz di Systemvariabl SEE au 
diese Wert de vo RN benutz wird Fehlende Paramete ode 
Paramete gleic Nul fuehre dazu das di Systemzell SEE mi 
de Systemzell FRAME gelade wird Dies Zell zaehl a de 
Einschaltmomen de Rechner di Anzah de Einzelbilde au de 
Bildschirm D FRAME sic 5 Ma i de Sekund aendert ergib 
sic ein gut Zufaelligkeit.

     RAND [ia]                         10 RAND 10
-----------------------------------------------------------------
     READ                                                    EX A

REAĠ wir i Verbindun mi DAT benutzt u Variable Wert 
zuzuordnen Au de DATA-List wir fortlaufen ausgelesen d.h 
be mehrere voneinande unabhaengige READ-Anweisunge wir 
jede Elemen de DATA-List nu einma gelesen sofer de DATA-Zeige nich durc RESTOR verstell wurd (sieh dort).

     REA sv[,nv][,sv                 4 REA M(1),MS(1),M(2),..
                                                     |
-----------------------------------------------------------------
.Fo****** ZX-BASIC ***************************  REM  bis  SAVE  ***
..
     REM       remark                                           E

RE wir daz verwendet u Kommentar i da Program einzufue
gen Dies Kommentar erscheine nu i Listin un werde vo 
Program uebergangen.

     REM text...                       20 REM Anmerkungen
-----------------------------------------------------------------
     RESTORE                                                 EX S

RESTOR wir i Verbindun mi REA un DAT verwende un dien 
daz de be REA erwaehnte Zeige z verstellen Al Paramete 
kan di Zeilennumme de betreffende DATA-Anweisun angegebe 
werden sofer mehrer DATA-Anweisunge i Program enthalte 
sind Sons wir di erst i Program vorkommend DATA-Anweisun 
behandelt De DATA-Zeige wir au de erste Wer gestellt.

     RESTORE [ia]                      30 RESTORE 800
-----------------------------------------------------------------
     RETURN                                                     Y

RETURΠ schliess ei Unterprogram a un gib de Programmlau 
wiede a da Hauptprogram ode ei vorhergehende Unterprogram 
zurueck.

     RETURN
-----------------------------------------------------------------
     RND       random number                                 EX T

RN wir zu Erzeugun eine Zufallszah verwendet Di Funktio 
liefer eine Wer  <   1 Nac Neustar liefer RNĠ imme 
wiede di gleich zufaellig Sequenz Zu Erzeugun eine ande
re Sequen vo Zufallszahle mus RAN vo RN benutz werden 

     RND                               140 Z=INT (RND*X+0.5)
-----------------------------------------------------------------
     RUN       Programmstart                                    R

RUΠ realisier de Programmstart Ohn Paramete erfolg de 
Star a de erste Programmzeile Be Angab eine Zeilennumme 
erfolg di Programmabarbeitun a diese bzw de naechste 
vorhandenen.

     RUN [ia]                          RUN 50
-----------------------------------------------------------------
     SAVE      Programm auf Kassette speichern                  S

Mi de Anweisun SAV werde Programm au da Kassettengerae 
ausgegeben Al Paramete mus SAV ei Programmname au maxima 
1 Zeiche nachgestell werden De Nam is i Anfuehrungszei
che einzuschliessen e wir zwische Gross- un Kleinbuchstabe 
unterschieden Be de Ausfuehrun erschein di Systemnachrich 
"Star tape the pres an key" Nac Betaetige eine beliebi
ge Tast wir di Auslagerun de Programm vorgenommen
Sol sic ei gespeicherte Program nac de Lade selbs star
ten mus SAVŠ i Verbindun mi LINŠ verwende werden De Programmlau beginn a de nac LIN angegebene Zeilennumme 
bzw de naechste vorhandenen.

     SAVE sa [LINE ia]                 20 SAVE "Programm" LINE 10
-----------------------------------------------------------------
.Fo****** ZX-BASIC **********************  SAVE CODE  bis  SQR  ***
..
     SAVE CODE                                             S EX I

Diese Befeh dien zu Abspeicherun vo Programme ode Date 
i Maschinencode Al Paramete sin nac COD di Speicheradres
s de erste Byt un di Anzah de Byte anzugeben.

     SAVE sa CODE ia,ia                SAVE "scr" CODE 16384,6912
-----------------------------------------------------------------
     SAVE DATA                                             S EX D

Di Anweisun SAV DAT dien zu Speicherun vo Datenfeldern 
De Paramete nac DAT is de Nam de Felde i Programm da 
gespeicher werde soll. Weitere Informationen siehe LOAD DATA.

     SAVA sa DATA x[S]()               460 SAVE "NAmen" DATA MS()
                    |                                         |
-----------------------------------------------------------------
     SAV SCREENS                                        E SS+K
                |

Di Anweisun SAV SCREEN speicher de aktuelle Bildschirmin
                          |
hal au Kassette.

     SAVE sa SCREENS                   SAVE "Display" SCREENS
                   |                                        |
-----------------------------------------------------------------
     SCREENS                                              EX SS+K
           |

SCREEN finde heraus welche Zeiche a eine bestimme Bild
      |
schirmpositio steht SCREEN folge zwe numerisch Werte di 
                             |
di Horizontal- (0...31 un Vertikalkoordinate (0...21 de 
gesuchte Zeichen darstellen SCREEN liefer dan diese Zei
                                       |
che al String-Konstante Is a diese Stell kei Zeiche 
vorhanden wir ei Nullstrin erzeugt.

     SCREENS (ia,ia)              160 IF SCREENS(H,V)="" THEN ...
           |                                   |
-----------------------------------------------------------------
     SGN       Signum                                        EX F

SG gib an o ein Zah positi ode negati ist Da Ergebni 
is "1" wen di untersucht Zah positiv "-1" wen si nega
ti un "0" wen si Nul ist.

     SGN (na)\ nk\ nv                  50 LET X= SGN Y
-----------------------------------------------------------------
     SIN       Sinus                                         EX Q

SIΠ ergib de Sinu eine Winkels Da Argumen mus i Bogen
mas angegebe werden.

     SIN (na)\ nk\ nv                  60 LET X=SIN Y
-----------------------------------------------------------------
     SQR       Square root, Quadratwurzel                    EX H

SQR liefert die Quadratwurzel eines Arguments, stets >0.

     SQR (na)\ nk\ nv                  70 LET A=SQR (B-C)
-----------------------------------------------------------------
.Pa
.Fo****** ZX-BASIC ***************************  STEP  bis  USR  ***
..
-----------------------------------------------------------------
     STEP      Schrittweite                                  SS+D

Siehe unter FOR.
-----------------------------------------------------------------
     STOP                                                    SS+A

Dies Anweisun stopp ei Programm Fall nac eine Hauptpro
gram weiter Unterprogrammzeile folgen is e erforderlich 
das de Hauptprogram mi STO endet.

     STOP
-----------------------------------------------------------------
     STRS      Stringverarbeitung                            EX Y
        |

Diese Befeh wandel numerisch Wert i entsprechend String 
um

     STR (na) nk n                 9 LE AӽSTR 65:REM "65"
        |                                      |    |
-----------------------------------------------------------------
     TAB       Tabulator                                     EX P

Siehe unter PRINT, LPRINT.
-----------------------------------------------------------------
     TAN       Tangens                                       EX E

TAN ergibt den Tangens eines Winkels in Bogenmass.

     TAN (na)\ nk\ nv                  30 LET Y=TAN (X+Y)
-----------------------------------------------------------------
     THEN                                                    SS+G

Siehe unter IF.
-----------------------------------------------------------------
     TO                                                      SS+F

T wir i BASI au zwe verschieden Arte verwendet Einma i 
FOR/NEXT-Schleife (sieh unte FOR un zu andere bei Auftei
le vo String i kleiner Substring (string-slicing) Hie 
wir TϠ daz benutzt da erst un letzt Zeiche eine Sub
string innerhal eine Hauptstring z definieren Standardmaes
si ha de erst Paramete de Wer "1 un de zweit de Wert 
de de letzte Zeiche i Strin entspricht Solle di stan
dardmaessige Wert gelten entfaell dere Angab al Parameter.

     sa([na] TO [na])                  90 PRINT (DS+ES)(5 TO)
                                                  |  |
     sk([na] TO [na])                  70 PRINT "StRing"(3 TO 6)
     sv([na] TO [na])                  80 PRINT CS(TO 5)
                                                 |
-----------------------------------------------------------------
     USR       User-Subroutine                               EX L

USҠ wir benutzt u ein Maschinencode-Subroutin aufzurufen 
De nac US folgend Paramete is di Startadress de Maschi
nenprogramms Jed Anweisun mi US ruf da Unterprogram un 
US liefer de Wer de Inhalt de BC-Registerpaars U benut
zerdefiniert Grafi z erzeugen wir US i Verbindun mi POK 
verwendet De Anweisun US folg dan ei einzelne Buchstab 
vo  bi  unte de spaete da nutzerdefiniert Zeiche aufge
.Cp6
rufe werde kann Fue ei User-Grafikzeiche sin  Speicher
plaetz z fuellen.

     USR (ia)\ ik\ iv                  10 PRINT USR 65000
     USR sk\ sv                        50 POKE USR"K",255
-----------------------------------------------------------------
.Fo****** ZX-BASIC ********************  VAL  bis  VERIFY DATA  ***
..
     VAL       Value, Wert                                   EX J

VA wandel de Strin eine numerische Werte i ein Zah um 
De Strin kan auc eine Ausdruc enthalte (Formel) de 
entsprechen berechne wird.

     VAL sk\ sv                        50 PRINT VAL AS
                                                     |
-----------------------------------------------------------------
     VALS                                                 EX SS+J
        |

Dies Anweisun werte ein Stringvariable di eine Ausdruc 
enthael aus De Wer de Variable verlier sein Anfueh
rungsstriche Diese sic ergebende Stringausdruc "berechnet 
VAL un liefer de Wer al Stringkonstante.
   |

     VALS sv                           20 PRINT VALS AS
        |                                          |  |
-----------------------------------------------------------------
     VERIFY                                               EX SS+R

VERIF٠ ueberprueft o ei Program mi SAV richti au di 
Kassett gespeicher worde ist Be Ausfuehrun diese Anweisun 
werde di Date au de Kassett mi de Speicherinhal 
verglichen Is de Vergleic fehlerfre wir " OK 0:1 
ausgegeben Ansonste gelte di gleiche Bedingunge wi fue 
LOAD Ebens werde VERIF COD un VERIF DAT wi LOA COD un 
LOAD DATA verwendet, siehe dort.

     VERIFY sa                         VERIFY "DATeiName"
-----------------------------------------------------------------
     VERIF COD                                     E SS+ E I

Siehe unter VERIFY.

     VERIFY sa CODE [ia,ia]            VERIFY "Feld" CODE 13245
-----------------------------------------------------------------
     VERIFY DATA                                     EX SS+R EX D

Siehe unter VERIFY.

     VERIFY sa DATA x[S]()             VERIFY "Daten" DATA AS()
                      |                                     |
-----------------------------------------------------------------
.Pa
..-----#---!---------------------------------------!-------------
.He*****************************   5. Speicheraufteilung   *****  #
.Fo****** ZX-BASIC *********** ZX-BASIC *********** ZX-BASIC ******



      0  ========================================================
           BASIC-Interpreter                     |  ROM
  16348  ========================================================
           Displaydatei                          |  RAM
  22528  ----------------------------------------+
           Attribute                             |
  23296  ----------------------------------------+
           Druckerpuffer                         |
  2355  ----------------------------------------+
           Systemvariablen                       |
  23734  ----------------------------------------+
           Microdrive-Steuerung                  |
  CHANS  ----------------------------------------+
           Kanalinformation                      |
         ----------------------------------------+
           80H                                   |
   PROG  ----------------------------------------+
           BASIC-Programm                        |
   VARS  ----------------------------------------+
           Variablen                             |
         ----------------------------------------+
           80H                                   |
 E LINE  ----------------------------------------+
           Befehl oder Programmzeile, redigiert  |
         ----------------------------------------+
           NEWLINE                               |
         ----------------------------------------+
           80H                                   |
 WORKP  ----------------------------------------+
           INPUT-Daten                           |
         ----------------------------------------+
           NEWLINE                               |
         ----------------------------------------+
           zeitweiliger Arbeits-Speicher         |
 STKBOT  ----------------------------------------+
           Rechnerstapel                         |
 STKEND  ----------------------------------------+
           frei                                  |
     SP  ----------------------------------------+
           Maschinenstapel                       |
         ----------------------------------------+
           GO SUB - Stapel                       |
         ----------------------------------------+
           ?                                     |
 RAMTOP  ----------------------------------------+
           2EH                                   |
    UDG  ----------------------------------------+
           Nutzerdefinierte Grafik               |
 P-RAM  ========================================================
.Pa
..-----#--!---------!--------------------------------------------
.He********************************   6. Systemvariablen   *****  #



  23552   KSTATE    Verwendet beim Lesen der Tastatur.
  23560   LAST K    Speicher fuer letzten Tastencode.
  2356   REPDE    Zei i  1/50-ste Sekunden di ein Tast 
      gedrueck sei muss bevo si wiederhol 
(normal 35).
  2356   REPPE    Verzoegerun i  1/50-ste Sekunde zwische 
aufeinanderfolgende Tastenwiederholungen.
  23563   DEFADD    Adresse der Argumente fuer benutzerdefinierte
Funktionen sons 0.
  23565   K DATA    Speichert 2.Byte der Farbsteuerung bei Tasta-
tureingabe.
  23566   TVDATA    Speicher Farbbyte TA un A be Screen-
Ausgabe.
* 23568   STRMS     Adressen der Kanaele fuer Stroeme.
  23606   CHARS     Adresse des Zeichenvorrates minus 256.
  23608   RASP      Laenge des Warntones.
  23609   PIP       Laenge des Tastaturklickens.
  23610   ERR NR    Meldecode minus 1.
* 23611   FLAGS     Flags fuer BASIC-Steuerung.
* 23612   TVFLAG    Flags fuer TV-Steuerung.
* 23613   ERR SP    Stackpointer des Maschinenstapel fuer Fehler-
                    ruecksprung.
  2361   LIST S   Adress de  Ruecksprungadress be automati-
sche Listing.
  23617   MODE      Speicher des eingeschalteten Modus (Kursor).
  23618   NEWPPC    Zeile zu der gesprungen werden soll.
  2362   NSPP     Anweisungsnumme i  de  Zeile z dege-
   sprunge werde soll.
  23621   PPC       Aktuelle Anweisungsnummer.
  23623   SUBPPC    Aktuelle Anweisungsnummer in der Zeile.
  23624   BORDCR    Randfarbe *8, auch Attribute fuer Eingabezei-
                    len.
  23625   E PPC     Nummer der laufenden Zeile.
* 23627   VARS      Varablenadresse.
  23629   DEST      Adresse einer zugeteilten Variablen.
* 23631   CHANS     Adresse der Kanaldaten.
* 23633   CURCHL    Adresse fuer aktuelle I/O-Information.
* 23635   PROG      Adresse BASIC-Programm.
* 23637   NXTLIN    Adresse der folgenden BASIC-Zeile.
* 23639   DATADD    Adresse Begrenzer des letzten DATA-Postens.
* 23641   E LINE    Adresse des eingetippten Befehls.
  23643   K CUR     Kursoradresse.
  2364   CH AD    Adress  de  naechste z interpretierende
                    Zeichens.
  23647   X PTR     Adresse des Zeichens nach "?".
* 23649   WORKSP    Adresse des Arbeitsspeichers.
* 23651   STKBOT    Adresse Ende des Rechnerstapels.
* 23653   STKEND    Adresse Anfang des freien Speicherplatzes.
  23655   BREG      B-Register des Rechners.
  23656  MEM       Adress de Rechnerspeicherbereiches meis 
gleic MEMBOT.
.Pa



  23658   FLAGS2    Weitere Flags.
* 23659   DF SZ     Zeilenzahl der unteren Bildschirmhaelfte.
  23660   S TOP     Nummer der obersten Programmzeile bei automa-
                    tischem Listing.
  23662   OLDPPC    Zeilennummer, zu der CONT(INUE) springt.
  23664   OSPPC     Anweisungsnummer innerhalb der  Zeile, zu der
                    CONT(INUE) springt.
  23665   FLAGX     Verschiedene Flags.
  23666   STRLEN    Stringlaenge.
  23668   T ADDR    Adresse des naechsten Wertes in der Syntaxta-
                    belle.
  23670   SEED      Variable, die mit RANDOMIZE als Keim fuer RND
                    gesetzt wird.
  23672   FRAMES    3 Byte Block-Zaehler.
  2367   UD       Adress de erste nutzerdefinierte Grafik-
                    zeichens.
  23677   COORDS    X-Koordinate des letzten PLOT-Punktes.
  23678             dto. Y-Koordinate.
  23679   P POSN    Spaltennummer Druckerposition.
  23680   PR CC     Spaltenadresse fuer LPRINT.
  23681             frei.
  23682   ECHO E    Adresse, wo Echo auf dem Bildschirm erscheint
  2368   DF C     Adress de PRINT-Positio  i de Displayda
tei.
  23686   DFCCL     dto. fuer unteren Bildschirmteil.
* 23688   S POSN    Spaltennummer der PRINT-Position.
* 23689             Zeilennummer der PRINT-Position.
* 23690   SPOSNL    dto. fuer unteren Bildschirmteil; Spalte.
* 23691             dto.                            ; Zeile.
  23692   SCRCT     Rollzaehler.
  23693   ATTRP     Aktueller Farbspeicher.
  23694   MASKP     Maske fuer ATTRP.
  23695   ATTRT     Zeitweiliger Farbspeicher
  23696   MASKT     Maske fuer ATTRT.
  23697   PFLAG     Weitere Flags.
  23698   MEMBOT    Speicherbereich des Rechners, 30 Byte.

  23728             frei.
  23729             frei.
  23730   RAMTOP    Adresse des letzten Bytes des BASIC-Systems.
  23732   P-RAMT    Adresse des letzten Byte des materiellen RAM.



  Speicherzellen, die mit  "*"  gekennzeichnet sind duerfen wegen
  Systemstabilitaet nicht veraendert werden !
.Pa
..--#-!-----------------#-!-----------------#-!------------------
.He***********************************   7. Code-Tabelle   *****  #

------------------------------------------------------------

   0  --              16  ink     |       32  SPACE
   1  --              17  paper   | S     33  !
   2  --              18  flash   | t     34  "
   3  --              19  bright  | e     35  #
   4  (True Video)    20  inverse | u     36  S
                                              |
   5  (Inv. Video)    21  over    | e     37  %
   6  PRINT Komma     22  at      | r     38  &
   7  EDIT            23  tab     | .     39  '
   8  KURSOR links    24  --              40  (
   9  KURSOR rechts   25  --              41  )
  10  KURSOR tief     26  --              42  *
  11  KURSOR hoch     27  --              43  +
  12  DEL(ETE)        28  --              44  ,
  13  ENTER           29  --              45  -
  14  Zahl            30  --              46  .
  15  --              31  --              47  /

------------------------------------------------------------
    
  48  0               64  @               80  P
  49  1               65  A               81  Q
  50  2               66  B               82  R
  51  3               67  C               83  S
  52  4               68  D               84  T
  53  5               69  E               85  U
  54  6               70  F               86  V
  55  7               71  G               87  W
  56  8               72  H               88  X
  57  9               73  I               89  Y
  58  :               74  J               90  Z
  59  ;               75  K               91  [
  60  <               76  L               92  \
  61  =               77  M               93  ]
  62  >               78  N               94  ^
                                              |
  63  ?               79  O               95  _

------------------------------------------------------------

  96  (engl. Pfund)  112  p              128           |
  97  a              113  q              129           | G
  98  b              114  r              130           | r
  99  c              115  s              131           | a
 100  d              116  t              132           | f
 101  e              117  u              133           | i
 102  f              118  v              134           | k
 103  g              119  w              135           | z
 104  h              120  x              136           | e
 105  i              121  y              137           | i
 106  j              122  z              138           | c
 107  k              123  {              139           | h
 108  l              124  |              140           | e
 109  m              125  }              141           | n
 110  n              126  ~              142           |
 111  o              127  (c)            143           |
.Pa

------------------------------------------------------------

 144  USR"A" |       160  USR"Q" |       176  VAL
 145  USR"B" |       161  USR"R" | User- 177  LEN
 146  USR"C" |       162  USR"S" | Gra-  178  SIN
 147  USR"D" |       163  USR"T" | fik   179  COS
 148  USR"E" |       164  USR"U" |       180  TAN
 149  USR"F" |       165  RND            181  ASN
 150  USR"G" | User- 166  INKEYS         182  ACS
                               |
 151  USR"H" | Gra-  167  PI             183  ATN
 152  USR"I" | fik   168  FN             184  LN
 153  USR"J" |       169  POINT          185  EXP
 154  USR"K" |       170  SCREENS        186  INT
                                |
 155  USR"L" |       171  ATTR           187  SQR
 156  USR"M" |       172  AT             188  SGN
 157  USR"N" |       173  TAB            189  ABS
 158  USR"O" |       174  VALS           190  PEEK 
                             |
 159  USR"P" |       175  CODE           191  IN

------------------------------------------------------------

 192  USR            208  FORMAT         224  LPRINT
 193  STRS           209  MOVE           225  LLIST
         |
 194  CHRS           210  ERASE          226  STOP
         |
 195  NOT            211  OPEN#          227  READ
 196  BIN            212  CLOSE#         228  DATA
 197  OR             213  MERGE          229  RESTORE
 198  AND            214  VERIFY         230  NEW
 199  <=             215  BEEP           231  BORDER
 200  >=             216  CIRCLE         232  CONTINUE
 201  <>             217  INK            233  DIM
 202  LINE           218  PAPER          234  REM
 203  THEN           219  FLASH          235  FOR
 204  TO             220  BRIGHT         236  GO TO
 205  STEP           221  INVERSE        237  GO SUB
 206  DEF FN         222  OVER           238  INPUT
 207  CAT            223  OUT            239  LOAD

------------------------------------------------------------

 240  LIST
 241  LET
 242  PAUSE
 243  NEXT
 244  POKE
 245  PRINT
 246  PLOT
 247  RUN
 248  SAVE
 249  RANDOMIZE
 250  IF
 251  CLS
 252  DRAW
 253  CLEAR
 254  RETURN
 255  COPY

------------------------------------------------------------
.Pa 
..---!---------!-----------------------------------------!-------
.He********************************   8. Interne Formate   *****  #


 8.1. - BASIC-Zeile
 ------------------


     +---------------------------------------...----------------+
     | High- | Low-  |        |       |                 |       |
     | Byte  | Byte  |    L   |   H   |                 | ENTER |
     +---------------------------------------...----------------+
       Zeilennummer    Laenge von Text      Text
                       einschl. ENTER



 8.2. - Variable
 ---------------


  - mit Einzelbuchstaben als Name:

     +------------------+----------------------------------+
     |011XXXXX|   EXP  |+  M1   |   M2   |   M3   |   M4   |
     +------------------+----------------------------------+
          Buch-  Expo- Vorzei-  M a n t i s s e n b y t e s
          stabe  nent  chen


  - mit mehreren Buchstaben als Name:

     +----------------------------...----------------...
     |101XXXXX|0XXXXXXX|                |1XXXXXXX|
     +----------------------------...----------------...
          Buch-   2. Zei-                      letztes
          stabe      chen                      Zeichen

                    ...----------+------------------------------+
                       |  EXP   |+ M1   |  M2   |  M3   |  M4   |
                    ...----------+------------------------------+
                                   M a n t i s s e n b y t e s



 8.3. - Variablenfeld
 --------------------


     +-------------------------------------------------...
     |100XXXXX|      |      |      |      |      |
     +-------------------------------------------------...
        Buch-  Gesamtlaen-    Zahl      1.DIM  
        stabe  ge von Elem.   der
               und DIM + 1    DIM

               ...---------------------------...----------------+
                  |      |      |                               |
               ...---------------------------...----------------+
                    letzte DIM             Elemente


.Cp10
 8.4. - Steuervariable einer FOR/NEXT-Schleife
 ---------------------------------------------


   +------------...-------...-------...------------------------
   |111XXXXX|         |         |         |  L  |  H  |       |
   +------------...-------...-------...------------------------
       Buch-   5 Bytes   5 Bytes   5 Bytes   Schlei-    Anw.-Nr.
       stabe     Wert      Limit     STEP    fen-       innerh.
                                             zeile      der
                                                        Zeile



 8.5. - String
 -------------


     +---------------------------------------...----------------+
     |010XXXXX|     |     |                                     |
     +---------------------------------------...----------------+
          Buch-    Anzahl         T e x t - S t r i n g
          stabe    Zeichen



 8.6. - String-Feld
 ------------------


     +---------------------------------------------...
     |110XXXXX|      |      |      |      |      |
     +---------------------------------------------...
         Buch-  Gesamtzahl    Zahl     1. DIM
         stabe  der Elemente  der
                plus DIM + 1  DIM


                        ...------------------------...----------+
                            |      |      |    je ein Byte      |
                        ...------------------------...----------+
                              letzte DIM      E l e m e n t e
.Pa
