PDP-8 Bootstrapping

Eine (virtuelle) PDP-8 fühlt sich ganz anders an, als wir es von halbwegs modernen Computern gewohnt sind. Es gibt kein Terminal bzw. wenn eines vorhanden ist, kann man damit erstmal nix anfangen. (Das bezieht sich auf eine echte PDP-8 oder eine Bare-Bone Emulation. Einige Emulatoren sind so vorkonfiguriert, dass sie das System passend “bootstrappen”.)

Kein ROM

Das liegt darin begründet, dass die PDP-8 zwar Hauptspeicher hat, aber kein ROM. Auch fehlt eine Reset-Logik, wie es die CPUs (Prozessoren in ICs)  normalerweise haben. Beim Einschalten einer (virtuellen) PDP-8 geschieht erstmal … nix. Es ist  dem Anwender überlassen, sich irgendwie um das Bootstrapping dieser Maschine zu kümmern.

Dazu hat DEC zumindest auf der Frontplatte der PDP-8/I eine kleine Tabelle aufgedruckt, die mit “Rim Loader” bezeichnet ist”. Die Zeichenfolge sieht wie folgt aus:

7756 6032
7757 6031
.... ....
7775 5356

Wer schon ein bisschen mit der PDP-8 vertaut ist, kann hier Zahlen im Oktalsystem erkennen. Links steht jeweils die Adresse, rechts dann ein Kommando. Wer das Gerät in Betrieb nimmt kann über die Tasten diesen Urlader in den Speicher laden und damit das Gerät starten.

Was hat es mit dem “Rim Loader” auf sich?

Rim oder RIM ist die Abkürzung für Read-In-Mode (oder Read-In Mode). Dieser Begriff kennzeichnet einen Lochstreifen in einem ganz bestimmten Format bezüglich der Stanzung der Löcher und Codierung der Adressen und Instruktionen. Dieses Format ist nicht besonders effizient (braucht viel Papier), ermöglicht es aber einen kurzen Urlader zu haben.

DEC Lochstreifen
DEC Lochstreifen

RIM vs. BIN

Das zweite übliche Format von Lochstreifen ist das Binary Format. Normalerweise lädt der “Rim Loader” einen “BIN LOader”, welcher das etwas komplexere Binary Format versteht. Der BIN Loader lädt dann in einem weiteren Schritt das Anwenderprogramm, zum Beispiel OS/8.

Zusammenfassung

  • Eine PDP-8 hat kein ROM und damit kein BIOS, Bootloader oder ähnliches
    Der Admin muss deshalb den Urlader (“Rim Loader”) eigenhändig (sic!) im Speicher deponieren.
  • Der Urlader lädt normalerweise einen BIN Loader, welcher Lochstreifen im Binary Format versteht.
  • Der BIN Loader kann natürlich auch eine allfällig vorhandene Floppy-, Wechsel- oder Harddisk ansprechen.

Übrigens: Die PDP-8 hat Ferritkernspeicher. Die kleinen Magnete erhalten die Daten auch ohne Stromversorgung. Solange der Speicherbereich ab 7756 nicht überschrieben wird, bleibt ein einmal dort platzierter RIM Loader erhalten.