AcornSearch - Acorn and RISC OS information searching
RISC OS Search
containing
"Nutty quip goes here!"
Home  |  About  |  Filebase Archive  |  StrongHelp Manuals  |  Newsgroups  |  Module Database
Inhalt   <<   <   >   >>   Index

Eine Ausweisung zum Aufrufen von Betriebssystem-Routinen.

Syntax:          SYS Ausdr1[,AusdrnŒ] [TO [var1][,[var2]Œ] [;Flags]]

Argumente:     Ausdr1 definiert die Betriebssystemroutine, die aufgerufen werden soll. Die Auswertung kann eine Ganzzahl mit der SWI-Nummer der Routine ergeben oder einen String, der ihren Namen enthält. BASIC benutzt SWI OS_SWINumberFromString zur Umwandlung einer Zeichenkette auf eine Zahl, so daß die alphabetischen Zeichen des Strings ganz genau denen des SWI-Namens entsprechen müssen.

          Die wahlweise Liste der Ausdrücke, die der Anweisung folgt und die bis zu acht Ausdrücke enthalten kann, wird über die Register R0 bis R7 an die Routine *bergeben. Wenn der Ausdruck eine Zahl liefert, wird sie in eine Integerzahl verwandelt und direkt in ein Register abgelegt. Wenn der Ausdruck eine Zeichenkette ergibt, wird diese auf dem BASIC-Stapel deponiert, beginnend an einer Wortgrenze und abgeschlossen durch ein Null-Zeichen. Ein Zeiger dorthin wird im Register abgelegt. Alle nicht gelieferten Ausdrücke (angezeigt durch mehrere Kommas ,,) werden auf Null gesetzt.

          Das wahlweise TO wird von einer Variablenliste gefolgt, wobei jeder Variablen ein Wert aus der Routine in den Registern R0 bis R7 zugewiesen wird. Wenn die Variable vom numerischen Typ ist, wird die Ganzzahl im Register auf ein entsprechendes Format konvertiert und gespeichert. Wenn die Variable vom String-Typ ist, wird das Register wie ein Zeiger auf einen mit ASCII 0, 10 oder 13 abgeschlossenen String behandelt, der dann der Variablen zugeordnet wird. Die bei Eingang übergebenen Strings können überschrieben, sollten jedoch nicht verlängert werden. Wie bei den Eingangsausdrücken können auch Ausgangsvariablen ausgelassen werden, indem man sie in der Liste durch Kommas ersetzt.

          Flags ist eine wahlweise Variable, auf die die Prozessor-Flagbits zurückgegeben werden. Der im Flag-Wert gespeicherte Wert ist eine Binärzahl der Form %NZCV, wobei die alphabetischen Zeichen für die Ergebnisflags des ARM-Statusregisters stehen.

Zweck:          SYS bietet Zugang zu den vom Betriebssystem bereitgestellten Routinen zur Ein- und Ausgabe von Zeichen, für die Fehlerbehandlung, die Sprite-Manipulation usw. Für eine detaillierte Besprechung dieser Betriebssystem-Routinen wird auf das Programmer's Reference Manul verwiesen.

Beispiele:     SYS "OS_ReadMonotonicTime" TO time
          
SYS "OS_SpriteOp",28,,"MYSPRITE",,3
          
SYS "Font_FindFont",,"Homerton.Medium",12*16,12*16 TO f%

[sh-index] Back to list of manuals