[Simh] Error in DMC11/DMR11 Emulation in RSTS/E 10.1
Paul Koning
paulkoning at comcast.net
Sun Jan 3 16:42:53 EST 2016
> On Jan 2, 2016, at 5:41 PM, Christian Gauger-Cosgrove <captainkirk359 at gmail.com> wrote:
>
> As the subject line says, there's an issue with the DMC device under
> RSTS/E 10.1-L.
>
> When starting the system, when it does the hardware scan, the
> following errors are printed on the TTI/TTO console:
> Device XM2: internal micro-diagnostic failure - device disabled.
> Device XM3: internal micro-diagnostic failure - device disabled.
> XM4: is missing ECO's, but will still function.
> XM1: is missing ECO's, but will still function.
> XM0: is missing ECO's, but will still function.
>
> There are five DMC lines due to testing.
> DMC0/XM0 and DMC1/XM1 are DMC11, with micro-diagnostics enabled.
> DMC2/XM2 is a DMR11, with micro-diagnostics enabled.
> DMC3/XM3 is a DMR11, with micro-diagnostics disabled.
> DMC4/XM4 is a DMC11, with micro-diagnostics disabled.
> From that test we can see that the DMR11 does not work under RSTS/E
> with or without micro-diagnostics; and further that DMC11 simulation
> works but isn't "up to date" enough for RSTS/E 10.1-L (at least I'm
> assuming that is what is meant by the "missing ECO's" statement).
No, that's not what that means.
It does say that micro diagnostics are required; when those are disabled, the device is rejected because of that failure.
However, it also says that "XM0: is missing ECO's, but will still function." That means the device is enabled, and it should be there and work when you start the system. More precisely, if it doesn't work that would be for a different reason.
>
> It exhibits this behaviour both when starting up SYSGEN.SIL, and when
> doing a normal system start-up. The simulator is configured as a
> UNIBUS machine (11/94 if that matters); trying it with a QBUS machine
> (11/93)... and SIMH crashes promptly.
Tried what with QBus? DMC? Only a DMV is valid on Qbus.
Mark, here is the code from the RSTS INIT code that generates the "missing ECO's" message. I'll take a look at why it doesn't like DMR11s.
paul
.SBTTL Check the Micro-code for latest ECO level
; This routine reads out the micro-code from the roms, and
; compares them with the last ECO'ed roms that went out. This
; happened in the late 1970's, and then the device was replaced
; by DMR's, so there should be no need to change this routine
; in the future, however, if there is a new DMC rom ECO, this
; the two copies of the DMC micro-code will need to be updated
; to reflect the then current micro-code listings.
;
; This routine expects:
;
; R3 = The CSR of the unit to check
;
; and must preserve:
;
; R0 = The unit number *2
;
ECOCHK: MOV R0,-(SP) ;PRESERVE THE UNIT # *2
CLR R0 ;SET A STARTING ADDRESS
MOV #3,R4 ;TWO CHANCES TO MATCH MICRO-CODE (2 BITS)
MOV #HICOD,R1 ;HIGH SPEED MICRO CODE ADDRESS
MOV #LOCOD,R2 ;LOW SPEED MICRO CODE ADDRESS
10$: MOVB #ROMI,BSEL1(R3) ;SET UP FOR A ROMI
MOV #100400,-(SP) ;SET THE INSTRUCTION TO USE
BIS R0,(SP) ; AND NOW THE ADDRESS
MOV (SP)+,SEL6(R3) ;PUT THE INSTRUCTION IN,
BISB #MSTEP!ROMI,BSEL1(R3) ; AND EXECUTE IT
MOVB #ROMO,BSEL1(R3) ;NOW CLEAR THE BITS
MOV SEL6(R3),R5 ;GET THE MICRO-CODE FROM THAT ADDRESS
CLRB BSEL1(R3) ;AND CLEAR THE CSR
CMP R5,(R1)+ ;MATCH THE HIGH ONE?
BEQ 20$ ; YES, SO CONTINUE
BIC #1,R4 ;NOT HIGH SPEED, SO CLEAR THE HIGH SPEED BIT
20$: CMP R5,(R2)+ ;MATCH THE LOW ONE?
BEQ 30$ ; YES, SO CONTINUE
BIC #2,R4 ;NOT LOW SPEED SO CLEAR THE LOW SPEED BIT
30$: TST R4 ;DID EITHER ONE MATCH?
BEQ 100$ ;NEITHER ONE MATCHES, SO QUIT RIGHT NOW
CMP R1,#LOCOD ;END OF HIGH CODE?
BHIS 35$ ; YES, SO QUIT EARLY
.ASSUME LOCOD GT HICOD ;THE LOW TABLE MUST COME AFTER THE HIGH ONE
INCB R0 ;INC
BNE 10$ ;DIDN'T WRAP YET, SO GO SOME MORE
ADD #4000,R0 ; TO WHERE THEY BELONG
CMP #20000,R0 ;ARE WE DONE YET?
BNE 10$ ;NO, SO GO HIT THE NEXT ADDRESS.
35$: MOV (SP)+,R0 ;RESTORE THE UNIT # *2
ROR R4 ;MOVE LOW BIT INTO 'C' BIT
BCC 40$ ; NOT THE HIGH SPEED
ROR R4 ;IT BETTER NOT BE BOTH (LOOK AT NEXT BIT)
BCS 60$ ;OH NO, ITS BOTH????
BIS #4,TYPTBL+XM.CSO(R0) ;SET THE TYPE BIT (high)
40$: ROR R4 ;IS IT THE LOW SPEED? (CHECK BIT #1)
BCC 50$ ; NO
BIS #10,TYPTBL+XM.CSO(R0) ;SET THE TYPE BIT (low)
50$:
60$: RETURN
100$: MOV (SP),R0 ;GET THE UNIT # * 2
ASR R0 ; NOW * 1
MESSAGE <"XM">
CALLX DECZER ;AND PRINT IT OUT
MESSAGE <": is missing ECO's, but will still function."<200>>
MOV (SP)+,R0 ;RESTORE THE NUMBER # * 2
RETURN
GLOBAL <TYPTBL,XM.CSO>
.SBTTL The High speed micro code listing
;
; This table comes from Diagnostic CZDMGD0
; It supports ROM part #'s:
; 23-622A9 to 23-629A9
;
HICOD: .WORD 63220 ;0
.WORD 63223 ;1
.WORD 63237 ;2
.WORD 63232 ;3
.WORD 61200 ;4
.WORD 61202 ;5
.WORD 3370
.WORD 63130
.WORD 76423 ;10
.WORD 63060 ;11
.WORD 101414 ;12
.WORD 100407
.WORD 3401 ;14
.WORD 63231
.WORD 10162 ;16
.WORD 626
.WORD 62234 ;20
.WORD 16403
.WORD 16402 ;22
.WORD 16406
.WORD 16407 ;24
.WORD 16401
.WORD 10210 ;26
.WORD 16455
.WORD 16472 ;30
.WORD 10067
.WORD 16471 ;32
.WORD 2471
.WORD 43236 ;34
.WORD 10022
.WORD 16424 ;36
.WORD 2424
.WORD 43235 ;40
.WORD 10240
.WORD 16642 ;42
.WORD 2642
.WORD 600 ;44
.WORD 61221
.WORD 110642 ;46
.WORD 20620
.WORD 173202 ;50
.WORD 20640
.WORD 167203 ;52
.WORD 10210
.WORD 140620 ;54
.WORD 20620 ;55
.WORD 103060 ;56
.WORD 100463
.WORD 433 ;60
.WORD 60342
.WORD 101047 ;62
.WORD 123620
.WORD 113246 ;64
.WORD 23240
.WORD 60520 ;66
.WORD 103451
.WORD 10211 ;70
.WORD 140620
.WORD 60601 ;72
.WORD 103100
.WORD 123400 ;74
.WORD 1620
.WORD 117034 ;76
.WORD 100447
.WORD 2611 ;100
.WORD 100447
.WORD 123400 ;102
.WORD 103505
.WORD 114434 ;104
.WORD 60520
.WORD 103603 ;106
.WORD 120400
.WORD 1620 ;110
.WORD 103047
.WORD 2514
.WORD 100447
.WORD 123400
.WORD 102527
.WORD 2654
.WORD 102124
.WORD 1620 ;120
.WORD 2722
.WORD 102524
.WORD 2701
.WORD 60601
.WORD 102130
.WORD 100447
.WORD 102140
.WORD 2472 ;130
.WORD 500
.WORD 61260
.WORD 10177
.WORD 16402
.WORD 2400
.WORD 42233
.WORD 114474
.WORD 60721 ;140
.WORD 102130
.WORD 2472
.WORD 10017
.WORD 136500
.WORD 136520
.WORD 122560
.WORD 123000
.WORD 500 ;150
.WORD 61260
.WORD 2133
.WORD 40620
.WORD 103164
.WORD 10151
.WORD 16406
.WORD 2700
.WORD 63161 ;160
.WORD 641
.WORD 3374
.WORD 110727
.WORD 3004
.WORD 63070
.WORD 10017
.WORD 731
.WORD 110463 ;170
.WORD 10154
.WORD 57310
.WORD 57231
.WORD 57235
.WORD 43237
.WORD 43232
.WORD 63170
.WORD 63161 ;200
.SBTTL The Low speed micro code listing
;
; This table comes from Diagnostic CZDMGD0
; It supports ROM part #'s:
; 23-630A9 to 23-637A9
;
LOCOD: .WORD 63220 ;0
.WORD 63223 ;1
.WORD 63237 ;2
.WORD 63232 ;3
.WORD 61200 ;4
.WORD 61202 ;5
.WORD 3370
.WORD 63130
.WORD 76423 ;10
.WORD 63060 ;11
.WORD 101414 ;12
.WORD 100407
.WORD 3401 ;14
.WORD 63231
.WORD 10162 ;16
.WORD 626
.WORD 62234 ;20
.WORD 16403
.WORD 16402 ;22
.WORD 16406
.WORD 16407 ;24
.WORD 16401
.WORD 10210 ;26
.WORD 16455
.WORD 16461 ;30
.WORD 10067
.WORD 16471 ;32
.WORD 2471
.WORD 43236 ;34
.WORD 10022
.WORD 16424 ;36
.WORD 2424
.WORD 43235 ;40
.WORD 10240
.WORD 16642 ;42
.WORD 2642
.WORD 600 ;44
.WORD 61221
.WORD 110642 ;46
.WORD 20620
.WORD 173202 ;50
.WORD 20640
.WORD 167203 ;52
.WORD 10210
.WORD 140620 ;54
.WORD 123620 ;55
.WORD 113246 ;56
.WORD 10211
.WORD 140620 ;60
.WORD 60601
.WORD 103214 ;62
.WORD 123400
.WORD 1620 ;64
.WORD 117030 ;different than fiche, but matches diag
.WORD 23660 ;66
.WORD 60520
.WORD 103105 ;70
.WORD 60610
.WORD 1620 ;72
.WORD 103047
.WORD 60521 ;74
.WORD 102447
.WORD 103447 ;76
.WORD 123420
.WORD 60400 ;100
.WORD 103047
.WORD 500 ;102
.WORD 63301
.WORD 114643 ;different than fiche, but matches diag
.WORD 677
.WORD 100646 ;106
.WORD 123400
.WORD 103512 ;110
.WORD 114430 ;different than fiche, but matches diag
.WORD 60520
.WORD 103606
.WORD 120400
.WORD 1620
.WORD 103066
.WORD 123400
.WORD 102532 ;120
.WORD 2655
.WORD 102127
.WORD 1620
.WORD 2723
.WORD 102527
.WORD 2702
.WORD 60601
.WORD 102133 ;130
.WORD 100447
.WORD 102143
.WORD 2461
.WORD 500
.WORD 61260
.WORD 10177
.WORD 16402
.WORD 2400 ;140
.WORD 42233
.WORD 114475 ;different than fiche, but matches diag
.WORD 60721
.WORD 102133
.WORD 2461
.WORD 10017
.WORD 136500
.WORD 136520 ;150
.WORD 122560
.WORD 123000
.WORD 500
.WORD 61260
.WORD 2133
.WORD 40620
.WORD 103167
.WORD 10151 ;160
.WORD 16406
.WORD 2700
.WORD 63161
.WORD 641
.WORD 3374
.WORD 110727 ;different than fiche, but matches diag
.WORD 3004
.WORD 63070 ;170
.WORD 10017
.WORD 731 ;different than fiche, but matches diag
.WORD 110463
.WORD 10154
.WORD 57310
.WORD 57231
.WORD 57235
.WORD 43237 ;200
.END
More information about the Simh
mailing list