murakami@nttlab.UUCP (Kenbo MURAKAMI) (07/08/86)
I can't find out the reasonable MOD group for this question.
However, I thought there might be a lot of experts on DEQNA around this
groupe. So, I post this question.
We are trying to boot DEQNA (Ethernet interface on Q-BUS) on LSI-11/73
RT-11. We wrote a test program to read BDROM (Boot/Diagnostic ROM) on
DEQNA board in vain. This is very complicated work, because the ROM is
transfered like a packet arriving from other node. We have a poor
documentaion about DEQNA. DEC Japan has not ever experienced to
install DEQNA from the begining. So, It's hard to get information and
know-how from DEC Japan. Our DEQNA's version is C1.
In order to read BDROM, we made a tentative program. For
reference, the program is attached here. If there is any incorrection
in the program, please suggest me.
Thanks in advance.
KEN
;
; DEQNA BDROM reading program for RT-11
;
RBDLST = 174444
XBDLST = 174450
DEQNAV = 174454 ; Vector Register address
DEQCSR = 174456 ; DEQNA's Control & Status Register address
BD = 10 ; Read BDROM (for CSR)
IE = 100
STATUS = 10
SR = 2
IL = 000400 ; Internal loopback test off
.mcall .exit
Start:
; clear buffers
mov #Buf1,r0
mov #Buf2-Buf1/2,r1
3$: clr (r0)+
sob r1,3$
mov #Buf2,r0
mov #Buf3-Buf2/2,r1
4$: clr (r0)+
sob r1,4$
; setup for reading
bis #SR,@#DEQCSR ; software reset on
; I have to keep reset line active for a while.
bic #SR,@#DEQCSR
mov #774,@#DEQNAV
mov #BDL4,@#XBDLST ; set BDL for setting MY ETHER ADDRESS
clr @#XBDLST+2
mov #BDL1,@#RBDLST ; set BDL for BD-ROM read
clr @#RBDLST+2
bic #IE,@#DEQCSR ; interrupt disable
bis #BD,@#DEQCSR ; read BDROM
1$: bit #40000,BDL1+STATUS1
bne 1$
2$: bit #40000,BDL2+STATUS1
bne 2$
.exit
BDL1: 100000 ; flag
100000 ; addr-des-bit/h-o-addr
Buf1 ; l-o-addr
Buf1-Buf2/2 ; buffer length
100000 ; status 1
100000 ; status 2
BDL2: 100000
100000
Buf2
Buf2-Buf3/2
100000
100000
BDL3: 100000
0 ; end of RBDL
BDL4: 100000
130000
Buf3
Buf3-Buf4/2
100000
100000
BDL5: 100000
0 ; end of XBDL
; Reserve receive buffer
Buf1: .blkb 2048.
Buf2: .blkb 2048.
Buf3: .byte 0,252,252,252,252,252,252,252 ; 1st byte of my ether address
.byte 0,0,0,0,0,0,0,0 ; 2nd
.byte 0,3,3,3,3,3,3,3 ; 3rd
.byte 0,1,1,1,1,1,1,1 ; 4th
.byte 0,31,31,31,31,31,31,31 ; 5th
.byte 0,175,175,175,175,175,175,175 ; 6th
.byte 0,0,0,0,0,0,0,0 ; dummy
.byte 0,0,0,0,0,0,0,0 ; dummy
.byte 0,377,377,377,377,377,377,377 ; set broadcast address
.byte 0,377,377,377,377,377,377,377 ; set broadcast address
.byte 0,377,377,377,377,377,377,377 ; set broadcast address
.byte 0,377,377,377,377,377,377,377 ; set broadcast address
.byte 0,377,377,377,377,377,377,377 ; set broadcast address
.byte 0,377,377,377,377,377,377,377 ; set broadcast address
.byte 0,0,0,0,0,0,0,0 ; dummy
.byte 0,0,0,0,0,0,0,0 ; dummy
.byte 14,14
Buf4:
.end Start
;The end of DEQNA BDROM reading program
-------