DEC LSI 11/73A


Eine Mirco PDP 11/73A. Leider gab es keinen Schlüssel für den Schalter, und kein kleiner Schlüssel der Kramkiste wollte passen. Also musste der Schlüsselschalter ausgebaut und zerlegt werden. Ohne den Bartmechanismus passte von der Breite und Tiefe ein alter Schlüssel und der Schalter konnte wieder betätigt werden. Nachdem alle Karten und Laufwerke abgezogen waren, wurde das Netzteil mit einem Stelltrafo langsam auf Netzspannung gebraucht. Die erwarteten Betriebsspannungen stellten sich ein und die Lüfter lärmten.

Das Verbindungskabel von der Backplane zur Frontplatte (Einschalterplatine) hat einen sehr lockeren Stecker an der Seite der Backplane. Da noch eine Platine darüber ist, konnte mit einem Stück Schaumstoff der Sitz des Steckers befestigt werden. Nachdem die Platinen gereinigt waren und keine offensichtlichen Mängel zeigten, wurde wieder alles zusammengebaut. Nach dem Einschalten  waren alle Spannungen OK, aber leider keine Reaktion am Terminal. Die Kabel zur seriellen Platine, und auch die kleine Verteilerbox wurden genauer untersucht, aber das schien soweit in Ordnung zu sein. Versuche mit verschiedenen Baudzahlen brachten Erfolg bei 4800 8N1 als serielle Einstellung im Minicom. Um das nicht immer für verschiedene Rechner umstellen zu müssen, wollte ich gerne auf 9600 umstellen. Also wurde die Platine genauer untersucht und die Baudzahl für die Ports auf 9600 Baud gejumpert. 

An der Bootkonsole zeigten sich leider Fehlermeldungen.

? Boot-U-I/O error

Auf der Suche nach der Bedeutung der Fehlermeldung verging einige Zeit, währenddessen sich anscheinend die Festplatte durch Erwärmung kooperativ zeigte. Bei einem Wechsel von HALT nach RUN wurde ich plötzlich nach dem Datum gefragt! 

Auf der MFM Platte ist ein RT-11FB V05.04 installiert.

im Fenster nebenan ein „SHOW ALL“ um das System zu zeigen.


22.01.2019 

Austausch der beiden Lüfter gegen etwas leisere Kandidaten. Sinon 120qm/h 230V Typen. Hier weht es noch sehr ähnlich um die Beine, denke das ist OK so. Aber in der Wohnung ist das doch angenehmer…


26.01.2019

Heute startete die PDP sofort, brauchte keine Warmlaufzeit. 

Im Web hatte ich beim Stöbern zum Thema 1173 in einem Board ein nettes kleines Listing eines Fortran Programms zum malen eins ASCII Apfelmännchens gesehen und gleich mal eingetippt. Die Schwierigkeit der Bedienung des Editors habe ich etwas unterschätzt, und so hat es gedauert, bis ich den Text auch speichern konnte. Die Bedienung des Editors wurde mit einer speziell beschrifteten Tastatur erwartet. Um den EXIT Befehl eingeben zu können muss man vorher GOLD drücken. Aha, aber die 7 bei aktiviertem NUMLOCK tut es auch. Dann kann man einen Befehl eingeben und diesen mit (!) der Enter Taste am Zehnerblock abschicken. 

Nachdem ich eine normale Tastatur an meinem Laptop angeschlossen hatte, ging das auch, hat etwas gedauert…


Leider ging bei all den Versuchen zwischendurch gar nichts mehr am Terminal. Auch nach Reboot der PDP nicht. Weder PDP11GUI noch Putty bekamen ein Bild. Also wurde die PDP wieder auf den Tisch gebracht und aufgeschraubt. Aber das half auch nichts. Irgendwann viel mir auf, wenn ich ENTER drücke ruckelt die Festplatte in der PDP kurz. Das wäre ja zu erwarten, wenn ohne Eingabe von einem Datum ENTER gedrückt wird. Aus Verzweiflung mal das Laptop (Win 10) neu gestartet, und da ging dann wieder das Terminal….

Gelernt: Nicht immer gleich denken die alte Hardware hat Probleme. Zumindest nicht wenn man mit M$…..


