OMCII I)OCMP PROTOCOL !MPL~MENTAT 101';
I. DMA IMM, NXTSP MICPCcMICPC+1
15 HARVE~ M. SCHLESINGER
11 COP:tRIGHT 1915 DIGITAL EQUIP"IENT CORPORATION
b9 MICRO INSTRUCTION DUINITIONS
70 BRANCH INSTRUCTIONS
t 13 INDEXED BRANCH INSTRUCTIONS
149 MOYE INSTRUCTIONS
257 INPlJrlOUTPUT ASSIGNMENTS 309 PI<OTOCOL DEPENDANT "!ACROS
352 DMCII DDCMp MICRO CODE ASSEMBLED FOR USE WITH THE M8201 LINE UNIT 359 VERSION "'0A FEBRUARY 26,1975
360
3i> t HARVEY M. SCHLESINGEIl 36.2
363 COPYRIGHT 1975, DIGITAL EQUIPMENT CORPORATION 364
365 VERSION 0~B MARCH 17,1975
366 CSR AND MICROPROCESSOR CHANGES 367
~bH YERSION 01lC NOVEMBER 6, 1975
369 RETRANSMISSION CHANGES
H0
371 VEkSION 1<100 DECEMBER 3,1975 312 TRANSMIT OO"lE CHANGES
313
3H THE LATEST MODIFICATIONS WERE ADDED ONI
375 NOVEMBEIl 16, 1976
371 MICROPROCESSOR MAIN MEMORY ASSIGNMENTS 442 SCRATCH pAD ASSIG,.MENTS
411 INIT--INITIALIZATIO" ROUTINE
534 IDLE--PROGRAM IDLE LOOP
5b5 BASSRY---- BASE SE'RVICE ROUTINE 6"'2 NIDLE2---NO CSR ACTIyal STATE b43 INWAIT---WAIT FOR RQI TO
CLEAR-693 OUTINT---SET UP OUTPUT INTERRUPT [RDleO]
HI OUTWAI--WAIT FOR RDro TO GO AWAY 753 CTLSRV--C~TL I SERVICE
711 T~ASRY--TRANS"IlTTER bUn"ER ADDRESS SERYICE 793 R~ASRV--RECEIVE BUFFER ADDRESS SERVICE:
859 RCYA--ROUTINE TO HANDLt.. FIRST DOCI4P CHARACTER 1196 RCY8--ROUTINE TO HANDLE FIRST CHARACTER
or
COUNT FIELD9H RCVC--ROUTINE TO HANDLE SECOND CHARACTER Of COUNT FIELD, SELECT AND FINAL 954 RCYD--ROUT INE TO HANDLE RESPONSE FIELD fOR NUMBERED MESSAGES
975 RCV"--ROUTItIE TO HA~lILE N FIELD Of NUMBERED MESSAGE 98 q RCYF--ROUTINE TO IGNORE ADDRESS
916 RCVG--ROUTINE TO IGNORE CRCI
10,'1 RCVH--ROUTINE TO HANDLE CRC2 ANfI TO DISPATCH NUMBERED liD UNNUMBERED TYPES II'Ib6 RCV~OI--ROUTINE TO HANDLE FIRST BYTE ODD RECEIVE
llC19 RCVI<O--PROCESS ODD CHARACTER
DMC 11 uDC~P PROTOCOL IMPLEMENTATION DDCHGH."'P.C 21-APP-17 10: 16
MACYlt 30(U46) l1-JUL-77 12125
TABLE OF CONTENTS PAGE: IUSI
1*,96 RCYI<E--HANOLE EVEN BYTES
1 t 46 RCV I--STORE UNNUMBERED MESSAGE TlCPE
1I5.! RCVJ--ROUTINE TO HANDLE SUBTypE FIELD, SELECT AND FINA~
1166 RCVIl--UNNUMBERED "'ESSlGE f!ESPONSE FIELD 1176 RCYQ--UNNUMBERED MESSAGE--NUM8ER FIELD
llR2 RCVL--PROCESS CRC]
12.H RCV"'--PROCESS CRC4--END Of DATA MESSAGE 1226 E"2--PROCt..SS RLO MESSAGt.
1216 f'lX"It.RR ___ NON EXISrANT MEMORY HANDLER 1195 T04TOA--TRANSMITTER DISPATCH ROUTINE 13<'1 TMIA--FII\S'I CHARACTER Ot- HEADER I n l T"'TB--OUTPUT fIRST CHAR Of COUNT 14*,4 TMTC--OUTPUT SECOND CHAR Of COUNT i 4 .. tl TI! rO--RESPONSE nELO-NUMBERED MESSAGE 1438 TMTF:--NUM8ER FIELD--Nl1MBERED MESSAGE 14 \1 r04Tf _-NUMBERED MSG ADDRESS FIELD 1460 Tn -NUMBEREIl '1SG HEADER EOM
1410 TMTH_-ROUTINE TO OUTPUT DATA CHARACTERS 1521 T"'TI --SEND UNN UMBERED TYPE Fl ELD 1533 T"'N--SEND SUB-TYPE FIELD
1538 To(TK--OUTPUT RESPONSE fIELD (UNNUMB MSG) 1546 T"TL--UNNUMB MSG NUMBER 'FIELD
t 5b4 TMTM--UNNUMB MSG--STATION ADDRESS 1580 TlMSRV--TIMEOUT ROUTINE--SENDS REP 1646 SNDACK--ROUTINE TO SEND AN liCK
1113 Rt.P HANDLER
17~l START HANDLER
1735 STACK HANDLER
DMC-Il MICROPROCESSOR INSTRUCTIONS DMCHGH.MAC 21- APR-77 1011b
[0 11 12 13 14 15 16
n
19
DMC-ll MICROPROCESSOR INSTRUCTIONS DMCHGH."'AC :It-APR-11 10: 16
2" 0",0"0"
21
22 ;)otI""IM :?3 I ''''f000
H a201o!00
25 ~~"~Je
26 tl40000
n
iff.""'0"
,a .,b""""
2'1
3" ~b0ril0"
31 IH03000
32 i!l1400~
H "0a400
H ~"'1"0"
35 if01400
3b "02000
37 6112400
38 iHI300a
39 iJ0340"
4~
41 ;;dJ"l0,;
42 1'),,1/1220
43 ""'0241:1 44 1;;"'0260
15 ~01il']00
46 0"6321/1
41 ;'00HlI
«
~ 8i/A3b04'1 80~"""
51:1 """1:'20 51 11"2'04"
52 """"60 53 ar."t00
54 1)110120
55 "0111! ~0
56 ~,!~!b~
51
59 a04"0a
S9 0116';0.J
60 Gt4.UI3
bl 0tll"'00 6J 0"14011 63 ,,""4~"
64 802"00
65 .. "21iM
66
a'H"'''''
61 1)03 ... 0
MACYll 30(1046) ll-uUL-71 12125 PAG~ 1
• TITLE DMC-l1 MICROPROCESSOR INSTRUCTIONS .SBTTL MACRO DEFINITIONS
:SBTTL REVISION 00 .SBTTL ~·EBRUAPY 25, 1975 .SBTTL
.SBTTL Rf;V ISlON 01 .saT7L MARCH 18,i975 .SBTTL NE-Ii CSR BOARD CHANGES .SBTTL
.SBTTL HARVEY M. SCHLESINGER I
.SBTTL COP1RIGHT 1975 DIGITAL EQUIPMENT CORPORATION
MACYll 30(1046) l1-uUL-17 12125 PAGE I - I COPYRIGHT 1915 DIG} TAL EQUIPMENT CORPORATION
NEiI=0
I MICROPPOCESSOR INSTRUCTION IIORD DEfINITIONS ,OPCODE iOyE
MOVEa0 uUMPaU0,,00 IBUS:0209100 lMM::ijo MEMX:040000 BRX"60000 BR=60000 DP"60000 LDMARa10000 INOIARII14000 WRTEBR=400 WROUTX:z1000 SHFTBR-140.., iiROUTa21'l0'"
iiRfoIIEM=2400 SPll=300"
SPBRXz3400 ,FUNCTIONS 5£LA=200
S£LB=220 AORNB=240 AANDB=260 AORB=300 AXORBz320 SUB-340
SUBTC .. l69 ADD:0 ADDC=20 SUBC"40 INCb60 AC:ot00 AAo:120 AAC"140 OECA~1~9
, END FUNCTIONS PAGE1"4000 PAGE2-10000 PAGEle14090 CCOND:z10i!10 ZCOND_1400 ALCOND=400 8P0CON&29100 BRICON=240i1 BR4CON= 3000 BR1CONa3400
,OPCODE JUMP I SOURCE IBUS , SOiiRCVi IMioiEDIAtE , SOURCE MEMORY :SOUR~£ BR ,SOURCE BR ,SOURCE 8R ,NA-LOAD'MAR LO , !lA-INCREMENT liAR IDEST-WRITE BR ,DEST-EXTEtiDED IBUS ,DEST-SHIFT BR LEFT , DEST~WRITE OUTPUT ,OEST-WRITE MEMORY ,DESI-W~ITE SP ,DESI-WRITE SP AND BR , FUNCTION-SELECT A , FUNCTION-sELECT B ,FUNCTION-A OR NOT B , rtJRCTION A AND B : FUNCTION-A OR B ,FUNCTION A XOR B ,SUBTRACT
,FUNCTION- TIIOS COMPLEMENT SUBTRACT ,ADD A+B
,A+8+CARitY , A-B-C ,INCREMENT A ,A PLUS CARR~
:11. PLUS
A
,A PLUS A PLUS
; DfCR£;;E;;~ A
,CONDITION C ,CONDITION Z ,ALWAYS ,CONDITION BR0 ,CONDITION BRI ,CONDUlOR 8R4 J CONDITION 8R1
Pi\~Ez ~152
PAGE: 0153
DMC-tt MICROPROCESSOR INS'l'RUCTlONS DMC~GH.MAC 21-APR-71 10116
69
DIIIC-li MICR'lPROCE.SSOR INSTRUCTIONS DMCHGIl.",AC 21-liPR-71 10:16
251 MICRO IIIISTIWC110N OEFTNITIONS
.SBTTL MICRO INSTRUCTION DEFINITIONS
.sartL SRANCH INSTRUCTIONS
JUMp=10t'1000 ,JUMP OP CODE
.S81TL INDEXED BRANCH INSTRUCTIONS
.S8TTL MOVE INSTRUCTIONS
MOVEa0 rMOVE OPCODE
MACYlt 30(1046) ll-JUL-71 12125 PAGE 3 INPUT lOUT PUT ASSIGNMENTS
.SBTTL IIiPUT/OUTPUT ,IBUS ASSIGNMENTS INCON=0+100000 HAINa20+1000e0 OCON840+100000 UBAOOR=60+ 100000 PORTI 8 100+100000 PORT2= 120+ 100000 PORTlaU0+ 10"000 PORT4 8 160tl "0000 NPR&1I00+100000 LNOSWa 320 BM813834e LUMAIN=36fJ :OBUS ASSIGNMENTS ,EXTENDt.D OBUS OINCON=" :MAINTAINENCE REGISTER lOUT CONTROL CSR : 81'1 (INTERRUPT) CONTROL ,INPUT DATA LOw SYTE ,MODEM CONTROL r SyN REGISTt:R fLINE NUMBER SliITCH
;BM873 ADDRESS '
;LINE UNIT MAINTUNENCE
, IN CONTROL CSR
DMC-l1 MICROPROCESSOR I~STRUCTIONS DMCHGH.MAC 21-APR-77 10:16
3"9 310 3.23 328 332 06 H2 HS JH 350
117777
DMC-ll MICROPROCESSOR INSTRUCTIONS HILO".MAC i113-D~C-16 I1H16
352 353
MACYl1 3,,(1040) tl-JUL-17 12125 PAGE 3-1 PA(;EI "156
PROTOCOL DEPENDANT MACROS
.SBTTL PROTOCOL DEpENDANT MACROS
HICPC=177777 J Hilt HICRO PC
HACYlt 30(1046) l1-JUL-17 12125 'AGE 5 PAGE: 16157
DHCll DOCMp MICRO CODE ASSEMBLED FOR USE wITH THE 148201 LINE UNIT
.SBTTL OMCll DDCllp MICRO CODE ASSEMBLED rON USE wITH THE 1482"'1 LINE UNIT LOile/il
OlllCI1 OOCMP PROTOCOL IMPLEMENTATION ODCIlGH.MAC 21-APP-17 1":16
359
OIllCII OOCMP pROTOCOL IMPLEMENTATlOr.
OOCHGH.MAC 21-APR-77 10,16 377
• TlTL~ DMCll ODCMP PROTOCOL IMPLEMENTATION .SBTTL VERsION 0011 FEBRUARY 26,1975 .SBTTL
.StlTTL HARVEy M. sCHLESINGER .SBTTL
.SBTTL COPYRIGHT 1975, DIGITAL EQUIPMENT CORPORATION .SBTTL
.SBTTL VERSION 1l0B MARCH 17,1975 .SBTTL CSR AND MICROPROCEsSOR CHANGES .S8TTL
.SBTTL VERSION 0ec NOVEMBER 6, 1975 .SBTTL RETRANSMISSION CHANGES
.SBUL
.SBUL VERSION 000 DECEMBER 3,1975 .SBTTL TRANSMIT DONE CHANGES
.SBTTL
.SBUL THE LATEST MODIFICATIONS WERE ADDED ON,
.SBTTL NOVEMBER 16, 1976
MACYl1 30(1046) 1l-JUL-77 12125 P,AGE 6-1 MICROPROCESSOR MAIN MEMORY ASSIGNMENts
.SBTTL MICROPROCESSOJI MAIN MEMORY ASSIGNMENTS J ALLOCATION or NICROPJlOCESSOR MAIN IiIENOJlI NAKSRc0 ; MAKS Rt(:D--DYNAMIC NAt-STsNAKSR+l J MAKS TiliTED--DYNAMIC REPSRsNAKST+l J REPS RECD--DYNAMIC REPST-RtPSR+l J REPS 'rll'!'ED--DYNAMIC NPaREPST+3 JCONSTART ,
NTLR-MPH ,MAKS-MsG NO BurFERS CUMUL.
NHOR_NTLR+1 ,NAKS-MSG HEADER BAD NOATRsNHOR+l ,NAI'.S-DATA BAD NTLsaNOATR+ I ,NAK SENT --NO BUFFERS HHOS8NTLS+l ,NAK SElF BAD HEADER NOATsaNHDS+l ,NAK SIllT BAD DATA i\£;PCSahOAJI)+i. ,REi'S bEIU CUMUL REPeR-REPeS+l J REPS RICO CUMUL
BASE_REPeRt 1 fCORE TABLE BASE AOURESS
SRC-BASE+3 fSTART Of INPUT CHUN--NEXT T"'L2-TMLI +6 T"'L3-TML2+6 I111G148IMGI2+1 IMGI6-IMGIHl f-lTHRS=lNCONS+ t
,TRANSMIT LINK 11
OMC t 1 ODCMP PROTOCOL IMPLEMF:N.TA1'lOt.
ODCHGH.MAC 2t- APR-77 10: 16 433
4.34 435 436 437 4313 439
",,"'21"
~il021l 000240 0lilil241 0o",242 ilitJiH0itJ
DMCt 1 DDCMP PROTOCOL I'IPLEME.NTATION DOCHGH.MAC 2t-APR-71 10116
442
443 0003ih'
444 e001101
445 446
4~7 HI!
449 4S0
~SI 452
453 1'",,1:1.,2
454 61101!l03
45'5 ,,300164
456 0"0005
4'57 0110000
458 "16"007
459 1100010
401il 461 41>2 463 4b.
41:>5 466.
467 468
469 ;,""'011
470 580012
471 i"'0013
472 ~dlililU
473 ,-,,""1615 474 lidl""O
05 1)00017
MACYlt 30(11146) ll-JuL-77 12&25 PAGE 6-2 MICROPROCESSOP MAlt. MF.'MORY ASSIGNMENTS
fALL LOCATIONS fROM 200 ON ARE NOT WRITTEN OUT DURING A TABLE UpDATt.
TABST-210 PRTST=Tp,BST+l NXT!NT:240 NXTSP .. NXTIHT+1 I NTSTK=NXTSP+ 1 MioIiENDzU'0
,TABLE UPDAtE STATE IpORT STATE
,NEXT INTERRUPT POSITION 1 END OF INTERUpT CHAlN :STACK Of" lfiTl-RUPTS 1 MAIN MEMORY END
MACYll 30(1046) ll-JUL-77 12125 PAGE 6-3 SCRATCH PAD ASSIGNMENTS
.SBTTL SCRATCH PAD ASSIGNMENTS SP0=0 , Sp0---SCRhcH REGISTER SP1'"' :Sp1---PORT STATUS WORD
,BIT ASSIGNMENTS ,BlTe--INI'!' MODE
,BI'ti--SEC S'rAtiON SELECT( UNUSED) :BIT2--NO BUFFER ASSIGNED IN SOOT MODE :BITl--DLE RECEIVED WHILE NOT IN MUNT MODE :BIT4--INTERRUPT PENDING
,BITb--DISCONNECT ERROR ,BIT7--BOOT MODE
SP2-2 ,SP2--·T~ANSMIT STATE POINTER SPl-3 ,Sp3---RECEIyt STATE POINTER SP4-4 ,5P4---ENO RECV ADDRESS 51'5-5 ,SP5---END RECEIYE ADDRESS SP6=6 ,Sp6---END TRANSMIT ADDRESS 51'7=7 ,SP7---END TRANSMl'1' ADDRESS SPUJ.10 ,SP1I6---LIN~ S'lATUS tlORD
, BU ASSIGNMENTS ,BlT0--UNNUMB PENDING ,BIT1--MESSAGE IN PROGRESS ,BIT2--LINE HAS GONE IDLE ,BITl--START PECE:IVED , BIT4--CLEAR ACTIVE ON END ,BIT5--START MODE ,BIT6--HALF DUPLEX ,BIT7--0K TO SEND SPllaU ,SPll---R FlEW SP12a12 ,51'12---111 FIELD SP13a13 ,SP13---TYpE
51'14=14 ,Sp14---R£C£IVE LINK IMAGE
SP15=15 ,Sp15---TIMER ENTRY---HUMBER Of ONE SECOhD T1CKS SP16-16 ,SP16---POINTER TO TMT LINK COpy 1N MAIN MEM 51'17-17 ,SP17---LAST MESSAGE ACKNOWLEDGKO
PAGE; !a!6!:!
PAGE: 0161
I)MC II DDCMP PROTOCOL I MPL!'MENTATIOt;
(ll ii16352 &&3211 5"1 e16354
(1) 0i:0015
(1) 81 &354 063232 502 "t1>356
(1) IH''''''16
( I ) ~t6356 ~U1t62
DMCII OI)CMP PROTOCOL IMPLEMENTATION ODCH(;H,"'~C ll-APR-77 I(HI6
5173 ~1636;) (11 1""0"34 (I) "16'12 0112411 INIT--I"'lTlALIZATlON ROUTINt.
II-11T:
5$:
.SBTTL INIT--INITIALlZATION ROUTINE ,ZEROS foIJ\lN MEMORY
<MOVEISPXI BRI SELSI SP0>
SP BR, SELB, SP3 ; PAGE ONE TRANSFER ADDRESS
MICPC=MICPC+1
<MOVEI SPll BRI SELBI SP3>
l>P BR, SELB, SP17 ;CLEAR SP17
MICPCaMICPC+ I
<MOVEISPX! BRI SELfH SPI7>
OUT BR,<SELAIOINCON> ;ZERO THE IN CONTROL CSR MICPCo:MICPC>t1
<MOVE I WF<OUTX I BR! <se;LIIOINCON»
OUT BR, <SELA I OOCOI> ; ZERO THE OUT CONTROL CSR MICPCIIMICPC+1
<MOVE! WROUTX ISRI <SELII OOCON»
SP IMM,370,SPU ;WRITE 5 ONE BITS TO THE Hl(';11 ORDER MICPCo:MICPC+1
<MOVE I SPX! IMM! 3701 SPI0>
,BITS OF SP10
51' BR,AA,SP1I!I ;SHlfT SPl0 LEfT SETTING CARRY THE MICPCo:MICPC>tl
<,",OVEI SPXIBRUA!SPI0>
,FlI~ST 5 TIMES THRU THE LOOP
<HOVEl SPXI BRI INCAISP0>
Z 10$ ; ALL DONE
MICPCIIMICPC+1
<JUMPI ZCOND! <108-IN1T"300"*4> I < 1 0,-INI1&7 77/2»
ALWAYS 58 ; KEEP GOING
MICPCaMICPCH
<JUMPIUCONDI<5$-INITU000*4>1 <55-INIT"77712»
11'18: SPSR IMM,I,SPl ,WRITE A 1 TO THE 8R AND SPI MICPC.MICPC+l
<HOVEl SPBRXlIMMl1 ISP1>
SP BR,SELB,SP1l ,WRITE A TO SPll
MICPC"MICPC+l
<MOVE I SPI18RI SEL8ISP11>
SP BR, SELB, SP12 ,WRITE A TO SP12
MICPC·MICPCtl
<MOVE! SPX! BRISEL81 SPI2>
LOMA 1MM, TYPUB ,POINT MAR TO TYPE TABLE
MICpCaMICPCH
<"'OVEI LDMAkI1lllMI<TYPTABIo377»
MACYlI 30U'U) U-JUL-77 12:25 PAGE 6-5 INlT--INITIALIZATIOIi ROUTINE
BRWRTE IMM,22b ; WRITE SYNC TO MEMORY
MICPC a 'UCPC+1
<,",OVEIWRTEBRI IMMI <226»
OUTPUT BR,SELBISINC ,LOAD THE SYNC REGISTER MICpCaMICPC>t 1
<!lOVEI WROUT I BR I <SELB I SYNC»
MEMINe IMM,3 ;REP
MICPCilMlCPC+1
<"OVEI WRMEM I INCMAR I IMM1<3»
MEM 1"'101,2 ;MAK
MICpC.MICPCH
<MOVE I WRMEM! IMMI <2»
sr }~LH~;!~CM:.;;,~E:..e,3t~! i::'[,! :)'!'AR::":~:G -,. .... "' ..•
MICPC·MICpC+1
<MOVEI SPX! MEMU INCMARISEL8ISP15>
MEMIHC 1101101,6 ,START
HICPC.MICPC+l
< .. OVEI WPMEM! INCMAR!lMMI<6»
MEMINC HIM,7 ,STACK
MICPC-MICPC+1 .
<MOVE II/RMEMI INClilARI IMM1<7»
MEMINC IMM,1 ; loCK
HICPCaMICPC+l
<MOVEI WPMEMllIlCMAR I IMMI<l»
LOMA IMM, TABST ; PO~N1 TO TABLE UPDATE STATE MICPCaMICPC+1
<"OVE: LOMAR! I111MI <TABSTio177»
PSTATI 13 ; INITIALIZE IT
MEMINC IMM,«13-INIT"17712»
MICPCilMICPC+1
<MOVE I WRNEM! INCMAR! 1IIMI«13 .. INI T. 777/2>>>
PSTATI NJDLE2 ;INITIALIZE PORT STATIJS
kEMINC IMM,«NIOLE2-INITIo77712»
MICPC-MICPC+l
<MOVEI ilkMEM I INCMARI IMM1«NIDLE2-INIT.777/2>>>
LDMA IMM,STC ,LOAD ADDRESS OF LAST 1MT CHAIN
MICPCaMICPCt I
< .. OVt:: LtlMAP! IMM I <STC.377» M ICPC=MICPC+1
<110VEISPX! MEMX: SELB I SPI to>
LOMA IMI'I,SRC ;LOAO ADOflESS OF LAST RECV CHAIN M ICPC"'MICPC+ 1
<MOVE: LliMAR! IMMl <SRC"377»
"'EMINC I01M,RCLt ;SET UP AUDRESS Of HRST Kt:CY Ll~K
OMCll OOCMP PROTOCOL IMPLEMENTATION ODCHGH.M~C 2 i -APR-n ,0: i6
521 IIItb424 (1) 000"'41 ( t ) 816424 0;43234 522 81b42b
( ' , lh'0042
(1) 01 b426 01i1240 523 816430
(1) ;'''0043
OJ iH6435 fli>042 524 016432 (1) 30"*'44 (1) 41b432 002b42 525 IHt4H
(ll 0110045
(1) "16434 fl00b0"
526 iU6436
( I ) "30046
(1) IrHb436 0b1221 527
529 fiH6440 (1) ""0047 ( t ) tH6U0 11014~
530 531 U16442
(1) 000050
(1) 916412 063223
DMC11 ODCMP PROTOCOL IMPLEMENTATIOr..
DOCHGH.JoIIAC 21·APR-77 10: 16 534
535 536 537 5H 539 elt>444
(1) IM005!
(1) 616444 ijbet>10 54'" '16446
(ll 0110052
(1) "16446 I t240~
541 1016f50
(1) 030053
(1) "16450 11200'"
547 0116452
(1) 000<154
(1) ,,'6452 02"640 548 ",,6454 (1) 1"'0"55
( I ) 016454 167203
549 (H6456
( I ) !J;,atl56
(1) .16456 0U210 55i1 11046'"
(1) a00057
( t ) ':16460 t 401'>20 551 l"164b2 553 ~16462
(1) ea\!l060
( t ) 1'16462 800404 554 ':16464
( t ) a,,0061
(ll
~16464 .,60342 'ISS fl646b (1) 8"0"'62 (1) 1116466 11111130 557 1"6470' I I iii7ijVio,;
In
1116HJ 12)020!>58 .lb412 ( l l !I.H"~6i (ll 816472 113255 S51 :1'11'>474 ( t ) 06"065 (0 .. 16H4 62324"
56" 31647b (1) 0"""66 (1) .Jt6416 &60520 561 ""05o"
(J) Ih''''''b 7 (Il 91650 .... 1 \1)454 56l "16502 (ll .;""070 ( t ) ~16502 ,'10211 50J 'lb5~1
(ll ."'0.071
MACY11 30(1046) ll-JUL-77 12125 PAGE 6-6 INlr--Il\lITlALIZATION POUTINE
SP MEMX. SELS. SP14
~ICPC=MlCPC+l
< JoIIO VE ! SPX! M"",XI SELS! SPI4>
LOMA IMM,NxtINT ;AOORESS OF NEXT INTERRUPT POHITER TQ !UR MICPC=MICPC+l
<"lOVE! LDMAf< I 1MMI <NXTINT .. 377»
HEMINC IMM,INTSTK ,lhITIALIZE NEXT iNTERRUPT POINTER
IHCPC"MICPC~ 1
<HOVEl WRNEMI INCMARI 114M 1 <INTSTK»
MEM IM",INTSTK J INI TIALIZE lNSERTION pOINTER
MICPCaMICPC+ 1
<MOVE I WPMEM! IMM I <INTSTK»
eRW~T~ IMM,20i6 ;WRITE THE RUN BIT TO THE bR MICPC=MICPC+1
<HOVEl WRTESRI IMM! <200»
OUT SP,<SELSIOMAIN> JWRITE THE RUN IUT TO MAINT CSR MICPC:o:MICPC+1
<MOVE' WROUTXI SR! <SELSIOMAIN»
ALWAYS TEOM2 MICPCaMICPC+1
; FALL INTO IDLE LOOP
. <JUMPULCONDI<TEOM2-INlT,,3e00*4>' <TEOM2-1NIT"777/2»
I
REXIT: SP SR,SELS,SP3 MICPC=MICPC+1
<MOVE I SPX! BR! SELS I SP3>
MACYlI 30(le46) ll-JUL-17 12.25 PAGE 6-7 IDLE--PROGRAM IDLE LOOP
.SBUL IDLE--PROGRAM IDLE LOOP , PROGRAM IDLE LoOOP
,DISPATCHES TO APPROPRIATE SERVICE ROUTINES
;USES STATE POINTERS FOR TMT,RCV,C6R ACTIVITY
,
PAGE: 0165
IDLEI SRWRTE BR.<SEI..A!SPH!> . IREAD l'RANsn!T SiAiiiS iiOEU .. rROjoj SPi'" TO SR MICPCI;MICPC+1
<MOVEI WRTESR!BR!<SELA!SPU»
SFI TMTOl ; IF DATA TO SEND-- SRANCH
MICPC=MICPC+l
<JUMP IBRICON t <TMTDA-IN If"3e01il*4>' <TMTDA-INI T& 77 7/2»
SRe TMTDA , IF DATA TO SEND-- BRANCH
MICPCI;MICPC+1
<JUMP I SReCON I <TMTDA-INIT&30ee*4>I <TMTDl-INI T6.717/2»
I 1 I bRIIRTE IBI,IS, RCVCON J READ LINL UNIT RECEIVE CONTROL WORD
MICPC=MICPCtt .
<MOVE I WRTEBRI ISUS, <RCVCON»
.BR4 SR,SELA,SP3IPAGEI ,BRANCH BASt;D UPON RECV STATE MICPC=f'lICPC+1
<JUMP I bR4CON URI SELA I tiP) I PAGEl>
12: LDMA I"'''',TABST ,pOINT TO TASLE UPDATE STAT~
MICPC-UCPC+l
<IIOVEILDMAR! IMN! <TABST .. 377»
.ALWAY MEMX,SELs,e MICPC-HICPC+ 1
<JUMP I ALCOND! MEMXI SELB I i>
STATE TMTAt2 ;GET IDLE TRANSMIT S'UTE + 1
MICPC:o:MICPC+I
<MOVEI WRTESR! JMMt,<TMTA+2-INU'777/2»
NOP BR, SUB, SP2 . , SUBTRACT fROM CURRENT STAT!=-MICPC-MICPCtt
<BRI SUSI SP2>
C TMTDA ,NON-IDLE STATE
MICPC=MICPC+1
<JUMP! CCONO I <THTDA- INIT"30ee*4>' <TMTOA-INl
n.n
7/2»IDLE,,: SPbR IBus.naaR,SP0 ; TIME!! El(~l!!~E'?
MICPC=MICPC+l
<MOVEI SPSRll! ISUS I USSR I Spe) IH;4 TIMSRV
folICPC:MICPC+1
<JUMP! SR4CON! <TIHSRV-INIT"3000*4>! <T IMSRV-INl T& 777/2»
SP IBUS, RCVCOH, SPi! ; READ THE Rt:CEl VE CONTROL Rt:GISTER HICPC-M lC1>C + 1
<MOVE I SPX! IBUSI RCVtON I spe)
BRIrIRTE bR,UISP0 ;SHIFT IT Lt.FT
MICPCI;MICPC+1
<"'OVEI WRTESR!8R!<AA!SPtJ»
BR7 It ,RECEIVE ACTIVE, DON'T DO PURT STATUS
MICPC=MICPC+l
<JUJoilPIBI<7CON! <11-INIT&30tJ0*4> 1<Il-INI Ii. 77 714»
LOMA IMM,PRTST :ADDRESS POIlT STATt:
MICPC=MICPCtl
< "IOVt. I LUMAR! lJo11",! <PRTST6.377»
.ALwAY MEMX.SELB,i! ;INDEX
MIC"C=",lCPC't1
DMCII DOCMP PROTOCOL IMPLEMLNTATION DOCtlGH. MAC 21 -APR-17 1'l1:16
(1) ~165~' 14~b20
OMC I I ODCMP PROTOCOL I~PLE.MENTATlON OOCHGH."AC 2t-APP-77 10116
5&5 566 off I 1>500 (1 ) ~16506
(2) ,00012
(2) iU6511& ""'2531 51> 7 Illb51a
(1) ~0a07)
( t ) el651~ 01111017 5b8 illb511
(I) 800074
(1) £'11>512 lJ6500 S69 R16514 (1) ""0015 (1) .. 16514 IJb5l0 510 IH651/)
(I) iJ0i'1076
(n
iU6516 122560 0;71 Il'Ib5l0 (I) ""0077 ( t ) .lb520 123000 572 '''6521(1) IW010a
(1) ,,,6522 01"'1500 573 816524
(1) ~0010t
(I) .1/)524 1161260 51\ 0lb526
(1) ,,00102
(ll .,11>526 0it2131 575 .16530 I I ) "11011113 (I) .11>534 040b20 516 e<lb532
( I ) '''''0104
(1) 1"11>532 103113 571 f(,lb5H
( I ) 81101<15
(1) IIlb534 r-10151 518 .16536
(1) '00106
III 1I1b536 :)16406 5H "'654"
(1) IH'0107
( I ) 011>54J 1"02700
!'>d3 111>542 1\) L"It.1110 (1) ,;lb542 91>311>1
~81 0Ib~44
(t> ~iJ.H 11
II) ,,1>544 110;;1>41 5&2 "1654b ( I )
",,""2
( I ) IH&!'>t!> IU731 583 i'lb550 (1) a"'3113 i i j 6i6r,5;' 'j,ni''}4
MACYlI 311004b) ll-JUL-71 12125 PAGE 6-8 lOLE--PROGRA'" IOLE LOOP
<JU'IP I ALCOND I MEMX I SELBI"'>
MACYlI 31'1 ( U146) I t -JuL·77 12125 PAGE 6-9 BASSRV---- BASE SERVICE ROUTINE
• SBTTL BASSRV-·_· BASE SERfICE ROUTINE BASSRV: PSTATE NIDLE2
MEM IMM,«NIOLE2-INIT"77112»
14 ICPC-MICPC+ 1
<'10VEI liRHEMI IMM 1«NIDLE3-IIIIU 777/2>>>
PAGE: 1'I1b6
PAGEl 011>7
LOMA IMM,BASE ,CLt;AR TO MAR SO IT POINTS TO BASE POINT
MICPC·MICPC+l
<MOVE I LDMARI 114Ml<BASEU77»
NEMINe 18US,PORTl 1 READ CSR"
MICPC;,MICPC+l
<MOVE I WRME", I INCMARllBUS1<PORT1»
"'EMIIIC IBUS, PORT2 - , READ CSRS IIICpci:IIIIlCPC+1
<MOVt.' WRMt;'" 1 IN(;MARI 18U&4<PuRT:l»
MEM IBUS, PORT4 IncpczMICPC+ 1
<MOVE lliPHEM I 18US I <PORt"»
SP 18US, INCON, SP0 ; READ INPUT CONTROL CSR MICPCa:follCPC+ 1
<MOVE! SPll I8USIINCON ISP0>
BRWRT~: 1M"', 100 ,CLEAP THt: 8R MICPCz:MICPC+1
<MOVEI WRTE8RI IMMI<100»
OUT 8R,<AANDBIOINCON> ,CLEAR THE lliCONTROL CSR I4ICPC·MICPC+1
dlOVEI liROUTXI8Rl <AAND81 DINCOII»
OUTPUT IMM,<12810MODEM> ,MASK FOR HDX AND DTR MICPC·MICPC+l
<MOYEI WROUT! 114MI<1201 OMODEM»
8RtiiRTE MEMX,SELB ,READ SEL6
MICPC·MICPC+1
<MOVE I wRTEBRI MEMXl<SEIie.>
BR4 RESUME ,If
sn
RESUMEMICPC.M lCPC+ 1
<.JUMP 18R4CON I <RESUME·IN n'l00e*4> I <RESUME-INI T. 77 7/2»
LDMA IMM, T ,LOAD ADDRESS 0 .. T:iPii; FIElID MICPC·MICPC+l
<MOVEI LDMARI 1 111M I <T"377»
MEMINC IMM,6 ;WRITE START TYPE TO MEMOR~
MICPCZM1CPC+l
<MOVEI WI'IMEM11NCMARlIMMI <6»
HEM IMM, )00 ,WRI TE SEl.ECT AND f'INAL TU MI::MORY MICPC-MICPC+1
OIOVEI wRMEM! IMM 1 <31011'1»
SP IlR,DECA,SPl 1TURN 0 .... INIT MODE MICPC.MICPC+ 1
<MOVE I SPXI SR I DECAl SPl >
1i51: IlRWRTE IMM,241 ,SET OK TO SEND,SlAHTr-ODE. AND UNNUM Pt"lDING MICPCzMICf'C + 1
(140VE 1 wI'TE.SR lIMIoI I <241»
ALwAIS SA]
MICPC.''I1CPC+l
<JUMP! ALCOND! (SA 3-1 N 1 Tio 3.,0il* 4> I <SA 3-1 N IT .. 77 7/2»
h. St1ME: SP 1 141'1,51'14,4 : SET IJP SP4 F OR COUNT! ~G ~PHS I'ICPC= .. lCPC+l
(,~(;Vt.!~~ )':lu~:SP4!4>
DMCll ODCMP PROTOCOL IMPLEMENTATlON DDCHGH.MAC 2i -APr.-7; 10,16
584 01b552 (1) &"0114 (1) rH655l tlb30H 585
581> 316S'H
( t ) 8118115
(I) .,16554 8111011 587 "'160;56
{ii li.hOi 1b
(1) k"16556 fle~H3 588 IU6560 (1) ""0117
" 1 1 i?1656~ ~ t Z4S5
SS9 ;)165b2 (1) ~a"12f/1 (ll IU65b2 et0154 590 b165b4 ( t ) 1,.11"21
( I ) iUb564 0573U'I
591 .165b6
(1) ,,0iH22
(ll ~lb566 357231 592 1016570
( I ) ""hH23
( t ) e1657~ 057232 593 1116572
(t) i'lihl124
(1) iU6572 057234 594 IU6574
(1) "00125
( t ) J16574 05723&
595 11H6576
(1) ihl0126
( t ) !;t6516 1143237 596 \)166~kI
( t ) 000127
(ll 1>1660" 0b3170 597
598 111&602
(t> SIhH30
(ll .16002 p03161 5;19 l&l1660"
{1) 3"'0131 (1) IU66e4 i",f/lb",,, Mhil 0t6b06
(1) 81/10132
(1) O16600 110737
DMC 11 DDCM? PROTOCOL IMPLEME.NTATION