Adresse in Hex. Inhalt / Funktion
0000
-001F
16 Register für Interruptebene 0 (normale Ausführung)
0020
-003F
16 Register für Interruptebene 1 (Async. comm.)
0040
-005F
16 Register für Interruptebene 2 (Tape/Disk/Printer/Serial I/O)
0060
-007F
16 Register für Interruptebene 3 (Tastatur)
0055
Printer Status Byte A
    Bit 0: Print emitter latch 3
    Bit 1: Print emitter latch 2
    Bit 2: Print emitter latch 1
    Bit 3: Wire check or not ready
    Bit 4: Forms emitter B
    Bit 5: Forms emitter A
    Bit 6: Not end of forms
    Bit 7: Left margin signal
0057
Printer Status Byte B
    Bit 0: Print motor latch B (0 = not B)
    Bit 1: Print motor latch A (0 = not A)
    Bit 2: Print emitter interrupt
    Bit 3: Not ready interrupt
    Bit 4: Forms motor latch B (0 = not B)
    Bit 5: Forms motor latch A (0 = not A)
    Bit 6: Forms control interrupt
    Bit 7: Timer interrupt
0082
-008A
Zwischenspeicher für Diskette I/O Supervisor
(Sicherung der Rücksprungadresse in R2 für interne Unterprogramme)
008F
Tape Status Byte
    Bit 0: End Of Tape (EOT)
    Bit 1: No device address E response
    Bit 2: Tape running
    Bit 3: Cartridge in place
    Bit 4: Erase on
    Bit 5: LED and erase OK
    Bit 6: File protected
    Bit 7: No beginning of tape (BOT)
0090
Interne Variable für I/O Supervisor
Diskette:
    Bit 0:
    Bit 1:
    Bit 2: ?
    Bit 3: 1=MFM
    Bit 4: ?
    Bit 5:
    Bit 6:
    Bit 7: ?
009A
Interne Variable für I/O Supervisor
Diskette: Zylinder für I/O
009C
Interne Variable für I/O Supervisor
Diskette: Seite für I/O (0=Seite 0, ungleich 0=Seite 1)
009E
Interne Variable für I/O Supervisor
Diskette: Sektor für I/O
00A0
Konstante $0000
00A2
System-Flags
    Bit 0: 1=Keine Retries bei CRC-Fehlern während Diskette I/O
    Bit 1:
    Bit 2:
    Bit 3:
    Bit 4:
    Bit 5:
    Bit 6:
    Bit 7:

    Bit 8:
    Bit 9:
    Bit 10:
    Bit 11:
    Bit 12:
    Bit 13:
    Bit 14: 1=In Hexdump-Routine
    Bit 15:
00A4
System-Flags
    Bit 0: 1=ATTN gedrückt
    Bit 1:
    Bit 2:
    Bit 3: 1=Tastaturinterrupt ohne Key Pending Flag
    Bit 4:
    Bit 5: 1=APL, 0=BASIC
    Bit 6: 1=I/O active
    Bit 7: 1=CRT on, 0=CRT off

    Bit 8: Level 0 Modus - 1=RWS, 0=ROS
    Bit 9: Level 1 Modus - 1=RWS, 0=ROS
    Bit 10: Level 2 Modus - 1=RWS, 0=ROS
    Bit 11: Level 3 Modus - 1=RWS, 0=ROS
    Bit 12: Druckerstatus - 1=Drucker arbeitet, 0=Drucker ruht
    Bit 13: Druckerstatus - ???
    Bit 14: Druckerstatus - ???
    Bit 15: (1=Übersetze Scancode?)