.type mandel.for

‍        PROGRAM MANDEL

‍        COMPLEX C, Z

‍        REAL X0, DX, Y0, DY

‍        INTEGER I, J, K

C

‍        DATA X0/-2./, Y0/-1.1/, DX/.04/, DY/.1/

C

‍        DO 10 I = 1, 21

‍          DO 20 J = 1, 79

‍            C = CMPLX(X0 + J * DX, Y0 + I * DY)

‍            Z = (0., 0.)

‍            DO 30 K = 1, 99

‍              Z = Z ** 2 + C

‍              IF (REAL(ABS(Z)) .GT. 2.) GOTO 40

30          CONTINUE

40          TYPE 50, MOD(K, 10)

50          FORMAT ('$', I1)

20        CONTINUE

‍          TYPE 60

60        FORMAT (' ')

10      CONTINUE

C

‍        END



.run mandel

3333333333333333333334444444444444455555566670502065555543333333333333333333333

3333333333333333333334444444444444455555577997270965555644433333333333333333333

3333333333333333333335544444444444666777891000003008666654444433333333333333333

3333333333333333333355555564445557982988901600000309988777665555544444444444442

3333333333333333333555555566666778260067000000000000072476777664444444444444422

4444333333333333446665555576666707290000000000000000000002397554444444444443322

4444444555555666700877878777888030000000000000000000000000311766444444443333222

4444444555555577881878165371900400000000000000000000000000069855555553333332222

4444444665555587722800000000076000000000000000000000000000011765555433333332222

5564447666777924950000000000001000000000000000000000000000007765444333333332222

0000000000000000000000000000000000000000000000000000000060876554444333333332222

5564447666777924950000000000001000000000000000000000000000007765444333333332222

4444444665555587722800000000076000000000000000000000000000011765555433333332222

4444444555555577881828165371900400000000000000000000000000069855555553333332222

4444444555555666700877878777888030000000000000000000000000311766444444443333222

4444333333333333446665555576666707290000000000000000000002397554444444444443322

3333333333333333333555555566666778260067000000000000072476777664444444444444422

3333333333333333333355555564445557982988901600000309988777665555544444444444442

3333333333333333333335544444444444666777891000003008666654444433333333333333333

3333333333333333333334444444444444455555577997270965555644433333333333333333333

3333333333333333333334444444444444455555566670502065555543333333333333333333333

STOP --


Nun wollte ich aber mal sehen ob die Diskettenlaufwerke auch funktionieren. Daher habe ich mein DOS Arbeitstier gestartet und das Programm PUTR. PUTR hat eine eigene Befehlszeile:

format B: /RX50 /RT11

formatiert eine 400KB Diskette für RT11. Es wurde eine 5,25er DD Diskette verwendet.

Die Diskette ist in der PDP als DU0: lesbar und beschreibbar. Das IMAGE BASIC.DSK enthält einen BASIC Interpreter und wurde aus dem Internet Archiv geladen. Images können in PUTR gemountet werden:

mount dd: C:\PDP\BASIC:DSK

und dann angezeigt werden mit: 

dir dd:

Nach dem Mounten der formatierten Diskette (mount b: /RX50 /RT11) können die Files kopiert werden:

set copy binary

copy dd:*.* b:

In der PDP kann nun der Inhalt mit dir DU0: angezeigt werden. Zum Beispiel kann das BASIC auch auf der Diskette gestartet werden:

run DU0:BASIC.SAV


01.02.2019  

Bei dem Diskettencontroller in der PDP1173 handelt es sich um einen EMULEX DM01. Der hat eine ST-506 Schnittstelle für zwei MFM Festplatten und eine SA450 Schnittstelle für zwei Diskettenlaufwerke. Angeschlossen ist ein 5.25 NEC FD1155C Laufwerk. Der Controller verfügt über ein Bios was man im Online-Debugger-Tool (ODT) starten kann. Damit werden Floppys formatiert oder Laufwerke eingerichtet:


Emulex Corporation

Copyright All rights reserved

DM01 controller, firmware revision level G

IP address = 172150


‍           Option menu

1 - Format

2 - Format and verify

3 - Verify

4 - Read only test

5 - Data reliability test

6 - List known units

7 - Replace block

