summaryrefslogtreecommitdiff
path: root/devel/debugger/1.8.2/doc
diff options
context:
space:
mode:
Diffstat (limited to 'devel/debugger/1.8.2/doc')
-rw-r--r--devel/debugger/1.8.2/doc/DEBUGGER.PRT518
1 files changed, 259 insertions, 259 deletions
diff --git a/devel/debugger/1.8.2/doc/DEBUGGER.PRT b/devel/debugger/1.8.2/doc/DEBUGGER.PRT
index 4379f4a..f5ec838 100644
--- a/devel/debugger/1.8.2/doc/DEBUGGER.PRT
+++ b/devel/debugger/1.8.2/doc/DEBUGGER.PRT
@@ -11,14 +11,14 @@
1. Anwendung des Debuggers
1.1 Code Disassembler (Decoder)
-1.1.1 Datenreprsentation
+1.1.1 Datenrepräsentation
1.1.2 Datenadressen
1.1.3 Codeadressen
1.2 Ablaufverfolgung (Tracer)
2. Die EUMEL0-Instruktionen
-2.1 Erluterung der Instruktionen (Thematisch sortiert)
+2.1 Erläuterung der Instruktionen (Thematisch sortiert)
2.2 Alphabetische Liste der Instruktionen
3. Beschreibung der Pakete
@@ -30,18 +30,18 @@
#page#
#ub#1. Anwendung des Debuggers#ue#
-Der EUMEL-Debugger ist fr die Software-Entwickler und nicht fr die
+Der EUMEL-Debugger ist für die Software-Entwickler und nicht für die
Anwender dieser Software gedacht. Insbesondere bei der Entwicklung
systemnaher Software, wie z.B. Compiler, ist der Debugger hilfreich.
-(ELAN-)Programme werden wie bisher compiliert (z.B. insertiert), ohne da
-der Quelltext des Programmes vorher modifiziert werden mte. Um den
-Sourcetext whrend der Ablaufverfolgung (Trace) beobachten zu knnen,
-men die Programme mit 'check on' bersetzt werden.
+(ELAN-)Programme werden wie bisher compiliert (z.B. insertiert), ohne daß
+der Quelltext des Programmes vorher modifiziert werden müßte. Um den
+Sourcetext während der Ablaufverfolgung (Trace) beobachten zu können,
+müßen die Programme mit 'check on' übersetzt werden.
Die sinnvolle Anwendung des Debuggers setzt allerdings Kenntnis der
-EUMEL0-Instruktionen voraus, die im Kapitel 2 erlutert werden (Der Debugger
-setzt die Codierung BIT-A fr diese Instruktionen voraus, d.h. er luft
+EUMEL0-Instruktionen voraus, die im Kapitel 2 erläutert werden (Der Debugger
+setzt die Codierung BIT-A für diese Instruktionen voraus, d.h. er läuft
zumindest in der interpretativen EUMEL0-Version.).
@@ -49,10 +49,10 @@ zumindest in der interpretativen EUMEL0-Version.).
Der Decoder konvertiert die vom Compiler erzeugte Bitcodierung (16 Bit) in
Mnemonics (Textdarstellung der Instruktionen), die in eine FILE geschrieben,
-bzw. optional auf dem Bildschirm ausgegeben werden knnen. Die Bitcodierung
-kann zustzlich ausgegeben werden.
-Der Decoder wird mit 'decode' aufgerufen. Whrend der Dekodierung stehen
-folgende Tastenfunktionen zur Verfgung:
+bzw. optional auf dem Bildschirm ausgegeben werden können. Die Bitcodierung
+kann zusätzlich ausgegeben werden.
+Der Decoder wird mit 'decode' aufgerufen. Während der Dekodierung stehen
+folgende Tastenfunktionen zur Verfügung:
Taste Funktion
-----------------------------------------------------------------------
@@ -65,44 +65,44 @@ Taste Funktion
s storage info
m Zeigt die aktuelle Modulnummer an (sinnvoll falls kein Echo)
Q,W Zeilennummern/Hexadressen mitprotokollieren (falls kein Echo)
- S Keine Zeilennummern/Hexadressen ausgeben (luft auch im Hintergrund)
+ S Keine Zeilennummern/Hexadressen ausgeben (läuft auch im Hintergrund)
-#ub#1.1.1 Datenreprsentation#ue#
+#ub#1.1.1 Datenrepräsentation#ue#
INT-Zahlen werden hexadezimal (xxxxH, xxH) oder dezimal dargestellt,
-TEXTe in Anfhrungszeichen ("..."),
+TEXTe in Anführungszeichen ("..."),
REALs im 20-Stellen scientific-Format,
TASK-Objekte durch XX-YYYY/"name" mit XX als Taskindex und YYYY als Version,
wenn die Stationsnummer nicht 0 ist, wird sie vor XX als SS- dargestellt.
-DATASPACE-Objekte werden durch XX-YY reprsentiert (XX ist der eigene
+DATASPACE-Objekte werden durch XX-YY repräsentiert (XX ist der eigene
Taskindex, YY ist die Datenraumnummer),
BOOL-Objekte durch TRUE oder FALSE.
Module werden durch ihre Modulnummer, optional auch durch ihre
- Startadresse, und falls mglich durch ihren Namen reprsentiert. Die
- Parameterliste wird in den Fllen, wo das Modul in der Permanenttabelle
+ Startadresse, und falls möglich durch ihren Namen repräsentiert. Die
+ Parameterliste wird in den Fällen, wo das Modul in der Permanenttabelle
vermerkt ist auch angegeben.
Nicht weiter dereferenzierbare Adressen werden durch ein vorgestelltes '@'
gekennzeichnet (z.B. BOUND-Objekte).
-In den Fllen, wo es mehrere sinnvolle Darstellungen gibt, werden diese
+In den Fällen, wo es mehrere sinnvolle Darstellungen gibt, werden diese
durch ein '|' getrennt.
#ub#1.1.2 Datenadressen#ue#
-Zustzlich zu den globalen Daten (statische Variablen und Denoter) kann auch
+Zusätzlich zu den globalen Daten (statische Variablen und Denoter) kann auch
deren Adresse ausgegeben werden. Die Daten werden in einer, ihrem Typ
entsprechenden, Darstellung ausgegeben. Komplexe oder zusammengesetzte
-Datentypen werden auf Reprsentationen elementarer Datentypen (INT, REAL,
+Datentypen werden auf Repräsentationen elementarer Datentypen (INT, REAL,
BOOL, TEXT, DATASPACE, TASK) abgebildet.
Prozeduren, Operatoren und Paketinitialisierungen von Main-Packets werden
-zusammenfassend als Module bezeichnet. Einem Modul gehrt ein eigener
-Stackbereich fr lokale Daten, Parameter und Rcksprungadresse etc. In
+zusammenfassend als Module bezeichnet. Einem Modul gehört ein eigener
+Stackbereich für lokale Daten, Parameter und Rücksprungadresse etc. In
diesem Bereich stehen entweder die Datenobjekte selbst (z.B. lokale
Variablen) oder lokale Referenzadressen auf beliebige Objekte (lokale,
-globale Daten, Fremddatenrume und sogar Module).
-Da die effektiven lokalen Adressen erst whrend der Runtime bekannt sind,
+globale Daten, Fremddatenräume und sogar Module).
+Da die effektiven lokalen Adressen erst während der Runtime bekannt sind,
findet man im Decoder-Output nur die Adressoffsets relativ zum Stackanfang
des Moduls.
@@ -112,20 +112,20 @@ Buchstaben nach '<' angezeigt:
'G' kennzeichnet eine globale Adresse (Denoter oder statische Variable). Die
Representation der Daten kann immer angegeben werden (also nicht nur zur
Runtime).
-'L' kennzeichnet einen Adressoffset fr ein lokales Datenobjekt auf dem
+'L' kennzeichnet einen Adressoffset für ein lokales Datenobjekt auf dem
Stack. Da die lokale Basis, d.h. die Anfangsadresse der Daten des aktuellen
Moduls, erst bei Runtime feststehen, kann hier weder die effektive
Datenadresse, noch der Inhalt des Datenobjekts angegeben werden.
'LR' kennzeichnet eine lokale Referenzadresse, d.h. auf dem Stack steht
-eine Adresse (32 Bit), die ein Datenobjekt adressiert. hnlich wie bei 'L'
+eine Adresse (32 Bit), die ein Datenobjekt adressiert. Ähnlich wie bei 'L'
kann auch bei 'LR' erst zur Runtime eine Representation des adressierten
Datenobjekts angegeben werden. Der Wert nach 'LR' bezeichnet den Offset, der
-zur lokalen Basis addiert werden mu, um die Adresse der Referenzadresse zu
-erhalten. Die niederwertigsten 16 Bit (das erste der beiden Wrter) knnen
-128KB adressieren. Im hherwertigsten Byte des zweiten Wortes steht die
+zur lokalen Basis addiert werden muß, um die Adresse der Referenzadresse zu
+erhalten. Die niederwertigsten 16 Bit (das erste der beiden Wörter) können
+128KB adressieren. Im höherwertigsten Byte des zweiten Wortes steht die
Nummer des Datenraumes der eigenen Task, der das adressierte Datenobjekt
-enthlt (0 entspricht dem Standarddatenraum). Das niederwertigste Byte des
-zweiten Wortes enthlt die Segmentnummer (128KB-Segmente) mit dem
+enthält (0 entspricht dem Standarddatenraum). Das niederwertigste Byte des
+zweiten Wortes enthält die Segmentnummer (128KB-Segmente) mit dem
Wertebereich 0 bis 7 (maximal also 1MB/Datenraum). Im Standarddatenraum
(Datenraumnummer 4) enthalten die Segmente folgene Tabellen:
@@ -134,90 +134,90 @@ Segment Tabelle
0 Paketdaten (high 120KB) und Moduladresstabelle
1 Stack (low 64K), Heap (high 64K)
2 Codesegment
- 3 Codesegment (120KB) u.a. fr eigene Module
- 4 Compilertabellen temporr
+ 3 Codesegment (120KB) u.a. für eigene Module
+ 4 Compilertabellen temporär
5 Compilertabellen permanent
- 6 nilsegment fr Compiler (FF's)
+ 6 nilsegment für Compiler (FF's)
7 Compiler: Intermediate String
-Reprsentationen von Datenobjekten, die in Fremddatenrumen residieren
-(BOUND-Objekte) knnen zur Zeit noch nicht ausgegeben werden, statt dessen
+Repräsentationen von Datenobjekten, die in Fremddatenräumen residieren
+(BOUND-Objekte) können zur Zeit noch nicht ausgegeben werden, statt dessen
wird die Datenraumnummer und die Wortadresse innerhalb dieses Datenraums
ausgegeben.
#ub#1.1.3 Codeadressen#ue#
-Module werden in der Regel (Ausnahme: Parameterprozeduren) ber ihre
+Module werden in der Regel (Ausnahme: Parameterprozeduren) über ihre
Modulnummer angesprochen, aus der dann die Adresse des Moduls berechnet
werden kann (mithilfe der Moduladresstabelle). Die Adressen der
Parameterprozeduren sind vom Typ 'LR' (Local-Reference), kommen nur als
Parameter auf dem Stack vor und beeinhalten Codesegment und Codeadresse.
Sprungadressen (von Branch-Befehlen) adressieren immer nur das eigene
-Segment und davon auch nur eine Adresse innerhalb eines 8 KB groen
+Segment und davon auch nur eine Adresse innerhalb eines 8 KB großen
Bereichs.
#ub#1.2 Ablaufverfolgung (Tracer)#ue#
Um den eigenen (!) Code im Einzelschrittbetrieb abzuarbeiten, wird der
-Tracer benutzt. Auer den Inhalten der globalen Daten kann man sich die
+Tracer benutzt. Außer den Inhalten der globalen Daten kann man sich die
Inhalte der Stackobjekte (lokale Variablen) und der aktuellen Parameter
-eines Prozeduraufrufs (auch von Parameterprozeduren) ansehen. Es knnen
-keine Daten verndert werden!
-Man hat die Mglichkeit
-- die Resultate der letzten ausgefhrten Instruktion oder
-- die aktuellen Parameter fr den nchsten Instruktionsaufruf
+eines Prozeduraufrufs (auch von Parameterprozeduren) ansehen. Es können
+keine Daten verändert werden!
+Man hat die Möglichkeit
+- die Resultate der letzten ausgeführten Instruktion oder
+- die aktuellen Parameter für den nächsten Instruktionsaufruf
zu beobachten.
Der Inhalt des Stacks kann sequentiell durchgesehen werden, Error- und
-Disablestop-Zustand knnen gelscht werden.
+Disablestop-Zustand können gelöscht werden.
Der Einzelschrittablauf kann protokolliert und die entsprechende
-Sourceline parallel zum ausgefhrten Code beobachtet werden.
-Der Einzelschrittbetrieb kann, ber Teile des Codes hinweg, ausgeschaltet
-werden, z.B. fr hufig durchlaufene Schleifen.
-Fr die Reprsentation der Daten und deren Adressen gilt das unter 1.1
+Sourceline parallel zum ausgeführten Code beobachtet werden.
+Der Einzelschrittbetrieb kann, über Teile des Codes hinweg, ausgeschaltet
+werden, z.B. für häufig durchlaufene Schleifen.
+Für die Repräsentation der Daten und deren Adressen gilt das unter 1.1
gesagte.
-Der Tracer wird mit 'trace' aufgerufen. Whrend der Aktivitt des Tracers
-stehen folgende Funktionen zur Verfgung (Nur der erste Buchstabe wird
+Der Tracer wird mit 'trace' aufgerufen. Während der Aktivität des Tracers
+stehen folgende Funktionen zur Verfügung (Nur der erste Buchstabe wird
getippt):
-Abkrzung Funktion
+Abkürzung Funktion
--------------------------------------------------------------------------
- Auto Die Befehle werden im Einzelschrittbetrieb ausgefhrt, ohne da
- eine Taste gedrckt werden mu.
- Bpnt Der nchste Breakpoint wird an eine vom Benutzer festgelegte
- Codeadrese gesetzt. Damit knnen Teile des Codes abgearbeitet
- werden, ohne da der Einzelschrittmodus aktiv ist. Nach der
+ Auto Die Befehle werden im Einzelschrittbetrieb ausgeführt, ohne daß
+ eine Taste gedrückt werden muß.
+ Bpnt Der nächste Breakpoint wird an eine vom Benutzer festgelegte
+ Codeadrese gesetzt. Damit können Teile des Codes abgearbeitet
+ werden, ohne daß der Einzelschrittmodus aktiv ist. Nach der
Eingabe der Adresse wird der Befehl an dieser Adresse angezeigt.
- Besttigt wird die Richtigkeit mit <RETURN> oder 's'.
- Clrr Ein eventuell vorliegender Fehlerzustand wird gelscht.
- Dstp 'disable stop' wird fr das untersuchte Modul gesetzt.
- Estp 'enable stop' wird fr das untersuchte Modul gesetzt.
+ Bestätigt wird die Richtigkeit mit <RETURN> oder 's'.
+ Clrr Ein eventuell vorliegender Fehlerzustand wird gelöscht.
+ Dstp 'disable stop' wird für das untersuchte Modul gesetzt.
+ Estp 'enable stop' wird für das untersuchte Modul gesetzt.
File Der Name der kompilierten Quelldatei wird eingestellt.
- Go Der Code wird bis zum Ende abgearbeitet, ohne da der Tracer
+ Go Der Code wird bis zum Ende abgearbeitet, ohne daß der Tracer
aktiviert wird.
Prot Der Name der Protokollfile wird eingestellt. Die abgearbeiteten
Instruktionen werden in dieser File protokolliert.
Rslt Es wird umgeschaltet, ob die angezeigte Instruktion nach <RETURN>
oder 's' abgearbeitet werden soll (Forward-Trace, 'F') oder ob das
- Ergebnis der letzten ausgefhrten Instruktion angezeigt werden soll
+ Ergebnis der letzten ausgeführten Instruktion angezeigt werden soll
(Result-Trace, 'R'). Der aktuelle Zustand dieses Switches wird in
der ersten Bildschirmzeile durch 'R' oder 'F' gekennzeichnet.
Kurzzeitige Umschaltung, um das Ergebnis der letzten Operation
- anzusehen, ist auch mglich (zweimal 'r' tippen).
- Step/CR Mit <RETURN> oder 's' wird die nchste Instruktion ausgefhrt.
+ anzusehen, ist auch möglich (zweimal 'r' tippen).
+ Step/CR Mit <RETURN> oder 's' wird die nächste Instruktion ausgeführt.
Dies ist bei Forward-Trace die angezeigte Instruktion.
- Term Bis zur nchst 'hheren' Prozedur der CALL-Sequence, die im
+ Term Bis zur nächst 'höheren' Prozedur der CALL-Sequence, die im
'disable stop'-Zustand arbeitet, werden die Module verlassen. In
der Regel bedeutet dies ein Programmabbruch. Alle Breakpoints sind
- anschlieend zurckgesetzt.
+ anschließend zurückgesetzt.
- Der Stackpointer auf den sichtbaren Stack (in der ersten
- Bildschirmzeile) wird um zwei verringert. Er zeigt auf die nchst
+ Bildschirmzeile) wird um zwei verringert. Er zeigt auf die nächst
tiefere Referenzadresse. Der EUMEL-0-Stackpointer wird nicht
- verndert.
- + Der Stackpointer auf den sichtbaren Stack wird um zwei erhht.
- < Bei der Befehlsausgabe werden die Parameteradressen zustzlich
+ verändert.
+ + Der Stackpointer auf den sichtbaren Stack wird um zwei erhöht.
+ < Bei der Befehlsausgabe werden die Parameteradressen zusätzlich
ausgegeben (in spitzen Klammern).
> Bei der Befehlsausgabe werden keine Parameteradressen ausgegeben,
sondern nur die Darstellungen der Parameter (z.B.
@@ -227,26 +227,26 @@ Abkrzung Funktion
#ub#2. EUMEL0-Instruktionen#ue#
-#ub#2.1 Erluterung der Instruktionen (Thematisch sortiert)#ue#
+#ub#2.1 Erläuterung der Instruktionen (Thematisch sortiert)#ue#
-Nach der Hufigkeit ihres Vorkommens im Code unterscheidet man 3 Klassen von
-Instruktionen: 30 Primrbefehle, 6 Spezialbefehle und z.Zt. 127
-Sekundrbefehle.
-Die Primrbefehle enthalten im ersten Wort den Opcode (5 Bit) und 11 Bit fr
+Nach der Häufigkeit ihres Vorkommens im Code unterscheidet man 3 Klassen von
+Instruktionen: 30 Primärbefehle, 6 Spezialbefehle und z.Zt. 127
+Sekundärbefehle.
+Die Primärbefehle enthalten im ersten Wort den Opcode (5 Bit) und 11 Bit für
die erste Parameteradresse d.h. den Wertebereich 0..2047. Liegt die
-Parameteradresse auerhalb dieses Bereichs, dann ersetzt ein
+Parameteradresse außerhalb dieses Bereichs, dann ersetzt ein
Umschaltprefix (LONGAddress) die Opcodebits und im lowbyte des
ersten Wortes wird der Opcode codiert. Die erste Parameteradresse befindet
sich dann als 16 Bit-Wert im zweiten Wort.
-Spezialbefehle enthalten im ersten Wort auer dem Opcode (8 Bit) noch einen
+Spezialbefehle enthalten im ersten Wort außer dem Opcode (8 Bit) noch einen
8 Bit-Immediatewert (Bytekonstante).
-Sekundrebefehle enthalten im ersten Wort nur den Opcode (16 Bit), der aus
+Sekundärebefehle enthalten im ersten Wort nur den Opcode (16 Bit), der aus
einem Umschaltprefix (ESCape, wird im folgenden weggelassen) und im lowbyte
-dem 8 Bit Sekndaropcode besteht.
+dem 8 Bit Sekündaropcode besteht.
Im folgenden werden Datenadressen mit 'd', Immediatewerte mit 'v' (Value),
Codeadressen mit 'a' und Modulnummern mit 'm' bezeichnet. Die Anzahl dieser
-Buchstaben gibt die Lnge der bentigten Opcodebits (DIV 4) an. Ausnahmsweise
+Buchstaben gibt die Länge der benötigten Opcodebits (DIV 4) an. Ausnahmsweise
bezeichnet .nn:dd einen 5 Bit Opcode ('nn') und eine 11 Bit Adresse ('dd').
Der Adresstyp ist in den Bits 14 und 15 codiert:
@@ -256,7 +256,7 @@ Der Adresstyp ist in den Bits 14 und 15 codiert:
1 1 local ref adr := ((dddd AND 7FFF) DIV 2 + lbase) ; (adr+1, adr)
Der Wert eines Wortes an der ersten Parameteradresse wird mit <d1>
-bezeichnet. Ein Datentyp vor der spitzen Klammer gibt seinen Typ an. Fr die
+bezeichnet. Ein Datentyp vor der spitzen Klammer gibt seinen Typ an. Für die
anderen Parameter gilt entsprechendes (<d2>, <d3>, ...).
@@ -266,7 +266,7 @@ MOV .08:dd dddd 1 Wort (z.B. INT/BOOL) wird von der linken
Adresse zur rechten Adresse transportiert.
<d2> := <d1>
-FMOV .34:dd dddd 4 Wrter (z.B. REAL) von linker Adresse zur
+FMOV .34:dd dddd 4 Wörter (z.B. REAL) von linker Adresse zur
rechten Adresse tranportieren (kopiert).
<d2> := <d1>
@@ -284,12 +284,12 @@ MOVii 7F 23 vvvv dddd Dem Wort an der Adresse dddd wird die 16-Bit
<d1> := vvvv
MOVx 7D vv dddd dddd Von der linken Adresse zur rechten Adresse
- werden vv (max. 255) Wrter transportiert.
- <d2> := <d1> (vv Wrter)
+ werden vv (max. 255) Wörter transportiert.
+ <d2> := <d1> (vv Wörter)
MOVxx 7F 21 vvvv dddd dddd Von der linken Adresse zur rechten Adresse
- werden vvvv (max. 65535) Wrter transportiert.
- <d2> := <d1> (vvvv Wrter)
+ werden vvvv (max. 65535) Wörter transportiert.
+ <d2> := <d1> (vvvv Wörter)
#ub#2.1.2 INT-Operationen#ue#
@@ -306,7 +306,7 @@ CLEAR .24:dd Dem Wort an der Adresse dd wird 0 zugewiesen.
<d1> := 0
INC1 .0C:dd Der Inhalt des Wortes an der Adresse dddd wird
- um eins erhht.
+ um eins erhöht.
<d1> := <d1> + 1
DEC1 .10:dd Der Inhalt des Wortes an der Adresse dddd wird
@@ -334,50 +334,50 @@ SUB .20:dd dddd dddd Der Inhalt des Wortes an der zweiten Adresse
dritten Adresse abgelegt.
<d3> := <d1> - <d2>
-MUL 7F 29 dddd dddd dddd Der Wert der Wrter an den beiden ersten
+MUL 7F 29 dddd dddd dddd Der Wert der Wörter an den beiden ersten
Adressen wird vorzeichenbehaftet multipliziert
und im Wort an der dritten Adresse abgelegt.
- Ein berlauf wird im Falle der vorzeichenlosen
+ Ein Überlauf wird im Falle der vorzeichenlosen
Arithmetik ignoriert (<d3> MOD 65536).
<d3> := <d1> * <d2>
-IMULT 7F 28 dddd dddd dddd Der Wert der Wrter an den beiden ersten
+IMULT 7F 28 dddd dddd dddd Der Wert der Wörter an den beiden ersten
Adressen wird vorzeichenlos multipliziert und
im Wort an der dritten Adresse abgelegt.
- Falls das Resultat ein Wert grer 65535 wre,
+ Falls das Resultat ein Wert größer 65535 wäre,
wird <d3> := FFFFH, sonst
<d3> := <d1> * <d2>
DIV 7F 2A dddd dddd dddd Der Wert des Wortes an der ersten Adresse wird
durch den Wert des Wortes an der zweiten
Adresse dividiert und im Wort an der dritten
- Adresse abgelegt. Eine Division durch 0 fhrt
+ Adresse abgelegt. Eine Division durch 0 führt
zum Fehler.
<d3> := <d1> DIV <d2>
MOD 7F 2B dddd dddd dddd Der Rest der Division (wie bei DIV) wird im
Wort an der dritten Adresse abgelegt. Falls
- <d2> = 0 ist, wird ein Fehler ausgelst.
+ <d2> = 0 ist, wird ein Fehler ausgelöst.
<d3> := <d1> MOD <d2>
NEG 7F 27 dddd Der Wert des Wortes an der Adresse dddd wird
arithmetisch negiert (Vorzeichenwechsel).
<d1> := -<d1>
-AND 7F 7C dddd dddd dddd Der Wert der beiden Wrter an den beiden ersten
- Adressen wird bitweise UND-verknpft und das
+AND 7F 7C dddd dddd dddd Der Wert der beiden Wörter an den beiden ersten
+ Adressen wird bitweise UND-verknüpft und das
Resultat im Wort an der dritten Adresse
abgelegt.
<d3> := <d1> AND <d2>
-OR 7F 7D dddd dddd dddd Der Wert der beiden Wrter an den beiden ersten
- Adressen wird bitweise ODER-verknpft und das
+OR 7F 7D dddd dddd dddd Der Wert der beiden Wörter an den beiden ersten
+ Adressen wird bitweise ODER-verknüpft und das
Resultat im Wort an der dritten Adresse
abgelegt.
<d3> := <d1> OR <d2>
-XOR 7F 79 dddd dddd dddd Der Wert der beiden Wrter an den beiden ersten
- Adressen wird bitweise Exklusiv-ODER-verknpft
+XOR 7F 79 dddd dddd dddd Der Wert der beiden Wörter an den beiden ersten
+ Adressen wird bitweise Exklusiv-ODER-verknüpft
und das Resultat im Wort an der dritten Adresse
abgelegt.
<d3> := <d1> XOR <d2>
@@ -420,13 +420,13 @@ FNEG 7F 26 dddd Das Vorzeichen des REAL-Wertes an der Adresse
FSLD 7F 60 dddd dddd dddd Die Mantisse des REAL-Wertes an der zweiten
Adresse wird um ein Digit (4 Bit BCD) nach
links verschoben, Vorzeichen und Exponent
- bleiben unverndert. Das vorher hherwertigste
+ bleiben unverändert. Das vorher höherwertigste
Digit steht danach im Wort an der dritten
Adresse. Das neue niederwertigste Digit wurde
aus dem Wort der ersten Adresse entnommen.
INT<d3> := digit1<d2> ;
REAL<d2> := REAL<d2> SLD 1 ;
- digit13<d2> := INT<1>
+ digit13<d2> := INT< 1>
GEXP 7F 61 dddd dddd Der Exponent des REAL-Wertes an der ersten
Adresse wird in das Wort an der zweiten Adresse
@@ -451,7 +451,7 @@ ITSUB 7F 2D dddd dddd dddd Aus dem TEXT an der ersten Adresse wird das
der dritten Adresse abgelegt.
INT<d3> := TEXT<d1>[INT<d2>,2] (Notation:
t[n,s] bezeichnet das n. Element mit einer
- Gre von s Bytes, der Bytekette t an der
+ Größe von s Bytes, der Bytekette t an der
Byteposition n*s+1)
ITRPL 7F 2E dddd dddd dddd In dem TEXT an der ersten Adresse wird das
@@ -498,10 +498,10 @@ REPLAC 7F 34 dddd dddd dddd Der TEXT an der ersten Adresse wird ab der
replace (TEXT<d1>, INT<d2>, TEXT<d3>)
CAT 7F 35 dddd dddd Der TEXT an der zweiten Adresse wird an das
- Ende des TEXTes an der ersten Adresse angefgt.
+ Ende des TEXTes an der ersten Adresse angefügt.
TEXT<d1> := TEXT<d1> + TEXT<d2>
-TLEN 7F 36 dddd dddd Die Lnge des TEXTes an der ersten Adresse wird
+TLEN 7F 36 dddd dddd Die Länge des TEXTes an der ersten Adresse wird
im Wort an der zweiten Adresse abgelegt.
INT<d2> := length (TEXT<d1>)
@@ -529,7 +529,7 @@ POSFT 7F 39 dddd dddd dddd dddd dddd
den Inhalt des Wortes an der dritten Adresse
bestimmt ist, bis zur Position die durch den
Inhalt des Wortes an der vierten Adresse
- bestimmt ist, wird im Wort an der fnften
+ bestimmt ist, wird im Wort an der fünften
Adresse abgelegt.
INT<d5> := pos (TEXT<d1>, TEXT<d2>, INT<d3>,
INT<d4>)
@@ -561,14 +561,14 @@ POSIF 7F 3B dddd dddd dddd dddd dddd
TEXTes an der ersten Adresse, wird ab der
Position, die durch das Wort an der vierten
Adresse beschrieben wird, im Wort an der
- fnften Adresse abgelegt.
+ fünften Adresse abgelegt.
INT<d5> := pos (TEXT<d1>, TEXT<d2>, TEXT<d3>,
INT<d4>).
-GARB 7F 5F Es wird eine Garbagecollection fr den
- taskeigenen TEXT-Heap durchgefhrt.
+GARB 7F 5F Es wird eine Garbagecollection für den
+ taskeigenen TEXT-Heap durchgeführt.
-HPSIZE 7F 5E dddd Die aktuelle Gre des TEXT-Heaps wird in dem
+HPSIZE 7F 5E dddd Die aktuelle Größe des TEXT-Heaps wird in dem
Wort an der Adresse dddd abgelegt.
<d1> := heapsize
@@ -588,7 +588,7 @@ RTRPL 7F 65 dddd dddd dddd In dem TEXT an der ersten Adresse wird der
#ub#2.1.5 DATASPACE-Operationen#ue#
DSACC .58:dd dddd Die dsid an der ersten Adresse wird auf
- Gltigkeit geprft und an der zweiten Adresse
+ Gültigkeit geprüft und an der zweiten Adresse
eine Referenzaddresse abgelegt, die auf das
4. Wort des Datenraumes (den Anfang des
Datenbereichs) zeigt.
@@ -599,10 +599,10 @@ DSACC .58:dd dddd Die dsid an der ersten Adresse wird auf
ALIAS 7F 22 vvvv dddd dddd Dem BOUND-Objekt an der dritten Adresse wird
der Datenraum an der zweiten Adresse zugewiesen
- (INT-Move). Zuvor wird geprft, ob dies der
+ (INT-Move). Zuvor wird geprüft, ob dies der
erste Zugriff auf den Datenraum ist. Falls ja,
wird der Datenraumtyp auf 0 gesetzt. Falls ein
- Heap aufgebaut werden mu und noch keiner
+ Heap aufgebaut werden muß und noch keiner
angelegt wurde, wird die Anfangsadresse des
Heaps auf den Wert vvvv+4 innerhalb des
Datenraumes gesetzt.
@@ -626,7 +626,7 @@ DSCOPY 7F 46 dddd dddd Dem Datenraum an der ersten Adresse wird eine
DSFORG 7F 47 dddd Der Datenraum, dessen dsid an der Adresse dddd
steht, wird aus der Datenraumverwaltung
- gelscht.
+ gelöscht.
forget (DATASPACE<d1>)
DSWTYP 7F 48 dddd dddd Der Typ des Datenraums, dessen dsid an der
@@ -650,17 +650,17 @@ DSHEAP 7F 4A dddd dddd Die Endaddresse Textheaps des Datenraums, dessen
Einehiten, wird in dem Wort an der zweiten
Adresse abgelegt. Falls dieser Wert = 1023 oder
< 96 ist, ist kein Heap vorhanden, anderenfalls
- ist seine Gre (in KB): <d2>-96.
+ ist seine Größe (in KB): <d2>-96.
INT<d2> := DATASPACE<d1>.heapende DIV 1024
-NXTDSP 7F 4B dddd dddd dddd Fr den Datenraum an der ersten Adresse wird
+NXTDSP 7F 4B dddd dddd dddd Für den Datenraum an der ersten Adresse wird
die Nummer der Seite, die auf die Nummer der
Seite folgt, die in dem Wort an der zweiten Adresse
steht an der zweiten Adresse abgelegt. Falls
keine Seite mehr folt, wird -1 geliefert.
INT<d2> := nextdspage (DATASPACE<d1>, INT<d2>)
-DSPAGS 7F 4C dddd dddd dddd Fr den Datenraum mit der Nummer, die im Wort
+DSPAGS 7F 4C dddd dddd dddd Für den Datenraum mit der Nummer, die im Wort
an der ersten Adresse steht, und der Task deren
Nummer im Wort an der zweiten Adresse steht,
wird die Anzahl der belegten Seiten im Wort an
@@ -677,7 +677,7 @@ SEND 7F 71 dddd dddd dddd dddd
send (TASK<d1>, INT<d2>, DATASPACE<d3>, INT<d4>)
WAIT 7F 72 dddd dddd dddd Die eigene Task geht in einen offenen
- Wartezustand, bei dem sie empfangsbereit ist fr
+ Wartezustand, bei dem sie empfangsbereit ist für
einen Datenraum einer anderen Task. Die id der
sendenden Task wird an der ersten Adresse
abgelegt, der Messagecode an der zweiten
@@ -690,9 +690,9 @@ SWCALL 7F 73 dddd dddd dddd dddd
Task, deren id an der ersten Adresse steht, mit
dem Messagecode der an der zweiten Adresse
steht, gesendet bis die Task empfangsbereit ist.
- Dann wird auf einen zurckgesandten Datenraum
+ Dann wird auf einen zurückgesandten Datenraum
dieser Task gewartet, der an der dritten
- Adresse abgelegt wird. Der zurckgesendete
+ Adresse abgelegt wird. Der zurückgesendete
Messagecode wird an der vierten Adresse
abgelegt. Vereinfachte Semantik:
REP
@@ -703,7 +703,7 @@ SWCALL 7F 73 dddd dddd dddd dddd
PPCALL 7F 7A dddd dddd dddd dddd
Wirkt wie SWCALL, wartet aber nicht bis die
Zieltask empfangsbereit ist, sondern liefert -2
- an der vierten Adresse zurck, wenn die Task
+ an der vierten Adresse zurück, wenn die Task
nicht empfangsbereit ist. Vereinfachte
Semantik:
send (TASK<d1>, INT<d2>, DATASPACE<d3>,INT<d4>);
@@ -715,13 +715,13 @@ SENDFT 7F 7F dddd dddd dddd dddd dddd
Der Datenraum an der vierten Adresse wird der
Task, deren id an der zweiten Adresse steht,
mit dem Messagecode der an der dritten Adresse
- steht, gesendet als ob er von der Task kme,
+ steht, gesendet als ob er von der Task käme,
deren id an der ersten Adresse steht. Der
Antwortcode wird im Wort an der vierten
Adresse abgelegt. Dieser Befehl setzt eine
Priviligierung >= 1 voraus und ist nur wirksam,
wenn die from-Task einer anderen Station
- angehrt. Vereinfachte Semantik:
+ angehört. Vereinfachte Semantik:
IF station (TASK<d1>) = station (myself)
THEN send (TASK<d2>, INT<d3>, DATASPACE<d4>,
INT<d5>)
@@ -746,11 +746,11 @@ TPBEGIN 7F 5F dddd dddd dddd aaaaaa
Als Sohn der Task, deren Nummer an der ersten
Adresse steht, wird eine Task eingerichtet,
deren Nummer an der zweiten Adresse steht. Die
- neue Task erhlt die Privilegierung, deren
+ neue Task erhält die Privilegierung, deren
Nummer in dem Wort an der dritten Adresse
steht und wird mit der Prozedur gestartet,
deren Code bei der durch den vierten Parameter
- bergebenen Refereznadresse beginnt. Dieser
+ übergebenen Refereznadresse beginnt. Dieser
Befehl setzt eine Privilegierung > 1 voraus
(Supervisor).
@@ -763,13 +763,13 @@ TRPCB 7F 68 dddd dddd dddd Der Wert des Leitblockfeldes der Task
TWPCB 7F 69 dddd dddd dddd Der Wert an der dritten Adresse wird in das
Leitblockfeld mit der Nummer an der zweiten
- Adresse der Task bertragen, deren Nummer an der
+ Adresse der Task übertragen, deren Nummer an der
ersten Adresse steht. Privilegierung:
0: Nur linenumber-Feld (0), der eigenen Task
1: linenumber-Feld der eigenen Task und
prio-Feld (5) jeder Task
2: Alle Felder
- Fr den Fall, da die Privilegierung ok ist
+ Für den Fall, daß die Privilegierung ok ist
gilt:
pcb (INT<d1>, INT<d2>) := INT<d3>
@@ -802,27 +802,27 @@ THALT 7F 6E dddd In der Task, deren Nummer an der Adresse dddd
TBEGIN 7F 6F dddd aaaaaa Eine neue Task wird eingerichtet, deren Nummer
an der ersten Adresse steht. Die Adresse der
Startprozedur wird als Referenzadresse im
- zweiten Parameter bergeben. Der Datenraum 4
+ zweiten Parameter übergeben. Der Datenraum 4
wird von der aufrufenden Task geerbt. Als
Privilegierung wird 0 eingetragen.
Dieser Befehl setzt eine Privilegierung > 1
voraus (Supervisor).
TEND 7F 70 dddd Die Task, deren Nummer an der Adresse dddd
- steht, wird gelscht (alle Datenrume) und aus
+ steht, wird gelöscht (alle Datenräume) und aus
der Prozessverwaltung entfernt. Dieser Befehl
setzt eine Privilegierung > 1 voraus
(Supervisor).
-PNACT 7F 76 dddd Die Nummer der nchsten aktivierten Task
+PNACT 7F 76 dddd Die Nummer der nächsten aktivierten Task
wird aus der Aktivierungstabelle gelesen. Die
Suche beginnt mit dem Wert+1 an der Adresse. Die
- Nummer nchsten aktivierten Task wird an dieser
+ Nummer nächsten aktivierten Task wird an dieser
Adresse abgelegt.
INT<d1> := next active (INT<d1>)
DEFCOL 7F 80 dddd Die Task an der Adresse wird als Collectortask
- (fr Datenaustausch zwischen Stationen)
+ (für Datenaustausch zwischen Stationen)
definiert. Dieser Befehl setzt eine
Privilegierung >= 1 voraus.
TASK collector := TASK<d1>
@@ -834,11 +834,11 @@ Alle Tests und Vergleiche liefern ein BOOL-Resultat, welches den Opcode des
nachfolgenden Branch-Befehls bestimmt (Aus LN wird BT aus BR wird BF).
TEST .28:dd Liefert TRUE, wenn das Wort an der Adresse 0
- ist (Auch fr BOOL-Variablen gebraucht: TRUE=0,
+ ist (Auch für BOOL-Variablen gebraucht: TRUE=0,
FALSE=1).
FLAG := <d1> = 0
-EQU .2C:dd dddd Liefert TRUE, wenn die Wrter der beiden
+EQU .2C:dd dddd Liefert TRUE, wenn die Wörter der beiden
Adressen gleich sind.
FLAG := <d1> = <d2>
@@ -895,14 +895,14 @@ ISLCAS 7F 14 dddd Liefert TRUE, wenn der ASCII-Code im Wort an
FLAG := INT<d1> >= 97 AND INT<d1> <= 122
ISUCAS 7F 15 dddd Liefert TRUE, wenn der ASCII-Code im Wort an
- der Adresse dddd einem Grobuchstaben
+ der Adresse dddd einem Großbuchstaben
entspricht.
FLAG := INT<d1> >= 65 AND INT<d1> <= 90
ISSHA 7F 18 dddd Liefert TRUE, wenn der Wert des Wortes an der
Adresse dddd im Bereich 0..2047 liegt, d.h.
eine Kurzadresse ist, die noch zusammen mit dem
- Opcode im ersten Wort eines Primrbefehls
+ Opcode im ersten Wort eines Primärbefehls
untergebracht werden kann.
FLAG := INT<d1> < 2048
@@ -976,7 +976,7 @@ GCPOS 7F 43 dddd dddd Die Cursorposition wird erfragt. Die x-Position
CATINP 7F 44 dddd dddd Aus dem Eingabepuffer werden alle Zeichen
gelesen und an den TEXT an der ersten Adresse
- gehngt, bis entweder der Eingabepuffer leer
+ gehängt, bis entweder der Eingabepuffer leer
ist oder ein Zeichen mit einem Code < 32
gefunden wurde. Im ersten Fall wird niltext an
der zweiten Adresse abgelegt, im zweiten Fall
@@ -996,8 +996,8 @@ CATINP 7F 44 dddd dddd Aus dem Eingabepuffer werden alle Zeichen
CONTRL 7F 54 dddd dddd dddd dddd
Der IO-Controlfunktion mit der Nummer, die
an der ersten Adresse steht, werden die beiden
- Parameter bergeben, die an der zweiten und
- dritten Adresse stehen. Die Rckmeldung wird
+ Parameter übergeben, die an der zweiten und
+ dritten Adresse stehen. Die Rückmeldung wird
an der vierten Adresse abgelegt.
IF channel > 0
THEN iocontrol (INT<d1>, INT<d2>, INT<d3>,
@@ -1010,8 +1010,8 @@ BLKOUT 7F 55 dddd dddd dddd dddd dddd
an der zweiten Adresse steht, wird auf dem
aktuellen Kanal ausgegeben. Als Parameter
werden die Werte an der dritten und vierten
- Adresse bergeben. Der Returncode wird an der
- fnften Adresse abgelegt.
+ Adresse übergeben. Der Returncode wird an der
+ fünften Adresse abgelegt.
IF channel > 0
THEN blockout (DATASPACE<d1>[INT<d2>, 512],
INT<d3>, INT<d4>, INT<d5>)
@@ -1023,8 +1023,8 @@ BLKIN 7F 56 dddd dddd dddd dddd dddd
an der zweiten Adresse steht, wird an dem
aktuellen Kanal eingelesen. Als Parameter
werden die Werte an der dritten und vierten
- Adresse bergeben. Der Returncode wird an der
- fnften Adresse abgelegt.
+ Adresse übergeben. Der Returncode wird an der
+ fünften Adresse abgelegt.
IF channel > 0
THEN blockout (DATASPACE<d1>[INT<d2>, 512],
INT<d3>, INT<d4>, INT<d5>)
@@ -1034,7 +1034,7 @@ BLKIN 7F 56 dddd dddd dddd dddd dddd
#ub#2.1.9 Ablaufsteuerung (Branch und Gosub)#ue#
B .70:aa bzw. .74:aa Unbedingter Sprung an die Adresse.
- ICOUNT := aaaa (aaaa gilt nur fr den
+ ICOUNT := aaaa (aaaa gilt nur für den
Debugger/Tracer, da die Adressrechung intern
komplizierter ist)
@@ -1051,10 +1051,10 @@ BT .00:aa bzw. .04:aa Wenn der letzte Befehl TRUE lieferte, Sprung an
FI
BRCOMP 7F 20 dddd vvvv Wenn das Wort an der Adresse dddd kleiner als 0
- oder grer als die Konstante vvvv ist, wird mit
+ oder größer als die Konstante vvvv ist, wird mit
dem auf den BRCOMP-Befehl folgenden Befehl
(i.d.R. ein B-Befehl) fortgefahren. Sonst wird
- die Ausfhrung an der Adresse des
+ die Ausführung an der Adresse des
BRCOMP-Befehls + 2 + (dddd) (auch ein B-Befehl)
fortgesetzt.
IF <d1> >= 0 AND <d1> <= vvvv
@@ -1095,7 +1095,7 @@ PPROC 7F 1E mmmm Die Adresse der Prozedur mit der Modulnummer
<SP> := mod addr (mmmm) ;
SP INCR 2
-HEAD vvvv (kein Opcode) Der Speicherplatz fr lokale Variablen und
+HEAD vvvv (kein Opcode) Der Speicherplatz für lokale Variablen und
Parameter in diesem Modul wird vermerkt, indem
der Stacktop um vvvv erhoht wird.
TOP INCR vvvv ;
@@ -1128,15 +1128,15 @@ EXEC 7F 1D dddd Das Modul dessen Nummer in dem Wort an der
CMOD := high (ICOUNT) + 16 .
RTN 7F 00 Das Modul wird verlassen, die
- Programmausfhrung setzt an der, auf dem Stack
+ Programmausführung setzt an der, auf dem Stack
gesicherten, Adresse fort.
TOP := LBASE ;
SP := TOP + 4 ;
(LBASE, PBASE, ICOUNT, ENSTOP, ARITH) := <TOP>
RTNT 7F 01 Das Modul wird verlassen und der BOOL-Wert TRUE
- geliefert (fr den dem CALL/PCALL folgenden
- BT/BF-Befehl). Die Programmausfhrung setzt an
+ geliefert (für den dem CALL/PCALL folgenden
+ BT/BF-Befehl). Die Programmausführung setzt an
der, auf dem Stack gesicherten, Adresse fort.
TOP := LBASE ;
SP := TOP + 4 ;
@@ -1144,8 +1144,8 @@ RTNT 7F 01 Das Modul wird verlassen und der BOOL-Wert TRUE
FLAG := TRUE
RTNF 7F 02 Das Modul wird verlassen und der BOOL-Wert
- FALSE geliefert (fr den dem CALL/PCALL
- folgenden BT/BF-Befehl). Die Programmausfhrung setzt an
+ FALSE geliefert (für den dem CALL/PCALL
+ folgenden BT/BF-Befehl). Die Programmausführung setzt an
der, auf dem Stack gesicherten, Adresse fort.
TOP := LBASE ;
SP := TOP + 4 ;
@@ -1156,20 +1156,20 @@ RTNF 7F 02 Das Modul wird verlassen und der BOOL-Wert
#ub#2.1.10 Datenadressrechnung#ue#
REF .5C:dd dddd An der zweiten Adresse wird die Referenzadresse
- der ersten Adresse abgelegt (2 Wrt-MOV).
+ der ersten Adresse abgelegt (2 Wört-MOV).
REF<d2> := d1
SUBS .60:vv vvvv dddd dddd dddd
Wenn der Inhalt des Wortes an der dritten
- Adresse (ROW-Index) grer oder gleich der
+ Adresse (ROW-Index) größer oder gleich der
Konstanten vvvv (limit-1) ist, wird "Subscript
- berlauf" gemeldet, falls der ROW-Index kleiner
- als eins ist wird "Subscript nterlauf"
+ Überlauf" gemeldet, falls der ROW-Index kleiner
+ als eins ist wird "Subscript Ünterlauf"
gemeldet. Andernfalls wird der um eins
verringerte ROW-Index mit der Konstanten vv
(Size eines ROW-Elements) multipliziert,
zur Basisaddresse (vierter Parameter) addiert
- und als Referenzadresse an der fnften Adresse
+ und als Referenzadresse an der fünften Adresse
abgelegt.
IF INT<d1> <= vvvv AND INT<d1> > 0
THEN REF<d3> := d2 + vv * (INT<d1>-1)
@@ -1185,7 +1185,7 @@ SEL .64:dd vvvv dddd Die Konstante vvvv (Selektor-Offset einer
CTT 7F 0C dddd dddd Die Adresse des Strings(!) an der ersten
Adresse wird an der zweiten Adresse als
Referenzadresse (Segment 0, DS 4) abgelegt.
- CTT steht fr Compiler-Table-Text.
+ CTT steht für Compiler-Table-Text.
REF<d2> := REF (0004, INT<d1>)
@@ -1222,11 +1222,11 @@ GW 7F 70 dddd dddd dddd Das Wort im Datenraum 4, das durch das Segment
BCRD 7F 08 dddd dddd Bereitet das Lesen einzelner Zeichen aus dem
Segment 4 des Datenraumes 4 vor (Nametable).
- Das Wort an der ersten Adresse enthlt die
+ Das Wort an der ersten Adresse enthält die
Startadresse des Strings und zeigt auf das
- Lngenbyte. Nach dem Ausfhren des Befehls
- enthlt das Wort an der zweiten Adresse das
- Lngenbyte und der Pointer an der ersten
+ Längenbyte. Nach dem Ausführen des Befehls
+ enthält das Wort an der zweiten Adresse das
+ Längenbyte und der Pointer an der ersten
Adresse zeigt auf das erste Zeichen des Textes.
Das Bit 15 des Pointers ist gesetzt, wenn das
highbyte adressiert wird.
@@ -1235,8 +1235,8 @@ BCRD 7F 08 dddd dddd Bereitet das Lesen einzelner Zeichen aus dem
CRD 7F 09 dddd dddd Liest ein Zeichen aus dem String, dessen Lesen
mit BCRD vorbereitet wurde. Die erste Adresse
- enthlt einen Stringpointer, der nach jedem
- Lesen erhht wird, die zweite Adresse enthlt
+ enthält einen Stringpointer, der nach jedem
+ Lesen erhöht wird, die zweite Adresse enthält
nach dem Aufruf des Befehls den Code des
gelesenen Zeichens.
INT<d2> := code (STRING<d1>) ;
@@ -1244,14 +1244,14 @@ CRD 7F 09 dddd dddd Liest ein Zeichen aus dem String, dessen Lesen
CWR 7F 0B dddd dddd dddd Der Hashcode an der ersten Adresse wird mit dem
zu schreibenden Zeichencode (dritte Adresse)
- verknpft und in den Bereich 0..1023 gemapt.
+ verknüpft und in den Bereich 0..1023 gemapt.
Das Zeichen wird an die Position des Pointers
geschrieben (Bit 15 des Pointers unterscheidet
- lowbyte und highbyte). Anschlieend wird der
- Pointer auf die Adresse des nchsten Zeichens
+ lowbyte und highbyte). Anschließend wird der
+ Pointer auf die Adresse des nächsten Zeichens
gesetzt. Der Pointer steht an der zweiten
Adresse. Vor dem Schreiben des ersten Zeichens
- mu der Hashcode auf 0 gesetzt werden.
+ muß der Hashcode auf 0 gesetzt werden.
INT<d1> INCR INT<d1> ;
IF INT<d1> > 1023 THEN INT<d1> DECR 1023 FI ;
INT<d1> := (INT<d1> + INT<d3>) MOD 1024 ;
@@ -1260,15 +1260,15 @@ CWR 7F 0B dddd dddd dddd Der Hashcode an der ersten Adresse wird mit dem
ECWR 7F 0A dddd dddd dddd Das Schreiben eines Strings wird beendet. Dazu
wird an der ersten Adresse der Stringpointer
- bergegeben, an der zweiten Adresse wird die
- endgltige Stringlnge geliefert. An der
- dritten Adresse wird die Adresse des nchsten
+ übergegeben, an der zweiten Adresse wird die
+ endgültige Stringlänge geliefert. An der
+ dritten Adresse wird die Adresse des nächsten
freien Platzes nach diesem Stringende
geliefert.
GETC 7F 0D dddd dddd dddd Dieser Befehl liefert ein BOOL-Result und zwar
TRUE, wenn das Wort an der zweiten Adresse
- grer als 0 und kleiner als die Lnge des
+ größer als 0 und kleiner als die Länge des
TEXTes an der ersten Adresse ist. In diesem Fall
wird im Wort an der dritten Adresse der Code
des n. Zeichens des TEXTes geliefert. Die
@@ -1317,7 +1317,7 @@ GCADDR 7F 17 dddd dddd dddd Diese Instruktion liefert ein BOOL-Result.
es mit zwei Opcodes (00/04 bzw. 70/74).
byte := high(INT<d1>)-high(INT<d2>) ;
IF byte < 0
- THEN byte INCR 16 ; (* Bit fr LN1 bzw. B1
+ THEN byte INCR 16 ; (* Bit für LN1 bzw. B1
Opcode *)
rotate (byte, right) ;
FI ;
@@ -1326,19 +1326,19 @@ GCADDR 7F 17 dddd dddd dddd Diese Instruktion liefert ein BOOL-Result.
GETTAB 7F 1A Kopiert den Inhalt der unteren 64KB des
Segments 5 im DS 4 in das Segment 4.
- (permanentes Segment --> temporres Segment)
+ (permanentes Segment --> temporäres Segment)
DS4: 50000..57FFF --> 40000..47FFF (Wortaddr)
PUTTAB 7F 1B Kopiert den Inhalt der unteren 64KB des Segments
- 4 im DS 4 in das Segment 5. (Temporre Daten
+ 4 im DS 4 in das Segment 5. (Temporäre Daten
werden permanent)
DS4: 40000..47FFF --> 50000..57FFF (Wortaddr)
ERTAB 7F 1C Kopiert den Inhalt des Segments 6 im DS 4
(besteht nur aus FF's) in die Segmente 4 und 7,
- d.h. das temporre Segment (u.a. Symboltabelle)
+ d.h. das temporäre Segment (u.a. Symboltabelle)
und das Segment mit Compiler-Intermediatestring
- werden gelscht.
+ werden gelöscht.
DS4: 60000..6FDFF --> 40000..4FDFF ;
DS4: 60000..6FDFF --> 70000..7FDFF
@@ -1355,7 +1355,7 @@ CDBTXT 7F 74 dddd dddd Der String(!) an der Adresse <d1> im Segment 5
STOP 7F 04 Alle (aufrufenden) Module werden verlassen, bis
das erste im 'disablestop'-Zustand angetroffen
- wird (hnlich errorstop ("")) ;
+ wird (Ähnlich errorstop ("")) ;
WHILE ENSTOP REP return PER .
return:
@@ -1382,7 +1382,7 @@ SETERR 7F 4D dddd Es wird der Fehlerzustand eingeschaltet, das
FI
CLRERR 7F 4F Falls der Fehlerzustand vorliegt, wird der
- Fehler gelscht.
+ Fehler gelöscht.
ERROR := FALSE
LN .00:vv und .04:vv Die Konstante vv wird in das pcb-Feld
@@ -1420,14 +1420,14 @@ CLOCK 7F 66 dddd dddd Die Systemuhr mit der Nummer, die durch den
#ub#2.1.14 Systemglobale Instruktionen#ue#
KE 7F 06 Der EUMEL0-Debugger 'Info' wird aufgerufen,
- falls dies ein infofhiges System ist.
+ falls dies ein infofähiges System ist.
SYSG 7F 19 Sysgen (Nur beim Sysgen-Urlader).
INFOPW 7F 51 dddd dddd dddd Das bis zu 10 Zeichen lange Infopassword an der
zweiten Adresse (TEXT) wird eingestellt, falls
das alte Infopassword mit dem TEXT an der
- ersten Adresse bereinstimmt. In diesem Fall
+ ersten Adresse übereinstimmt. In diesem Fall
wird im Wort an der dritten Adresse eine 0
abgelegt, andernfalls eine 1. Dies ist kein
privilegierter Befehl, er funktioniert
@@ -1439,9 +1439,9 @@ INFOPW 7F 51 dddd dddd dddd Das bis zu 10 Zeichen lange Infopassword an der
ELSE INT<d3> := 1
FI
-STORAGE 7F 5A dddd dddd Die Gre des vorhandene Hintergrundspeichers
+STORAGE 7F 5A dddd dddd Die Größe des vorhandene Hintergrundspeichers
in KB wird im Wort an der ersten Adresse
- abgelegt, die Gre des benutzten
+ abgelegt, die Größe des benutzten
Hintergrundspeichers an der zweiten Adresse.
INT<d1> := size ;
INT<d2> := used
@@ -1458,23 +1458,23 @@ SETNOW 7F 67 dddd Die Realtime-Clock (clock(1)) des Systems wird
voraus.
clock (1) := REAL<d1>
-SESSION 7F 7E dddd Der aktuelle Wert des Systemlaufzhlers wird
+SESSION 7F 7E dddd Der aktuelle Wert des Systemlaufzählers wird
an der Adresse dddd abgelegt.
INT<d1> := systemlaufzaehler
ID 7F 81 dddd dddd Der Wert des id-Feldes mit der Nummer, die an
der ersten Adresse steht, wird in das Wort an
- der zweiten Adresse geschrieben. Fr dei
+ der zweiten Adresse geschrieben. Für dei
Nummern der id-Felder gilt:
Feld Inhalt
- 0 Kleinste HG-Version fr EUMEL0
+ 0 Kleinste HG-Version für EUMEL0
1 CPU-Type (1=Z80,3=8086,4=68000,5=80286)
2 Urlader-Version
3 Reserviert
4 Lizenznummer des Shards
5 Installationsnummer
- 6 Frei fr Shard
- 7 Frei fr Shard
+ 6 Frei für Shard
+ 7 Frei für Shard
IF INT<d1> < 4
THEN INT<d2> := eumel0 id (INT<d1>)
ELSE INT<d2> := shard id (INT<d1>)
@@ -1654,8 +1654,8 @@ XOR 7F 79 dddd dddd dddd
#ub#3.1 PACKET address#ue#
-Mit diesem Paket werden die Operationen fr 16 Bit Adressrechnung zur
-Verfgung gestellt.
+Mit diesem Paket werden die Operationen für 16 Bit Adressrechnung zur
+Verfügung gestellt.
TEXT PROC hex8 (INT CONST dez) :
Der INT-Parameter (0..255) wird in eine 2-Zeichen Hexdarstellung
@@ -1693,7 +1693,7 @@ TEXT PROC cdbtext (INT CONST address) :
PROC splitword (INT VAR word, lowbyte) :
- Das Wort 'word' wird in den hherwertigen und niederwertigen Teil zerlegt.
+ Das Wort 'word' wird in den höherwertigen und niederwertigen Teil zerlegt.
Das highbyte steht nach dieser Operation in 'word', das lowbyte in
'lowbyte'.
@@ -1703,44 +1703,44 @@ PROC makeword (INT VAR word, INT CONST lowbyte) :
BOOL PROC ulseq (INT CONST left, right) :
- '<=' fr positive INT-Zahlen (0..65535).
+ '<=' für positive INT-Zahlen (0..65535).
OP INC (INT VAR word) :
- 'word INCR 1' fr positive INT-Zahlen (0..65535), ohne da ein berlauf
+ 'word INCR 1' für positive INT-Zahlen (0..65535), ohne daß ein Überlauf
auftritt.
OP DEC (INT VAR word) :
- 'word DECR 1' fr poistive INT-Zahlen (0..65535), ohne da ein Unterlauf
+ 'word DECR 1' für poistive INT-Zahlen (0..65535), ohne daß ein Unterlauf
auftritt.
INT OP ADD (INT CONST left, right) :
- 'left + right' fr positive INT-Zahlen (0..65535), ohne da ein berlauf
+ 'left + right' für positive INT-Zahlen (0..65535), ohne daß ein Überlauf
auftritt.
INT OP SUB (INT CONST left, right) :
- 'left - right' fr positive INT-Zahlen (0..65535), ohne da ein berlauf
+ 'left - right' für positive INT-Zahlen (0..65535), ohne daß ein Überlauf
auftritt.
INT OP MUL (INT CONST left, right) :
- 'left * right' fr positive INT-Zahlen (0..65535), ohne da ein berlauf
+ 'left * right' für positive INT-Zahlen (0..65535), ohne daß ein Überlauf
auftritt.
#ub#3.2 PACKET table routines#ue#
PROC init module table (TEXT CONST name) :
- Ein benannter Datenraum ('name') wird eingerichtet. Dieser enthlt die
- aufbereitete Permanenttabelle fr schnelle Zugriffe. Die Datenstruktur
- beschreibt drei Tabellen (PACKETTABLE, MODULETABLE, TYPETABLE), ber die
- zu einer Modulnummer deren Name und deren Parameter, sowie der zugehrige
+ Ein benannter Datenraum ('name') wird eingerichtet. Dieser enthält die
+ aufbereitete Permanenttabelle für schnelle Zugriffe. Die Datenstruktur
+ beschreibt drei Tabellen (PACKETTABLE, MODULETABLE, TYPETABLE), über die
+ zu einer Modulnummer deren Name und deren Parameter, sowie der zugehörige
Paketname gefunden werden kann, wenn sie in der Permanenttabelle steht.
- Die TYPETABLE enthlt zu jedem TYPE, der in der Permanenttabelle steht,
- seine Gre in Words.
+ Die TYPETABLE enthält zu jedem TYPE, der in der Permanenttabelle steht,
+ seine Größe in Words.
PROC add modules :
@@ -1762,11 +1762,11 @@ TEXT PROC packetname (INT CONST module number) :
Der Name des Pakets, das das Modul mit der Nummer 'module number'
definiert, wird als TEXT geliefert. Falls das Modul nicht in der
Permanenttabelle steht, wird der Name des letzten vorher insertierten
- Pakets geliefert (In manchen Fllen also nicht der wahre Paketname).
+ Pakets geliefert (In manchen Fällen also nicht der wahre Paketname).
INT PROC storage (TEXT CONST typename) :
- Aus der Modultabelle wird Gre des TYPEs mit dem Namen 'typname' gelesen.
+ Aus der Modultabelle wird Größe des TYPEs mit dem Namen 'typname' gelesen.
Wenn der Typ nicht in der Permanenttabelle steht, wird 0 geliefert.
@@ -1774,7 +1774,7 @@ PROC getmodulenumber (INT VAR module number) :
Erfragt eine Modulnummer am Bildschirm. Der Benutzer kann entweder eine
Zahl eingeben oder den Namen einer PROC/OP. Wenn mehrere Module mit diesem
Namen existieren, wird eine Auswahlliste angeboten. In 'module number'
- wird die ausgewhlte Modulnummer bergeben.
+ wird die ausgewählte Modulnummer übergeben.
INT PROC codeaddress (INT CONST module number) :
@@ -1787,7 +1787,7 @@ INT PROC codesegment (INT CONST module number) :
INT PROC hash (TEXT CONST object name) :
- Berechnet den Hashcode des Objekts 'object name', um ber die Hashtable,
+ Berechnet den Hashcode des Objekts 'object name', um über die Hashtable,
Nametable, Permanenttable die Parameter eines Objekts zu suchen.
@@ -1796,8 +1796,8 @@ INT PROC hash (TEXT CONST object name) :
#ub#3.3.1 Zugriff auf globale Parameter#ue#
PROC default no runtime :
- Bereitet den Decoder darauf vor, da keine runtime vorliegt, d.h.
- Stackzugriffe nicht sinnvoll sind. Fr Parameter mit lokalen Adressen
+ Bereitet den Decoder darauf vor, daß keine runtime vorliegt, d.h.
+ Stackzugriffe nicht sinnvoll sind. Für Parameter mit lokalen Adressen
werden deshalb keine Variableninhalte dargestellt. Bei fast allen
Decoderaufrufen mit 'decode'/'decode module' bis auf die 'decode' mit
mehr als zwei Parametern, wird 'default no runtime' automatisch aufgerufen.
@@ -1805,23 +1805,23 @@ PROC default no runtime :
PROC set parameters (INT CONST lbase, pbase, line number, c8k) :
PROC get parameters (INT VAR lbase, pbase, line number, c8k) :
- Einstell- und Informationsprozeduren (fr den Tracer). 'lbase' ist die
- lokale Basis (Stackoffset fr dies Modul), 'pbase' ist das highbyte der
+ Einstell- und Informationsprozeduren (für den Tracer). 'lbase' ist die
+ lokale Basis (Stackoffset für dies Modul), 'pbase' ist das highbyte der
Paketbasis, 'line number' ist die letzte 'LN'-Zeilennummer, 'c8k' (cmod)
wird von EUMEL0 beim Eintritt in ein Modul auf
- high (Modulstartaddresse + 16KB) gesetzt (fr Branch-Befehle).
+ high (Modulstartaddresse + 16KB) gesetzt (für Branch-Befehle).
PROC pbase (INT CONST pbase highbyte) :
INT PROC pbase :
- Einstell- und Informationsprozeduren, nicht nur fr den Tracer. Die
+ Einstell- und Informationsprozeduren, nicht nur für den Tracer. Die
Paketbasis (Globale Daten) wird gesetzt. Dazu wird nur das Highbyte (z.B.
- nach 'PENTER') bergeben.
+ nach 'PENTER') übergeben.
PROC lbase (INT CONST local base) :
- Einstellprozedur fr den Tracer. Stellt whrend der runtime die aktuelle
- Basis ein. Wird der Decoder nicht whrend runtime betrieben, sollte
+ Einstellprozedur für den Tracer. Stellt während der runtime die aktuelle
+ Basis ein. Wird der Decoder nicht während runtime betrieben, sollte
lbase(-1) eingestellt werden.
@@ -1830,44 +1830,44 @@ INT PROC line number :
PROC list filename (TEXT CONST name) :
Stellt den Namens-Prefix der Outputfiles ein. Voreingestellt ist "". An
- den Filename wird ".n" angehngt, wobei n mit '0' beginnt.
+ den Filename wird ".n" angehängt, wobei n mit '0' beginnt.
PROC bool result (BOOL CONST status) :
BOOL PROC bool result :
- Einstell- und Informationsprozeduren, die fr den Tracer bentigt werden.
+ Einstell- und Informationsprozeduren, die für den Tracer benötigt werden.
Lieferte der letzte disassemblierte Befehl ein BOOL-Result ?
PROC with object address (BOOL CONST status) :
BOOL with object address :
- Einstell- und Informationsprozeduren, nicht nur fr den Tracer. Sollen
- auer den Darstellungen der Speicherinhalte auch die Parameteradressen (in
+ Einstell- und Informationsprozeduren, nicht nur für den Tracer. Sollen
+ außer den Darstellungen der Speicherinhalte auch die Parameteradressen (in
spitzen Klammern) ausgegeben werden ?
PROC with code words (BOOL CONST status) :
BOOL PROC with code words :
- Einstell- und Informationsprozeduren, nicht fr den Tracer. Sollen ab der
+ Einstell- und Informationsprozeduren, nicht für den Tracer. Sollen ab der
80. Spalte in der Outputfile die Hexdarstellungen der dekodierten
- Codewrter ausgegeben werden ?
+ Codewörter ausgegeben werden ?
#ub#3.3.2 Aufruf des Disassemblers#ue#
PROC decode :
Aufruf des Decoders. Die Modulnummer der ersten zu dekodierenden Prozedur
- wird erfragt. Die Modultabelle wird ggf. ergnzt, es wird 'default no
+ wird erfragt. Die Modultabelle wird ggf. ergänzt, es wird 'default no
runtime' eingestellt.
PROC decode (INT CONST first module number) :
Aufruf des Decoders. Die Modulnummer der ersten zu dekodierenden Prozedur
- wird bergeben. Die Modultabelle wird ggf. ergnzt, es wird 'default no
+ wird übergeben. Die Modultabelle wird ggf. ergänzt, es wird 'default no
runtime' eingestellt.
PROC decode (INT CONST segment, address) :
Aufruf des Decoders. Die Disassemblierung beginnt in dem
- Codesegment/Adresse, das/die als Parameter bergeben wird. Die Modultabelle
- wird ggf. ergnzt, es wird 'default no runtime' eingestellt.
+ Codesegment/Adresse, das/die als Parameter übergeben wird. Die Modultabelle
+ wird ggf. ergänzt, es wird 'default no runtime' eingestellt.
PROC decode (INT CONST segment, INT VAR address, INT CONST to addr,
@@ -1876,7 +1876,7 @@ PROC decode (INT CONST segment, INT VAR address, INT CONST to addr,
die Modultabelle. Der bei 'address' beginnende und bei 'to addr' endende
Adressbereich im Codesegment 'segment' wird dekodiert. Ist 'only one
module' TRUE, wird nur bis zum Ende des aktuellen Moduls dekodiert.
- 'address' zeigt nach dem Prozeduraufruf auf die nchste Instruktion nach
+ 'address' zeigt nach dem Prozeduraufruf auf die nächste Instruktion nach
'to addr'.
@@ -1884,21 +1884,21 @@ PROC decode (INT CONST segment, INT VAR address, TEXT VAR words,
instruction, INT PROC (INT CONST, INT VAR, TEXT VAR) next word)):
Diese Prozedur ist das Herz des Decoders. Sie disassembliert eine
Instruktion, die im Codesegment 'segment', Adresse 'address' beginnt und
- legt die mit 'nextword' gelesenen Wrter als Hexdarstellung in 'words' ab.
+ legt die mit 'nextword' gelesenen Wörter als Hexdarstellung in 'words' ab.
Die dekodierte Instruktion steht dann in 'instruction'. Vor dem Aufruf
dieser Prozedur sollte 'words' und 'instruction' niltext zugewiesen werden.
Die passende Prozedur 'nextword' wird auch vom 'eumel decoder'
- herausgereicht. 'address' zeigt nach der Ausfhrung des Befehls auf die
- nchste Instruktion.
+ herausgereicht. 'address' zeigt nach der Ausführung des Befehls auf die
+ nächste Instruktion.
PROC decodemodule :
- Wie 'decode', nur wird bis nur zum Ende des gewnschten Moduls
+ Wie 'decode', nur wird bis nur zum Ende des gewünschten Moduls
disassembliert.
PROC decodemodule (INT CONST module number) :
- Wie 'decode', nur wird bis nur zum Ende des gewnschten Moduls
+ Wie 'decode', nur wird bis nur zum Ende des gewünschten Moduls
disassembliert.
@@ -1907,23 +1907,23 @@ PROC decodemodule (INT CONST module number) :
PROC nextmoduleheader (INT CONST segment, INT CONST address,
INT VAR header address, module number) :
Diese Prozedur findet ab der angegeben Adresse ('segment'/'address') den
- Anfang des nchsten Moduls. In 'header address' wird die Startadresse des
+ Anfang des nächsten Moduls. In 'header address' wird die Startadresse des
gefundenen Moduls geliefert (bleibt im Segment 'segment'), in 'module
number' die Nummer des gefundenen Moduls.
INT PROC next word (INT CONST segment, INT VAR address, TEXT VAR words) :
- Diese Prozedur liefert das durch 'segment'/'address' angegeben Wort, hngt
- die Hexdarstellung dieses Wortes an 'words' an und erhht 'address' um
+ Diese Prozedur liefert das durch 'segment'/'address' angegeben Wort, hängt
+ die Hexdarstellung dieses Wortes an 'words' an und erhöht 'address' um
eins.
TEXT PROC data representation (INT CONST data addr, segment, address, type):
Diese Prozedur liefert die Darstellung des Parameters 'data addr' ggf. mit
Adresse (--> with object address). 'segment'/'address' bezeichnet die
- Position, an der die Instruktion fr diesen Parameter steht. 'type' ist
+ Position, an der die Instruktion für diesen Parameter steht. 'type' ist
ein (durch die Instruktion festgelegter) Typ des Parameters, mit dem die
- Art der Darstellung gewhlt wird (TEXT, REAL, INT, ...). Im Gegensatz zu
+ Art der Darstellung gewählt wird (TEXT, REAL, INT, ...). Im Gegensatz zu
'object representation' braucht bei dieser Prozedur keine Darstellung
vorhanden sein. In diesem Falle wird nur z.B. der Stackoffset '<L n>'
ausgegeben.
@@ -1933,13 +1933,13 @@ TEXT PROC object representation (INT CONST data segment, data address,
segment, address, type) :
Diese Prozedur wird von 'data representation' aufgerufen und liefert die
Darstellung des Parameters. In 'data segment'/'data address' wird die
- Anfangsadresse der darzustellenden Daten bergeben. Die anderen drei
+ Anfangsadresse der darzustellenden Daten übergeben. Die anderen drei
Parameter verhalten sich wie bei 'data representation'.
TEXT PROC last actual parameter :
Liefert den Wert (nach TEXT konvertiert) des letzten dekodierten aktuellen
- Parameters (am sinnvollsten whrend runtime). Diese prozedur wird vom
+ Parameters (am sinnvollsten während runtime). Diese prozedur wird vom
Tracer benutzt.
@@ -1950,25 +1950,25 @@ TEXT PROC last actual parameter :
PROC prot file (TEXT CONST filename) :
TEXT PROC prot file :
- Einstell- und Informationsprozeduren fr den Namen der Protokollfile.
+ Einstell- und Informationsprozeduren für den Namen der Protokollfile.
Wird ein 'filename' ungleich niltext eingestellt, dann werden die
- dekodierten Instruktionen whrend der Ablaufverfolgung zustzlich in diese
+ dekodierten Instruktionen während der Ablaufverfolgung zusätzlich in diese
File geschrieben.
PROC source file (TEXT CONST filename) :
TEXT PROC source file :
- Einstell- und Informationsprozeduren fr den Namen der Quelltextdatei.
+ Einstell- und Informationsprozeduren für den Namen der Quelltextdatei.
Wird ein 'filename' ungleich niltext eingestellt, dann wird nach dem
- Ausfhren eines 'LN'-Befehls (LineNumber) die Zeile mit dieser Nummer aus
+ Ausführen eines 'LN'-Befehls (LineNumber) die Zeile mit dieser Nummer aus
der Quelldatei gelesen und parallel zur dekodierten EUMEL0-Instruktion
angezeigt.
PROC tracer channel (INT CONST) :
INT PROC tracerchannel :
- Einstell- und Informationsprozeduren fr den Kanal, an dem das Programm
- ausgefhrt werden soll. Die Ablaufverfolgung bleibt an dem Kanal, an dem
+ Einstell- und Informationsprozeduren für den Kanal, an dem das Programm
+ ausgeführt werden soll. Die Ablaufverfolgung bleibt an dem Kanal, an dem
die PROC/OP aufgerufen wurde.
@@ -1982,40 +1982,40 @@ INT PROC tracerchannel :
PROC trace :
Diese Prozedur erfragt vom Benutzer die PROC/OP, bei der der die
- Ablaufverfogung beginnen soll. Anschlieend mu der Aufruf der PROC/OP
- eingegeben werden. Der Benutzer wird auerdem nach dem Namen der
+ Ablaufverfogung beginnen soll. Anschließend muß der Aufruf der PROC/OP
+ eingegeben werden. Der Benutzer wird außerdem nach dem Namen der
compilierten Quelldatei, dem Namen der Protokollfile und dem
Abarbeitungskanal gefragt. Nachdem alle Angaben gemacht worden sind, wird
- der PROC/OP-Aufruf mit 'do' ausgefhrt.
+ der PROC/OP-Aufruf mit 'do' ausgeführt.
PROC set breakpoint :
Die Modultabelle wird ggf. erweitert, der Benutzer wird nach dem Namen
einer PROC/OP gefragt, deren Codeabarbeitung verfolgt werden soll. Der Code
- dieser PROC/OP mu im Codesegment 3 stehen (sonst erfolgt ein 'errorstop').
+ dieser PROC/OP muß im Codesegment 3 stehen (sonst erfolgt ein 'errorstop').
Der Protokoll- und Sourcefilename werden auf niltext gesetzt.
PROC set breakpoint (INT CONST breakpointnr, address) :
- Setzt an der bergebenen Codeadresse im Segment 3 einen Breakpoint der
+ Setzt an der übergebenen Codeadresse im Segment 3 einen Breakpoint der
beiden Breakpoints (1 oder 2 als 'breakpointnr'). Der Benuzter ist selbst
- dafr verantwortlich da
+ dafür verantwortlich daß
- dies nicht die Einsprungsadresse eines Moduls ist (HEAD-Instruktion),
- - die bergebene Adresse das erste (Opcode-) Wort einer Instruktion ist,
+ - die übergebene Adresse das erste (Opcode-) Wort einer Instruktion ist,
- vor dem Aufruf des Moduls die Paketbasis korrekt gesetzt ist, falls
- vor der ersten Instruktion mit Parametern kein 'PENTER' ausgefhrt wird.
+ vor der ersten Instruktion mit Parametern kein 'PENTER' ausgeführt wird.
PROC reset breakpoints :
- Die Breakpoints werden zurckgesetzt und der (wegen des Breakpointhandler-
- CALLs) gesicherte Code wieder an seinen Originalplatz zurckgeschrieben.
+ Die Breakpoints werden zurückgesetzt und der (wegen des Breakpointhandler-
+ CALLs) gesicherte Code wieder an seinen Originalplatz zurückgeschrieben.
PROC reset breakpoint (INT CONST breakpointnr) :
Es wird nur gezielt der eine Breakpoint mit der Nummer 'breakpointnr'
- zurckgesetzt.
+ zurückgesetzt.
PROC list breakpoints :
Der Status, die Adresse und der gesicherte Code (an dieser Adresse) werden
- fr beide Breakpoints gelistet.
+ für beide Breakpoints gelistet.