00A6
Adresse der Routine für Gerätetest
Testet, ob ein angegebenes Gerät (über IOCB) vorhanden und bereit ist.
R2 = Rücksprungadresse, R3 = Adresse IOCB
Wenn Gerät bereit, dann Rücksprung nach R2+2, sonst Ausgabe von "ERROR 0xx yyy" in Zeile 16 und Rücksprung nach R2.
00A8
Höchste verfügbare RWS-Adresse.
Nach Neustart gleicher Wert wie in $00AA; nach Laden von IMFs oder Customer Support Routines verringert sich der Wert.
00AA
Letzte vorhandene Adresse im R/W Storage (RAM).
Hier steht, wo der Hauptspeicher aufhört. Bei einem 32kB-Rechner steht hier z.B. 7FFF.
00AC
Adresse der Routine zum Sprung ins Executable ROS
R2 = Rücksprungadresse, R8 = Zieladresse im ROS, evtl. weitere Parameter je nach aufzurufender Funktion
00AE
Adresse der I/O Supervisor Routine im Executable ROS, die alle I/O-Operationen über einen IOCB ausführt.
00B0
Scan- oder Tastencode der zuletzt gedrückten Taste
00B6
00BE
Adresse der ersten frei verwendbaren Speicherstelle, i.d.R. gleich $0700.
Bei ($BE)-$20 ist der Systemcode 'IBM5100 ' (insg. 13 Zeichen) zu finden, wie er für das Inhaltsverzeichnis auf Diskette gebraucht wird.
Vorsicht: Diverse ROS-Routinen benutzen den Bereich als Zwischenspeicher bzw. für interne Variablen! Z.B. liegt ab $07C0 die Vektortabelle mit den Supervisorroutinen.
00C0
Adresse der Screen Dump Routine im Executable ROS
Diese Routine wird z.B. durch die Tastenkombination CMD-Print aufgerufen.
00D2
Zwischenspeicher für Diskette I/O Supervisor
Rücksprungadresse zum Aufrufer des I/O Supervisors
00D6
(IMF Flags)
    Bit 14: 1=Translated Sort Message installiert
00D8
Adresse der Vektortabelle mit den Einsprungadressen in den I/O Supervisor, für Geräteadressen 0 bis F. Jeder Tabelleneintrag besteht aus zwei Worten, das erste Wort ist die Adresse der systemeigenen I/O Routine, das zweite Wort, wenn ungleich Null, die einer benutzerdefinierten Routine im RWS.
00E6
$0F40
00E8
Diskette Status Byte A
    Bit 0: Write mode
    Bit 1: Read mode
    Bit 2: Diagnostic mode
    Bit 3: Index
    Bit 4: Erase gate
    Bit 5: Diskette 2
    Bit 6: CRC error
    Bit 7: Read/write overrun
00E9
Diskette Status Byte B
    Bit 0: New media
    Bit 1: MFM mode
    Bit 2: Filter control
    Bit 3: Current select
    Bit 4: Head engaged
    Bit 5: Head selected (0 = head 0)
    Bit 6: Access line
    Bit 7: Access line
00F8
$1000
00FA
$100A
Adresse der Fehlermeldungsroutine im ROS, welche
ERROR 0xx yyzz
in der untersten Zeile ausgibt.
Parameter: R3=Adresse IOCB, Rücksprung über R2
00FC
Adresse der HOLD-Routine
00FE
$0D00
Adresse der Hexdump-Routine
01BC
Adresse des ersten Patches bzw. LASTMEM+1
01C0
$0501
01C2
$0202
01C4
$0503
01C6
$0204
01F0
$1DFA
ROS-Routine, die den Bildschirm bis zum Ende löscht.
Parameter: R14=Startadresse, Rücksprung in R2
01F2
$1D4A
ROS-Routine, die Hexziffern in Integer umwandelt
Parameter: R14=Adresse der Hexziffern, Ergebnis in R15
01F4
$1C7C
01F8
$1CF6
0200
-05FF
Bereich des Bildschirmspeichers, insgesamt 1kB.
0600
-0700
Hilfsroutinen in Maschinensprache
Bei $0600 liegt z.B. die Sprungroutine ins Executable-ROS (und zurück), bei $0630 (zumindest beim 5110) die Gerätetest-Routine.
0B00
Lade- und Startadresse für Maschinenprogramme
0B42
-0B55
Adressen der IOCBs für Dateinummern FL0 bis FL9 im BASIC-Modus
120E
Beginn des BASIC-Programms in Token-Form