8 - Display Novram

9 - Edit / Load Novram


‍  Enter option number: 


Derzeit ist das Laufwerk als RX50 (80 Spuren, einseitig, 400KByte) eingestellt.

Ein Test ließ auch ein Mitsumi PC 5.25 Laufwerk lesen und schreiben (Jumper ID=0 + RDY=on).

Möglich wäre ein Konfiguration mit beidseitiger Nutzung, aber da zur Installation Standart RX50 Images verwendet werden sollen macht das keinen Sinn. Der Anschluß einer NEC D3142 (44MB) Festplatte klappt nch Bau eines Adapters wie erwartet. Im Controllerbios kann die Platte formatiert und verifiziert werden. Nach Start von RT11 ist die als DU1: ansprechbar und nach einer Initialisierung:

INIT/BADBLOCK DU1:

als DU1: normal benutzbar. Der Kontroller indiziert die Laufwerke in der Reihenfolge der Einrichtung, DU=: ist momentan das Dispettenlaufwerk. Eine SEAGATE ST-225 Platte konnte ebenfalls erfolgreich angeschlossen werden. Leider klappt es mit einer IMPRIMIS WREN II (80MB) Festplatte nicht, diese faährt immer nach kurzer Zeit herunter und blimkt, vermutlich defekt.


Der Controller für das 8 Zoll Laufwerk, ein MTI MXV22, ist leider defekt. Das Laufwerk funktioniert an einem anderen Gerät einwandfrei und ein anderes Laufwerk am MTI Controller zeigt den gleichen Fehler.

Der Controller soll wenn möglich repariert werden.

Ein weiterer Controller MTI MLV11M steuert die Festplatte Rodime RO204 an und bootet ein RT-11FB V05.04.


08.02.2019 

Installieren vom MICRO RSX11(V1) auf der PDP 11/73a

Als Vorbereitung zu der Installation habe ich den MTI Festplattencontroller entfernt, um das laufende RT11 nicht zu gefährden. 


Am EMULEX DM01 Controller wurden folgende Vorbereitungen getroffen:

- Einrichten der NEC D3142 Festplatte als DRIVE 0 mit 1 Partition

- Einrichten von zwei Diskettenlaufwerken als Drive 1 und 2 (NEC1155C und aus einem PC ein Mitsumi D509V2). (Ein Cinon FZ-506 wurde nicht vom Kontroller akzeptiert.) Wichtig ist RDY =ON zu jumpern. Verkabelung geht bei mir mit "geradem" Diskettenkabel und die Laufwerke sind auf ID0 und ID1 gejumpert. (Vermutlich geht das aber auch an pcKabel mit Drehung.) Wegen der 80 Spuren muss es ein 1,2KB Laufwerk sein, und es wegen des Schreibverfahrens werden DD Disketten benutzt. (hatte mit HD KEINEN Erfolg)

- EMULEX Jumper SW-2-2 auf ON um den Controller booten zu lassen

- EMULEX Jumper SW1 2-4 auf die jeweilige DRIVE ID für das Bootdevice (0 Festplatte ,1 erste Diskette)

- Die CPU hat einige Jumper, die für die Boot Adressen wichtig sind, hier sind für den EMULEX der Jumper W3 und W7 zu setzten. (Jumper zählen von innen nach aussen hoch)


