SYS (BASIC)

aus Wikipedia, der freien Enzyklopädie

Der BASIC-Befehl SYS dient beim Heimcomputer C64, C128, VC20, C16, C116 und Plus/4 zum Aufruf von Maschinenspracheprogrammen oder von Systemroutinen. Das entsprechende Maschinenspracheprogramm wird solange ausgeführt, bis dort der Befehl RTS (Assemblerbefehl: Rückkehr vom Unterprogramm) erfolgt. Danach wird das BASIC-Programm weiter ausgeführt.

Mit dem Befehl kann zu einer beliebigen Speicheradresse im Zahlenbereich von 0 bis 65535 gesprungen werden. Allerdings sollte die Speicheradresse dort ein funktionstüchtiges Maschinenspracheprogramm enthalten, das den RTS-Befehl enthält, da ansonsten keine vernünftige Programmausführung möglich ist.

Liegen die Zahlen nicht in den oben angegebenen Bereichen, so erscheint die BASIC-Fehlermeldung ?ILLEGAL QUANTITY ERROR.

Um Parameter an das Maschinenprogramm übergeben zu können, gab es zwei Ansätze. Entweder man benutzte im BASIC Programm den POKE Befehl, um die Parameter an genau vorgegebenen Speicherzellen zu hinterlegen, wo sie das Maschinenprogramm dann auslesen konnte, oder man hängte die Parameter (mit Komma getrennt) direkt an den SYS Befehl. Zu diesem Zweck musste allerdings das Maschinenprogramm bestimmte Routinen des BASIC Interpreters aufrufen, welche das Auslesen der Parameter aus der SYS-Zeile übernahmen.