Basic und MaschinencodeHilfreiche FehlermeldungenNach einiger Zeit kann es schon vorkommen, dass man nicht mehr weiß, welche Basic und Maschinencode: ParameterParameter in welcher Reihenfolge an eine Mcode-Routine übergeben werden müssen. Hier macht sich eine Einrichtung gut, wie sie unter UNIX üblich ist: Wird dort eine Routine mit falschen Parametern aufgerufen, so stürzt das Programm nicht ab und tut auch nicht einfach gar nichts. Nein, man bekommt sofort erklärt, was man falsch gemacht hat. Auf die Maschinencode über HIMEM: RSXRSX- und CALL-Aufrufe übertragen, wäre also ein netter, kleiner Satz wünschenswert, der den genauen Syntax des Aufrufes beschreibt. Etwa so: 'USE: |FILL ,Die verwendeten Abkürzungen bedeuten: x:x ,y [,Die Grafik: Farben Und schon wüsste man wieder bescheid. Das ist dabei ganz einfach zu erreichen, und es gibt eigentlich keinen Grund (außer einem geringen Mehr-Verbrauch an Speicherplatz), wieso man darauf verzichten sollte. Ich wünschte mir eine solche Einrichtung für Die Abteilungen des Betriebssystems: AmsdosAmsdos, weil ich zum Beispiel beim |REN-Befehl immer die Reihenfolge der beiden Namensstrings verwechsle. Das folgende Programm zeigt, wie man so etwas realisieren kann. ; Assembler-Routine mit Fehler-Meldungen (Syntax-Hinweisen) ; z.LOW KERNEL JUMPBLOCK: 000B: LOW KL LOW PCHL ----> |FILL [ENTER]
USE: |FILL ,x-Koordinate ,y-Koordinate
Erklärung zu den Bezeichnungen: READY
Beim Aufruf der Routine FILLXY (via |FILL) wird zunächst ein Zeiger auf den Fehlertext geladen, für den Fall eines Falles. Danach wird die Anzahl der Basic und Maschinencode: ParameterParameter überprüft. Falls in diesem Beispiel nicht genau zwei Basic und Maschinencode: ParameterParameter übergeben wurden, wird zur Ausdruck-Routine 'Der Linien-Algorithmus: Fehler 3FEHLER' verzweigt, die den durch HL angezeigten Text ausgibt und danach zurückkehrt. In diesem Beispiel wurde die Fehlermeldung mit reichlich Controlcodes versehen, damit der Text auch gut sichtbar wird. |