Jetzt können die Disketten hergestellt werden. Alle Images für das MICRO RSX11 (13 Stück von http://web.archive.org/web/201….co.uk/blog/tag/software/) werden am DOS Rechner mit putr (putr.txt) geschrieben:

- die Disketten formatieren mit „format a: /RX50“

- einmal die Diskette mounten mit "mount/foreign a: /RX50"

- dann die Images schreiben mit "copy/dev/file image.dsk a:"


Die Devices am Emulexcontroller heissen im späteren System DU0: bis DU4: (maximal). DU0: ist die Festplatte, dann folgen die Diskettenlaufwerke. In der Reihenfolge ist auch das Bios vom Emulex einzurichten. Mit anderer Reihenfolge installiert sonst nichts. Die Disketten sind vom TYP RX50.

Also EMULEX BIOS starten, Rechner anschalten und im Online Debugger Tool folgendes eingeben. :


@17772150/000000 1

17772152/005400 30003

@/000400 42000

@200g (vor dem letzten g von HALT in den NORMAL Zustand wechseln)



Dann erscheint folgendes Auswahlmenü:


Emulex Corporation

Copyright All rights reserved

DM01 controller, firmware revision level G

IP address = 172150


Option menu

1 - Format

2 - Format and verify

3 - Verify

4 - Read only test

5 - Data reliability test

6 - List known units

7 - Replace block

8 - Display Novram

9 - Edit / Load Novram


Einrichten einer MFM Seagate ST-4026 Festplatte und 2 Diskettenlaufwerke. In der Reihenfolge:


Enter option number: 9


Type 1

NOVRAM will contain ST506 drive parameters

Type 2

Single-sided, double-density floppy, RX50-compatible,

pack transition not supported

Type 3

Double-sided, double-density floppy, not compatible

with the RX50, pack transition not supported

Type 4

Single-sided, double-density floppy, RX50-compatible

pack transition supported

Type 5

Double-sided, double-density floppy, not compatible

with the RX50, pack transition supported


Type code [1-5,def=1]:


Number of units of this type [1-2,def=1]:


Total number of physical sectors per track [1-63,def=17]:


Total number of physical heads [1-31,def=8]: 4


Total number of physical cylinders [1-4095,def=642]: 615


Number of spare sectors per track [0-1,def=0]:


0 = No split

1 = 50/50 split

2 = 87.5/12.5 split

3 = Head offset split

Split code [0-3,def=0]:


0 = Fixed media

1 = Removable media

Removable media flag [0-1,def=0]:


Reduced write current cylinder [0-4095,def=0]:


Write precompensation cylinder [0-4095,def=128]: 300


0 = Unbuffered, 3 msec

1 = Buffered, 13.2 usec

2 = Buffered, 30 usec

Step code [0-2,def=2]: 2


Sector zero offset [0-15,def=0]:


Do you want to configure another unit (Y or N, def=N)? Y


Type 1

NOVRAM will contain ST506 drive parameters

Type 2

Single-sided, double-density floppy, RX50-compatible,

pack transition not supported

Type 3

Double-sided, double-density floppy, not compatible

with the RX50, pack transition not supported

Type 4

Single-sided, double-density floppy, RX50-compatible

pack transition supported

Type 5

Double-sided, double-density floppy, not compatible

with the RX50, pack transition supported


Type code [1-5,def=2]:


Number of units of this type [1-2,def=2]:


0 = 3 msec step rate

1 = 6 msec step rate

2 = 10 msec step rate

3 = 15 msec step rate

Step Rate Code [0-3,def=2]:


Do you want to configure another unit (Y or N, def=N)? n


Do you want to change any parameters (Y or N, def=N)? n


** ALL DATA ON DRIVE CAN BE LOST **

DO YOU WANT TO LOAD THE NOVRAM (Y or N)? y


Komme ich noch kurz zur eigentlichen Installation:

Am EMULEX den Schalter SW2-2 auf 1 stellen, damit die Diskette bootet. Die Diskette mit INST im Namen ist die erste Diskette.

Mit der ersten Diskette wird gebootet und (drinlassen) dem Dialog gefolgt. In dessen Verlauf werden im zweiten Laufwerk sieben Disketten kopiert, dann hat man ein lauffähiges System. Einloggen nach Eingabe von „login“, wobei der User MICRO heisst mit dem Passwort RSX. Die weiteren Disketten werden installiert, indem man „@option“ eingibt, und man wieder den Anweisungen am Bildschirm folgt.

Zum Herunterfahren „run $shutup“ eingeben, dann fährt der Rechner herunter. Noch ein paar Dialoge beantworten, dann sollte alles sauber dismountet werden. Besser nicht einfach ausschalten.

Am EMULEX den Schalter SW2-2 auf 0 stellen, damit die Platte bootet.



23.02.2019

Sichern des alten RT11 auf anderer Festplatte.


Als Vorbereitung:

- Einbau des MTI MLV11M und anschliessen der Rodime RD204 Festplatte

- CPU Jumper W3 = off , W7 = on (gezählt wird vom Platinenanschlussseite nach aussen)

- Einbau einer SEAGATE ST-225  am EMULEX DM01 und Lowlevelformat

- Booten des Systems wie gewohnt

- einloggen


Dann die neue Platte initialisieren:

init/badblock du0:


Alle Daten dahin kopieren:

copy *.* du0:

copy/system *.* du0:

Die Systemdatei an die Bootposition bringen:

dir RT11*.sys

copy/boot rt11fb.sys du0:


Fertig! Das war es schon.

Wieder den kleinen Umbau:

- MTI  MLV11M entfernen, Rodime RD204 vom Strom nehmen

- CPU Jumper W3 = on, W7 = on

Nun bootet RT11 auf der Seagate und die Rodime hat erstmal Urlaub.


22.03.2019

Die PDP 11/73 entwickelt einen Defekt und bleibt immer wieder stehen. Das geht soweit, dass sie von keiner Festplatte mehr durchbootet. Weder vom alten Originalsystem, noch von der Kopie auf der ST-225. Auch der Start von Diskette klappt nicht mehr zuverlässig.

Dabei stelle ich fest, auf der RAM Platine gibt es eine rot leuchtende LED mit der Bezeichnung PARITY LED.

Es stellt sich die Frage was da los ist. Um das besser einzugrenzen, reduziere ich die Konfiguration auf CPU, serielle Karte und RAM plus Plattencontroller. Das heisst, die Parallel Karte, Clock und die Messkarte fliegen erstmal raus.

Fehler bleibt.

Beim Messen der Betriebsspannung messe ich an der CPU an einem Pufferkondensator im Betrieb nur 4,7 Volt. Insgesamt scheint die 5 Volt Schiene mit hohem Spannungsabfall zu sein, am Netzteil sind es immerhin noch 5,12 V. Um die Kabel besser prüfen zu können zerlege und reinige ich das Gehäuse und Netzteil. Prüfe Kondensatoren und schaue auf die Kontakte der Backplane. Dabei fällt mir auf, die Backplane ist durch eine Einpresstechnik der Kontaktstifte in die Platine gefertigt. Mir sahen die Lötstellen so seltsam aus.


Zuerst dachte ich an kalte Lötstellen, aber man sieht deutlich in den Stiften links, dass es da einen hohlen Bereich im Kontakt gibt, der als Feder dient, die den Kontaktdruck herstellt. Obwohl dieses Verfahren sehr robust sein soll, habe ich die 5V Spannungs Stifte einmal nachgelötet. 

Nach dem Zusammenbau ohne weitere Auffälligkeiten war die Spannungslage an der Platine bei nunmehr 5V!

Insofern hatte sich die Aktion wohl gelohnt. Ob das nun durch das Nachlöten allein oder durch andere Kontaktübergänge zustande kommt, die sich beim Zerlegen und Zusammenbau erfrischt haben,  ist nicht eindeutig zu klären, egal!

Fehler bleibt trotzdem.

Es bleibt dabei, nach einigen Minuten bleibt die Kiste stehen. Da das mit beiden Controllern der Fall ist, schliesse ich die als Ursache aus. Weiteres Reinigen der Kontakte bringt keine Veränderung. Daher die Probe an der CPU Platine, ob die Pufferkondensatoren noch ihre Kapazität haben. Ein Bein ausgelötet und gemessen, alle drei OK. Einige Lötstellen an der CPU sehen nicht so schön aus, daher habe ich einfach mal den Sockel nachgelötet.

Seitem läuft die 11/73 bisher ohne stehenzubleiben! Auch die Parity LED leuchtet nicht mehr.

Glück gehabt!


27.03.2019

Ich lade und installiere TU58fs von Herrn Hoppe (https://github.com/j-hoppe/tu58fs) auf mein Windows Laptop und verbinde es mit der PDP mit zwei seriellen Verbindungen. Nach kurzem Suchen sind die richtigen seriellen Anschlüsse gefunden, und anhand der Demos findet man sich schnell zurecht. Die PDP bootet von der Seriellen Schnittstelle. Die Freude ist aber recht kurz, denn das ganze ist nicht stabil. Mir fällt nach einiger Zeit auf, es bleibt nicht der Rechner stehen, sondern mit ^C kommt man weiter und es hagelt Fehlermeldungen im Fenster vom TU58fs.exe. Die serielle Verbindung ist nicht stabil. Ich versuche die Geschwindigkeit zu reduzieren, aber das ändert nicht. Einer Empfehlung folgend bestelle ich ein anderes USB-Serielles Kabel (USB zu 2 seriellen Anschlüssen).


28.03.2019

Das Kabel ist schon da und damit geht alles prima, kein Stocken mehr. Volle Geschwindigkeit von 36400 Baud!Booten funktioniert. Daher mache ich ein Backup des installierten Systems auf der Festplatte:


create backup.dsk/allocate:7000

mount ld0: backup.dsk

init ld0:

copy/sys/exclude backup.dsk ld0:

dismount ld0:


Das erzeugt ein 7000 Blöcke großes File (512Byte pro Block), welches als logisches Device gemountet, initialisiert und beschrieben wird. Dann wird es wieder ausgehängt. 

Diese Datei konnte ich nun mit TU58fs auf mein Laptop übertragen (gefühlte Ewigkeit) und in einer simh Session mit RT11 als du1: Laufwerk einbinden und dann bootfähig machen, und zwar mit den Treibern für das Bandlaufwerk:


copy/boot:DD du1:rt11fb.sys du1:


Nach Beenden konnte ich die Datei mit TU58fs als bootfähiges System der 11/73 zur Verfügung stellen.

Und die bootet davon! Mit einer kleinen Einschränkung. Ist der Controller eingebaut, wird die Platte beim booten angesprochen (seek, warten, seek..). Ist kein Controller eingebaut kommt eine Fehlermeldung bezüglich des DU devices.


Weil das so gut klappt, richte ich eine inzwischen erhaltene Seagate  ST-251 (40MB) ein. Ich teile sie in zwei Teile auf und formatiere beide Lowlevel. Es sind je etwa 4 Badblocks zu verschmerzen. Dann boote ich die 11/73 mit TU56fs und dem extendet RT11 5.07 und mache folgendes:


init/badblock du1:

copy/sys DD0:*.* du1:

copy/boot du1:rt11fb.sys du1:


Dann ein Halt und ein RUN. Vorsicht, am Controller den Dipschalter nicht vergessen, es soll ja nun von 1 und nicht von 0 gebootet werden! Nochmal Halt, Run und ein erfolgreiches Booten des neuen Systems!

Auf den ersten Teil der Platte soll später ein RX11 folgen….



.show all


RT-11FB  V05.04

Booted from DL0:RT11FB


USR   is set SWAP

EXIT  is set SWAP

KMON  is set NOIND

TT    is set QUIET

ERROR is set ERROR

SL    is set ON

EDIT  is set KED

KMON nesting depth is 3


PDP 11/73A Processor

1024KB of memory

Floating Point Microcode

Extended Instruction Set (EIS)

Memory Management Unit

Parity Memory

Cache Memory

60 Cycle System Clock


FPU support


Device    Status          CSR     Vector(s)

------    ------          ---     ---------

‍  MS      Not installed  172522   224 300

‍  NL      Installed      000000   000

‍  DY      Not installed  177170   264

‍  SL      123310         000000   000

‍  MU      Not installed  174500   260 254

‍  DD      Installed      176500   300 304

‍  DX      Not installed  177170   264

‍  MT      Not installed  172520   224

‍  LP      Installed      176504   304

‍  DL      Resident       174400   160

‍  LS      Installed      176500   470 474 300 304

‍  LD      Installed      000000   000

‍  DU      Not installed  172150   154

‍  VM      Installed      177572   250

‍  DM      Not installed  177440   210


TT  (Resident)

DL  (Resident)

‍    DL0 = DK , SY

MQ  (Resident)

SL  (Loaded)

LD

VM

DD

LP

LS

NL

22 free slots


Job  Name  Console Level State    Low    High  Impure

---  ----  ------- ----- -----    ---    ----  ------

‍ 0   RESORC   0      0   Run     000000 123236 135400


No multi-terminal support


Address   Module    Words

-------   ------    -----

160000    IOPAGE     4096.

156016    DL          505.

133316    RMON       4768.

123302    SL         2054.

001000    ..BG..    21089.


No LD units mounted