Written by: Thomas Höffken
Parent Category: How-to's
Category: DEC hardware errors, and how to repair them

Symptome:
Die serielle Schnittstelle DL11-W M7856 sendet und empfängt keine Daten.

Analyse:
Der UART-Chip E 7 erhält keinen Bit-Takt für den Sender und den Empfänger. Die Frequenzteiler bestehend aus den IC's E39, E26, E19, E12, E27, E28 für die Erzeugung der Bit-raten wird im RESET-Zustand gehalten.
Grund: Der Baustein E41 führt an Pin 14 dauerhaft H-Pegel. Dieser Pegel wird auf die Rückstelleingänge der Frequenzteiler geführt. Diese befinden sich dann dauerhaft im RESET-Zustand.

Reparatur:
Der Baustein E41 wurde gewechselt.

Test:
Die Bitratenerzeugung funktionierte darauf hin. Ein Echo-Programm das die vom Terminal an die PDP11/34 gesendeten Zeichen an das Terminal zurückschickt konnte erfolgreich in dem Testsystem PDP11/34 getestet werden.

Dokumentation:
DL11-W Field Maintenance Print Set B-TC-DL11-W-1

PC-Programm:
PDP11GUI Version 1.31.1.1470

PDP11 Echo Testprogramm :

.title Serielles ECHO Testprogramm
.asect
.enabl ama

 

SR0 = 177572 ; mmu statusregister
ESTAT=177560
EPUFF=ESTAT+2
ASTAT=ESTAT+4
APUFF=ESTAT+6

 

.=0004
VECT: .WORD 6      ;Bus Error Trap
.WORD 0            ;halt
.WORD 12           ;Reserved Instruction Trap
.WORD 0            ;halt
.=00024
.WORD 26           ;Power fail Trap
.WORD 0            ;halt

 

.=1000

 

START:          mov #1000,sp          ;set the stack
                mov #1100,r4          ;set target memory address
                mov #0,SR0            ;mmu aus cpu kernal mode

 

EIN:            TSTB ESTAT            ;Wurde ein Zeichen empfangen?
                BPL EIN
                MOV EPUFF,R0          ;Ja dann speichern
                BIC #^B1111111110000000,R0     ;unteren 7-Bit
                                               ;ausmaskieren
AUS:            TSTB ASTAT ;Ausgangspuffer frei?
                BPL AUS
                MOV R0,APUFF           ;ja, dann Zeichen ausgeben
                BR EIN
                halt
                halt

 

.END START

PDP11 Zeichenkettenausgabe :

.title  AUSGABE einer Zeichenkette
.asect
.=1000
ESTAT=177560
EPUFF=ESTAT+2
ASTAT=ESTAT+4
APUFF=ESTAT+6
START:  ;HALT
        MOV   #'A,%0
A:      TSTB  @#ASTAT
        BPL   A
        MOVB  %0, @#APUFF
        INC   %0
        CMP   %0,#'Z
        BLOS  A
        ;HALT
B:      TSTB  @#ASTAT
        BPL   B
        MOV   #15,@#APUFF
        ;HALT
C:      TSTB  @#ASTAT
        BPL   C
        MOV   #12,@#APUFF
        ;HALT
        JMP   @#1000


.END    START

Foto: Test-Setup