*** THIS DOCUMENT MAY CONTAIN BBN PROPRIETARY INFORMATION. *** *** FURNISHED FOR U. S. GOVERNMENT END USE ONLY. *** PAGE 1 IMP,3050,IMP 7:20 PM 9/16/1973 IMP SYSTEM .VERS.=3050 DCA=0 PRINTX /NETWORK VERSION / PNTNUM .VERS. PRINTX / / REPEAT 1IF VZ DCA,[ PRINTX /ARPA NET SYSTEM / ] REPEAT 0IF VZ DCA,[ PRINTX /DCA NET SYSTEM / ] *** THIS DOCUMENT MAY CONTAIN BBN PROPRIETARY INFORMATION. *** *** FURNISHED FOR U. S. GOVERNMENT END USE ONLY. *** PAGE 2 IMP,3050,IMP 7:20 PM 9/16/1973 ACA=141216 ADD=14000 /516 OPCODES ANA=6000 AOA=141206 CAL=141050 CAR=141044 CAS=22000 CHS=140024 CMA=140401 CRA=140040 CSA=140320 DXA=11 .ENB=401 ERA=12000 EXA=13 HLT=0 IAB=201 ICA=141340 ICL=141140 ICR=141240 IMA=26000 .INH=1001 INK=43 IRS=24000 JMP=2000 JST=20000 LDA=4000 LDX=72000 NOP=101000 OTK=171020 RCB=140200 SCB=140600 SKP=100000 SLN=101100 SLZ=100100 SMI=101400 SNZ=101040 SPL=100400 SRC=100001 SR1=100020 SR2=100010 SR3=100004 SR4=100002 *** THIS DOCUMENT MAY CONTAIN BBN PROPRIETARY INFORMATION. *** *** FURNISHED FOR U. S. GOVERNMENT END USE ONLY. *** PAGE 3 IMP,3050,IMP 7:20 PM 9/16/1973 SSC=101001 SSM=140500 SSP=140100 SS1=101020 SS2=101010 SS3=101004 SS4=101002 STA=10000 STX=32000 SUB=16000 SZE=100040 TCA=140407 IRP [I,,ALS,ARS,ALR,ARR,LGL,LGR,LLS,LRS,LLR,LRR,LLL,LRL], [N,, 415,405,416,406,414,404,411,401,412,402,410,400] DEFINE I C 0 0 N'00+100-C"A"77 TERMINATE ENDIRP IRP [I,,INA,OCP,OTA,SKS,SMK],[N,,13,3,17,7,17] DEFINE I C 0 0 N'0000 C TERMINATE ENDIRP X=40000 I=100000 XI=140000 DEFINE BSS N 200000 0 0 . N-1/ TERMINATE *** THIS DOCUMENT MAY CONTAIN BBN PROPRIETARY INFORMATION. *** *** FURNISHED FOR U. S. GOVERNMENT END USE ONLY. *** PAGE 4 IMP,3050,IMP 7:20 PM 9/16/1973 /SKS'S, OCP'S, ETC FOR PRODUCTION MACHINES IRP [NUM,,1,2,3,4,5] M'NUM'OUT=OCP 7'NUM M'NUM'UNXP=OCP 17'NUM M'NUM'LXP=OCP 27'NUM M'NUM'IXP=OCP 37'NUM M'NUM'IN=OCP 47'NUM M'NUM'ERR=SKS 47'NUM M'NUM'INIL=63 NUM M'NUM'OTIL=70 NUM M'NUM'INBP=16 NUM NUM M'NUM'OTBP=30 NUM NUM ENDIRP IRP [NUM,,1,2,3] H'NUM'ROUT=OCP 100-[10"T"NUM] H'NUM'IN=OCP 200-[10"T"NUM] H'NUM'FOUT=OCP 300-[10"T"NUM] H'NUM'XP=OCP 400-[10"T"NUM] H'NUM'UNXP=OCP 500-[10"T"NUM] H'NUM'ENAB=OCP 600-[10"T"NUM] H'NUM'ERR=SKS 100-[10"T"NUM] H'NUM'RDY=SKS 200-[10"T"NUM] H'NUM'EOM=SKS 300-[10"T"NUM] H'NUM'FULL=SKS 500-[10"T"NUM] H'NUM'OTIL=75 NUM H'NUM'INIL=77 NUM H'NUM'OTBP=42 NUM NUM H'NUM'INBP=46 NUM NUM ENDIRP *** THIS DOCUMENT MAY CONTAIN BBN PROPRIETARY INFORMATION. *** *** FURNISHED FOR U. S. GOVERNMENT END USE ONLY. *** PAGE 5 IMP,3050,IMP 7:20 PM 9/16/1973 H3OTIL=M5INIL /HOST 3 IS A LITTLE STRANGE H3INIL=M5OTIL H3OTBP=54 H3INBP=56 H4OTIL=M4INIL /HOST 4 IS YET STRANGER H4INIL=M4OTIL H4OTBP=M5INBP H4INBP=M5OTBP H4ROUT=OCP 51 H4IN=OCP 151 H4FOUT=OCP 251 H4XP=OCP 351 H4UNXP=OCP 451 H4ENAB=OCP 551 H4ERR=SKS 51 H4RDY=SKS 151 H4EOM=SKS 251 H4FULL=SKS 451 CLKON=OCP 40 CLKOFF=OCP 1040 RDCLOK=INA 1040 CLOKIL=102 TASK=OCP 41 TASKIL=103 WDT=OCP 26 WDTIL=62 PFIL=60 SWDTIL=61 LITES=OTA 26 RDIMPN=INA 1041 AMIMLC=SKS 42 AMI516=SKS 26 *** THIS DOCUMENT MAY CONTAIN BBN PROPRIETARY INFORMATION. *** *** FURNISHED FOR U. S. GOVERNMENT END USE ONLY. *** PAGE 6 IMP,3050,IMP 7:20 PM 9/16/1973 /SKS'S AND OCP'S NATIVE TO THE 516 STDIL=63 /STANDARD INTERRUPT LOCATION TTSIM=OCP 4 /SELECT INPUT MODE TTSOM=OCP 104 /SELECT OUTPUT MODE TTSRDY=SKS 4 TTSNBZ=SKS 104 TTSNSC=SKS 504 TTINA=INA 4 TTINB=INA 204 TTINAC=INA 1004 TTINBC=INA 1204 TTOTA=OTA 4 TTOTB=OTA 204 INTM=120 /SMK TO SET THE PRIORITY INTERRUPT 1 JUNK=1 *** THIS DOCUMENT MAY CONTAIN BBN PROPRIETARY INFORMATION. *** *** FURNISHED FOR U. S. GOVERNMENT END USE ONLY. *** PAGE 7 IMP,3050,IMP 7:20 PM 9/16/1973 EQUALS R,REPEAT EQUALS D,DEFINE EQUALS T,TERMINATE EQUALS P,PRINTX EQUALS PR,PRINT /MACROS TO TYPE OUT INTERESTING LOCATIONS D DEFPLC TX .TA.=. 100201/ .TA. .ASCII /TX'"Z"/ .TA./ T DEFPLC D RELOAD TX .TA.=. 100301/ .TA.+1 .ASCII /TX'"Z"/ .TA./ T RELOAD D DEFHLT TX .TA.=. 100101/ .TA.+1 .ASCII /TX'"Z"/ .TA./ T DEFHLT /TITLES FOR DUMPED TEXTS 100200/ .ASCII /USEFUL LOCATIONS "Z"/ 100100/ .ASCII /HALT LOCATIONS "Z"/ 100000/ .ASCII / PATCH BEG END BUFS"Z"/ 100300/ .ASCII /CRASH-RELOAD LOCATIONS "Z"/ 100400/ .ASCII / IMP BUFFERS ASSIGNED PAGE "Z"/ *** THIS DOCUMENT MAY CONTAIN BBN PROPRIETARY INFORMATION. *** *** FURNISHED FOR U. S. GOVERNMENT END USE ONLY. *** PAGE 8 IMP,3050,IMP 7:20 PM 9/16/1973 /MACROS TO SET UP STATISIICS TABLES NSTATS=0 MAXSTAT=22. /CALL DEFSTAT , D DEFSTAT A,B .TA.=. .TB.=A A R 1IF P,[ SW1+NSTATS/ B SB1+NSTATS/ .TA. SC1+NSTATS/ .TB. .TA.+1/ ] NSTATS=NSTATS+1 R 1IF VP NSTATS-MAXSTAT,[ PR "TOO MANY STATISTICS" NSTATS=NSTATS-1 ] T DEFSTAT *** THIS DOCUMENT MAY CONTAIN BBN PROPRIETARY INFORMATION. *** *** FURNISHED FOR U. S. GOVERNMENT END USE ONLY. *** PAGE 9 IMP,3050,IMP 7:20 PM 9/16/1973 /MACROS FOR IMP/TIP INITIALIZATION NITB=0 MAXITB=20.+4 /SATDEF USES 4 /CALL TIPDEF , D TIPDEF A,B .TA.=. .TB.=A BSS 1 .TC.=B R 1IF P,[ ITBLOC+NITB/ .TA. ITBIMP+NITB/ .TB. ITBTIP+NITB/ .TC. .TA.+1/ ] NITB=NITB+1 R 0IF VP MAXITB-NITB,[ PR "TOO MANY IMP/TIP INSTRS" NITB=NITB-1 ] T TIPDEF R 1IF P,[ ITBLOC/ R MAXITB,[ 1 ] 02236 000001 ] 02237 000001 02240 000001 02241 000001 02242 000001 02243 000001 02244 000001 02245 000001 02246 000001 02247 000001 02250 000001 02251 000001 02252 000001 02253 000001 02254 000001 02255 000001 02256 000001 02257 000001 02260 000001 02261 000001 02262 000001 02263 000001 02264 000001 02265 000001 *** THIS DOCUMENT MAY CONTAIN BBN PROPRIETARY INFORMATION. *** *** FURNISHED FOR U. S. GOVERNMENT END USE ONLY. *** PAGE 10 IMP,3050,IMP 7:20 PM 9/16/1973 / VDH/IMP DEF MACRO D VDHD LOC,VDH,IMP .TA.=. LOC/ .TC.=VDH .TB.=IMP BSS 1 ITBVDH+ITBVP/ .TC. ITBNVD+ITBVP/ .TB. ITBVDL+ITBVP/ LOC ITBVP=ITBVP+1 R 0IF VP MAXVDH-ITBVP,[ PR "TOO MANY IMP/VDH INSTRS" ITBVP=ITBVP-1 ] 0+0+.TA./ T /SAT/IMP DEF (RESTORE) MACRO D SATDEF A TIPDEF A,A T SATDEF /MACRO TO COMPUTE 16 BIT ADD CHECKSUM /FOR ROUTING CODE, USED BY I2MLT AND RTGO D K ARG .TA.=ARG CHK=0 0 177777"A"[CHK+0+.TA.] ARG T K *** THIS DOCUMENT MAY CONTAIN BBN PROPRIETARY INFORMATION. *** *** FURNISHED FOR U. S. GOVERNMENT END USE ONLY. *** PAGE 11 IMP,3050,IMP 7:20 PM 9/16/1973 /THE STANDARD IMP INTERRUPT LEVELS M2I=0 /MODEM-TO-IMP RUNS LOCKED I2M=M2I+2 /IMP-TO-MODEM - SKIP VDI I2H=I2M+1 /IMP-TO-HOST H2I=I2H+1 /HOST-TO-IMP T.O=H2I+1 /TIMEOUT TSK=T.O+1 /TASK BCK=TSK+1 /BACKGROUND /SOME OTHER LEVEL 0 TYPES INI=0 /INITIALIZATION TTY=0 /TELETYPE INTERRUPT WDI=0 /WATCH DOG TIMER INTERRUPT RSI=0 /POWER FAIL INTERRUPT SIN=0 /SOFTWARE INTERRUPT CALLS ALL=0 /UNINTERRUPTABLE CODE LIKE DXA JMP SEQUENCE FRE=0 /REFERENCES TO FREE LIST AND COUNT MSK=0 /REFERENCES TO INTERRUPT MASK /VDH LEVELS VDI=M2I+1 /INPUT INTERRUPT VDO=I2M /OUTPUT INTERRUPT VDB=I2H /BACKGROUND RUNS AT IMP-TO-HOST LEVEL /TIP LEVELS TPO=0 /OUTPUT INTERRUPT TPC=H2I /CLOCK INTERRUPT TPB=BCK /BACKGROUND /MISCELLANEOUS VAR=75 /VARIABLES CON=76 /CONSTANTS UND=77 /UNDEFINED *** THIS DOCUMENT MAY CONTAIN BBN PROPRIETARY INFORMATION. *** *** FURNISHED FOR U. S. GOVERNMENT END USE ONLY. *** PAGE 12 IMP,3050,IMP 7:20 PM 9/16/1973 /MACROS TO ESTABLISH INTERRUPT LEVELS FOR CODE AND DATA /XLEV IS HARDWARE LEVEL ESTABLISHED BY SMK INSTRUCTIONS /YLEV IS SOFTWARE LEVEL ESTABLISHED BY INH INSTRUCTIONS XLEV=0 YLEV=0 /MACROS WHICH ASSEMBLE CODE - INT,INH,ENB /DECLARE HARDWARE INTERRUPT ENTRANCE ON LEVEL N D INT N XLEV=N YLEV=0 WORD 0 0 300000+XLEV"T"100+YLEV 0 T INT /INHIBIT INTERRUPTS FROM LEVELS IN LIST D INH LIST R 0IF P,[ IRP [Q,,LIST] R 1IF VP 0 0 Q-YLEV, [ PRINTX /REDUNDANT INH AT / PNTNUM . PRINTX / / ] ENDIRP ] YLEV=100 IRP [Q,,LIST] R 1IF VP 0 0 YLEV-Q,YLEV=Q ENDIRP .INH WORD 0 0 300000+XLEV"T"100+YLEV T INH /ENABLE HIGHER INTERRUPTS FROM LEVEL N D ENB N R 0IF P,[ R 0IF VZ 0 0 XLEV-N, [ PRINTX /INCORRECT ENB AT / PNTNUM . PRINTX / / ] ] YLEV=N .ENB WORD 0 0 300000+XLEV"T"100+YLEV T ENB *** THIS DOCUMENT MAY CONTAIN BBN PROPRIETARY INFORMATION. *** *** FURNISHED FOR U. S. GOVERNMENT END USE ONLY. *** PAGE 13 IMP,3050,IMP 7:20 PM 9/16/1973 /MORE INTERRUPT LEVEL MACROS /MACROS WHICH DO NOT ASSEMBLE CODE - LEV,LCK,RET /DECLARE CODE OR DATA TO BE AT LOGICAL LEVELS IN LIST D LEV LIST XLEV=100 IRP [Q,,LIST] R 1IF VP 0 0 XLEV-Q,XLEV=Q ENDIRP YLEV=XLEV WORD 0 0 300000+XLEV"T"100+YLEV T LEV /DECLARE AN IMPLICIT INH IN CODE D LCK LIST R 0IF P,[ IRP [Q,,LIST] R 1IF VP 0 0 Q-YLEV, [ PRINTX /REDUNDANT LCK AT / PNTNUM . PRINTX / / ] ENDIRP ] YLEV=100 IRP [Q,,LIST] R 1IF VP 0 0 YLEV-Q,YLEV=Q ENDIRP WORD 0 0 300000+XLEV"T"100+YLEV T LCK /DECLARE AN IMPLICIT ENB IN CODE D RET N R 0IF P,[ R 0IF VZ 0 0 XLEV-N, [ PRINTX /INCORRECT RET AT / PNTNUM . PRINTX / / ] ] YLEV=N WORD 0 0 300000+XLEV"T"100+YLEV T RET *** THIS DOCUMENT MAY CONTAIN BBN PROPRIETARY INFORMATION. *** *** FURNISHED FOR U. S. GOVERNMENT END USE ONLY. *** PAGE 14 IMP,3050,IMP 7:20 PM 9/16/1973 /SOME SYSTEM PARAMETERS NH=4 /NO OF REAL HOSTS FH=4 /NO OF FAKE HOSTS TH=NH+FH BH=6 /NO OF BACK HOSTS CH=5 /NO OF PHONE LINES NIMP=64. /NO OF IMPS NACH=8 /NO OF ACK CHANNELS PER LINE R 0IF VZ DCA, BBNIMP=1 /DCA NCC IMP R 1IF VZ DCA, BBNIMP=5 /ARPA NCC IMP BBNTIP=30. /IMP NO OF BBN TIP PDP1D=305 /HOST PDP-1D AT BBN IMP DIAGTT=47. /DESTINATION FOR DIAG MESSAGES H.N=1 /NUMBER OF VDH HOST M.N=2 /NUMBER OF VDH MODEM (UCSB) PTCK=60. /NUMBER OF TICKS TO PROP ROUTING 30SEC=47. /NUMBER OF TICKS IN 30 SECS MAXH=22. /MAX NO OF HOPS IN NET NSPD=4 /= OF DIFFFRENT LINE SPDS WE HANDLE /WORDS IN BUFFER IT=1 /INPUT TIME ST=1 /SENT TIME PTRT=2 /PNTR TO TRACE BLOCK INCH=3 /INPUT CHANNEL ACKH=4 /ACKNOWLEDGE HEADER HEAD=5 /HEADER - 4 WORDS HEAD1=6 CNTL=7 HEAD2=7 HEAD3=8 MINPL=HEAD3 DATA=9 /BEGINNING OF DATA STORAGE BUFE=73. /PNTR TO END OF DATA /WORDS IN TRACE BLOCK TIT=1 /TRACE INPUT TIME TTT=2 /TRACE TASK TIME TST=3 /TRACE OUTPUT TIME TAT=4 /TRACE ACKNOWLEDGE TIME THED=5 /TRACE HEADER (4 WORDS) TQUE=9 /TRACE QUEUE TDONE=10. /TRACE DONE (100000=DONE) /WORDS IN REASSEMBLY BLOCK RID=1 /ID # MESS NO + IMP NO RMAX=2 /NO OF PCKTS MAX REAS=3 /BLOCK OF 8 PCKT PNTRS RSF=11. /NO OF PCKTS SO FAR - USED AS 9TH P *** THIS DOCUMENT MAY CONTAIN BBN PROPRIETARY INFORMATION. *** *** FURNISHED FOR U. S. GOVERNMENT END USE ONLY. *** PAGE 15 IMP,3050,IMP 7:20 PM 9/16/1973 /BITS IN INCH HSTMOD=100000 /1 IF FROM HOST, 0 IF FROM MODEM INPCHN=17 /INPUT CHANNEL /BITS IN ACKH ODEVEN=100000 QUADAC=60000 /WHICH QUADRANT WE ARE ACKING CHANUM=17400 /CHANNEL NO FOR THIS PKT ACKBTS=377 /MAX OF 8 ACKS /BITS IN HEAD (REG MESSAGE) MESSNO=177400 ONEOR8=200 /1= ONE-PACKET REQALL=100 /TRANSMIT ONLY RFNM=100 /REPLY ONLY ORDNO=60 INCTRN=10 /1= INC (ALSO SET ON RFNM FOR GVB) TRNREP=4 /1=TRANS, 0=REPLY GVBALL=2 /TRANSMIT ONLY ALLOC=2 /REPLY ONLY LINETS=1 /BITS IN RUTHED (ROUTING MESSAGE) SNDCOR=100000 RUTIMP=37400 /IMPNO TO IDENTIFY LOOPED LINES IHERDU=20 RUTDMP=10 /1=CORE DUMP ON FIRST HOP FROM DEAD GETCOR=4 /1=DEMAND THE IMP TO RELOAD NULPKT=2 /1=NULL PKT WITH ACKS ONLY LINETS=1 /1=ROUTING MESSAGE /BITS IN HEAD1 PRIBIT=100000 FORIMP=40000 TRACE=20000 FOROCT=10000 PKTNO=3400 /TRANSMIT ONLY PKTN1=400 /LOW ORDER BIT OF PACKET NUMBER REPDED=400 /REPLY ONLY - DEST DEAD DESTH=300 DESTI=77 DESTHI=377 /BITS IN HEAD2 LSTPKT=100000 FRMIMP=40000 FRMOCT=10000 IHCODE=7400 HICODE=7400 ENDBIT=1000 /1=PKT FROM HI NO IMP ON LINE SRCEH=300 SRCEI=77 SRCEHI=377 *** THIS DOCUMENT MAY CONTAIN BBN PROPRIETARY INFORMATION. *** *** FURNISHED FOR U. S. GOVERNMENT END USE ONLY. *** PAGE 16 IMP,3050,IMP 7:20 PM 9/16/1973 /BITS IN HEAD3 LINKNO=177760 SUBCOD=7 /IMP-TO-HOST SUB-CODES /BITS IN BUFE TWOQ=100000 /1 = ON TWO QUEUES (IN PPT) /BITS IN TMESS MESSNO=177400 /LAST MESS NO TRANSMITTED MESS1=400 /LOW ORDER BIT MSTO2=200 MSTO1=100 /2 TIMEOUT BITS ORDNO=60 /LAST ORDER NO TRANSMITTED MESBTS=17 /1= MESS ANSWERED /BITS IN RMESS MESSNO=177400 /OLDEST INCOMPLETE MESS NO + 3 ORDNO=60 /NEXT ORDER NO WE WANT MESBTS=17 /1= MESS COMPLETE /BITS IN AMESS MESSNO=177400 /NEXT MESS NO TO REPLY TO /BITS IN TALLY SRCEI=77 /FOREIGN IMP WHO ALLOCATED US 8 /BITS IN RALLY ONEOR8=200 RFNM=100 /WORDS IN PPT PPT0=0 PPT1=PPTL /HOST STAT TIME SENT /BITS IN PPT0 RETRAN=100000 /1= GOT AN ALLOCATE FOR HIM, MUST R *** THIS DOCUMENT MAY CONTAIN BBN PROPRIETARY INFORMATION. *** *** FURNISHED FOR U. S. GOVERNMENT END USE ONLY. *** PAGE 17 IMP,3050,IMP 7:20 PM 9/16/1973 /WORDS IN PLT PLT0=0 PLT1=PLTL PLT2=PLTL+PLTL PLT3=PLTL+PLTL+PLTL /HOST STAT TIME SENT /BITS IN PLT0 MESSNO=177400 PLTUSE=200 /1 = THIS PLT ENTRY IN USE REQALL=100 /USEFUL FOR INC TRN PLTHST=7 /LOCAL HOST NO /BITS IN PLT1 PRIBIT=100000 FORIMP=40000 TRACE=20000 FOROCT=10000 DESTHI=377 /BITS IN RLT2 LINKNO=177760 SUBCOD=7 /IMP-TO-HOST SUB-CODES /BITS IN TSEX ACKTAB=377 /BITS IN RSEX ACKTAB=377 /IH CODES CREG=0 /REG CERRLD=400 /ERROR IN HI LEADER CERR32=0 /ERROR IN FIRST 32 BITS CSHORT=1 /LESS THAN 32 BITS IN MESSAGE CILLGL=2 /ILLEGAL HI CODE CIMPDN=1000 /IMP GOING DOWN /BLOCKED LINK CNOP=2000 /NOP CRFNM=2400 /RFNM /LINK TABLE FULL CDESTD=3400 /DESTINATION DEAD CIMPD=0 /DEST IMP DEAD CHSTD=1 /DEST HOST DEAD CERRDT=4000 /ERROR IN HI DATA CINCTR=4400 /INCOMPLETE TRANS CSLOWD=0 /DEST HOST TOOK >30 SECS CLONG=1 /MORE THAN 8095 BITS CSLOWS=2 /SOURCE HOST TOOK >15 SECS CLOST=3 /LOST IN SUBNET CBLOCK=4 /SOURCE IMP TOOK > 15 SECS CERROR=4 /ERROR BIT SET (BECOMES CERRDT) CRESET=5000 /IMP-TO-HOST RESET - READY LINE FLA *** THIS DOCUMENT MAY CONTAIN BBN PROPRIETARY INFORMATION. *** *** FURNISHED FOR U. S. GOVERNMENT END USE ONLY. *** PAGE 18 IMP,3050,IMP 7:20 PM 9/16/1973 /MACROS TO COLLECT FREE SPACE AND PRINT TABLES PAGES=32. BUFL=BUFE+1 NBUFS=-1 D PAGEND A,U,E P /PAGE / PNTNUM A P / / FB=0 0 .+0'E NB=0 R 1IF VZ A+0-FB"Q"1000, [ NB=1+0+[0 0 1000"T"[A+1]+0-FB]"Q"BUFL NBUFS=NBUFS+NB] 0 0 SPAR+A-2/ FB"A"777-[NB+1]"T"1000 .TA.=FB+0+NB"T"BUFL 100004/ U FB .TA. NB .ASCII /"Z"/ 100400+NB+1/ .TB.=FB A R NB, .TB. .TB.=.TB.+0+BUFL .ASCII /"Z"/ .TA./ T PAGEND /FB IS THE ADDRESS OF THE FIRST BUFFER ON THE PAGE /NB IS THE NUMBER OF BUFFERS BETWEEN THIS PAGE AND THE NEXT /FORMAT OF SPAR: /HI 7 BITS = -(NB+1) /LO 9 BITS = LO 9 BITS OF FB *** THIS DOCUMENT MAY CONTAIN BBN PROPRIETARY INFORMATION. *** *** FURNISHED FOR U. S. GOVERNMENT END USE ONLY. *** PAGE 19 IMP,3050,IMP 7:20 PM 9/16/1973 104/ / CONSTANTS - THESE FIRST FEW MUST NOT MOVE LEV CON 00104 023033 C DDSAI: DDSA /DDT S.A. START ADDRESS 00105 003050 C VERS: .VERS. /VERSION NUMBER 00106 C MINE: BSS 1 /MY IMP NUMBER /TIME CONSTANTS IN TERMS OF 640 MS TICKS 00107 177721 C M30SEC: -30SEC /30 SECONDS 00110 177704 C PTICKS: -PTCK /ROUTING PROPAGATION TIME 00111 C ADDRET: BSS 1 /CHKSM ADDER RETURN 00112 100000 C SIGN: 100000 00113 000000 C ZERO: 0 00114 000001 C ONE: 1 00115 000002 C TWO: 2 00116 000003 C THREE: 3 00117 000004 C FOUR: 4 00120 000007 C SEVEN: 7 00121 177777 C MINUS1: -1 00122 177776 C MINUS2: -2 00123 177775 C MINUS3: -3 00124 177774 C MINUS4: -4 00125 177773 C MINUS5: -5 00126 177772 C MINUS6: -6 00127 177773 C MICH: -CH 00130 000004 C PLNH: NH 00131 177770 C MITH: -TH MIN100: 00132 177700 C MINIMP: -NIMP 00133 000000 C RSFLAG: 0 /FLAG TO DETECT WDT AND RELOADS /0=NONE, 1=RESTART, 2=RELOAD, 3=WDT, 4=POWER FAIL LEV VAR 00134 V PRIM: BSS 1 /PRIORITY INTERRUPT MASK /NCC OPERATIONS LOCATIONS 135-157 MUST NOT MOVE! LEV CON DEFPLC [DDT STAND ALONE ENTRY] 00135 102104 C DDT: JMP DDSAI I 00136 000000 C TIPRSF: 0 /ASSEMBLE IN A ZERO DEFPLC [NICE-STOP AND RELOAD FLAG] 00137 C SW3FG: BSS 1 /ZERO=NICE STOP, THEN RELOAD />0=SPECIFIC LINE DEFPLC [NICE-STOP AND RESTART FLAG] 00140 C NRSTF: BSS 1 /ZERO=NICE STOP, THEN RESTART /ONE=VDH RESTART DEFPLC [HOST & MODEM INTERFACE CONTROL] 00141 C HTPAR: BSS 1 /MODEM TEST FLAG DEFPLC [HOST INTERFACE TEST ENABLE AND TEST WORD] 00142 C HLNM: BSS 1 /# OF INTERFACE BEING TESTED 00143 177400 C HL2WD: 177400 /SECOND WORD OF DATA - ONLY LEFT HA DEFPLC [VDH RESTART FLAG] 00144 000000 C VDHRSF: 0 /SET NON-ZERO TO RESTART VDH DEFPLC [SAT RESTART FLAG] 00145 000000 C SATRSF: 0 *** THIS DOCUMENT MAY CONTAIN BBN PROPRIETARY INFORMATION. *** *** FURNISHED FOR U. S. GOVERNMENT END USE ONLY. *** PAGE 20 IMP,3050,IMP 7:20 PM 9/16/1973 PG0FIX=160 /START OF 2ND INVARIANT AREA .TA.=. 100002/ .TA. PG0FIX .ASCII /"Z"/ PG0FIX/ LEV VAR ZEROB: /START ZEROING HERE DEFPLC [NEIGHB] /USED BY [M2I,TSK,BCK] 00160 V NEIGHB: BSS CH /IMP NUMBER OF ADJACENT IMP DEFPLC [RUT] /USED BY [H2I,T.O,TSK,BCK] 00165 V RUT: BSS NIMP /ROUTE USE TABLE DEFPLC [SLT] /USED BY [M2I,I2M,T.O,BCK] 00265 V SLT: BSS CH /SEND LINE TEST (USED FOR RELOAD [ QUEUEB: /QUEUE START POINTERS /MUST PRECEDE COUNTA /USED BY [I2H,TSK] 00272 V SHQ: BSS TH /REG HOST 00302 V SHPQ: BSS TH /PRI HOST /USED BY [I2M,T.O,TSK] 00312 V SMQ: BSS CH /REG MODEM 00317 V SMPQ: BSS CH /PRI MODEM /USED BY FRE 00324 V FREE: BSS 1 /FREE BUFFERS /USED BY [TSK,BCK] 00325 V TTF: BSS 1 /FREE TRACE BLOCKS /USED BY [T.O,TSK] 00326 V RASF: BSS 1 /FREE REASSEMBLY BLOCKS 00327 V MESSTK: BSS 1 /STACK OF COMPLETE REG MESSAGES /USED BY [M2I,H2I,TSK,BCK] 00330 V STQ: BSS 1 /TASK /USED BY [T.O,TSK,BCK] 00331 V SRQ: BSS 1 /REPLY,REROUTE,DEST DEAD /USED BY [I2H,H2I,T.O.TSK,BCK] 00332 V SHWQ: BSS NH+1 /HOST WORD 00337 V SHBQ: BSS 1 /HOST ONE WORD BUFFERS /USED BY [T.O,TSK] 00340 V SHRQ: BSS 1 /REASSEMBLY BLOCKS /USED BY [TSK,BCK] 00341 V STRQ: BSS 1 /TRACE BLOCKS /USED BY [ALL] 00342 V DIAGQ: BSS 1 /DIAG PACKET QUEUE *** THIS DOCUMENT MAY CONTAIN BBN PROPRIETARY INFORMATION. *** *** FURNISHED FOR U. S. GOVERNMENT END USE ONLY. *** PAGE 21 IMP,3050,IMP 7:20 PM 9/16/1973 QUEUEE: /QUEUE END POINTERS /USED BY [I2H,TSK] 00343 V EHQ: BSS TH 00353 V EHPQ: BSS TH /USED BY [I2M,T.O,TSK] 00363 V EMQ: BSS CH 00370 V EMPQ: BSS CH 00375 V BSS 4 /SPARE /USED BY [M2I,H2I,TSK,BCK] 00401 V ETQ: BSS 1 /USED BY [T.O,TSK,BCK] 00402 V ERQ: BSS 1 /USED BY [I2H,H2I,T.O,TSK,BCK] 00403 V EHWQ: BSS NH+1 00410 V BSS 4 /SPARE QUEUEL=QUEUEE-QUEUEB /USED BY [TSK,BCK] 00414 V TTO: BSS 1 /TRACE TABLE OVERFLOW /USED BY ALL 00415 V TIME: BSS 1 /TIME IN FAST T1CKS /USED BY [I2H,T.O,TSK] 00416 V TIMES: BSS 1 /TIME IN SLOW TICKS /USED BY [T.D,BCK] 00417 V SYNC: BSS 1 /TIME FOR STAT ROUTINES /USED BY [M2I,T.O] 00420 V THD: BSS 1 /CHANNEL TO MAX NO IMP /USED BY [I2M,TSK] 00421 V SIHY: BSS CH /SEND I HEARD YOU IF NOT ZERO /USED BY [T.O,TSK] 00426 V LAC: BSS CH /LINE ALIVE COUNT /USED BY [M2I,T.O,TSK] 00433 V LINE: BSS CH /LINE ALIVE-DEAD STATUS /USED BY [I2M,T.O,TSK] 00440 V NONE: BSS CH /MODEM IDLE IF ZERO /NEGATIVE= -(M30SEC-NO OF SLOW TICKS SINCE LAST OUTPUT) 00445 V SNULL: BSS CH /SEND NULL PKT IF NON-ZERO /USED 5Y [M2I,T.O,TSK] 00452 V LUUP: BSS 1 /NON-ZERO=SOME MODEM IS LOOPED /USED BY [H2I,TSK,BCK] TSKFLG: /TASK-HOST COMMUNICATION DEFPLC [HILO] 00453 V HILO: BSS TH /RETURN ADDRESSES WHERE HI LEFT OFF 00463 V BSS BH /0=NO ACTION, 1=NACK, 2=ACK /USED BY BCK 00471 V BSS 1 /TO PRESERVE P0 LOCATIONS 00472 V DDTI: BSS 1 /DDT INTERRUPT FLAG 00473 V OVRDF: BSS 1 /SS4 IS OVERRIDDEN IF THIS IS NON, /USED BY [TTY,BCK] 00474 V TTFG: BSS 1 /TTY COMMUNICATION SWITCH /USED BY VD5 00475 V VD.OT: BSS 1 /VDH TYPE OF OUTPUT FLAG /USED BY T.O 00476 V VD.RDY: BSS 1 /NON-ZERO=VDH READY LINE FLAPPED /USED BY [I2H,T.O,TSK,BCK] 00477 V RALLCF: BSS 1 /RALLY COMMUNICATION FLAG FOR PUT-G *** THIS DOCUMENT MAY CONTAIN BBN PROPRIETARY INFORMATION. *** *** FURNISHED FOR U. S. GOVERNMENT END USE ONLY. *** PAGE 22 IMP,3050,IMP 7:20 PM 9/16/1973 /USED BY MSK 00500 V IHM: BSS 1 /IH MASK 00501 V HIM: BSS 1 /HI MASK 00502 V MOM: BSS 1 /MODEM OUT MASK /USED BY [T.O,I2H(OWP)] 00503 V WDTIME: BSS 1 /SOFTWARE W.D.T. /USED BY [H2I,I2H.T.O,TSK,BCK] 00504 V HIHD: BSS TH /HOST STATUS HSTUP=0 /HOST IS UP HSTGDN=1 /GOT A HOST-GOING-DOWN MESSAGE HSTTRD=2 /HOST WAS TARDY IN ACCEPTING AN IMP MESSAGE HSTOFF=3 /HOST READY LINE IS DOWN HSTIDN=4 /IMP IS COMING UP OR GOING DOWN /USED BY TSK 00514 V THIS: BSS 1 /CURRENT TASK BUFFER /USED BY FRE 00515 V TWDP: BSS 1 /SECOND WORD IN TWO WORD PUT /USED BY I2H 00516 V TWDG: BSS 1 /SECOND WORD IN TWO WORD GET COUNTA: /ADDITIVE COUNTS - KEEP IN ORDER /USED BY [I2H,TSK] 00517 V NHA: BSS TH /REG HOST QUEUE 00527 V BSS TH /PRI HOST QUEUE /USED BY FRE 00537 V NFA: BSS 1 /FREE LIST /USED BY [M2I,I2M,T.O,TSK] 00540 V NSFA: BSS 1 /STORE-AND-FORWARD COUNT /USED BY [I2H,T.O,TSK] 00541 V NREA: BSS 1 /REASSEMBLY COUNT /USED BY [T.O,TSK,5CK] 00542 V NALA: BSS 1 /ALLOCATE COUNT COUNTS: /SUBTRACTIVE COUNTS /USED BY [I2H,TSK] 00543 V NHS: BSS TH 00553 V BSS TH /USED BY FRE 00563 V NFS: BSS 1 /USED BY [M2I,I2M,T.O,TSK] 00564 V NSFS: BSS 1 /USED BY [I2H,T.O,TSK] 00565 V NRES: BSS 1 /USED BY [T.O,TSK,BCK] 00566 V NALS: BSS 1 COUNTL=COUNTS-COUNTA /USED BY [BCK] 00567 V VDHUPF: BSS 1 /VDH UP/DOWN FLAG ZEROE: ZEROL=ZEROE-ZEROB *** THIS DOCUMENT MAY CONTAIN BBN PROPRIETARY INFORMATION. *** *** FURNISHED FOR U. S. GOVERNMENT END USE ONLY. *** PAGE 23 IMP,3050,IMP 7:20 PM 9/16/1973 LEV CON 00570 000004 C MINF: CH-1 /MIN NUMBER OF FREE BUFFERS 00571 C MAXS: BSS 1 /MAX NUMBER OF S/F PACKETS 00572 C MAXR: BSS 1 /MAX NUMBER OF REASSEMBLY PACKETS 00573 C MAXSI: BSS 1 /S&F LIMIT USED BY MODEM TASK 00574 C SW1: BSS MAXSTAT /ADDRES OF STAT GATHERING SUBRS 00622 032030 C I2MTAB: I2MB0 /START ADDR OF BLOCK OF CHANNEL PNT 00623 032040 C I2MB1 00624 032050 C I2MB2 00625 032060 C I2MB3 00626 032070 C I2MB4 LEV VAR 00627 V I2MEND: BSS CH /END ADDRESS OF EACH BLOCK 00634 V I2MNXT: BSS CH /PKT PNTR FOR LATEST OUTPUT /0=ROUTE,NULL,OR NO OUTPUT, SIGN ON=ACK RECEIVED WHILE PKT O DEFPLC [TSEX - TRANSMIT ODD-EVEN BITS] 00641 V TSEX: BSS CH /ODD-EVEN BIT TO USE FOR NEXT OUTF DEFPLC [RSEX - RECEIVE ODD-EVEN BITS] 00646 V RSEX: BSS CH /COMP OF ODD-EVEN BIT WE EXPECT NEX /USED BY [M2I,TSK] 00653 V CHFREE: BSS CH 00660 V RST.O: BSS 1 /PTR TO RM OUTPUT AREA 00661 V RST.F: BSS 1 / " " " FREE " 00662 V RST.N: BSS 1 / " " " NEW " 00663 V RST.C: BSS 1 / " " " COMPARE " LEV CON /ADDRESS CONSTANTS 00664 013210 C JAM: GAM /GIVE A WORD FROM FAKE HOST TO IMP 00665 003234 C DOZE: BKX /JAM WAIT 00666 017347 C SUCK: SUC /GET A WORD FOR FAKE HOST FROM IMP 00667 003240 C WAIT: BKW /SUCK WAIT 00670 015371 C OWP: OWPE /ENTRY INTO ONE WORD PUT 00671 005373 C FLUSHI: FLUSH /PNTR TO SUBR TO FREE BUFFER 00672 017343 C DODXA: .DODXA /ENTRY INTO DO DXA SUBROUTINE DEFPLC [HOST SIMULATOR FLAG] 00673 000000 C HSFG: 0 /NON-ZERO = START UP HOST SIMULATOR LEV VAR 00674 V MP: BSS 1 /MODEM-TO-IMP CURRENT MODEM NO 00675 V HIP: BSS 1 /HOST-TO-IMP CURRENT HOST NO 00676 V IHP: BSS 1 /IMP-TO-HOST CURRENT HOST NO LEV CON 00677 053333 C HIXX: HISP 0 X /HOST-TO-IMP INDEXED SAVE PNTR 00700 056155 C IHXX: IHSP 0 X /IMP-TO-HOST INDEXED SAVE PNTR *** THIS DOCUMENT MAY CONTAIN BBN PROPRIETARY INFORMATION. *** *** FURNISHED FOR U. S. GOVERNMENT END USE ONLY. *** PAGE 24 IMP,3050,IMP 7:20 PM 9/16/1973 TIPCON=745 .TA.=. 100002/ .TA. TIPCON .ASCII /"Z"/ /LINKS TO TIP PROGRAM TIPHST=2 /THE TIP TAKES THE HOST 2 SLOT TIPBKG=40001 TIPVER=40000 TIPCON/ 00745 022404 C HLTNCC: HLTWRD /PNTR TO HALT REPORTING SUBR 00746 000000 C HLTLOC: 0 /PC OF LAST HALT 00747 C HLTA: BSS 1 /A REG AT LAST HALT 00750 C HLTX: BSS 1 /X REG AT LAST HALT 8PKTS: /NO OF PKTS PER MESSAGE CMINPL: /MIN PKT LENGTH 00751 000010 C TEN: 10 0"A"MINPL 00752 000077 C C77: 77 00753 000100 C C100: 100 00754 C BSS 9. /SOME ROOM FOR TIP CONSTANTS 00765 000000 C TPOPEN: 0 /COUNT OF NO OF OPEN CONNECTIONS ON 00766 016177 C IHLSTP+TIPHST /MINUS IF LAST IMP-TO-TIP PKT 00767 021664 C TIPSKP /SKP IF TIP UP, NOP IF TIP DOWN 00770 C TIPLNK: BSS 1 /IMP-TO-TIP DMC DUTPUT PNTR 00771 C BSS 1 /IMP-IO-TIP OMC OUTPUT END PNTR 00772 C BSS 1 /TIP-TO-IMP DMC INPUT PNTR 00773 C BSS 1 /TIP-TO-IMP DMC INPUT END PNTR 00774 000000 C 0 /(IMP-TO-TIP PKT RNTR) 00775 013315 C EMFH+TIPHST /SKP IF LAST TIP-TO-IMP PKT, ELSE 00776 013141 C HITT+TIPHST /TIP-TO-IMP INTERFACE TIMER 00777 C BSS 1 /LOC 777 USED BY RELOAD CODE *** THIS DOCUMENT MAY CONTAIN BBN PROPRIETARY INFORMATION. *** *** FURNISHED FOR U. S. GOVERNMENT END USE ONLY. *** PAGE 25 IMP,3050,IMP 7:20 PM 9/16/1973 /WATCHDOG TIMER AND POWER FAIL ROUTINES /THESE 2 INSTRS FOLLOW A COMPUTED SKS MODEM ERROR IN PAGE 0 LEV WDI 01000 003111 0 JMP LD10 01001 003031 0 JMP WDLUP 01002 001177 0 WDC4: WDT1 01003 003021 0 JMP WDTM2 /START HERE TO LOAD FROM THE NET 01004 003022 0 JMP WDLOD /START HERE TO LOAD FROM A LINE DEFPLC [HOST34 SWITCH] 01005 0 HOST34: BSS 1 /MEANING OF BITS 1&2 FOLLOWS /0 FOR 5 MODEMS />0 FOR 4 MODEMS, 3 HOSTS /<0 FOR 3 MODEMS, 4 HOSTS /USE >0 FOR TIP/MLC /BIT 16 ZERO MEANS PAGE 27 IS BUFFERS /BIT 16 NON-ZERO MEANS PAGE 27 IS NOT TO BE OVERLAID WITH BU] /VDHF INDICATES WHETHER VDH CODE IS ACTUALLY PRESENT 01006 0 BSS 3 /FOR COMPATIBILITY WITH IMPLOD 2513 /** THIS IS THE CRITICAL CODE WHICH MUST NOT CHANGE ** /** BOTH LOCATION AND CONTENTS MUST STAY CONSTANT ** /** IN ORDER THAT ONE IMP VERSION MAY RELOAD ANOTHER ** 01011 010045 0 LWAIT: STA 45 /**THIS IS WHERE THE IMP WAITS 01012 024045 0 IRS 45 /**AFTER SENDING A REQUEST FOR CORE 01013 003012 0 JMP .-1 /**THIS CODE IS OVERLAID WITH THE 01014 024044 0 IRS 44 /**NEW CORE IMAGE WHILE IT IS RUN: 01015 003011 0 JMP LWAIT /**SO IT MUST BE INVARIANT ITSELF 01016 003102 0 JMP LD7 CORELO=60 COREHI=33000 /CORE IMAGE IS LOADED STARTING AT CORELO /AND ENDING AT COREHI-1 *** THIS DOCUMENT MAY CONTAIN BBN PROPRIETARY INFORMATION. *** *** FURNISHED FOR U. S. GOVERNMENT END USE ONLY. *** PAGE 26 IMP,3050,IMP 7:20 PM 9/16/1973 WDTM: 00062 001017 0 WDTIL/ WDTM 01017 000000 0 WDTM/ INT WDI 01020 024133 0 IRS RSFLAG 01021 140040 0 WDTM2: CRA /ENTER HERE FOR RANDOM RELOAD LEV BCK /COME HERE FROM NICE STOP CODE 01022 001001 7 WDLOD: INH ALL /ENTER HERE WITH LINE # (1-4) IN AC 01023 030040 7 0 CLKON 01024 017560 7 0 SUB (1) 01025 041577 7 0 ALS 1 01026 010047 7 0 STA 47 01027 005005 7 0 LDA HOST34 /SAVE HOST CONFIGURATION 01030 010046 7 0 STA 46 /SHOULD BE 51 /LDA RSFLAG /SAVE RESTART-RELOAD FLAG /STA 43 01031 005037 7 0 WDLUP: LDA LD8 01032 101000 7 0 NOP /FOR FILLER 01033 000201 7 0 IAB 01034 005561 7 0 LDA (-23) /DON'T LET CLOCK INTS IN 01035 000011 7 0 DXA 01036 003154 7 0 JMP CLEA 01037 001040 7 0 LD8: .+1 01040 004047 7 0 LDA 47 01041 101400 7 0 SMI /RANDOM RELOAD? 01042 003046 7 0 JMP LD11 /NO 01043 131040 7 0 RDCLOK /YES 01044 003043 7 0 JMP .-1 01045 007562 7 0 ANA (6) /GET TWO BIT NUMBER 01046 010000 7 0 LD11: STA 0 01047 005563 7 0 LDA (SENDC) /SET UP REQUEST FOR CORE 01050 050032 7 0 STA M1OTBP X 01051 015564 7 0 ADD (4) 01052 050033 7 0 STA M1OTBP+1 X 01053 005565 7 0 LDA (CORELO 0 I) /SET UP CORE IMAGE BOUNDS 01054 050020 7 0 STA M1INBP X 01055 005566 7 0 LDA (COREHI 0 I) 01056 050021 7 0 STA M1INBP+1 X 01057 143137 7 0 JMP LDT XI 01060 030071 7 0 LD1: M1OUT /SEND OUT REQUEST FOR CORE 01061 003213 7 0 JMP LD12 01062 003073 7 0 JMP LD5 01063 030072 7 0 LD2: M2OUT 01064 003213 7 0 JMP LD12 01065 003073 7 0 JMP LD5 01066 030073 7 0 LD3: M3OUT 01067 003213 7 0 JMP LD12 01070 003073 7 0 JMP LD5 01071 030074 7 0 LD4: M4OUT 01072 003213 7 0 JMP LD12 01073 005567 7 0 LD5: LDA (-3000.) 01074 010044 7 0 STA 44 /JMP LWAIT *** THIS DOCUMENT MAY CONTAIN BBN PROPRIETARY INFORMATION. *** *** FURNISHED FOR U. S. GOVERNMENT END USE ONLY. *** PAGE 27 IMP,3050,IMP 7:20 PM 9/16/1973 /NOP /TO KEEP LOC OF LD6 CONSTANT /THE NEXT 5 REGS CAN COME OUT AFTER COMPATIBILITY WITH 2634 01075 010045 7 0 LD6: STA 45 01076 024045 7 0 IRS 45 01077 003076 7 0 JMP .-1 01100 024044 7 0 IRS 44 01101 003075 7 0 JMP LD6 01102 044020 7 0 LD7: LDA M1INBP X 01103 013566 7 0 ERA (COREHI 0 I) 01104 100040 7 0 SZE 01105 003031 7 0 JMP WDLUP 01106 045140 7 0 LDA LDERR X 01107 010777 7 0 STA 777 01110 002777 7 0 JMP 777 01111 031040 7 0 LD10: CLKOFF 01112 004046 7 0 LDA 46 /SHOULD BE 51 /RESTORE HOST C 01113 011005 7 0 STA HOST34 /LDA 43 /RESTORE RESTART-RELOAD FLAG /STA RSFLAG 01114 073570 7 0 LDX (56-104) /SAVE INTERRUPT ENTRANCES 01115 044104 7 0 LDA 104 X 01116 111571 7 0 STA (30000 0 X) I 01117 024000 7 0 IRS 0 01120 003115 7 0 JMP .-3 01121 005127 7 0 LDA LD9 01122 000201 7 0 IAB 01123 005572 7 0 LDA (-21) 01124 070042 7 0 AMIMLC 01125 005573 7 0 LDA (-1) 01126 003154 7 0 JMP CLEA 01127 001130 7 0 LD9: .+1 01130 073570 7 0 LDX (56-104) /RESTORE INTERRUPT ENTRANCES 01131 105571 7 0 LDA (30000 0 X) I 01132 050104 7 0 STA 104 X 01133 024000 7 0 IRS 0 01134 003131 7 0 JMP .-3 01135 024133 7 0 IRS RSFLAG 01136 103574 7 0 JMP (INIT) I 01137 001060 7 0 LDT: LD1 01140 070471 7 0 LDERR: M1ERR 01141 001063 7 0 LD2 01142 070472 7 0 M2ERR 01143 001066 7 0 LD3 01144 070473 7 0 M3ERR 01145 001071 7 0 LD4 01146 070474 7 0 M4ERR 01147 040001 7 0 SENDC: 40001 01150 100001 7 0 SNDCOR 0 LINETS 01151 000000 7 0 0 01152 000000 7 0 0 01153 040001 7 0 -[40001 0 SNDCOR LINETS -3] *** THIS DOCUMENT MAY CONTAIN BBN PROPRIETARY INFORMATION. *** *** FURNISHED FOR U. S. GOVERNMENT END USE ONLY. *** PAGE 28 IMP,3050,IMP 7:20 PM 9/16/1973 01154 170120 7 0 CLEA: SMK 120 LEV BCK LCK ALL 01155 073575 7 0 LDX (STDIL-0-TASKIL) 01156 005002 7 0 LDA WDC4 01157 050104 7 0 STA TASKIL+1 X /RESET ALL INTERRUPT ENTRANCES 01160 024000 7 0 IRS 0 01161 003157 7 0 JMP .-2 01162 073576 7 0 LDX (-2) /MUST UNPATCH TWICE 1? 01163 030171 7 0 WDT2: M1UNXP 01164 030172 7 0 M2UNXP 01165 030173 7 0 M3UNXP 01166 030174 7 0 M4UNXP 01167 030175 7 0 M5UNXP 01170 030470 7 0 HUNXPT: H1UNXP /THESE MUST BE IN ORDER11 01171 030460 7 0 H2UNXP 01172 030450 7 0 H3UNXP 01173 030451 7 0 H4UNXP 01174 024000 7 0 IRS 0 01175 003163 7 0 JMP WDT2 01176 021177 7 0 JST WDT1 /AND WAIT 01177 000000 7 0 WDT1: 0 /NULL INTERRUPT ENTRY 01200 000011 7 0 DXA /ALL INTERRUPTS COME HERE TO DIE 01201 003202 7 0 JMP . 1 01202 000401 7 0 ENB BCK 01203 073577 7 LDX (0) 01204 024000 7 IRS 0 01205 003204 7 JMP .-1 /WAIT 600 MS 01206 000201 7 IAB /5=>X 01207 026000 7 IMA 0 /0=>A 01210 170120 7 SMK 120 /NOW WE BLOCK ALL FUTURE INTERRUPTS LEV WDI 01211 001001 0 INH ALL 01212 042000 0 JMP 0 X /GO TO LD8+1 01213 005600 0 LD12: LDA (-533.) 01214 010044 0 STA 44 01215 010045 0 LD13: STA 45 01216 024045 0 IRS 45 01217 003216 0 JMP .-1 01220 024044 0 IRS 44 01221 003215 0 JMP LD13 01222 043223 0 JMP .+1 X 01223 030471 0 M1IN 01224 003073 0 JMP LD5 01225 030472 0 M2IN 01226 003073 0 JMP LD5 01227 030473 0 M3IN 01230 003073 0 JMP LD5 01231 030474 0 M4IN 01232 003073 0 JMP LD5 *** THIS DOCUMENT MAY CONTAIN BBN PROPRIETARY INFORMATION. *** *** FURNISHED FOR U. S. GOVERNMENT END USE ONLY. *** PAGE 29 IMP,3050,IMP 7:20 PM 9/16/1973 LEV CON 01233 000001 C BITTAB: 1 /BITS FOR ACK AND MESSAGE STUFF 01234 000002 C 2 01235 000004 C 4 01236 000010 C 10 01237 000020 C 20 01240 000040 C 40 01241 000100 C 100 01242 000200 C SWCHB: 200 01243 000400 C 400 01244 001000 C 1000 01245 002000 C 2000 01246 000010 C MBITS: 10 01247 000004 C 4 01250 000002 C 2 01251 000001 C 1 SWDT: 00061 001252 C SWDTIL/ SWDT /SOFTWARE W-D-T INTERRUPT CALL SWDT/ 01252 000000 0 INT WDI 01253 001001 0 INH ALL 01254 111601 0 STA (37775) I /SAVED A 01255 133602 0 STX (37776) I /SAVED X 01256 005252 0 LDA SWDT /IF NOT MEM PROTECT (MAY NEED TO BE 01257 111603 0 STA (37774) I /SAVED P/Y 01260 120062 0 JST WDTIL I RSTR: /POWER FAIL COMES HERE 00060 001261 0 PFIL/ RSTR 01261 000000 0 RSTR/ INT RSI 01262 030026 0 WDT /POKE WATCHDOG TIMER SO WE DON'T ( 01263 140040 0 CRA 01264 010324 0 STA FREE /COPY SOME PROGRAM INTO PAGE 0 01265 005604 0 LDA (3) 01266 010133 0 STA RSFLAG /SO THAT RESTART WILL INDICATE POWE 01267 005273 0 LDA RST2A /THESE ARE FOR WHEN THE POWER COMES 01270 010517 0 STA NHA 01271 073274 0 LDX RST3 01272 002324 0 JMP FREE /GO LOCK UP THE MACHINE 01273 002000 0 RST2A: 2000 01274 102517 0 RST3: JMP NHA I *** THIS DOCUMENT MAY CONTAIN BBN PROPRIETARY INFORMATION. *** *** FURNISHED FOR U. S. GOVERNMENT END USE ONLY. *** PAGE 30 IMP,3050,IMP 7:20 PM 9/16/1973 /CORE DUMP TO PDP-1D AT BBN /COPY EACH 100-WORD BLOCK OF CORE INTO CORBUF=>CORBUF+77 /SEND BLOCK 1 FROM ITSELF, THEN 2-277 (OR HIGHER), THEN BLOC. /USE CORBUF-4=>CORBUF-1 AS HEADER AND TEMP STORE CORBUF=100 CORCNT=CORBUF-4 /ACKH - USE AS TEMP CORHED=CORBUF-3 /HEAD - FIXED HEADER, GOES AS ROUTI1 CORPUT=CORBUF-2 /HEAD1 - USE AS TEMP CORGET=CORBUF-1 /HEAD2 - FIRST LOCATION OF BLOCK BE /HEAD3 THRU BUFE-1 ARE 100 DATA WOR] LEV BCK DEFPLC [CORE DUMP] 01275 001001 7 CORE: INH ALL 01276 000013 7 0 EXA 01277 030451 7 0 H4UNXP 01300 030551 7 0 H4ENAB 01301 030251 7 0 H4FOUT 01302 000201 7 0 IAB /ENTER WITH LINE NO 1-5 IN AC 01303 073605 7 0 LDX (-104) 01304 044200 7 0 LDA CORCNT+104 X 01305 051551 7 0 STA CORSAV+104 X /SAVE CORBUF-4=>CORBUF+77 01306 024000 7 0 IRS 0 01307 003304 7 0 JMP .-3 01310 024000 7 0 IRS 0 01311 003310 7 0 JMP .-1 /WAIT FOR READY LINE 01312 000201 7 0 IAB 01313 041577 7 0 ALS 1 01314 010000 7 0 STA 0 /SAVE 2*MODEM NO 01315 131041 7 0 RDIMPN 01316 003315 7 0 JMP .-1 01317 013606 7 0 ERA (BBNIMP) 01320 101040 7 0 SNZ /ARE WE THE BBN IMP? 01321 010000 7 0 STA 0 /YES, THEN WE SEND CORE OUT TO HOST 01322 005607 7 0 LDA (RUTDMP 0 LINETS) 01323 010075 7 0 STA CORHED /SET UP FIXED HEADER 01324 005610 7 0 LDA (CORBUF) 01325 010077 7 0 STA CORGET /SET UP BLOCK TO COPY FROM *** THIS DOCUMENT MAY CONTAIN BBN PROPRIETARY INFORMATION. *** *** FURNISHED FOR U. S. GOVERNMENT END USE ONLY. *** PAGE 31 IMP,3050,IMP 7:20 PM 9/16/1973 01326 004000 7 0 CORNXT: LDA 0 01327 100040 7 0 SZE /ARE WE SENDING TO A HOST? 01330 005611 7 0 LDA (CORPUT-CORCNT) /NO, NEED FULL HEADER FC 01331 015612 7 0 ADD (CORCNT) /NEED ONLY LEADER TO HOST 01332 050030 7 0 STA H4OTBP X /SET UP DMC PNTRS 01333 005613 7 0 LDA (CORBUF+77) 01334 050031 7 0 STA H4OTBP+1 X 01335 005610 7 0 LDA (CORBUF) 01336 010076 7 0 STA CORPUT /SET UP BLOCK TO COPY INTO 01337 140407 7 0 TCA 01340 010074 7 0 STA CORCNT /SET UP COPY COUNT 01341 004077 7 0 LDA CORGET 01342 100040 7 0 SZE /ARE WE DOING BLOCK 0? 01343 003347 7 0 JMP CORCOP /NO 01344 024077 7 0 IRS CORGET /YES, START WITH REG 1 01345 024076 7 0 IRS CORPUT /SINCE CORBUF HAS HIGHEST CORE BLOC1 01346 024074 7 0 IRS CORCNT 01347 104077 7 0 CORCOP: LDA CORGET I /DO THE COPY 01350 110076 7 0 STA CORPUT I 01351 024077 7 0 IRS CORGET 01352 024076 7 0 IRS CORPUT 01353 024074 7 0 IRS CORCNT 01354 003347 7 0 JMP CORCOP 01355 043356 7 0 JMP COROCP X /DO OCP OUTPUT 01356 030251 7 0 COROCP: H4FOUT 01357 003371 7 0 JMP CORWAT 01360 030071 7 0 M1OUT 01361 003371 7 0 JMP CORWAT 01362 030072 7 0 M2OUT 01363 003371 7 0 JMP CORWAT 01364 030073 7 0 M3OUT 01365 003371 7 0 JMP CORWAT 01366 030074 7 0 M4OUT 01367 003371 7 0 JMP CORWAT 01370 030075 7 0 M5OUT *** THIS DOCUMENT MAY CONTAIN BBN PROPRIETARY INFORMATION. *** *** FURNISHED FOR U. S. GOVERNMENT END USE ONLY. *** PAGE 32 IMP,3050,IMP 7:20 PM 9/16/1973 01371 004077 7 0 CORWAT: LDA CORGET 01372 013610 7 0 ERA (CORBUF) 01373 101040 7 0 SNZ /DID WE JUST SEND BLOCK 0? 01374 003426 7 0 JMP COREND /YES 01375 005614 7 0 LDA (100000) 01376 010074 7 0 STA CORCNT 01377 024074 7 0 IRS CORCNT 01400 003377 7 0 JMP .-1 /WAIT 01401 030026 7 0 WDT /JUST IN CASE 01402 004077 7 0 LDA CORGET 01403 017615 7 0 SUB (30000) 01404 100400 7 0 SPL /HAVE WE DONE FIRST 12K YET? 01405 003326 7 0 JMP CORNXT /NO, KEEP GOING 01406 104077 7 0 LDA CORGET I /YES, NOW WE MUST CHECK FOR PRESENC1 01407 140401 7 0 CMA /ABOVE 12K MINIMUM 01410 126077 7 0 IMA CORGET I 01411 122077 7 0 CAS CORGET I 01412 100000 7 0 SKP 01413 003416 7 0 JMP .+3 /NO TRANSITION, NO MORE MEMORY 01414 110077 7 0 STA CORGET I /RESTORE TEST CELL 01415 003326 7 0 JMP CORNXT /AND KEEP GOING 01416 140040 7 0 CRA 01417 026077 7 0 IMA CORGET /RESET PTR TO BLOCK 0 01420 010100 7 0 STA CORBUF /SAVE HIGHEST CORE BLOCK IN CORBUF 01421 131041 7 0 RDIMPN 01422 003421 7 0 JMP .-1 01423 012100 7 0 ERA CORBUF /PUT IMP NO IN RIGHT PART OF REG C 01424 010100 7 0 STA CORBUF 01425 003326 7 0 JMP CORNXT /GO BACK AND SEND BLOCK 0 01426 073616 7 0 COREND: LDX (-4) 01427 045451 7 0 LDA CORSAV+4 X 01430 050200 7 0 STA CORCNT+CORBUF+4 X 01431 024000 7 0 IRS 0 /RESTORE CORBUF-4=>CORBUF-1 IN THE 01432 003427 7 0 JMP .-3 01433 024000 7 0 IRS 0 01434 003433 7 0 JMP .-1 /WAIT 01435 073605 7 0 LDX (-104) 01436 045551 7 0 LDA CORSAV+104 X 01437 050200 7 0 STA CORCNT+104 X /RESTORE CORBUF-4=>CORBUF 01440 024000 7 0 IRS 0 01441 003436 7 0 JMP .-3 01442 030026 7 0 WDT 01443 000000 7 0 HLT /DONE 01444 003442 7 0 JMP .-2 CORSAV: /SAVE SPACE FOR CORBUF-4=>CORBUF+77 /NEXT 104 LOCS USED BY COR DMP *** THIS DOCUMENT MAY CONTAIN BBN PROPRIETARY INFORMATION. *** *** FURNISHED FOR U. S. GOVERNMENT END USE ONLY. *** PAGE 33 IMP,3050,IMP 7:20 PM 9/16/1973 /THIS CODE IS THE ADD CHAIN WHICH COMPUTES PACKET CHECKSUMS /IT IS RE-ENTRANT AND IS CALLED BY DIFFERENT INTERRUPTS LEV ALL 01445 054115 0 ADDTOP: ADD BUFE+4 X 01446 054114 0 ADD BUFE+3 X 01447 054113 0 ADD BUFE+2 X 01450 054112 0 ADD BUFE+1 X 01451 054111 0 ADD BUFE X 01452 054110 0 ADD BUFE-1 X 01453 054107 0 ADD DATA+76 X 01454 054106 0 ADD DATA+75 X 01455 054105 0 ADD DATA+74 X 01456 054104 0 ADD DATA+73 X 01457 054103 0 ADD DATA+72 X 01460 054102 0 ADD DATA+71 X 01461 054101 0 ADD DATA+70 X 01462 054100 0 ADD DATA+67 X 01463 054077 0 ADD DATA+66 X 01464 054076 0 ADD DATA+65 X 01465 054075 0 ADD DATA+64 X 01466 054074 0 ADD DATA+63 X 01467 054073 0 ADD DATA+62 X 01470 054072 0 ADD DATA+61 X 01471 054071 0 ADD DATA+60 X 01472 054070 0 ADD DATA+57 X 01473 054067 0 ADD DATA+56 X 01474 054066 0 ADD DATA+55 X 01475 054065 0 ADD DATA+54 X 01476 054064 0 ADD DATA+53 X 01477 054063 0 ADD DATA+52 X 01500 054062 0 ADD DATA+51 X 01501 054061 0 ADD DATA+50 X 01502 054060 0 ADD DATA+47 X 01503 054057 0 ADD DATA+46 X 01504 054056 0 ADD DATA+45 X 01505 054055 0 ADD DATA+44 X 01506 054054 0 ADD DATA+43 X 01507 054053 0 ADD DATA+42 X 01510 054052 0 ADD DATA+41 X 01511 054051 0 ADD DATA+40 X *** THIS DOCUMENT MAY CONTAIN BBN PROPRIETARY INFORMATION. *** *** FURNISHED FOR U. S. GOVERNMENT END USE ONLY. *** PAGE 34 IMP,3050,IMP 7:20 PM 9/16/1973 01512 054050 0 ADD DATA+37 X 01513 054047 0 ADD DATA+36 X 01514 054046 0 ADD DATA+35 X 01515 054045 0 ADD DATA+34 X 01516 054044 0 ADD DATA+33 X 01517 054043 0 ADD DATA+32 X 01520 054042 0 ADD DATA+31 X 01521 054041 0 ADD DATA+30 X 01522 054040 0 ADD DATA+27 X 01523 054037 0 ADD DATA+26 X 01524 054036 0 ADD DATA+25 X 01525 054035 0 ADD DATA+24 X 01526 054034 0 ADD DATA+23 X 01527 054033 0 ADD DATA+22 X 01530 054032 0 ADD DATA+21 X 01531 054031 0 ADD DATA+20 X 01532 054030 0 ADD DATA+17 X 01533 054027 0 ADD DATA+16 X 01534 054026 0 ADD DATA+15 X 01535 054025 0 ADD DATA+14 X 01536 054024 0 ADD DATA+13 X 01537 054023 0 ADD DATA+12 X 01540 054022 0 ADD DATA+11 X 01541 054021 0 ADD DATA+10 X 01542 054020 0 ADD DATA+7 X 01543 054017 0 ADD DATA+6 X 01544 054016 0 ADD DATA+5 X 01545 054015 0 ADD DATA+4 X 01546 054014 0 ADD DATA+3 X 01547 054013 0 ADD DATA+2 X 01550 054012 0 ADD DATA+1 X 01551 054011 0 ADD DATA X 01552 054010 0 ADD HEAD3 X 01553 054007 0 ADD HEAD2 X 01554 054006 0 ADD HEAD1 X 01555 054005 0 ADD HEAD X 01556 054004 0 ADDBOT: ADD ACKH X 01557 102111 0 JMP ADDRET I /RETURN TO CALLING INTERRUPT ROUTIN *** THIS DOCUMENT MAY CONTAIN BBN PROPRIETARY INFORMATION. *** *** FURNISHED FOR U. S. GOVERNMENT END USE ONLY. *** PAGE 35 IMP,3050,IMP 7:20 PM 9/16/1973 01560 000001 C LEV CON CONSTANTS 01561 177755 C 01562 000006 C 01563 001147 C 01564 000004 C 01565 100060 C 01566 133000 C 01567 172110 C 01570 177752 C 01571 070000 C 01572 177757 C 01573 177777 C 01574 002000 C 01575 177760 C 01576 177776 C 01577 000000 C 01600 176753 C 01601 037775 C 01602 037776 C 01603 037774 C 01604 000003 C 01605 177674 C 01606 000005 C 01607 000011 C 01610 000100 C 01611 000002 C 01612 000074 C 01613 000177 C 01614 100000 C 01615 030000 C 01616 177774 C 01777 000000 C 1777/ 0 /LOC 1777 USED IN SWCH CODE /FOR MEM PROTECT TEST *** THIS DOCUMENT MAY CONTAIN BBN PROPRIETARY INFORMATION. *** *** FURNISHED FOR U. S. GOVERNMENT END USE ONLY. *** PAGE 36 IMP,3050,IMP 7:20 PM 9/16/1973 /INITIALIZATION LEV BCK 02000 120672 7 INIT: JST DODXA I RET BCK 02001 001001 7 INH INI 02002 140040 7 0 CRA 02003 170120 7 0 SMK INTM /LOCK OUT INTERRUPTS FOR INIT 02004 010134 7 0 STA PRIM 02005 026133 7 0 IMA RSFLAG 02006 141206 7 0 AOA 02007 111465 7 0 STA (RSFNCC) I /SET UP RSTART INDICATOR FOR NCC 02010 022114 7 0 CAS ONE /RESTART 02011 022116 7 0 CAS THREE /OR POWERFAIL (4) 02012 003202 7 0 JMP INIVDH /==>SEE IF VDH GETS RESTARTED 02013 101000 7 0 NOP / (MUST COME BEFORE ZEROING 0-AF 02014 140040 7 0 CRA 02015 010145 7 0 STA SATRSF 02016 010136 7 0 INIVDR: STA TIPRSF 02017 010765 7 0 STA TPOPEN 02020 073466 7 0 LDX (-MAXITB) /MUST PRECEDE ZEROING 02021 045346 7 0 INIT1: LDA ITBTIP+MAXITB X /SO THAT APPROPRIATE INT'I 02022 070042 7 0 AMIMLC /ENTRIES ARE CLEARED 02023 045316 7 0 LDA ITBIMP+MAXITB X 02024 151266 7 0 STA ITBLOC+MAXITB XI /INIT TIP-HOST3 LOCS 02025 024000 7 0 IRS 0 02026 003021 7 0 JMP INIT1 02027 073467 7 0 LDX (-MAXVDH) 02030 045361 7 0 LDA ITBNVD+MAXVDH X 02031 151374 7 0 STA ITBVDL MAXVDH XI 02032 024000 7 0 IRS 0 02033 003030 7 0 JMP .-3 02034 073470 7 0 LDX (-INITZN) /INIT THE ZERO STORAGE AREAS 02035 045221 7 0 INIT0: LDA INITZB+INITZN X 02036 011212 7 0 STA IT1 02037 045226 7 0 LDA INITZL+INITZN X 02040 011213 7 0 STA IT2 02041 140040 7 0 CRA /MUST PRECED QUEUE INIT 02042 111212 7 0 STA IT1 I 02043 025212 7 0 IRS IT1 02044 025213 7 0 IRS IT2 02045 003042 7 0 JMP .-3 02046 024000 7 0 IRS 0 02047 003035 7 0 JMP INIT0 02050 010144 7 0 STA VDHRSF /VDH WILL NOT RESTART 02051 131041 7 0 RDIMPN 02052 003051 7 0 JMP .-1 02053 010106 7 0 STA MINE /INIT MINE 02054 005471 7 0 LDA (NS1) 02055 111472 7 0 STA (NSRR) I *** THIS DOCUMENT MAY CONTAIN BBN PROPRIETARY INFORMATION. *** *** FURNISHED FOR U. S. GOVERNMENT END USE ONLY. *** PAGE 37 IMP,3050,IMP 7:20 PM 9/16/1973 02056 073473 7 0 LDX (-QUEUEL) 02057 005474 7 0 LDA (QUEUEB) /INIT QUEUE PNTRS 02060 050414 7 0 INIT3: STA QUEUEE+QUEUEL X 02061 141206 7 0 AOA 02062 024000 7 0 IRS 0 02063 003060 7 0 JMP INIT3 02064 005475 7 0 LDA (ZERO) 02065 010324 7 0 STA FREE 02066 105476 7 0 LDA (HOST34) I 02067 006115 7 0 ANA TWO 02070 100040 7 0 SZE 02071 004116 7 0 LDA THREE 02072 111477 7 0 STA (SATNO) I 02073 105476 7 0 LDA (HOST34) I 02074 006114 7 0 ANA ONE 02075 010000 7 0 STA 0 02076 101040 7 0 SNZ 02077 010144 7 0 STA VDHRSF /JUST IN CASE 02100 100040 7 0 SZE 02101 005500 7 0 LDA (-CH 0 M.N) /SET VDHNO FOR VDH IMPS.. 02102 111501 7 0 STA (VDHNO) I /...0 FOR NON-VDH 02103 045405 7 0 LDA P36END X 02104 011445 7 0 STA SPAR+36-2 /SET UP END OF P36 FOR VDH OR NOT 02105 045407 7 0 LDA P37END X 02106 011446 7 0 STA SPAR+37-2 /SET UP END OF P37 AND BEYOND 02107 004115 7 0 LDA TWO /START COLLECTING BUFFERS ON P2 02110 011212 7 0 STA IT1 02111 073502 7 0 LDX (-PAGES+2) 02112 045447 7 0 INIT4: LDA SPAR+PAGES-2 X 02113 040167 7 0 LRS 9. /PICK UP NUMBER OF BUFFERS ON THI[ /NOTE THAT NO MORE THAN 64 8UFFERS CAN BE CLAIMED PER ENTRY 02114 011213 7 0 STA IT2 02115 005212 7 0 LDA IT1 /PICK UP PAGE NUMBER 02116 025212 7 0 IRS IT1 02117 041167 7 0 LLS 9. /PICK UP START OF BUFFER STORAGE 02120 003126 7 0 JMP INIT6 02121 024537 7 0 INIT5: IRS NFA /COUNT ANOTHER FREE BUFFER 02122 026324 7 0 IMA FREE 02123 110324 7 0 STA FREE I /ADD TO FREE LIST 02124 004324 7 0 LDA FREE 02125 015503 7 0 ADD (BUFL) 02126 025213 7 0 INIT6: IRS IT2 /HAVE WE TAKEN ALL THE BUFFERS 02127 003121 7 0 JMP INIT5 /NO, MORE ON THIS PAGE 02130 024000 7 0 IRS 0 /YES, GO ON TO NEXT PAGE 02131 003112 7 0 JMP INIT4 *** THIS DOCUMENT MAY CONTAIN BBN PROPRIETARY INFORMATION. *** *** FURNISHED FOR U. S. GOVERNMENT END USE ONLY. *** PAGE 38 IMP,3050,IMP 7:20 PM 9/16/1973 02132 005504 7 0 LDA (4"T"CH) 02133 010571 7 0 STA MAXS 02134 010573 7 0 STA MAXSI 02135 140407 7 0 TCA 02136 014537 7 0 ADD NFA 02137 014751 7 0 ADD 8PKTS 02140 040575 7 0 ARS 3 02141 041575 7 0 ALS 3 02142 014115 7 0 ADD TWO 02143 010572 7 0 STA MAXR 02144 072122 7 0 LDX MINUS2 /INIT THE FREE REAS+TRACE LISTS 02145 045230 7 0 INIT7: LDA INIBLK+2 X 02146 011212 7 0 STA IT1 02147 045232 7 0 LDA INIQUE+2 X 02150 151234 7 0 STA INISTR+2 XI 02151 011213 7 0 STA IT2 02152 055236 7 0 INIT8: ADD INILNG+2 X 02153 111213 7 0 STA IT2 I 02154 011213 7 0 STA IT2 02155 025212 7 0 IRS IT1 02156 003152 7 0 JMP INIT8 02157 140040 7 0 CRA 02160 111213 7 0 STA IT2 I 02161 024000 7 0 IRS 0 02162 003145 7 0 JMP INIT7 02163 004132 7 0 LDA MINIMP 02164 011212 7 0 STA IT1 02165 072113 7 0 LDX ZERO 02166 021374 7 0 INIT9: JST MESINI /INIT TMESS,RMESS 02167 024000 7 0 IRS 0 02170 025212 7 0 IRS IT1 02171 003166 7 0 JMP INIT9 02172 005505 7 0 LDA (TALLY) 02173 111506 7 0 STA (TALLYI) I 02174 073507 7 0 LDX (0 0-2"T"FH-BH) 02175 045465 7 0 INIT13: LDA TTOI+FH+FH+BH X 02176 111510 7 0 STA (DZTB+FH+FH+BH 0 X) I 02177 024000 7 0 IRS 0 02200 003175 7 0 JMP INIT13 02201 103511 7 0 JMP (INITNP) I *** THIS DOCUMENT MAY CONTAIN BBN PROPRIETARY INFORMATION. *** *** FURNISHED FOR U. S. GOVERNMENT END USE ONLY. *** PAGE 39 IMP,3050,IMP 7:20 PM 9/16/1973 02202 004567 7 0 INIVDH: LDA VDHUPF /PWR FAIL OR PLAIN RESTART 02203 010144 7 0 STA VDHRSF /THEN RESTART VDH IF IT WAS UP 02204 004145 7 0 LDA SATRSF 02205 140100 7 0 SSP 02206 010145 7 0 STA SATRSF 02207 004136 7 0 LDA TIPRSF 02210 140100 7 0 SSP /0=>0, -=>+ 02211 003016 7 0 JMP INIVDR LEV VAR 02212 V IT1: BSS 1 02213 V IT2: BSS 1 LEV CON 02214 000160 C INITZB: ZEROB 02215 032030 C I2MB0 02216 032030 C TABZB 02217 030434 C PARAMT 02220 100063 C STDIL 0 I /IN CASE NON-EXA IMP RELOADS FROM 02221 177370 C INITZL: -ZEROL 02222 177730 C -[CH"T"NACH] 02223 176201 C -TABZL 02224 177740 C -PARAML 02225 177760 C STDIL-0-TASKIL INITZN=INITZL-0-INITZB 02226 177771 C INIBLK: -NREAB+0+1 02227 177771 C -NTRCB+0+1 02230 033317 C INIQUE: REASQ 02231 032131 C TRACEQ 02232 000326 C INISTR: RASF 02233 000325 C TTF 02234 000014 C INILNG: REASL 02235 000013 C TRACEL 02236 C ITBLOC: BSS MAXITB 02266 C ITBIMP: BSS MAXITB 02316 C ITBTIP: BSS MAXITB MAXVDH=11. 02346 C ITBNVD: BSS MAXVDH 02361 000001 C ITBVDL: REPEAT MAXVDH,JUNK 02362 000001 C 02363 000001 C 02364 000001 C 02365 000001 C 02366 000001 C 02367 000001 C 02370 000001 C 02371 000001 C 02372 000001 C 02373 000001 C *** THIS DOCUMENT MAY CONTAIN BBN PROPRIETARY INFORMATION. *** *** FURNISHED FOR U. S. GOVERNMENT END USE ONLY. *** PAGE 40 IMP,3050,IMP 7:20 PM 9/16/1973 LEV [INI,T.O] 02374 000000 0 MESINI: 0 02375 005512 0 LDA (0 0 177777"X"MSTO1"X"MSTO2) 02376 111513 0 STA (TMESS 0 X) I 02377 005514 0 LDA (0 0 3"T"400) 0"A"MESSNO 02400 111515 0 STA (RMESS 0 X) I 02401 140040 0 CRA 02402 111516 0 STA (AMESS 0 X) I 02403 111517 0 STA (RALLY 0 X) I 02404 103374 0 JMP MESINI I LEV CON 02405 170067 C P36END: P36FB"A"777-[P36NB+1]"T"1000 02406 171067 C P36FB"A"777-[P36NB]"T"1000 02407 172075 C P37END: P37FB"A"777-[P37NB]"T"1000 02410 177777 C VDHEND"A"777-[0+1]"T"1000 02411 C SPAR: BSS PAGES-2 /TABLE OF ENDS-OF-PAGES /FORMAT IS HI 7 BITS = -(NUMBER OF BUFFS ON PAGE+1) /LO 9 BITS = STARTING ADDRESS OF FIRST BUFFER /FAKE HOST OUTPUT (JAM) SLOTS IN DZTB 02447 025117 C TTOI: TTYI /FH0 (TTY) OUTPUT FROM IMP TO FH 02450 023066 C DOTI /FH1 (DDT) OUTPUT FROM IMP TO FH 02451 030477 C BTRE /FH2 (TRACE) OUTPUT FROM IMP TO FH 02452 030056 C STTI /FH3 (STAT) OUTPUT FROM IMP TO FH /FAKE HOST INPUT (SUCK) SLOTS IN WTTB 02453 025310 C TTO0 /FH0 (TTY) INPUT TO IMP FROM FH 02454 024012 C DIN4 /FH1 (DDT) INPUT TO IMP FROM FH 02455 030414 C BEST /FH2 (PARAM CHANGE) INPUT TO IMP E 02456 030474 C STXY /FH3 (DISCARD) INPUT TO IMP FROM FH /BACK HOST SLOTS IN SLTB 02457 004101 C BACK0 /BH0 (SEND RFNMS+ALLOCATES) 02460 004206 C BACK1 /BH1 (SEND INCOMPLETE TRANSMISSIONS 02461 004302 C BACK2 /BH2 (SEND GIVE BACKS) 02462 004347 C BACK3 /BH3 (RETRANSMIT FROM PPT) 02463 004356 C BACK4 /BH4 (SEND OUT-OF-RANGE REPLIES) / (REROUTE DEAD LINE STUFF) / (RETURN DESTINATION DEADS) 02464 004365 C BACK5 *** THIS DOCUMENT MAY CONTAIN BBN PROPRIETARY INFORMATION. *** *** FURNISHED FOR U. S. GOVERNMENT END USE ONLY. *** PAGE 41 IMP,3050,IMP 7:20 PM 9/16/1973 02465 003560 C LEV CON CONSTANTS 02466 177750 C 02467 177765 C 02470 177773 C 02471 003452 C 02472 003450 C 02473 177727 C 02474 000272 C 02475 000113 C 02476 001005 C 02477 005153 C 02500 177775 C 02501 020544 C 02502 177742 C 02503 000112 C 02504 000024 C 02505 032261 C 02506 015155 C 02507 177762 C 02510 043433 C 02511 003074 C 02512 177477 C 02513 072271 C 02514 001400 C 02515 072371 C 02516 072471 C 02517 072571 C 02411 174524 C PAGEND 2,UNCON,4 *** THIS DOCUMENT MAY CONTAIN BBN PROPRIETARY INFORMATION. *** *** FURNISHED FOR U. S. GOVERNMENT END USE ONLY. *** PAGE 42 IMP,3050,IMP 7:20 PM 9/16/1973 /CONSTANTS, VARIABLE FOR NEW INIT PAGE LEV VAR 03062 V IT3: BSS 1 LEV CON 03063 010047 C M2IIT: M2I1A 03064 010073 C M2I2A 03065 010117 C M2I3A 03066 010143 C M2I4A 03067 010167 C M2I5A 03070 C HIM.I: TIPDEF 177660,177664 02236 003070 C 02266 177660 C 02316 177664 C 03071 C HIM.I4: TIPDEF 177460,177464 02237 003071 C 02267 177460 C 02317 177464 C 03072 C IHM.I: TIPDEF 173600,173624 02240 003072 C 02270 173600 C 02320 173624 C 03073 C IHM.I4: TIPDEF 163400,163424 02241 003073 C 02271 163400 C 02321 163424 C *** THIS DOCUMENT MAY CONTAIN BBN PROPRIETARY INFORMATION. *** *** FURNISHED FOR U. S. GOVERNMENT END USE ONLY. *** PAGE 43 IMP,3050,IMP 7:20 PM 9/16/1973 LEV BCK LCK INI 03074 105561 7 0 INITNP: LDA (HOST34) I /THIS IS <>0 IF 3 OR 4 HOSTS 03075 006124 7 0 ANA MINUS4 /=0 FOR 5 MODEMS, 2 HOSTS />0 FOR 4 MODEMS, 3 HOSTS /<0 FOR 3 MODEMS, 4 HOSTS 03076 072132 7 0 LDX MIN100 /5M,2H 03077 100040 7 0 SZE 03100 073072 7 0 LDX IHM.I /4M,3H 03101 100400 7 0 SPL 03102 073073 7 0 LDX IHM.I4 /3M,4H 03103 032500 7 0 STX IHM /* 03104 073562 7 0 LDX (-20) /5M,2H 03105 100040 7 0 SZE 03106 073070 7 0 LDX HIM.I /4M,3H 03107 100400 7 0 SPL 03110 073071 7 0 LDX HIM.I4 /3M,4H 03111 032501 7 0 STX HIM /* 03112 073563 7 0 LDX (-4000) /5M,2H 03113 100040 7 0 SZE 03114 073564 7 0 LDX (-10000) /4M,3H 03115 100400 7 0 SPL 03116 073565 7 0 LDX (-20000) /3M,4H 03117 032502 7 0 STX MOM /* 03120 072113 7 0 LDX ZERO /5M,2H 03121 100040 7 0 SZE 03122 072121 7 0 LDX MINUS1 /4M,3H 03123 100400 7 0 SPL 03124 072122 7 0 LDX MINUS2 /3M,4H 03125 133566 7 0 STX (MODNO) I /* 03126 073567 7 0 LDX (M2I5) /5M 03127 100040 7 0 SZE 03130 073570 7 0 LDX (IH2E) /4M OR 3M 03131 032070 7 0 STX M5INIL /* 03132 073571 7 0 LDX (M2I4) /5M OR 4M 03133 100400 7 0 SPL 03134 073572 7 0 LDX (IH3E) /3M 03135 032067 7 0 STX M4INIL /* 03136 073573 7 0 LDX (I2M5) /5M 03137 100040 7 0 SZE 03140 073574 7 0 LDX (HI2E) /4M OR 3M 03141 032075 7 0 STX M5OTIL /* 03142 073575 7 0 LDX (I2M4) /5M OR 4M 03143 100400 7 0 SPL 03144 073576 7 0 LDX (HI3E) /3M 03145 032074 7 0 STX M4OTIL /* *** THIS DOCUMENT MAY CONTAIN BBN PROPRIETARY INFORMATION. *** *** FURNISHED FOR U. S. GOVERNMENT END USE ONLY. *** PAGE 44 IMP,3050,IMP 7:20 PM 9/16/1973 03146 121577 7 0 JST (RUTINI) I /INIT ROUTING TABLES 03147 121600 7 0 JST (TOI) I /INITIALIZE TIMEOUT 03150 131040 7 0 RDCLOK 03151 003150 7 0 JMP .-1 /WAIT 3 SECONDS 03152 101400 7 0 SMI 03153 003150 7 0 JMP .-3 /BEFORE STARTING INTERRUPT PROGRAF' 03154 121601 7 0 JST (SWCH) I /FIRE OFF A TRBL REPT NOW - FOLLOWS /START MODEM INPUT - MUST FOLLOW TOI 03155 073602 7 0 LDX (-[2"T"CH]) 03156 005603 7 0 LDA (I 0 1) 03157 050032 7 0 INIT17: STA M1INBP+2"T"CH X 03160 024000 7 0 IRS 0 03161 003157 7 0 JMP INIT17 03162 005604 7 0 LDA (M1IN) 03163 011174 7 0 STA INIT19 03164 072127 7 0 LDX MICH 03165 005605 7 0 INIT18: LDA (JMP+0+1000+M2II"A"777) 03166 151070 7 0 STA M2IIT+CH XI /FIRST IN WILL BE DISCAF 03167 105606 7 0 LDA (VDHNO) I /SKIP FOR VDH'S MODEM 03170 016000 7 0 SUB 0 03171 100040 7 0 SZE 03172 117607 7 0 SUB (SATNO) I /ENTERING AC IS -C(0) 03173 100040 7 0 SZE 03174 7 0 INIT19: BSS 1 /STARTUP MODEM INS 03175 025174 7 0 IRS INIT19 03176 024000 7 0 IRS 0 03177 003165 7 0 JMP INIT18 /START THE HOST/IMP AND IMP/HOST ROUTINES 03200 004131 7 0 LDA MITH 03201 011062 7 0 STA IT3 /COUNTING ON X=0 AT THIS POINT 03202 004117 7 0 INIT15: LDA FOUR 0"A"HSTIDN /HOSTS ARE DOWN WHILE IMP 03203 050504 7 0 STA HIHD X 03204 121610 7 0 JST (IHIN) I /** MUST BE IN THIS ORDER 03205 121611 7 0 JST (HIST) I /** 03206 024000 7 0 IRS 0 03207 025062 7 0 IRS IT3 03210 003202 7 0 JMP INIT15 03211 004121 7 0 LDA MINUS1 03212 010137 7 0 STA SW3FG 03213 010140 7 0 STA NRSTF 03214 010134 7 0 STA PRIM 03215 170120 7 0 SMK INTM 03216 000401 7 0 ENB BCK 03217 131040 7 RDCLOK /ALLOW ALL T/O PROGRAMS TO RUN 03220 003217 7 JMP .-1 03221 100400 7 SPL 03222 003217 7 JMP .-3 /BEFORE BACK BEGINS /FALL INTO BACKST ----- *** THIS DOCUMENT MAY CONTAIN BBN PROPRIETARY INFORMATION. *** *** FURNISHED FOR U. S. GOVERNMENT END USE ONLY. *** PAGE 45 IMP,3050,IMP 7:20 PM 9/16/1973 /BACKGROUND LOOP LEV BCK 03223 005612 7 BACKST: LDA (BBNIMP) /1ST REPORT MUST GO TO NCC 03224 111613 7 BACK: STA (TRBD) I 03225 005614 7 LDA (-FH) 03226 011410 7 STA BT1 03227 005410 7 BKV: LDA BT1 03230 017614 7 SUB (-FH) 03231 010000 7 STA 0 03232 011412 7 STA FAKENO /FOR DEBUG 03233 143415 7 JMP DZTB XI /RESUME WHERE JAM LEFT OFF 03234 000000 7 BKX: 0 /JAM WAIT (DOZE) 03235 005234 7 LDA BKX 03236 051415 7 STA DZTB X 03237 143421 7 JMP WTTB XI /RESUME WHERE SUCK LEFT OFF 03240 000000 7 BKW: 0 /SUCK WAIT (WAIT) 03241 005240 7 LDA BKW 03242 051421 7 STA WTTB X 03243 000401 7 ENB BCK 03244 025410 7 IRS BT1 03245 003227 7 JMP BKV 03246 005615 7 LDA (-BH) 03247 011410 7 STA BT1 03250 072113 7 LDX ZERO 03251 133616 7 BKY: STX (BACKNO) I 03252 072114 7 LDX ONE 03253 001001 7 INH ALL 03254 143260 7 0 DXATS1: JMP DXATST XI /ARE WE EXA OR DXA? DEFHLT [BACKGROUND IN EXA MODE (BACK0)!] 03255 021262 7 0 JST DXABUG /DXA 03256 173616 7 0 DXATS2: LDX (BACKNO) I /EXA 03257 143425 7 0 JMP SLTB XI /RESUME WHERE BACK HOSTS LEFT OFF *** THIS DOCUMENT MAY CONTAIN BBN PROPRIETARY INFORMATION. *** *** FURNISHED FOR U. S. GOVERNMENT END USE ONLY. *** PAGE 46 IMP,3050,IMP 7:20 PM 9/16/1973 LEV CON 03260 003254 C DXATST: DXATS1 03261 003256 C DXATS2 LEV BCK LCK ALL 03262 000000 7 0 DXABUG: 0 03263 120745 7 0 JST HLTNCC I 03264 000011 7 0 DXA 03265 103262 7 0 JMP DXABUG I RET BCK 03266 000000 7 BKZ: 0 /BACK HOST WAIT (SLEEP) 03267 000401 7 ENB BCK 03270 173616 7 LDX (BACKNO) I 03271 005266 7 LDA BKZ 03272 051425 7 STA SLTB X 03273 024000 7 B5Z: IRS 0 03274 025410 7 IRS BT1 03275 003251 7 JMP BKY 03276 140040 7 CRA 03277 100004 7 SR3 03300 010137 7 STA SW3FG /DO NICE STOP IF SS3 03301 004137 7 LDA SW3FG /REMOTE NICE-STOP+RELOAD 03302 100400 7 SPL 03303 004140 7 LDA NRSTF 03304 101400 7 SMI 03305 021446 7 JST NSRT /NICE-STOP IF SW3FG>=0 OR NRSTF>=0 *** THIS DOCUMENT MAY CONTAIN BBN PROPRIETARY INFORMATION. *** *** FURNISHED FOR U. S. GOVERNMENT END USE ONLY. *** PAGE 47 IMP,3050,IMP 7:20 PM 9/16/1973 03306 004415 7 LDA TIME 03307 027413 7 IMA WDTOLD /IS T.O RUNNING? 03310 013413 7 ERA WDTOLD 03311 100040 7 SZE 03312 003316 7 JMP BKT /TIME CHANGED...YES 03313 025414 7 IRS WDTBAK 03314 003320 7 JMP BKU /DON'T GIVE UP YET RELOAD [BACKGROUND SAW TIMEOUT STOP] 03315 120061 7 JST SWDTIL I 03316 005617 7 BKT: LDA (-10000.) /GIVE T.O A LONG TIME TO RUN 03317 011414 7 STA WDTBAK /AND RESET BACK-WDT 03320 000401 7 BKU: ENB BCK 03321 7 TIPDEF [JMP BKS],[LDA TIPRSF] 02242 003321 7 02272 003334 7 02322 004136 7 03322 101040 7 SNZ 03323 003331 7 JMP BKR 03324 000013 7 EXA 03325 121620 7 JST (TIPBKG) I 03326 001001 7 INH ALL 03327 120672 7 0 JST DODXA I RET BCK 03330 003334 7 JMP BKS 03331 004063 7 BKR: LDA STDIL 03332 010101 7 STA H2INIL 03333 010077 7 STA H2OTIL 03334 073621 7 BKS: LDX (-LITN) /LIGHTS DISPLAY 03335 145446 7 LIT2: LDA LITT+LITN XI 03336 100040 7 SZE 03337 140500 7 SSM 03340 041277 7 LLR 1 03341 024000 7 IRS 0 03342 003335 7 JMP LIT2 03343 140040 7 CRA 03344 040267 7 LRR LITN 03345 012452 7 ERA LUUP 03346 011434 7 STA LITS 03347 001001 7 INH ALL 03350 000013 7 0 EXA 03351 105433 7 0 LDA LITP I 03352 120672 7 0 JST DODXA I RET BCK 03353 100020 7 SR1 03354 004121 7 LDA MINUS1 /LAMP TEST 03355 170026 7 LITES 03356 101000 7 NOP 03357 000201 7 IAB 03360 025411 7 IRS BACKX /KEEP COUNT OF BACK LOOPS 03361 101000 7 NOP *** THIS DOCUMENT MAY CONTAIN BBN PROPRIETARY INFORMATION. *** *** FURNISHED FOR U. S. GOVERNMENT END USE ONLY. *** PAGE 48 IMP,3050,IMP 7:20 PM 9/16/1973 03362 140040 7 CRA 03363 026144 7 IMA VDHRSF /CHECK AND RESET VDH RESTART FLAG 03364 100040 7 SZE 03365 121622 7 JST (VD.I) I /YES, RESTART 03366 101000 7 VDH2: NOP /VDH BACKGROUND CALL 03367 004172 7 LDA RUT+BBNIMP 03370 101400 7 SMI 0"A"RUTDED /IS NCC IMP UP? 03371 003223 7 JMP BACKST /YES 03372 072132 7 LDX MINIMP /MUST FIND RANDOM IMP UP 03373 044265 7 BKWD1: LDA RUT+NIMP X 03374 101400 7 SMI 0"A"RUTDED /DEAD? 03375 101040 7 SNZ 0"A"RUTUS 03376 003403 7 JMP BKWD2 /DON'T USE OURSELVES EXCEPT AS A LA1 03377 004000 7 LDA 0 /GOT ONE 03400 016132 7 SUB MINIMP 03401 013623 7 BKWD3: ERA (DESTH 0 FORIMP) /TO DISCARD 03402 003224 7 JMP BACK 03403 024000 7 BKWD2: IRS 0 03404 003373 7 JMP BKWD1 03405 004106 7 LDA MINE /EVERYONE IS DEAD, USE OURSELVES 03406 003401 7 JMP BKWD3 03407 037511 7 VDH2.: VD.B LEV VAR 03410 V BT1: BSS 1 03411 V BACKX: BSS 1 /NO OF BACK LOOPS 03412 V FAKENO: BSS 1 03413 V WDTOLD: BSS 1 /OLD TIME READING 03414 V WDTBAK: BSS 1 /BACK WDT TIMER /THESE 3 TABLES MUST STAY IN ORDER11 DEFPLC [DZTB - GOES WITH JAM] 03415 V DZTB: BSS FH DEFPLC [WTTB - GOES WITH SUCK] 03421 V WTTB: BSS FH DEFPLC [SLTB - GOES WITH SLEEP (BACK HOSTS)] 03425 V SLTB: BSS BH DEFPLC [LIGHT DISPLAY POINTER AND NOMINAL DISPLAY WORD] 03433 003434 V LITP: LITS 03434 V LITS: BSS 1 /LIGHTS TABLE AND CONDITION INDICATED BY LIT LIGHT LEV CON 03435 000433 C LITT: LINE /1 - 100000 1ST CHANNEL DEAD 03436 000434 C LINE+1 /2 - 40000 2ND CHANNEL DEAD 03437 000435 C LINE+2 /3 - 20000 3RD CHANNEL DEAD 03440 000436 C LINE+3 /4 - 10000 4TH CHANNEL DEAD 03441 000504 C HIHD /5 - 4000 HOST 1 DEAD 03442 000505 C HIHD+1 /6 - 2000 HOST 2 DEAD 03443 000506 C HIHD+2 /7 - 1000 HOST 3 DEAD 03444 000507 C HIHD+3 /8 - 400 HOST 4 DEAD 03445 000765 C TPOPEN /9 - 200 TIP HAS OPEN CONNECTION LITN=0 0 .-LITT *** THIS DOCUMENT MAY CONTAIN BBN PROPRIETARY INFORMATION. *** *** FURNISHED FOR U. S. GOVERNMENT END USE ONLY. *** PAGE 49 IMP,3050,IMP 7:20 PM 9/16/1973 / NICE STOP ROUTINE LEV BCK 03446 000000 7 NSRT: 0 03447 103450 7 JMP NSRR I 03450 000000 7 NSRR: 0 03451 103446 7 JMP NSRT I 03452 004137 7 NS1: LDA SW3FG /SET UP RSFNCC WORD FOR NICE STOP 03453 006120 7 ANA SEVEN 03454 041675 7 ALR 3 03455 012140 7 ERA NRSTF 03456 007624 7 ANA (177770) 03457 012140 7 ERA NRSTF 03460 012752 7 ERA C77 03461 041675 7 ALR 3 03462 101004 7 SS3 /DO NOT SET RSFNCC FOR SS3 03463 011560 7 STA RSFNCC 03464 140040 7 CRA /SEND IMP GOING DOWN IN 30 SEC 03465 021525 7 JST IHDOWN LCK FRE 03466 000401 7 0 ENB BCK 03467 021543 7 JST NSWT /WAIT 5 SECONDS 03470 004117 7 LDA FOUR 0"A"HSTIDN 03471 010504 7 STA HIHD /STOP NET TRAFFIC TO AND FROM HOSTS 03472 010505 7 STA HIHD+1 /MARK HOSTS DEAD, IMP NOT UP 03473 010506 7 STA HIHD+2 03474 010507 7 STA HIHD+3 03475 021543 7 JST NSWT /WAIT 5 SECONDS 03476 004121 7 LDA MINUS1 /STOP STORE-AND-FORWARD TRAFFIC BI 03477 010573 7 STA MAXSI /MAKING MAXS COPY SMALL 03500 021543 7 JST NSWT /WAIT 5 SECONDS 03501 004127 7 LDA MICH 03502 011556 7 STA BT2 /STOP EXCHANGE OF ROUTING AND ACKNO 03503 072113 7 LDX ZERO /TURNING OFF ALL LINES 03504 001001 7 INH [M2I,T.O,TSK] 03505 121625 7 0 NS3: JST (KILLIN) I /KILL LINE AT ONCE 03506 024000 7 0 IRS 0 03507 025556 7 0 IRS BT2 03510 003505 7 0 JMP NS3 03511 000401 7 0 ENB BCK 03512 021543 7 JST NSWT /WAIT 5 SECONDS 03513 021543 7 JST NSWT /WAIT UNTIL SLT DELAY OVER 03514 004140 7 LDA NRSTF 03515 101400 7 SMI /RESTART? 03516 103626 7 JMP (INIT) I /GO TO 2000 03517 004137 7 LDA SW3FG /FOR VDH OR NON-VDH 03520 101004 7 SS3 /STOP OR RELOAD? 03521 103627 7 JMP (WDLOD) I 03522 030026 7 WDT 03523 000000 7 HLT 03524 003522 7 JMP .-2 *** THIS DOCUMENT MAY CONTAIN BBN PROPRIETARY INFORMATION. *** *** FURNISHED FOR U. S. GOVERNMENT END USE ONLY. *** PAGE 50 IMP,3050,IMP 7:20 PM 9/16/1973 03525 000000 7 IHDOWN: 0 /NOTIFY ALL HOSTS OF IMP DOWN 03526 001001 7 INH FRE 03527 010515 7 0 STA TWDP 03530 004131 7 0 LDA MITH 03531 011556 7 0 STA BT2 03532 005556 7 0 NS2: LDA BT2 03533 016131 7 0 SUB MITH 03534 010000 7 0 STA 0 03535 005630 7 0 LDA (CIMPDN) /IMP GOING DOWN MESSAGE 03536 120670 7 0 JST OWP I 03537 101000 7 0 NOP 03540 025556 7 0 IRS BT2 03541 003532 7 0 JMP NS2 03542 103525 7 0 JMP IHDOWN I 03543 000000 7 0 NSWT: 0 /WAIT 5 SECONDS 03544 030026 7 0 WDT 03545 004415 7 0 LDA TIME 03546 011557 7 0 STA NSTM 03547 021450 7 0 NS5: JST NSRR 03550 004415 7 0 LDA TIME 03551 017557 7 0 SUB NSTM 03552 141044 7 0 CAR /WAIT FIVE SECONDS 03553 101040 7 0 SNZ 03554 003547 7 0 JMP NS5 03555 103543 7 0 JMP NSWT I LEV VAR 03556 V BT2: BSS 1 /TEMP 03557 V NSTM: BSS 1 /FOR STOP 03560 V RSFNCC: BSS 1 /RESTART PLACE FOR NCC -FORMAT FOLL /RSFNCC HAS THE FORM 000XYZ WHERE X,Y,Z ARE OCTAL DIGITS /X IS RELOAD REQUEST INDICATOR, X=0 NO REQUEST /X=7 RANDOM RELOAD, X=6 RELOAD FOR LINE 1, X=5 LINE 2, X=4 L /X=3 LINE 4, X=2 LINE 5 /Y IS RESTART REQUEST INDICATOR, Y=0 NO REQUEST /Y=7 RESTART AT 2000 - NON-VDH, X=6 RESTART AT 2001 - VDH /Z IS PROGRAM INITIALIZATION INDICATOR, Z=0 NO INIT /Z=1 RESTARTED, Z=2 RELOADED, Z=3 WATCH DOG TIMER RELOADED /Z=4 POWER FAIL RESTARTED *** THIS DOCUMENT MAY CONTAIN BBN PROPRIETARY INFORMATION. *** *** FURNISHED FOR U. S. GOVERNMENT END USE ONLY. *** PAGE 51 IMP,3050,IMP 7:20 PM 9/16/1973 03561 001005 C LEV CON CONSTANTS 03562 177760 C 03563 174000 C 03564 170000 C 03565 160000 C 03566 020545 C 03567 010163 C 03570 016020 C 03571 010137 C 03572 016012 C 03573 012107 C 03574 013064 C 03575 012113 C 03576 013056 C 03577 026070 C 03600 020075 C 03601 022320 C 03602 177766 C 03603 100001 C 03604 030471 C 03605 003207 C 03606 020544 C 03607 005153 C 03610 016217 C 03611 013256 C 03612 000005 C 03613 030456 C 03614 177774 C 03615 177772 C 03616 004420 C 03617 154360 C 03620 040001 C 03621 177767 C 03622 037025 C 03623 040300 C 03624 177770 C 03625 011133 C 03626 002000 C 03627 001022 C 03630 001000 C 02412 175637 C PAGEND 3,UNCON,4 *** THIS DOCUMENT MAY CONTAIN BBN PROPRIETARY INFORMATION. *** *** FURNISHED FOR U. S. GOVERNMENT END USE ONLY. *** PAGE 52 IMP,3050,IMP 7:20 PM 9/16/1973 /SEND OFF ALLOCATED RFNMS AND ALLOCATES AND RFNMS LEV BCK 04063 140040 7 B0AA: CRA 04064 011157 7 STA BALLOC 04065 121417 7 B0A: JST SLEEP I 04066 021372 7 B0B: JST GETFRE LCK FRE /GET A BUFFER FOR OUR AL 1 04067 003065 7 0 JMP B0A /NOT NOW, WAIT 04070 005155 7 0 LDA BRALLY 0"A"DESTI /GET OUR RALLY 04071 007603 7 0 ANA (DESTI) 04072 050006 7 0 STA HEAD1 X /SAVE IN HEADER 04073 013155 7 0 ERA BRALLY 0"A"[MESSNO 0 ONEOR8 RFNM] 04074 013157 7 0 ERA BALLOC 0"A"TRNREP /SET ALLOC BIT OR NOT 04075 013160 7 0 ERA BREPIN 0"A"INCTRN 04076 050005 7 0 STA HEAD X 04077 021435 7 0 JST GIVTSK RET BCK /GIVE RALLY TO TASK 04100 121417 7 B0C: JST SLEEP I 04101 021473 7 BACK0: JST RALLYG /GET NEXT RALLY TO GO 04102 003100 7 JMP B0C 04103 100000 7 SKP /GOOD RETURN 04104 003100 7 JMP B0C /GOT A DESTINATION DEAD, SENT ALREA 04105 011155 7 STA BRALLY /SAVE RALLY 04106 007604 7 ANA (ONEOR8 0 RFNM) 04107 013604 7 ERA (ONEOR8 0 RFNM) 04110 101040 7 SNZ /IS THIS JUST A 1-PKT RFNM? 04111 003063 7 JMP B0AA /YES, NO ALLOC NECESSARY 04112 005155 7 LDA BRALLY 04113 007605 7 ANA (ONEOR8) 04114 100040 7 SZE 04115 005606 7 LDA (-7) 0"A"8PKTS 04116 014751 7 ADD 8PKTS 04117 011157 7 STA BALLOC 04120 004415 7 LDA TIME 04121 011156 7 STA BALLTO 04122 121417 7 B0D: JST SLEEP I 04123 004415 7 LDA TIME 04124 017156 7 SUB BALLTO 04125 017607 7 SUB (40.) 04126 100400 7 SPL /HAVE WE BEEN WAITING 1 SEC? 04127 003134 7 JMP B0F /NOT YET 04130 005155 7 LDA BRALLY 04131 007610 7 ANA (RFNM) 04132 100040 7 SZE /ARE WE SENDING AN ALLOCATED RFNMT 04133 003063 7 JMP B0AA /YES, SEND IT OFF WITHOUT ALLOC *** THIS DOCUMENT MAY CONTAIN BBN PROPRIETARY INFORMATION. *** *** FURNISHED FOR U. S. GOVERNMENT END USE ONLY. *** PAGE 53 IMP,3050,IMP 7:20 PM 9/16/1973 04134 001001 7 B0F: INH [T.O,TSK] 04135 004542 7 5 LDA NALA 04136 016566 7 5 SUB NALS 04137 014541 7 5 ADD NREA 04140 016565 7 5 SUB NRES 04141 015157 7 5 ADD BALLOC 04142 022572 7 5 CAS MAXR /CAN WE HAVE THE ROOM? 04143 003122 7 5 JMP B0D /NOT YET 04144 003122 7 5 JMP B0D 04145 005611 7 5 LDA (ALLOC) 04146 027157 7 5 IMA BALLOC /SET ALLOC BIT IN OUR REPLY 04147 014542 7 5 ADD NALA 04150 010542 7 5 STA NALA /YES, SO TAKE IT 04151 004107 7 5 LDA M30SEC /2 MINUTES BEFORE WE ARE IDLE 04152 041576 7 5 ALS 2 04153 011161 7 5 STA SNTALL 04154 003066 7 5 JMP B0B LEV VAR 04155 V BRALLY: BSS 1 /OUR ALLOCATE TO MAKE 04156 V BALLTO: BSS 1 /TIME WE STARTED TO TRY FOR ALLOC 04157 V BALLOC: BSS 1 /NO OF BUFFERS WE NEED TO ALLOC 04160 V BREPIN: BSS 1 /BIT ON IF INC TRN REPLY 04161 V SNTALL: BSS 1 /TIMER FOR GARBAGE COLLECTION OF 1 1 *** THIS DOCUMENT MAY CONTAIN BBN PROPRIETARY INFORMATION. *** *** FURNISHED FOR U. S. GOVERNMENT END USE ONLY. *** PAGE 54 IMP,3050,IMP 7:20 PM 9/16/1973 LEV BCK /SEND OFF INCOMPLETE TRASMISSIONS IF ANY TMESS NO OVERDUE LCK [H2I,T.O,TSK] 04162 121612 7 4 B1A: JST (PPTGET) I /GET THE PPT ENTRY 04163 003257 7 4 JMP B1F /NOT IN PPT OR PLT, SO ITS A GVB 04164 044111 7 4 LDA BUFE X 04165 140100 7 4 SSP 0"A"TWOQ 04166 011262 7 4 STA BACK1T /SAVE PTR TO PKT CKSUM 04167 044010 7 4 LDA HEAD3 X 04170 007613 7 4 ANA (0 0 177777"X"SUBCOD) 04171 013614 7 4 ERA (CLOST) /MARK MESS AS LOST IN NET 04172 066010 7 4 IMA HEAD3 X 04173 056010 7 4 SUB HEAD3 X 04174 115262 7 4 ADD BACK1T I /ADJUST CKSUM 04175 111262 7 4 STA BACK1T I 04176 005605 7 4 LDA (ONEOR8) /MARK AS INC TRN FOR ONE-PKT 04177 073430 7 4 B1B: LDX HOLD+1 /GET OUR PKT 04200 052005 7 4 ERA HEAD X 04201 050005 7 4 STA HEAD X 04202 021435 7 4 JST GIVTSK RET BCK /AND GIVE TO TASK 04203 005261 7 B1C: LDA BACK1P /LOOK AT NEXT TMESS ENTRY 04204 141206 7 AOA 04205 023615 7 CAS (TMESS 0 NIMP) 04206 005615 7 BACK1: LDA (TMESS 0 NIMP) /SHOULDNT HAPPEN 04207 014132 7 ADD MINIMP /WRAPAROUND TMESS TABLE 04210 011261 7 STA BACK1P /SAVE PNTR TO TMESS 04211 121417 7 B1D: JST SLEEP I 04212 001001 7 INH [H2I,T.O,TSK] 04213 105261 7 4 LDA BACK1P I 04214 007604 7 4 ANA (MSTO1 0 MSTO2) 04215 013604 7 4 ERA (MSTO1 0 MSTO2) 04216 100040 7 4 SZE /HAS THIS MESS NO TIMED OUT? 04217 003203 7 4 JMP B1C /NO 04220 011262 7 4 STA BACK1T /INIT TEMP COUNTER. USED LATER 04221 021372 7 4 JST GETFRE /YES, GET A BUFFER FOR OUR INC TRN 04222 003211 7 4 JMP B1D /NOT NOW, TRY AGAIN 04223 033430 7 4 STX HOLD+1 04224 005261 7 4 LDA BACK1P 04225 017616 7 4 SUB (TMESS) /SET UP OUR DEST 04226 050006 7 4 STA HEAD1 X 0"A"DESTI 04227 105261 7 4 LDA BACK1P I 04230 007617 7 4 ANA (0 0 177777"X"MSTO1"X"MSTO2) 04231 111261 7 4 STA BACK1P I /CLEAR TIMEOUT BITS 04232 025262 7 4 B1E: IRS BACK1T /1 MEANS OLDEST, 2 NEXT OLDEST ... 04233 040677 7 4 ARR 1 04234 100400 7 4 SPL /IS THE OLDEST POSSIBLE MESS INC? 04235 003232 7 4 JMP B1E /NO, COUNT ONE MORE BACKWARDS *** THIS DOCUMENT MAY CONTAIN BBN PROPRIETARY INFORMATION. *** *** FURNISHED FOR U. S. GOVERNMENT END USE ONLY. *** PAGE 55 IMP,3050,IMP 7:20 PM 9/16/1973 04236 005262 7 4 LDA BACK1T 04237 141240 7 4 ICR /GET NO OF MESS NOS TO ROLL BACK 04240 115261 7 4 ADD BACK1P I 04241 141044 7 4 CAR 0"A"MESSNO 04242 015620 7 4 ADD (INCTRN 0 -2000 TRNREP 0"A"LINETS) 04243 050005 7 4 STA HEAD X /SET UP INC TRN WITH RIGHT MESS N( 04244 141044 7 4 CAR 0"A"MESSNO 04245 052006 7 4 ERA HEAD1 X /SET UP MESS NO + IMP NO 04246 121621 7 4 JST (PLTGET) I /GET THE PLT ENTRY 04247 003162 7 4 JMP B1A /NOT IN PLT, TRY PPT 04250 044030 7 4 LDA PLT2 X 04251 007613 7 4 ANA (0 0 177777"X"SUBCOD) 04252 013614 7 4 ERA (CLOST) /MARK MESS AS LOST IN NET 04253 050030 7 4 STA PLT2 X 04254 044000 7 4 LDA PLT0 X 04255 007610 7 4 ANA (REQALL) 04256 003177 7 4 JMP B1B 04257 005622 7 4 B1F: LDA (GVBALL 0 ONEOR8) 04260 003177 7 4 JMP B1B /MAKE UP AN INC GVB LEV VAR 04261 V BACK1P: BSS 1 /PNTR TO TMESS ENTRY 04262 V BACK1T: BSS 1 /COUNT OF NO OF MESS NOS TO GO BACK /SEND OFF GIVE BACKS WHEN ALLOCATES TIME OUT LEV BCK 04263 121417 7 B2A: JST SLEEP I 04264 021372 7 B2B: JST GETFRE LCK FRE /GET A BUFFER FOR OUR GIV 04265 003263 7 0 JMP B2A /NOT NOW, WAIT 04266 033431 7 0 STX HOLD+2 04267 121417 7 0 B2C: JST SLEEP I RET BCK 04270 073431 7 LDX HOLD+2 04271 005314 7 LDA BACK2D 0"A"PRIBIT /GET OUR DEST 04272 050006 7 STA HEAD1 X /PUT IN PKT (NOT PRI) 04273 001001 7 INH H2I 04274 121623 7 4 JST (MESGET) I 04275 003267 7 4 JMP B2C /CANT HAVE MESS NO 04276 013622 7 4 ERA (GVBALL 0 ONEOR8 0"A"LINETS"A"INCTRN) 04277 050005 7 4 STA HEAD X /SET UP GVB 04300 021435 7 4 JST GIVTSK RET BCK /GIVE THE GVB TO TASK 04301 121417 7 B2D: JST SLEEP I 04302 001001 7 BACK2: INH [H2I,T.O] 04303 004126 7 4 LDA MINUS6 /ALLOCATES TIME OUT IN 125 MS 04304 115624 7 4 ADD (TALLYC) I 04305 100400 7 4 SPL /IS ALLOC TOO OLD? 04306 003301 7 4 JMP B2D /NOT USED UP YET 04307 105625 7 4 LDA (TALLY) I /GET TOP TALLY ENTRY 04310 121626 7 4 JST (TALLYG) I /PULL IT OFF 04311 003301 7 4 JMP B2D /NOT THERE? 04312 011314 7 4 STA BACK2D /SAVE OUR DEST 04313 003264 7 4 JMP B2B LEV VAR 04314 V BACK2D: BSS 1 /DEST OF GIVE BACK *** THIS DOCUMENT MAY CONTAIN BBN PROPRIETARY INFORMATION. *** *** FURNISHED FOR U. S. GOVERNMENT END USE ONLY. *** PAGE 56 IMP,3050,IMP 7:20 PM 9/16/1973 /DO RETRANSMISSSIONS OF REQ1 IN PPT THAT HAS GOT ALL1 IN RET1 LEV BCK 04315 121417 7 B3B: JST SLEEP I 04316 173353 7 LDX BACK3P I 04317 044111 7 LDA BUFE X 04320 100400 7 SPL 0"A"TWOQ /IS THIS PKT STILL ON 2 QUEUES? 04321 003315 7 JMP B3B /YES, NEED TO DELAY WHILE ACK IS PR1 04322 011354 7 STA B3T1 /TEMP CKSUM POINTER 04323 140500 7 SSM 0"A"TWOQ 04324 050111 7 STA BUFE X /PPT ENTRY GOES ON 2 QUEUES AGAIN 04325 044005 7 LDA HEAD X 04326 007627 7 ANA (0 0 177777"X"REQALL) 04327 050005 7 STA HEAD X /TURN OFF REQ BIT, KEEP SAME MESS N1 04330 105353 7 LDA BACK3P I 04331 140100 7 SSP 0"A"RETRAN 04332 111353 7 STA BACK3P I 04333 105354 7 LDA B3T1 I 04334 015610 7 ADD (REQALL) /NOW ADJUST CHECKSUM 04335 111354 7 STA B3T1 I 04336 140040 7 CRA /GIVTSK WON'T MAKE CHECKSUM 04337 021435 7 JST GIVTSK /GIVE TO TASK 04340 121417 7 B3C: JST SLEEP I 04341 105353 7 LDA BACK3P I /LOOK AT NEXT PPT ENTRY 04342 100400 7 SPL 0"A"RETRAN /MUST WE RETRANSMIT IT? 04343 003315 7 JMP B3B /YES 04344 005353 7 LDA BACK3P 04345 141206 7 AOA /GET NEXT PPT SLOT 04346 023630 7 CAS (PPT+0+PPTL) 04347 005630 7 BACK3: LDA (PPT+0+PPTL) /SHOULDNT HAPPEN 04350 017631 7 SUB (PPTL) /WRAPAROUND PPT 04351 011353 7 STA BACK3P /SAVE PPT SLOT 04352 003340 7 JMP B3C LEV VAR 04353 V BACK3P: BSS 1 /PNTR TO PPT ENTRY 04354 V B3T1: BSS 1 /PNTR TO CHKSM IN PKT *** THIS DOCUMENT MAY CONTAIN BBN PROPRIETARY INFORMATION. *** *** FURNISHED FOR U. S. GOVERNMENT END USE ONLY. *** PAGE 57 IMP,3050,IMP 7:20 PM 9/16/1973 /SEND OFF PACKETS FROM A LINE WHICH JUST DIED - REROUTE /SEND OFF DESTINATION DEAD MESSAGES TO SOURCE LEV BCK 04355 121417 7 B4A: JST SLEEP I 04356 073632 7 BACK4: LDX (SRQ) /GET NEXT REPLY 04357 001001 7 INH [I2H,T.O] 04360 121633 7 3 JST (GETQ) I 04361 003355 7 3 JMP B4A /NONE, SO SLEEP 04362 140040 7 3 CRA /TELL GIVTSK NOT TO CKSUM 04363 021435 7 3 JST GIVTSK RET BCK /GIVE THE REPLY TO TASK 04364 003355 7 JMP B4A /SATELLITE BACK HOST LEV BCK 04365 004145 7 BACK5: LDA SATRSF 04366 7 B5A: SATDEF SZE 02243 004366 7 02273 100040 7 02323 100040 7 04367 121634 7 JST (SATBCK) I 04370 121417 7 JST SLEEP I 04371 003365 7 JMP BACK5 SATBCK=37700 LEV [VDB,BCK] 04372 000000 3 GETFRE: 0 /GET A FREE BUFFER FOR A BACK HOSI 04373 001001 3 INH FRE 04374 004537 3 0 LDA NFA 04375 016563 3 0 SUB NFS 04376 016570 3 0 SUB MINF 04377 100400 3 0 SPL 04400 103372 3 0 JMP GETFRE I /NOT ENOUGH BUFFERS FOR MODEM INP1 04401 104324 3 0 LDA FREE I 04402 101040 3 0 SNZ 04403 103372 3 0 JMP GETFRE I 04404 026324 3 0 IMA FREE 04405 010000 3 0 STA 0 04406 024563 3 0 IRS NFS 04407 014751 3 0 ADD CMINPL 0"A"TWOQ 04410 050111 3 0 STA BUFE X 04411 004106 3 0 LDA MINE 04412 050007 3 0 STA HEAD2 X /SET UP SOURCE IMP 04413 140040 3 0 CRA 04414 050000 3 0 STA 0 X 04415 025372 3 0 IRS GETFRE /SKIP=SUCCESS 04416 103372 3 0 JMP GETFRE I LEV CON 04417 003266 C SLEEP: BKZ /BACK HOST WAIT LEV VAR 04420 V BACKNO: BSS 1 /NO OF BACK HOST CURRENTLY ACTIVE 04421 V GIVTST: BSS BH /RETURN ADDRS FOR BACK HOSTS GIVING 04427 V HOLD: BSS BH /PKT PNTRS FOR BACK HOSTS GIVING -' *** THIS DOCUMENT MAY CONTAIN BBN PROPRIETARY INFORMATION. *** *** FURNISHED FOR U. S. GOVERNMENT END USE ONLY. *** PAGE 58 IMP,3050,IMP 7:20 PM 9/16/1973 LEV BCK 04435 000000 7 GIVTSK: 0 04436 101040 7 SNZ 04437 003446 7 JMP GIVT0 /NOT GENERATING A CHECKSUM 04440 004117 7 LDA FOUR 0"A"[MINPL-ACKH] 04441 056004 7 SUB ACKH X 04442 056005 7 SUB HEAD X 04443 056006 7 SUB HEAD1 X 04444 056007 7 SUB HEAD2 X 04445 050010 7 STA HEAD3 X /THERE'S THE CHECKSUM 04446 005420 7 GIVT0: LDA BACKNO 0"A"INPCHN 04447 015635 7 ADD (HSTMOD 0 TH) 04450 050003 7 STA INCH X /SET UP INPUT CHANNEL 04451 004000 7 LDA 0 04452 073420 7 LDX BACKNO 04453 140100 7 SSP 0"A"RETRAN /NEC FOR BACK3 04454 051427 7 STA HOLD X /SAVE PKT PNTR 04455 005435 7 LDA GIVTSK 04456 051421 7 STA GIVTST X /SAVE RETURN ADDR 04457 045427 7 GIVT1: LDA HOLD X 04460 001001 7 INH M2I 04461 110401 7 0 STA ETQ I 04462 010401 7 0 STA ETQ /PUT ON TASK QUEUE 04463 030041 7 0 TASK /POKE TASK 04464 121417 7 0 JST SLEEP I RET BCK 04465 140040 7 CRA 04466 066463 7 IMA TSKFLG+TH X 04467 101100 7 SLN /TASK REFUSED IT 04470 143421 7 JMP GIVTST XI /TASK TOOK IT 04471 121417 7 JST SLEEP I /WAIT ONE BACKGROUND LOOP 04472 003457 7 JMP GIVT1 /THEN TRY AGAIN *** THIS DOCUMENT MAY CONTAIN BBN PROPRIETARY INFORMATION. *** *** FURNISHED FOR U. S. GOVERNMENT END USE ONLY. *** PAGE 59 IMP,3050,IMP 7:20 PM 9/16/1973 LEV BCK 04473 000000 7 RALLYG: 0 /GET AN ENTRY IN RALLY TABLE 04474 140040 7 CRA 04475 026477 7 IMA RALLCF 04476 101040 7 SNZ /ANY ALLOCATES TO GO? 04477 103473 7 JMP RALLYG I /NO 04500 140040 7 CRA 04501 011600 7 STA RALLYX 04502 005636 7 LDA (MESS1) 04503 011602 7 STA RALADD /PRESET TABLE INCREMENTER 04504 073601 7 LDX RALTRY 04505 105637 7 RALLG: LDA (RALLY+NIMP 0 X) I 04506 101040 7 SNZ /ANY RALLY ENTRIES TO GO? 04507 003565 7 JMP RALLG0 /NO 04510 025600 7 IRS RALLYX /COUNT SOMETHING THERE 04511 105640 7 LDA (AMESS+NIMP 0 X) I 04512 141140 7 ICL 04513 006116 7 ANA THREE /GET NEXT MESS NO TO USE 04514 041576 7 ALS 2 04515 140407 7 TCA 04516 015641 7 ADD (ALR 0 04517 011523 7 STA RALGS1 04520 013642 7 ERA (1000) 04521 011534 7 STA RALGS2 04522 005643 7 LDA (17) 04523 7 RALGS1: BSS 1 /SHIFT MASK OVER 04524 001001 7 INH [I2H,TSK] 04525 107637 7 3 ANA (RALLY+NIMP 0 X) I 04526 101040 7 3 SNZ /ANYTHING IN NEXT SLOT TO GO? 04527 003565 7 3 JMP RALLG0 /NO 04530 113637 7 3 ERA (RALLY+NIMP 0 X) I 04531 127637 7 3 IMA (RALLY+NIMP 0 X) I /TURN OFF BITS 04532 113637 7 3 ERA (RALLY+NIMP 0 X) I 04533 000401 7 3 ENB BCK 04534 7 RALGS2: BSS 1 /SHIFT BACK THE BITS IN QUESTION 04535 023644 7 CAS (13) 04536 025473 7 IRS RALLYG /DEST DEAD, DOUBLE SKIP 04537 101000 7 NOP 04540 011160 7 STA BREPIN 04541 007631 7 ANA (INCTRN) 04542 027160 7 IMA BREPIN /GET INCTRN BIT AND SAVE IT 04543 006116 7 ANA THREE /EXTRACT THEM 04544 012115 7 ERA TWO 0"A"[ONEOR8 0 RFNM] 04545 101040 7 SNZ /IS THIS A REQ FOR 1 04546 011602 7 STA RALADD /YES, DO NOT BUMP MESSAGE NO 04547 012115 7 ERA TWO /RESTORE A 04550 041672 7 ALR 6 0"A"[ONEOR8 0 RFNM] 04551 113640 7 ERA (AMESS+NIMP 0 X) I 04552 014000 7 ADD 0 04553 016132 7 SUB MINIMP /OR IN MESS NO AND IMP NO 04554 127640 7 IMA (AMESS+NIMP 0 X) I 04555 015602 7 ADD RALADD /BUMP NEXT MESS TO REPLY TO 04556 127640 7 IMA (AMESS+NIMP 0 X) I *** THIS DOCUMENT MAY CONTAIN BBN PROPRIETARY INFORMATION. *** *** FURNISHED FOR U. S. GOVERNMENT END USE ONLY. *** PAGE 60 IMP,3050,IMP 7:20 PM 9/16/1973 04557 024000 7 IRS 0 04560 100000 7 SKP 04561 072132 7 LDX MINIMP 04562 033601 7 STX RALTRY 04563 025473 7 IRS RALLYG 04564 003576 7 JMP RALLEX 04565 000401 7 RALLG0: ENB BCK 04566 024000 7 IRS 0 04567 003505 7 JMP RALLG 04570 004132 7 LDA MINIMP 04571 027601 7 IMA RALTRY 04572 013601 7 ERA RALTRY 04573 101040 7 SNZ /DID WE MAKE A COMPLETE PASS? 04574 005600 7 LDA RALLYX 04575 100040 7 SZE /AND DID WE FIND NOTHING AT ALL? 04576 010477 7 RALLEX: STA RALLCF /IF NO FOR EITHER, MUST COME BACK AT 04577 103473 7 JMP RALLYG I /IF YES FOR BOTH, LEAVE RALLCF AL( 1 /IF ENTRIES WERE PUT DURING OUR PASS, RALLCF WILL HAVE BEEN 1 LEV VAR 04600 V RALLYX: BSS 1 /NON-ZERO = SOMETHING IN RALLY 04601 V RALTRY: BSS 1 04602 V RALADD: BSS 1 /INCREMENT TO AMESS = 0 OR MESS1 *** THIS DOCUMENT MAY CONTAIN BBN PROPRIETARY INFORMATION. *** *** FURNISHED FOR U. S. GOVERNMENT END USE ONLY. *** PAGE 61 IMP,3050,IMP 7:20 PM 9/16/1973 04603 000077 C LEV CON CONSTANTS 04604 000300 C 04605 000200 C 04606 177771 C 04607 000050 C 04610 000100 C 04611 000002 C 04612 015033 C 04613 177770 C 04614 000003 C 04615 032371 C 04616 032271 C 04617 177477 C 04620 176014 C 04621 015205 C 04622 000202 C 04623 015161 C 04624 020210 C 04625 032261 C 04626 015114 C 04627 177677 C 04630 033467 C 04631 000010 C 04632 000331 C 04633 015504 C 04634 037700 C 04635 100010 C 04636 000400 C 04637 072671 C 04640 072571 C 04641 041700 C 04642 001000 C 04643 000017 C 04644 000013 C 02413 175663 C PAGEND 4,UNCON,4 *** THIS DOCUMENT MAY CONTAIN BBN PROPRIETARY INFORMATION. *** *** FURNISHED FOR U. S. GOVERNMENT END USE ONLY. *** PAGE 62 IMP,3050,IMP 7:20 PM 9/16/1973 TSKI: LEV TSK /TASK INTERRUPT 00103 005107 6 TASKIL/ TSKI 05107 000000 6 0 TSKI/ INT TSK /TASK INTERRUPT COMES HERE 05110 000011 6 0 DXA 05111 003112 6 0 JMP .+1 05112 011140 6 0 STA TA1 05113 033141 6 0 STX TX1 05114 000043 6 0 INK 05115 011142 6 0 STA TK1 05116 004122 6 0 TSKMSK: LDA MINUS2 05117 170120 6 0 SMK INTM 05120 010134 6 0 STA PRIM 05121 000401 6 0 TSKL: ENB TSK /ALL TASKS RETURN HERE 05122 004330 6 LDA STQ 05123 001001 6 INH MSK 05124 100040 6 0 SZE /IS TASK QUEUE EMPTY? 05125 003161 6 0 JMP TSKM /GOT A TASK 05126 140401 6 0 CMA /YES, TURN ON ALL BITS IN PRTY INT T 05127 010134 6 0 STA PRIM 05130 170120 6 0 SMK INTM /RESTORE REGISTERS AND KEYS 05131 073141 6 0 LDX TX1 05132 000013 6 0 EXA 05133 005142 6 0 LDA TK1 05134 171020 6 0 OTK 05135 005140 6 0 LDA TA1 05136 000401 6 0 ENB TSK 05137 103107 6 JMP TSKI I LEV VAR 05140 V TA1: BSS 1 /TEMP A 05141 V TX1: BSS 1 /TEMP X 05142 V TK1: BSS 1 /TEMP KEYS 05143 V TASKIN: BSS 1 /INPUT CHAN - SIGN ON=FROM HOST 05144 V ACKBIT: BSS 1 /BIT PNTR FOR OUR ACK 05145 V OURR: BSS 1 /OUR OUTPUT MODEM CHANNEL 05146 V I2MSLT: BSS 1 /THE CHANNEL PNTR WE NEED 05147 V I2MBIT: BSS 1 /ODD-EVEN BIT POSITION FOR THIS PKT 05150 V ACKCH: BSS 1 /TRANSMIT ACK CHANNEL FOR THIS PK- 05151 V ACKP: BSS 1 /PNTR TO RELEVANT RSEX ENTRY 05152 V SWPCHT: BSS 1 /TEMP FOP SWPCHK 05153 V SATNO: BSS 1 /0 IF NONE, CH#+1 ELSE *** THIS DOCUMENT MAY CONTAIN BBN PROPRIETARY INFORMATION. *** *** FURNISHED FOR U. S. GOVERNMENT END USE ONLY. *** PAGE 63 IMP,3050,IMP 7:20 PM 9/16/1973 LEV TSK LCK MSK 05154 005710 6 0 TSKM2: LDA (STQ) /CLEAN UP Q PNTRS 05155 010401 6 0 STA ETQ 05156 003171 6 0 JMP TSKM1 LEV TSK 05157 105151 6 TSKM3: LDA ACKP I 05160 003215 6 JMP TSKM4 LEV TSK LCK MSK 05161 010000 6 0 TSKM: STA 0 /TASK 05162 010514 6 0 STA THIS /STORE BUFF ADDR IN X AND THIS 05163 140040 6 0 CRA 05164 050002 6 0 STA PTRT X /CLEAR TRACE PTR 05165 066000 6 0 IMA 0 X /CLEAR BUFF CHAIN PNTR AND LOAD IN 05166 010330 6 0 STA STQ /STORE NEW ADDR IN HEAD OF Q 05167 101040 6 0 SNZ /WAS THIS LAST ENTRY IN Q? 05170 003154 6 0 JMP TSKM2 /YES 05171 000401 6 0 TSKM1: ENB TSK /X HAS BUFF ADDR 05172 044003 6 LDA INCH X 05173 011143 6 STA TASKIN /SAVE INPUT CHANNEL 05174 100400 6 SPL 0"A"HSTMOD /FROM HOST? 05175 003220 6 JMP TSKFOR /YES 05176 015711 6 ADD (RSEX) /NO,FROM MODEM, MUST DUPLICATE-DETF 05177 011151 6 STA ACKP 05200 044005 6 LDA HEAD X 05201 100100 6 SLZ 0"A"LINETS /IS THIS A ROUTING MESSAGE? 05202 003407 6 JMP TSKRUT /YES 05203 044004 6 LDA ACKH X 05204 141340 6 ICA 05205 006120 6 ANA SEVEN 0"A"CHANUM /GET CHANNEL NO 05206 015712 6 ADD (BITTAB) 05207 011144 6 STA ACKBIT /CONVERT TO BIT PNTR TABLE ADDR 05210 044004 6 LDA ACKH X 05211 100400 6 SPL 0"A"ODEVEN /GET ODD-EVEN BIT FROM PKT 05212 003157 6 JMP TSKM3 /JUMP IF BIT IS ONE 05213 105151 6 LDA ACKP I /COMPARE WITH WHAT WE WANT 05214 140401 6 CMA 05215 107144 6 TSKM4: ANA ACKBIT I /MASK WITH CONTENTS OF BITTAB 05216 100040 6 SZE 05217 003642 6 JMP FQMOD /IF DUPLICATE --FREE AND QUIT MODEM 05220 044006 6 TSKFOR: LDA HEAD1 X 05221 007713 6 ANA (DESTI) 05222 010000 6 STA 0 /STOR DEST NO FROM HEADER IN X 05223 044165 6 LDA RUT X /GET ROUTE 05224 101040 6 SNZ 0"A"RUTUS /IS IT FOR US? 05225 103714 6 JMP (FORUS) I /YES 05226 100400 6 SPL 0"A"RUTDED 05227 003601 6 JMP FQOK /FOR DEAD GUY, RUT WD WAS MINUS 05230 007715 6 ANA (RUTDLC) 05231 016114 6 SUB ONE /TASK STORE-AND-FORWARD 05232 010000 6 STA 0 /STOPE SHIFTED ROUTE IN X (0 TO C1 05233 044433 6 LDA LINE X /TEST FOR LINE TEST STATUS 05234 100040 6 SZE /IS LINE DEAD? 05235 003637 6 JMP FQNG /YES, WAIT TILL ROUTING STABLE *** THIS DOCUMENT MAY CONTAIN BBN PROPRIETARY INFORMATION. *** *** FURNISHED FOR U. S. GOVERNMENT END USE ONLY. *** PAGE 64 IMP,3050,IMP 7:20 PM 9/16/1973 05236 001001 6 INH [M2I,I2M,H2I] 05237 004540 6 0 LDA NSFA /COMPUTE NO SF BUFFS IN USE 05240 016564 6 0 SUB NSFS 05241 141206 6 0 AOA /WE NEED ONE MORE 05242 022573 6 0 CAS MAXSI /ENOUGH S-F ROOM? 05243 003637 6 0 JMP FQNG /NO 05244 003637 6 0 JMP FQNG /NO 05245 004537 6 0 LDA NFA 05246 016563 6 0 SUB NFS /COMPUTE NO OF FREE BUFFS AVAIL, 05247 016542 6 0 SUB NALA /CONSIDERING ALLOCATED AND USED 05250 014566 6 0 ADD NALS 05251 016570 6 0 SUB MINF 05252 100400 6 0 SPL /DO WE HAVE MIN FREE BUFFS? 05253 003637 6 0 JMP FQNG /NO 05254 044653 6 0 LDA CHFREE X /FREE SLOT BITS 05255 140407 6 0 TCA 05256 046653 6 0 ANA CHFREE X /SINGLE LEAST SIGNIFICANT BIT SET 05257 101040 6 0 SNZ 05260 003637 6 0 JMP FQNG /ALL CHANNELS ARE IN USE 05261 011147 6 0 STA I2MBIT /FOR MARKING CHANNEL LATER 05262 052653 6 0 ERA CHFREE X /NOW MARK IT ASSIGNED 05263 050653 6 0 STA CHFREE X 05264 000401 6 0 ENB TSK /YES 05265 033145 6 STX OURR /SAVE OUR ROUTE (0 TO CH-1) *** THIS DOCUMENT MAY CONTAIN BBN PROPRIETARY INFORMATION. *** *** FURNISHED FOR U. S. GOVERNMENT END USE ONLY. *** PAGE 65 IMP,3050,IMP 7:20 PM 9/16/1973 05266 005147 6 LDA I2MBIT 05267 022116 6 CAS THREE 05270 040575 6 ARS 3 /CH 2-7 05271 100000 6 SKP /CAS IS NEVER EQUAL 05272 003277 6 JMP GOTCHN /CH 0-1 05273 022116 6 CAS THREE 05274 040575 6 ARS 3 /CH 5-7 05275 014116 6 ADD THREE /CAS IS NEVER EQUAL 05276 014116 6 ADD THREE 05277 016114 6 GOTCHN: SUB ONE /GOT CHANNEL 0-7 05300 011150 6 STA ACKCH 05301 054622 6 ADD I2MTAB X /GET PTR TO SLOT 05302 011146 6 STA I2MSLT 05303 005147 6 LDA I2MBIT 05304 111146 6 STA I2MSLT I /MARK SLOT IN USE 05305 046641 6 ANA TSEX X /GET O/E BIT IN TSEX 05306 100040 6 SZE /WAS IT ZERO? 05307 005716 6 LDA (200) 0"A"ODEVEN /NO, SET O/E BIT 05310 013150 6 ERA ACKCH /PUT SLOT NO IN A 05311 141240 6 ICR /PUT IN LEFT HALF 05312 072514 6 LDX THIS /BUFF ADDR TO X 05313 011147 6 STA I2MBIT /USED AS A TEMP WORD 05314 044111 6 LDA BUFE X 05315 140100 6 SSP 0"A"TWOQ 05316 027147 6 IMA I2MBIT /NOW HAS PTR TO CHECKSUM 05317 066004 6 IMA ACKH X /SAVE BIT, CHANNEL IN ACKHEADER 05320 056004 6 SUB ACKH X 05321 115147 6 ADD I2MBIT I /AND ADJUST CHECKSUM 05322 111147 6 STA I2MBIT I 05323 044007 6 LDA HEAD2 X /NOW PUT IN BIT FOR LO-HI LINE EN[ 05324 007717 6 ANA (0 0 177777"X"ENDBIT) 05325 073145 6 LDX OURR /THIS BIT DETECTS LOOPED LINES 05326 113720 6 ERA (LEND 0 X) I 05327 072514 6 LDX THIS 05330 066007 6 IMA HEAD2 X 05331 056007 6 SUB HEAD2 X /ADJUST CHECKSUM AGAIN 05332 115147 6 ADD I2MBIT I 05333 111147 6 STA I2MBIT I *** THIS DOCUMENT MAY CONTAIN BBN PROPRIETARY INFORMATION. *** *** FURNISHED FOR U. S. GOVERNMENT END USE ONLY. *** PAGE 66 IMP,3050,IMP 7:20 PM 9/16/1973 05334 044006 6 LDA HEAD1 X 05335 007721 6 ANA (TRACE) 05336 100040 6 SZE /MUST WE TRACE HIM? 05337 021504 6 JST TSUB /TRACE HIM IF NECESSARY 05340 005146 6 LDA I2MSLT /PUT OUR SLOT IN PKT 05341 050003 6 STA INCH X /AND I2M WILL SET IT UP AT OUTPUT * 05342 044005 6 LDA HEAD X 05343 007722 6 ANA (TRNREP) /GET TRNREP BIT 05344 001001 6 INH SIN 05345 101040 6 0 SNZ /IS THIS A REPLY? 05346 003357 6 0 JMP SFPRI /YES 05347 044006 6 0 LDA HEAD1 X 05350 100400 6 0 SPL 0"A"PRIBIT /IS THIS A PRI TRN? 05351 003357 6 0 JMP SFPRI /YES 05352 004514 6 0 LDA THIS /NO, SO PUT ON REG MODEM QUEUE 05353 073145 6 0 LDX OURR 05354 150363 6 0 STA EMQ XI /LINK BUFF TO END OF REG CHL Q 05355 050363 6 0 STA EMQ X 05356 003363 6 0 JMP SFALL 05357 004514 6 0 SFPRI: LDA THIS /YES, SO PUT ON PRI MODEM QUEUE 05360 073145 6 0 LDX OURR 05361 150370 6 0 STA EMPQ XI /LINK BUFF TO END OF PRI CHL Q 05362 050370 6 0 STA EMPQ X 05363 024540 6 0 SFALL: IRS NSFA /COUNT A S-F PKT 05364 044440 6 0 LDA NONE X 05365 100040 6 0 SZE /POKE MODEM OUTPUT IF IDLE 05366 003604 6 0 JMP GOODM /NO NEED 05367 121723 6 0 JST (I2MSB) I RET TSK 05370 001001 6 INH ALL 05371 000011 6 0 DXA 05372 003604 6 0 JMP GOODM /RETURN GOOD ACK LEV FRE /CALL WITH INTERRUPTS LOCKED 05373 000000 0 FLUSH: 0 /RETURN BUFFER TO FREE LIST 05374 044111 0 LDA BUFE X 05375 100400 0 SPL 0"A"TWOQ /IS PACKET ON 2 QUEUES? 05376 003404 0 JMP FLUSH1 /YES 05377 004324 0 LDA FREE /NO, SO FREE IT 05400 050000 0 STA 0 X /STORE PNTR TO FREE LIST 05401 032324 0 STX FREE /STORE PNTR TO PACKET 05402 024537 0 IRS NFA /INCREASE NO OF FREE PKTS 05403 103373 0 JMP FLUSH I 05404 140100 0 FLUSH1: SSP 0"A"TWOQ /MARK PACKET AS ON ONE QUEUE 05405 050111 0 STA BUFE X 05406 103373 0 JMP FLUSH I *** THIS DOCUMENT MAY CONTAIN BBN PROPRIETARY INFORMATION. *** *** FURNISHED FOR U. S. GOVERNMENT END USE ONLY. *** PAGE 67 IMP,3050,IMP 7:20 PM 9/16/1973 LEV TSK 05407 073143 6 TSKRUT: LDX TASKIN /INPUT CHL NO 05410 040677 6 ARR 1 0"A"NULPKT 05411 100100 6 SLZ /THIS A NULL PACKET? 05412 003446 6 JMP TSKNUL /YES 05413 041677 6 ALR 1 05414 141140 6 ICL /GET OTHER GUYS IMPNO 05415 066160 6 IMA NEIGHB X /SAVE IT 05416 100040 6 SZE /DO NOT KILL LINE IF WE JUST DID 05417 052160 6 ERA NEIGHB X 05420 100040 6 SZE /DO KILL LINE IF NEIGHBOR HAS CHANG1 05421 003452 6 JMP NEIKIL 05422 065565 6 IRS E123 X /INCREMENT NUMBER OF RECD RUT MSGS 05423 101000 6 NOP 05424 044160 6 LDA NEIGHB X /COMPUTE AND SET HI-LO BIT 05425 016106 6 SUB MINE 05426 100040 6 SZE 05427 003433 6 JMP TSKCPY /COPY IN ROUTING INFO 05430 004114 6 LDA ONE 05431 010452 6 STA LUUP /BLINK LUUPED LITE 05432 003642 6 JMP FQMOD 05433 001001 6 TSKCPY: INH MSK 05434 004124 6 0 LDA MINUS4 /LOCK OUT SLOW T.O 05435 170120 6 0 SMK INTM /SHARED CODE & TABLES 05436 010134 6 0 STA PRIM LEV T.O LCK MSK 05437 140040 5 0 CRA /MARK AS REAL INPUT 05440 000401 5 0 ENB T.O 05441 121724 5 JST (RSTINP) I 05442 072514 5 LDX THIS 05443 001001 5 INH [MSK,FRE] 05444 021373 5 0 JST FLUSH 05445 003116 5 0 JMP TSKMSK LEV TSK 05446 040675 6 TSKNUL: ARR 3 0"A"IHERDU 05447 100100 6 TSKNU2: SLZ /DID WE GET AN IHEARD YOU? 05450 064426 6 TSKNU3: DEFSTAT IRS LAC X, TSKIH /YES 00574 031212 6 31770 005450 6 32010 064426 6 05451 003642 6 TSKNU4: JMP FQMOD 05452 001001 6 NEIKIL: INH ALL 05453 011576 6 0 STA NEIT 05454 121725 6 0 JST (KILLIN) I 05455 005576 6 0 LDA NEIT DEFHLT [NEIGHBOR IMP CHANGED] 05456 021635 6 0 JST THLTNG *** THIS DOCUMENT MAY CONTAIN BBN PROPRIETARY INFORMATION. *** *** FURNISHED FOR U. S. GOVERNMENT END USE ONLY. *** PAGE 68 IMP,3050,IMP 7:20 PM 9/16/1973 LEV TSK LCK [H2I,T.O] 05457 000000 6 4 SWPCHK: 0 05460 011152 6 4 STA SWPCHT /BITS TO PUT INTO HEAD1 05461 044006 6 4 LDA HEAD1 X 05462 007726 6 4 ANA (FORIMP 0 FOROCT DESTHI) 05463 066007 6 4 IMA HEAD2 X /SWITCH SRC FOR DEST AND V.V. 05464 007726 6 4 ANA (FRMIMP 0 FRMOCT SRCEHI) 05465 013152 6 4 ERA SWPCHT 05466 050006 6 4 STA HEAD1 X 05467 044111 6 4 LDA BUFE X 05470 006112 6 4 ANA SIGN 0"A"TWOQ 05471 014000 6 4 ADD 0 05472 015727 6 4 ADD (MINPL+1) /FIX LENGTH OF REPLY 05473 050111 6 4 STA BUFE X 05474 005730 6 4 LDA (MINPL-ACKH+1) 05475 056004 6 4 SUB ACKH X 05476 056005 6 4 SUB HEAD X 05477 056006 6 4 SUB HEAD1 X /BUILD CHECKSUM 05500 056007 6 4 SUB HEAD2 X 05501 056010 6 4 SUB HEAD3 X 05502 050011 6 4 STA DATA X /NOW STORE IT 05503 103457 6 4 JMP SWPCHK I LEV TSK /TSUB DOES THE TASK PART OF TRACING 05504 000000 6 TSUB: 0 05505 004416 6 LDA TIMES /GET TIME IN SLOW TICKS 05506 016107 6 SUB M30SEC 05507 050003 6 STA INCH X /GIVE PKT 30 SEC. TO LIVE 05510 044006 6 LDA HEAD1 X 05511 007721 6 ANA (TRACE) 05512 100040 6 SZE /MUST WE TRACE HIM? 05513 105731 6 TSUB2: LDA (TRON) I 05514 101040 6 SNZ 05515 103504 6 JMP TSUB I 05516 004325 6 LDA TTF /FREE TRACE BLOCK PNTR 05517 100040 6 SZE 05520 003524 6 JMP TS2 /JUMP IF THERE ARE FREE TRACE BLOCK 05521 141206 6 AOA 05522 010414 6 STA TTO /MARK TRACE TABLE OVERFLOW 05523 103504 6 JMP TSUB I *** THIS DOCUMENT MAY CONTAIN BBN PROPRIETARY INFORMATION. *** *** FURNISHED FOR U. S. GOVERNMENT END USE ONLY. *** PAGE 69 IMP,3050,IMP 7:20 PM 9/16/1973 05524 033572 6 TS2: STX SPB /SAVE BUFFER PNTR 05525 011573 6 STA STB /FREE TRC BLK BUFF PNTR 05526 050002 6 STA PTRT X /SET UP TRACE POINTER 05527 026341 6 IMA STRQ /GET STRT OF ACTIVE TRC Q 05530 127573 6 IMA STB I /LINK TO TOP OF TRACE Q 05531 010325 6 STA TTF /STORE ADDR OF NEXT FREE BLK 05532 004341 6 LDA STRQ /ADDR OF NEW TOP OF Q 05533 015732 6 ADD (THED+4 X) /SET UP LAST TRC BUFF ADDR 05534 011574 6 STA ITB 05535 005572 6 LDA SPB /ADDR OF PKT BUFF 05536 015732 6 ADD (HEAD+4 X) /SET UP LAST PKT BUFF ADDR 05537 011575 6 STA IMB 05540 072124 6 LDX MINUS4 /TRANSFER PKT BUFF TO TRC BUFF 05541 105575 6 LDA IMB I 05542 111574 6 STA ITB I 05543 024000 6 IRS 0 /FINISHED? 05544 003541 6 JMP .-3 /NO 05545 073572 6 LDX SPB /YES 05546 044001 6 LDA IT X /SAVE INPUT TIME IN TRACE TABLE 05547 073573 6 LDX STB 05550 050001 6 STA TIT X 05551 073572 6 LDX SPB 05552 044111 6 LDA BUFE X 05553 140100 6 SSP 0"A"TWOQ 05554 016000 6 SUB 0 05555 016117 6 SUB FOUR 0"A"ACKH /CALCULATE PACKET LENGTH 05556 073573 6 LDX STB 05557 050012 6 STA TDONE X 05560 131040 6 RDCLOK 05561 003560 6 JMP .-1 /SAVE TASK TIME IN TRACE TABLE 05562 050002 6 STA TTT X 05563 073572 6 LDX SPB /RESTORE BUFFER PNTR IN X 05564 103504 6 JMP TSUB I LEV VAR 05565 V E123: BSS CH /NUMBER OF RUT MSGS RECD FROM CHL( 05572 V SPB: BSS 1 /SAVE PACKET BUFFER 05573 V STB: BSS 1 /SAVE TRACE BUFFER 05574 V ITB: BSS 1 /INDIRECT TO TRACE BUFFER 05575 V IMB: BSS 1 /INDIRECT TO PACKET BUFFER 05576 V NEIT: BSS 1 /TEMP *** THIS DOCUMENT MAY CONTAIN BBN PROPRIETARY INFORMATION. *** *** FURNISHED FOR U. S. GOVERNMENT END USE ONLY. *** PAGE 70 IMP,3050,IMP 7:20 PM 9/16/1973 /END-OF-TASK ROUTINES /RETURN A NACK OR ACK TO THE SENDING MODEM, HOST, OR BACK LEV TSK LCK ALL 05577 000000 6 0 THLTOK: 0 /REPORT BUG AND GIVE GOOD RETURN 05600 120745 6 0 JST HLTNCC I LEV TSK 05601 072514 6 FQOK: LDX THIS /FREE+QUIT, GOOD RETURN 05602 001001 6 INH [FRE,SIN] 05603 021373 6 0 JST FLUSH /FREE THE BUFFER 05604 005143 6 0 GOODM: LDA TASKIN /GOOD RETURN 05605 100400 6 0 SPL 0"A"HSTMOD /FROM HOST? 05606 003622 6 0 JMP GOODH /YES 05607 010000 6 0 STA 0 0"A"INPCHN 05610 105144 6 0 LDA ACKBIT I /FROM MODEM, GIVE ACK 05611 050445 6 0 STA SNULL X /SEND A NULL PKT IF NECESSARY TO E'1 05612 052646 6 0 ERA RSEX X /REVERSE PROPER BIT IN RSEX 05613 050646 6 0 STA RSEX X 05614 044440 6 0 LDA NONE X /CHECK ACTIVITY ON MODEM 05615 101040 6 0 SNZ /RESTART I2M IF NECESSARY FOR MY AC 05616 121723 6 0 JST (I2MSB) I RET TSK 05617 001001 6 INH ALL 05620 000011 6 0 DXA 05621 003121 6 0 JMP TSKL 05622 140100 6 0 GOODH: SSP 0"A"HSTMOD /NEED TO CLEAR SIGN FOR HISB 05623 010000 6 0 STA 0 0"A"INPCHN 05624 064453 6 0 IRS TSKFLG X /DOUBLE SKIP = GOOD RETURN 05625 064453 6 0 IRS TSKFLG X 05626 014131 6 0 ADD MITH 05627 000013 6 0 EXA 05630 100400 6 0 SPL /FROM BACK HOST? 05631 121733 6 0 JST (HISB) I RET TSK /NO, POKE HOST WAITING FO 05632 001001 6 INH ALL 05633 000011 6 0 DXA 05634 003121 6 0 JMP TSKL LEV TSK LCK ALL 05635 000000 6 0 THLTNG: 0 /REPORT BUG AND GIVE BAD RETURN 05636 120745 6 0 JST HLTNCC I LEV TSK 05637 005143 6 FQNG: LDA TASKIN /FREE+QUIT, BAD RETURN 05640 100400 6 SPL 0"A"HSTMOD /FROM HOST? 05641 003646 6 JMP BADH 05642 072514 6 FQMOD: LDX THIS /FROM MODEM, DO NOT ACK 05643 001001 6 INH FRE 05644 021373 6 0 JST FLUSH 05645 003121 6 0 JMP TSKL LEV TSK 05646 010000 6 BADH: STA 0 0"A"INPCHN /YES, RETURN A NACK TO HO 05647 064453 6 IRS TSKFLG X /SINGLE SKIP = BAD RETURN 05650 003121 6 JMP TSKL /DO NOT POKE HOST (ALLOW BACK TO RU *** THIS DOCUMENT MAY CONTAIN BBN PROPRIETARY INFORMATION. *** *** FURNISHED FOR U. S. GOVERNMENT END USE ONLY. *** PAGE 71 IMP,3050,IMP 7:20 PM 9/16/1973 LEV TSK LCK FRE 05651 004326 6 0 NEWMES: LDA RASF /NEW MULTI-PACKET MESSAGE FOR US 05652 101040 6 0 SNZ /GET REAS BLOCK DEFHLT [NO REAS BLOCK FOR MULTI-PKT MESS] 05653 121734 6 0 JST (THLTNG) I 05654 004751 6 0 LDA 8PKTS 05655 014541 6 0 ADD NREA /CHECK REAS ROOM 05656 016565 6 0 SUB NRES 05657 022572 6 0 CAS MAXR 05660 101000 6 0 NOP /NO ROOM, FOUL-UP DEFHLT [MAXR EXCEEDED BY NON-REQUEST MULTI-PKT MESS] 05661 121734 6 0 JST (THLTNG) I 05662 004537 6 0 LDA NFA 05663 016563 6 0 SUB NFS 05664 016751 6 0 SUB 8PKTS 05665 016570 6 0 SUB MINF 05666 100400 6 0 SPL DEFHLT [MINF VIOLATED BY NON-REQUEST MULTI-PKT MESS] 05667 121734 6 0 JST (THLTNG) I 05670 104326 6 0 LDA RASF I 05671 026326 6 0 IMA RASF 05672 010000 6 0 STA 0 05673 026340 6 0 IMA SHRQ /PUT ON REAS QUEUE 05674 050000 6 0 STA 0 X 05675 004751 6 0 LDA 8PKTS 05676 014541 6 0 ADD NREA /NOW TAKE ROOM 05677 010541 6 0 STA NREA 05700 004751 6 0 LDA 8PKTS 05701 014566 6 0 ADD NALS 05702 010566 6 0 STA NALS 05703 004112 6 0 LDA SIGN /INIT RMAX 05704 050002 6 0 STA RMAX X 05705 105735 6 0 LDA (MESSID) I /ESTABLISH RID 05706 050001 6 0 STA RID X /RSF IS SET UP AT INIT AND AFTER USE TO BE ZERO /THE SAME IS TRUE OF REAS PNTRS 05707 103736 6 0 JMP (OLDMES) I *** THIS DOCUMENT MAY CONTAIN BBN PROPRIETARY INFORMATION. *** *** FURNISHED FOR U. S. GOVERNMENT END USE ONLY. *** PAGE 72 IMP,3050,IMP 7:20 PM 9/16/1973 05710 000330 C LEV CON CONSTANTS 05711 000646 C 05712 001233 C 05713 000077 C 05714 006056 C 05715 000037 C 05716 000200 C 05717 176777 C 05720 050254 C 05721 020000 C 05722 000004 C 05723 012604 C 05724 026120 C 05725 011133 C 05726 050377 C 05727 000011 C 05730 000005 C 05731 030434 C 05732 040011 C 05733 013106 C 05734 005635 C 05735 006664 C 05736 006313 C 02414 176744 C PAGEND 5,UNCON,4 *** THIS DOCUMENT MAY CONTAIN BBN PROPRIETARY INFORMATION. *** *** FURNISHED FOR U. S. GOVERNMENT END USE ONLY. *** PAGE 73 IMP,3050,IMP 7:20 PM 9/16/1973 /TASK REASSEMBLY LEV TSK 06056 072514 6 FORUS: LDX THIS /PNTR TO PKT BUFF 06057 044007 6 LDA HEAD2 X /TASK FOR US 06060 007674 6 ANA (SRCEI) /SOURCE IMP MASK 06061 011673 6 STA SOURCE /PREPARE MESS TABLE ENTRY 06062 044005 6 LDA HEAD X 06063 141044 6 CAR 0"A"MESSNO 06064 011661 6 STA MESNUM /SAVE OUR MESS NO 06065 013673 6 ERA SOURCE 06066 011664 6 STA MESSID /PREPARE MESSAGE ID 06067 044005 6 LDA HEAD X 06070 007675 6 ANA (TRNREP) 06071 100040 6 SZE 06072 005676 6 LDA (0 0 RMESS"X"TMESS) 06073 013677 6 ERA (TMESS) /PICK TRANSMIT OR REPLY TABLE 06074 015673 6 ADD SOURCE 06075 011660 6 STA MESTAB 06076 001001 6 INH [H2I,T.O] 06077 105660 6 4 LDA MESTAB I /GET OLDEST MSG NO WE ARE EXPECTING 06100 141044 6 4 CAR 0"A"MESSNO /GET MESS NO WE WANT 06101 017661 6 4 SUB MESNUM /COMPARE WITH MESS NO WE GOT 06102 100400 6 4 SPL /IS MESS NO WE GOT TOO HIGH? 06103 003375 6 4 JMP MESOUT /YES 06104 141140 6 4 ICL 06105 022116 6 4 CAS THREE /IS MESS NO WE GOT TOO LOW? 06106 003375 6 4 JMP MESOUT /YES 06107 101000 6 4 NOP /GOOD MESS NO 06110 015700 6 4 ADD (MBITS) /NOW CONVERT DIFF BETWEEN MESSNOS 06111 011662 6 4 STA MESBIT /INTO A BIT - 1,2,4, OR 10 06112 044005 6 4 LDA HEAD X 06113 007701 6 4 ANA (INCTRN 0 TRNREP) 06114 013701 6 4 ERA (INCTRN 0 TRNREP) 06115 101040 6 4 SNZ /IS IT AN INCOMPLETE TRANS? 06116 003431 6 4 JMP INCGOT /YES 06117 105662 6 4 LDA MESBIT I /NO, LOAD DIFFERENCE BIT 06120 107660 6 4 ANA MESTAB I /CHECK AGAINST MSG NO 06121 000401 6 4 ENB TSK 06122 100040 6 SZE /IS MESS NO A DUPLICATE? 06123 103702 6 JMP (FQOK) I /YES, DISCARD PKT 06124 044005 6 LDA HEAD X /GOOD MESSAGE FOR US 06125 007675 6 ANA (TRNREP) 06126 101040 6 SNZ /IS IT A REPLY? 06127 103703 6 JMP (REPGOT) I /YES 06130 073673 6 LDX SOURCE 06131 001001 6 INH [FRE,H2I,T.O] 06132 044165 6 0 LDA RUT X 06133 100400 6 0 SPL DEFHLT [RECVD TRANSMISSION FROM DEAD IMP] 06134 121704 6 0 JST (THLTOK) I 06135 007705 6 0 ANA (0 0 177777"X"RUTCMU) 06136 050165 6 0 STA RUT X 06137 072514 6 0 LDX THIS *** THIS DOCUMENT MAY CONTAIN BBN PROPRIETARY INFORMATION. *** *** FURNISHED FOR U. S. GOVERNMENT END USE ONLY. *** PAGE 74 IMP,3050,IMP 7:20 PM 9/16/1973 06140 044005 6 0 LDA HEAD X 06141 007706 6 0 ANA (GVBALL) 06142 100040 6 0 SZE /IS IT A REGULAR TRANSMIT? 06143 003447 6 0 JMP GUDGVB /NO, WE MUST RETURN A REPLY 06144 044006 6 0 LDA HEAD1 X 06145 121707 6 0 JST (HOSTNO) I 06146 000401 6 0 ENB TSK 06147 010000 6 STA 0 06150 044504 6 LDA HIHD X 0"A"HSTUP 06151 072514 6 LDX THIS 06152 100040 6 SZE /IS THIS TRANS FOR A DEAD HOST? 06153 005710 6 LDA (0 0 TRNDED"X"TRNDIS) 06154 013711 6 ERA (JMP TRNDIS) /PICK REGULAR OR DEAD DIS[ 06155 011164 6 STA TRNJMP 06156 044005 6 LDA HEAD X /GOOD TRANSMISSION FOR US 06157 141050 6 CAL 06160 040572 6 ARS 6 0"A"ONEOR8"A"REQALL 06161 015164 6 ADD TRNJMP 06162 011164 6 STA TRNJMP 06163 001001 6 INH FRE 06164 6 0 TRNJMP: BSS 1 /DISPATCH ON 1 OR 8 PKT, REQ OR RE' 06165 003302 6 0 TRNDIS: JMP TRNGT8 /NON-REQ S PKT 06166 003455 6 0 JMP GUDRQ8 /REQ 8 PKT 06167 003227 6 0 JMP TRNGT1 /NON-REQ 1 PKT 06170 105662 6 0 LDA MESBIT I /REQ 1 PKT 06171 012114 6 0 ERA ONE 06172 101040 6 0 SNZ /IS THIS REQ THE NEXT TO GO? 06173 003204 6 0 JMP TRNDS1 /YES 06174 044006 6 0 LDA HEAD1 X /NO 06175 101400 6 0 SMI 0"A"PRIBIT /IS IT A PRI REQ? 06176 003222 6 0 JMP GUDRQ1 /NOT PRI, SO WE CAN GO NO FURTHER 06177 105660 6 0 LDA MESTAB I 06200 052005 6 0 ERA HEAD X 06201 007712 6 0 ANA (ORDNO) 06202 100040 6 0 SZE /IS HIS PRI ORD NO UP YET? 06203 003222 6 0 JMP GUDRQ1 /NO, SO HE MUST WAIT 06204 004542 6 0 TRNDS1: LDA NALA 06205 016566 6 0 SUB NALS 06206 014541 6 0 ADD NREA 06207 016565 6 0 SUB NRES 06210 141206 6 0 AOA 06211 022572 6 0 CAS MAXR 06212 003222 6 0 JMP GUDRQ1 /NO ROOM FOR 1 PKT MESS, TREAT AS R 06213 003222 6 0 JMP GUDRQ1 /NO ROOM FOR 1 PKT MESS, TREAT AS R 06214 004563 6 0 LDA NFS 06215 016537 6 0 SUB NFA 06216 141206 6 0 AOA 06217 014570 6 0 ADD MINF 06220 100400 6 0 SPL 06221 003244 6 0 JMP GUDTR1 /NOTE THAT NO DUPLICATE DETECTION IS DONE HERE 06222 005664 6 0 GUDRQ1: LDA MESSID /ENTER HIS REQUEST 06223 013713 6 0 ERA (ONEOR8) /FOR ONE BUFFER 06224 121714 6 0 JST (RALLYP) I DEFHLT [RALLY ENTRY ALREADY PRESENT FOR REQ 1 PKT] 06225 121704 6 0 JST (THLTOK) I 06226 103702 6 0 JMP (FQOK) I /DO NOT MARK MESS NO COMPLETE *** THIS DOCUMENT MAY CONTAIN BBN PROPRIETARY INFORMATION. *** *** FURNISHED FOR U. S. GOVERNMENT END USE ONLY. *** PAGE 75 IMP,3050,IMP 7:20 PM 9/16/1973 06227 004541 6 0 TRNGT1: LDA NREA /CHECK REAS ROOM 06230 016565 6 0 SUB NRES 06231 141206 6 0 AOA /ROOM FOR ONE MORE? 06232 022572 6 0 CAS MAXR DEFHLT [MAXR EXCEEDED BY A NON-REQUEST 1 PKT MESS] 06233 101000 6 0 NOP 06234 121715 6 0 JST (THLTNG) I /NO, A FOUL-UP 06235 004563 6 0 LDA NFS 06236 016537 6 0 SUB NFA 06237 141206 6 0 AOA 06240 014570 6 0 ADD MINF 06241 101400 6 0 SMI /DO WE HAVE ENOUGH FREE? DEFHLT [MINF VIOLATED BY A NON-REQUEST 1 PKT MESS] 06242 121715 6 0 JST (THLTNG) I /NO, A FOUL-UP 06243 024566 6 0 IRS NALS 06244 024541 6 0 GUDTR1: IRS NREA /YES, SO TAKE IT 06245 000401 6 0 ENB TSK 06246 033670 6 STX READY /SAVE PACKET POINTER 06247 003350 6 JMP GUDTRN /NOW TRY TO GIVE TO HOST LCK FRE 06250 003276 6 0 TRNDED: JMP TRNDD8 /NON-REQ 8 PKT 06251 003455 6 0 JMP GUDRQ8 /REQ 8 PKT 06252 024566 6 0 IRS NALS /NON-REQ 1 PKT - ONLY HAPPENS IF [' 06253 064010 6 0 TRNDD1: IRS HEAD3 X 0"A"CHSTD /REQ 1 PKT 06254 044005 6 0 LDA HEAD X 06255 007716 6 0 ANA (0 0 177777"X"INCTRN"X"TRNREP"X"ALLOC) 06256 050005 6 0 STA HEAD X 06257 005717 6 0 LDA (REPDED) /SWAP SRC&DEST 06260 121720 6 0 JST (SWPCHK) I /AND CHECKSUM IT 06261 005664 6 0 LDA MESSID 06262 072112 6 0 LDX SIGN /MARK ENTRY FOR DEST DEAD 06263 121714 6 0 JST (RALLYP) I /PUT IN A DUMMY ENTRY DEFHLT [RALLY ENTRY ALREADY PRESENT FOR DESTINATION DEAD] 06264 121704 6 0 JST (THLTOK) I 06265 072514 6 0 LDX THIS 06266 132402 6 0 STX ERQ I /HAND TO BAK 06267 032402 6 0 STX ERQ 06270 021537 6 0 JST REASGT 06271 003463 6 0 JMP NXMES1 /NO PKTS CAME IN SO FAR 06272 044000 6 0 LDA 0 X 06273 111667 6 0 STA TEND I /SPLICE UP REAS Q 06274 121721 6 0 JST (REASF) I /AND FREE UP THIS BLK 06275 003463 6 0 JMP NXMES1 06276 004751 6 0 TRNDD8: LDA 8PKTS 06277 014566 6 0 ADD NALS 06300 010566 6 0 STA NALS /MUST TAKE BACK ROOM WE ALLOCATED 06301 003253 6 0 JMP TRNDD1 *** THIS DOCUMENT MAY CONTAIN BBN PROPRIETARY INFORMATION. *** *** FURNISHED FOR U. S. GOVERNMENT END USE ONLY. *** PAGE 76 IMP,3050,IMP 7:20 PM 9/16/1973 06302 000401 6 0 TRNGT8: ENB TSK 06303 044006 6 LDA HEAD1 X /MULTI-PACKET TRANS FOR US 06304 141340 6 ICA 06305 006120 6 ANA SEVEN 0"A"PKTNO /GET PACKET NO 06306 011663 6 STA PKTN 06307 015722 6 ADD (REAS 0 X) 06310 011666 6 STA ORS /SAVE POST-INDEXED PNTR TO OUR REAS 06311 021537 6 JST REASGT LCK T.O /FIND OUR GUY IN REAS 06312 103723 6 5 JMP (NEWMES) I /NOT THERE, SO START A NEW MESS 06313 033665 6 5 OLDMES: STX ORB /SAVE PNTR TO OUR REAS BLOCK 06314 105666 6 5 LDA ORS I 06315 100040 6 5 SZE /IS IT EMPTY? 06316 103702 6 5 JMP (FQOK) I /NO, A DUPLICATE PACKET 06317 004514 6 5 LDA THIS 06320 111666 6 5 STA ORS I /PUT PACKET IN OUR REAS SLOT 06321 010000 6 5 STA 0 06322 044007 6 5 LDA HEAD2 X 06323 073665 6 5 LDX ORB 06324 101400 6 5 SMI 0"A"LSTPKT /IS THIS THE LAST PACKET? 06325 003334 6 5 JMP NOTL /NO 06326 005663 6 5 LDA PKTN /GET PACKET NO 06327 050002 6 5 STA RMAX X /SAVE IN REAS BLOCK 06330 016120 6 5 SUB SEVEN 0"A"8PKTS 06331 140407 6 5 TCA 06332 014565 6 5 ADD NRES 06333 010565 6 5 STA NRES /ADJUST REAS COUNT FOR SURPLUS 06334 044013 6 5 NOTL: LDA RSF X 06335 062002 6 5 CAS RMAX X /IS REAS DONE? 06336 100000 6 5 SKP /NO 06337 003342 6 5 JMP DONE /YES 06340 064013 6 5 IRS RSF X 06341 103724 6 5 JMP (GOODM) I 06342 044000 6 5 DONE: LDA 0 X /REAS COMPLETE 06343 111667 6 5 STA TEND I /REMOVE BLOCK FROM QUEUE 06344 000401 6 5 ENB TSK 06345 005665 6 LDA ORB 06346 140500 6 SSM /MARK AS MULTI-PACKET 06347 011670 6 STA READY 06350 021360 6 GUDTRN: JST MESSOK LCK [H2I,T.O] 06351 100100 6 4 SLZ /IS MESS NO THE ONE WE WANT? 06352 003555 6 4 JMP T2H /YES, GIVE TO HOST 06353 005670 6 4 LDA READY /NO, PUT BUFFER OR BLOCK 06354 026327 6 4 IMA MESSTK /ON COMPLETED MESSAGE STACK 06355 072327 6 4 LDX MESSTK /DO THIS SINCE SIGN BIT MAY BE SET 06356 050000 6 4 STA 0 X 06357 003471 6 4 JMP SMSTK /AND SEARCH FOR NEXT MESS *** THIS DOCUMENT MAY CONTAIN BBN PROPRIETARY INFORMATION. *** *** FURNISHED FOR U. S. GOVERNMENT END USE ONLY. *** PAGE 77 IMP,3050,IMP 7:20 PM 9/16/1973 LEV TSK 06360 000000 6 MESSOK: 0 /MARK MESS NO TO PREVENT DUPLICATES 06361 001001 6 INH [H2I,T.O] 06362 105660 6 4 LDA MESTAB I 06363 141044 6 4 CAR 0"A"MESSNO 06364 017661 6 4 SUB MESNUM 06365 141140 6 4 ICL 06366 015700 6 4 ADD (MBITS) 06367 011662 6 4 STA MESBIT 06370 105662 6 4 LDA MESBIT I 06371 113660 6 4 ERA MESTAB I /TURN ON GOT-IT BIT 06372 007725 6 4 ANA (0 0 177777"X"MSTO1"X"MSTO2) 06373 111660 6 4 STA MESTAB I /TURN OFF TIME OUT BITS 06374 103360 6 4 JMP MESSOK I *** THIS DOCUMENT MAY CONTAIN BBN PROPRIETARY INFORMATION. *** *** FURNISHED FOR U. S. GOVERNMENT END USE ONLY. *** PAGE 78 IMP,3050,IMP 7:20 PM 9/16/1973 LEV TSK LCK [H2I,T.O] 06375 044005 6 4 MESOUT: LDA HEAD X 06376 007701 6 4 ANA (INCTRN 0 TRNREP) 06377 013701 6 4 ERA (INCTRN 0 TRNREP) 06400 100040 6 4 SZE /IS THIS AN INC TRN? 06401 103702 6 4 JMP (FQOK) I /NO, OUT OF RANGE, DISCARD PKT 06402 044005 6 4 INCREP: LDA HEAD X /THIS CODE IS FOR OUT-OF-RANGE MESS 06403 007726 6 4 ANA (0 0 177777"X"INCTRN"X"TRNREP"X"GVBALL"X"RFNM) 06404 013676 6 4 ERA (RFNM) /RFNM ON IN ALL RPLYS XCPT REQ8 06405 066005 6 4 IMA HEAD X 06406 007727 6 4 ANA (ONEOR8 0 REQALL) 06407 013676 6 4 ERA (REQALL) 06410 100040 6 4 SZE /REQ FOR 8? 06411 003415 6 4 JMP PUTREP /NO, MAKE A REPLY 06412 005730 6 4 LDA (ALLOC 0 RFNM) /Y, TURN OFF RFNM, TURN 'T 06413 052005 6 4 ERA HEAD X 06414 050005 6 4 STA HEAD X 06415 140040 6 4 PUTREP: CRA /SWAP DEST FOR SRC 06416 121720 6 4 JST (SWPCHK) I /AND CHECKSUM IT 06417 132402 6 4 STX ERQ I /ADD TO REPLY QUEUE 06420 032402 6 4 STX ERQ 06421 103724 6 4 JMP (GOODM) I /AND GIVE GOOD RETURN 06422 021537 6 4 INCGT8: JST REASGT /FIND THIS INC TRN IN REAS 06423 003427 6 4 JMP SNDRP8 /NOT THERE, WE NEVER SAW HIM 06424 044000 6 4 LDA 0 X 06425 111667 6 4 STA TEND I /REMOVE FROM REAS QUEUE 06426 121721 6 4 JST (REASF) I /FREE REAS BLOCK AND PKTS 06427 005676 6 4 SNDRP8: LDA (RFNM) /CREATE A REPLY TO 8-PKT INC TRN 06430 003453 6 4 JMP SNDRP1 06431 105662 6 4 INCGOT: LDA MESBIT I /GOT AN INC TRANS 06432 107660 6 4 ANA MESTAB I /EXPLICITLY PERMIT DUPLICATES 06433 100040 6 4 SZE /HAVE WE SEEN HIM COMPLETED YET? 06434 003402 6 4 JMP INCREP /YES, SEND BACK DUPLICATE REPLY 06435 044005 6 4 LDA HEAD X 06436 007727 6 4 ANA (ONEOR8 0 REQALL) 06437 101040 6 4 SNZ /8 PKT INC TPN? 06440 003422 6 4 JMP INCGT8 /YES 06441 007713 6 4 ANA (ONEOR8) 06442 101040 6 4 SNZ /8 PKT REQ FOR ALL? 06443 003455 6 4 JMP GUDRQ8 /YES, IT IS INSIDE WINDOW 06444 044005 6 4 LDA HEAD X /NEVER SAW THIS 1 PKT GUY 06445 007706 6 4 ANA (GVBALL) 06446 100040 6 4 SZE /IS THIS A GVB? 06447 004751 6 4 GUDGVB: LDA 8PKTS /YES 06450 014566 6 4 ADD NALS /REMOVE BUFFER FROM ALLOCATE COUNT 06451 010566 6 4 STA NALS 06452 005727 6 4 LDA (ONEOR8 0 RFNM) 06453 072121 6 4 SNDRP1: LDX MINUS1 /MAKE A REPLY TO 1-PKT INC TRN 06454 003456 6 4 JMP GUDRAL /SINCE IT MAY HAVE BEEN A REPLY TO AN INC TRN THAT WAS LOST /WE SHOULD KEEP A RECORD OF THE HOST QUEUE LAST FLUSHED /THIS WAY WE COULD SEND THE CORRECT DUPLICATE REPLY *** THIS DOCUMENT MAY CONTAIN BBN PROPRIETARY INFORMATION. *** *** FURNISHED FOR U. S. GOVERNMENT END USE ONLY. *** PAGE 79 IMP,3050,IMP 7:20 PM 9/16/1973 06455 140040 6 4 GUDRQ8: CRA 06456 013664 6 4 GUDRAL: ERA MESSID 06457 121714 6 4 JST (RALLYP) I /SET UP ENTRY TO REPLY DEFHLT [RALLY ENTRY ALREADY PRESENT FOR INC OR REQ8] 06460 121704 6 4 JST (THLTOK) I 06461 072514 6 4 LDX THIS 06462 120671 6 4 JST FLUSHI I 06463 021360 6 4 NXMES1: JST MESSOK /MARK MESS NO AS COMPLETED 06464 105660 6 4 NXTMES: LDA MESTAB I 06465 101100 6 4 SLN /IS THIS THE MESS NO WE WANT? 06466 103724 6 4 JMP (GOODM) I /NO 06467 073660 6 4 LDX MESTAB 06470 121731 6 4 JST (UPMESS) I RET TSK 06471 005732 6 SMSTK: LDA (MESSTK) /SEARCH THE MESSAGE STACK 06472 011667 6 STA TEND /FOR MESSAGES WHOSE NUMBERS ARE UP 06473 001001 6 INH T.O 06474 004327 6 5 LDA MESSTK /GET CONTENTS OF STACK ENTRY 06475 101040 6 5 SRCSTK: SNZ /IS STACK EMPTY? 06476 003464 6 5 JMP NXTMES /YES 06477 011670 6 5 STA READY 06500 010000 6 5 STA 0 06501 100400 6 5 SPL /IS THIS A REAS BLOCK? 06502 044003 6 5 LDA REAS X /YES, SO GET A PACKET 06503 010000 6 5 STA 0 06504 044007 6 5 LDA HEAD2 X /GET SOURCE OF THIS PACKET 06505 013673 6 5 ERA SOURCE /COMPARE WITH OURS 06506 007674 6 5 ANA (SRCEI) 06507 100040 6 5 SZE /MATCH? 06510 003532 6 5 JMP SRCSTL /NO 06511 044006 6 5 LDA HEAD1 X 06512 101400 6 5 SMI 0"A"PRIBIT /IS IT PRIORITY? 06513 003520 6 5 JMP SRCST2 /NO 06514 105660 6 5 LDA MESTAB I /GET ORD NO WE WANT 06515 052005 6 5 ERA HEAD X /COMPARE WITH THIS PACKET 06516 007712 6 5 ANA (ORDNO) 06517 003524 6 5 JMP SRCST3 06520 105660 6 5 SRCST2: LDA MESTAB I /GET MESS NO WE WANT 06521 017733 6 5 SUB (0 0 3"T"400) 06522 052005 6 5 ERA HEAD X /COMPARE WITH THIS PACKET 06523 141044 6 5 CAR 0"A"MESSNO 06524 100040 6 5 SRCST3: SZE /IS THIS THE NEXT TO GO? 06525 003532 6 5 JMP SRCSTL /NO 06526 073670 6 5 LDX READY 06527 066000 6 5 IMA 0 X /YES 06530 111667 6 5 STA TEND I /REMOVE FROM MESS STACK 06531 003555 6 5 JMP T2H /AND GIVE TO HOST 06532 005670 6 5 SRCSTL: LDA READY /LOOP BACK FOR MORE 06533 140100 6 5 SSP 06534 011667 6 5 STA TEND 06535 105667 6 5 LDA TEND I 06536 003475 6 5 JMP SRCSTK *** THIS DOCUMENT MAY CONTAIN BBN PROPRIETARY INFORMATION. *** *** FURNISHED FOR U. S. GOVERNMENT END USE ONLY. *** PAGE 80 IMP,3050,IMP 7:20 PM 9/16/1973 LEV TSK 06537 000000 6 REASGT: 0 /FIND A MATCH ON MESSID IN REAS STO+ 06540 073734 6 LDX (SHRQ) 06541 001001 6 INH T.O /LOOK FOR THIS MESSAGE IN REAS 06542 044000 6 5 RELOOK: LDA 0 X /NEXT REAS BLOCK 06543 101040 6 5 SNZ /NO MORE REAS BLOCKS? 06544 103537 6 5 JMP REASGT I /YES, SO RETURN NO SKIP 06545 033667 6 5 STX TEND /SAVE END PNTR 06546 010000 6 5 STA 0 06547 044001 6 5 LDA RID X /GET THIS MESS ID 06550 013664 6 5 ERA MESSID /COMPARE WITH OURS 06551 100040 6 5 SZE /IS THIS OUR MESSAGE? 06552 003542 6 5 JMP RELOOK /NO 06553 025537 6 5 IRS REASGT /SKIP=SUCCESS 06554 103537 6 5 JMP REASGT I 06555 000401 6 5 T2H: ENB TSK 06556 004114 6 LDA ONE 06557 011672 6 STA NPKTS 06560 073670 6 LDX READY /LOAD THE PACKET PNTR 06561 005670 6 LDA READY /REGULAR MESSAGE READY FOR HOST 06562 100400 6 SPL /IS THIS A SINGLE PACKET? 06563 003625 6 JMP T2H8 /NO 06564 011671 6 STA READYE /SAVE END PNTR 06565 121735 6 T2HL1: JST (TSUB) I 06566 044006 6 LDA HEAD1 X 06567 001001 6 INH [I2H,H2I,T.O] 06570 121707 6 3 JST (HOSTNO) I /GET HOST NUMBER 06571 044006 6 3 LDA HEAD1 X 06572 006112 6 3 ANA SIGN 0"A"PRIBIT 06573 100040 6 3 SZE /PICK PRI OR REG QUEUE 06574 005736 6 3 LDA (EHPQ+0-EHQ) 06575 115737 6 3 ADD (LOCHST) I /AOD OFFSET GENERATED IN HOSTNO 06576 026000 6 3 IMA 0 /PUT IN X AND GET PKT PNTR 06577 150343 6 3 STA EHQ XI /PUT ON HOST QUEUE 06600 005671 6 3 LDA READYE 06601 050343 6 3 STA EHQ X 06602 005672 6 3 LDA NPKTS /NUM PKTS IN MSG 06603 054517 6 3 ADD NHA X /NUM PKTS FOR HOST 06604 050517 6 3 STA NHA X /ADJUST COUNTS 06605 073670 6 3 LDX READY 06606 044006 6 3 LDA HEAD1 X 06607 073660 6 3 LDX MESTAB 06610 101400 6 3 SMI 0"A"PRIBIT /PRIORITY? 06611 003622 6 3 JMP T2HL2 /NO 06612 121740 6 3 JST (UPORD) I /YES, SO BUMP ORD NO 06613 073670 6 3 LDX READY 06614 105660 6 3 LDA MESTAB I /GET MESS NO WE WANT 06615 017733 6 3 SUB (0 0 3"T"400) 06616 052005 6 3 ERA HEAD X /COMPARE WITH WHAT WE GOT 06617 141044 6 3 CAR 0"A"MESSNO 06620 073660 6 3 LDX MESTAB 06621 101040 6 3 SNZ /MATCH? 06622 121731 6 3 T2HL2: JST (UPMESS) I /BUMP MESS NO 06623 121741 6 3 JST (TASK2H) I RET TSK /POKE HOST IF NECESSARY 06624 003471 6 JMP SMSTK /GO BACK FOR MORE *** THIS DOCUMENT MAY CONTAIN BBN PROPRIETARY INFORMATION. *** *** FURNISHED FOR U. S. GOVERNMENT END USE ONLY. *** PAGE 81 IMP,3050,IMP 7:20 PM 9/16/1973 /THE FIRST PKT IS COUNTED FIRST, IN T2H /AND TRACED LAST, IN T2HL1 /SUBSEQUENT PKTS ARE COUNTED AND TRACED IN T2HS1 LEV TSK 06625 140100 6 T2H8: SSP /MULTI-PACKET MESSAGE READY 06626 011665 6 STA ORB /OUR REASSY BLOCK 06627 044003 6 LDA REAS X /LOAD PKT PNTR 06630 011670 6 STA READY 06631 140040 6 CRA 06632 050013 6 STA REAS+8 X 0"A"RSF /A TRICK TO INIT RSF AND MAKE IT LOOK LIKE PKT 9 06633 044004 6 T2H81: LDA REAS+1 X /LOAD ADDR OF NEXT PACKET 06634 150003 6 STA REAS XI /CHAIN PACKETS TOGETHER 06635 101040 6 SNZ /IS THIS THE LAST PKT? 06636 003650 6 JMP T2H82 /YES 06637 033671 6 STX READYE /NO, STORE THE PKT PNTR 06640 010000 6 STA 0 06641 121735 6 JST (TSUB) I /TRACE PKT IF NECESSARY 06642 073671 6 LDX READYE 06643 140040 6 CRA /CLEAR REAS PNTR 06644 050003 6 STA REAS X 06645 024000 6 IRS 0 /INCREMENT ADDRESS 06646 025672 6 IRS NPKTS /INCREMENT PKT COUNT 06647 003633 6 JMP T2H81 /CHAIN NEXT PACKET 06650 066003 6 T2H82: IMA REAS X /CLEAR REAS PNTR 06651 011671 6 STA READYE /AND SAVE LAST PKT PNTR 06652 073670 6 LDX READY /LOAD FIRST PKT PNTR 06653 005665 6 LDA ORB /LOAD REASSY BLOCK PNTR 06654 001001 6 INH T.O 06655 026326 6 5 IMA RASF /FREE REAS BLOCK AND LINK TO TOP 06656 110326 6 5 STA RASF I /OF FREE LIST 06657 003565 6 5 JMP T2HL1 LEV VAR 06660 V MESTAB: BSS 1 /PNTR TO MESS TAB ENTRY 06661 V MESNUM: BSS 1 /MESSNO OF THIS PKT 06662 V MESBIT: BSS 1 /BIT CORRESPONDING TO OUR MESSAGE 06663 V PKTN: BSS 1 /NUMBER OF THIS PACKET 06664 V MESSID: BSS 1 /MESSAGE ID (MESS NO+SRCE IMP) 06665 V ORB: BSS 1 /OUR REAS BLOCK 06666 V ORS: BSS 1 /OUR REAS SLOT 06667 V TEND: BSS 1 /TEMP END PNTR 06670 V READY: BSS 1 /PNTR TO PACKET TO GIVE TO HOST 06671 V READYE: BSS 1 /END PNTR FOR READY 06672 V NPKTS: BSS 1 /PKT COUNTER 06673 V SOURCE: BSS 1 /SOURCE IMP FOR THIS PACKET *** THIS DOCUMENT MAY CONTAIN BBN PROPRIETARY INFORMATION. *** *** FURNISHED FOR U. S. GOVERNMENT END USE ONLY. *** PAGE 82 IMP,3050,IMP 7:20 PM 9/16/1973 06674 000077 C LEV CON CONSTANTS 06675 000004 C 06676 000100 C 06677 032271 C 06700 001246 C 06701 000014 C 06702 005601 C 06703 007063 C 06704 005577 C 06705 177437 C 06706 000002 C 06707 007244 C 06710 000335 C 06711 003165 C 06712 000060 C 06713 000200 C 06714 015303 C 06715 005635 C 06716 177761 C 06717 000400 C 06720 005457 C 06721 021321 C 06722 040003 C 06723 005651 C 06724 005604 C 06725 177477 C 06726 177661 C 06727 000300 C 06730 000102 C 06731 015347 C 06732 000327 C 06733 001400 C 06734 000340 C 06735 005504 C 06736 000010 C 06737 007257 C 06740 015361 C 06741 007222 C 02415 176751 C PAGEND 6,UNCON,1 *** THIS DOCUMENT MAY CONTAIN BBN PROPRIETARY INFORMATION. *** *** FURNISHED FOR U. S. GOVERNMENT END USE ONLY. *** PAGE 83 IMP,3050,IMP 7:20 PM 9/16/1973 LEV TSK 07063 044005 6 REPGOT: LDA HEAD X /REPLY TO A TRANSMISSION OF OURS 07064 007327 6 ANA (ONEOR8) 07065 101040 6 SNZ /IS IT A REPLY TO A MULTI-PACKET? 07066 003134 6 JMP REPGT8 /YES 07067 105330 6 LDA (MESSID) I 07070 001001 6 INH [H2I,T.O] 07071 121331 6 4 JST (PPTGET) I /FIND OUR TRANS IN RPT 07072 003220 6 4 JMP GOTGVB /NOT THERE, MUST BE A GVB 07073 011131 6 4 STA PPTASK /SAVE PPT PNTR 07074 000401 6 4 ENB TSK 07075 072514 6 LDX THIS 07076 044005 6 LDA HEAD X 07077 007332 6 ANA (ALLOC) 07100 101040 6 SNZ /IS THIS REPLY AN ALLOCATE OF 1? 07101 003113 6 JMP NOALL1 /NO 07102 173131 6 LDX PPTASK I /YES, CHECK FOR DUPLICATE ALLOC 07103 044005 6 LDA HEAD X 07104 007333 6 ANA (REQALL) 07105 101040 6 SNZ /WAS REQUEST BIT SET? 07106 103334 6 JMP (FQOK) I /NO, SO ALLOC IS A DUPLICATE 07107 105131 6 LDA PPTASK I /YES, SO WE MARK PPT 07110 140500 6 SSM 0"A"RETRAN /FOR RETRANSMISSION FROM BACK 07111 111131 6 STA PPTASK I 07112 103334 6 JMP (FQOK) I /MESS NO NOT REPLIED TO YET 07113 021260 6 NOALL1: JST RFNM1 /SET UP TWDPA FOR RFNM OR INC 07114 003125 6 0 LCK FRE JMP DDEAD1 /GIVE HOST A DESTINATION DEAD 07115 173131 6 LEV TSK LDX PPTASK I 07116 044010 6 LDA HEAD3 X /PICK UP LINK WORD 07117 021306 6 JST RFNM2 LCK FRE 07120 044007 6 0 LDA HEAD2 X 07121 021244 6 0 JST HOSTNO 07122 044006 6 0 LDA HEAD1 X /GFT SOURCE OF MESS 07123 007335 6 0 ANA (0 0 177777"X"LSTPKT"X"HICODE) 07124 013132 6 0 ERA TWDPA /PUT IN IH MESS TYPE 07125 073257 6 0 DDEAD1: LDX LOCHST 07126 120670 6 0 JST OWP I /DO A 2 WRD PUT 07127 003213 6 0 DEFSTAT JMP PPTFRE, HS6 00575 031304 6 0 31771 007127 6 0 32011 003213 6 0 07130 103336 6 0 JMP (FQNG) I /NO ROOM FOR 2 WRD MESS LEV VAR 07131 V PPTASK: BSS 1 /POINTER TO OUR PPT OR PLT SLOT 07132 V TWDPA: BSS 1 /FIRST WORD OF 2 WRD PUT 07133 V LOCHNO: BSS 1 *** THIS DOCUMENT MAY CONTAIN BBN PROPRIETARY INFORMATION. *** *** FURNISHED FOR U. S. GOVERNMENT END USE ONLY. *** PAGE 84 IMP,3050,IMP 7:20 PM 9/16/1973 LEV TSK 07134 105330 6 REPGT8: LDA (MESSID) I /REPLY TO A MULTI-PCKT TRANS 07135 001001 6 INH [H2I,T.O] 07136 121337 6 4 JST (PLTGET) I /FIND OUR TRANS IN PLT DEFHLT [CANT FIND MULTI-PKT MESS FOR THIS REPLY] 07137 121340 6 4 JST (THLTOK) I /NOT THERE, FOUL-UP 07140 033131 6 4 STX PPTASK /SAVE PLT PNTR 07141 044000 6 4 LDA PLT0 X 07142 006120 6 4 ANA SEVEN 0"A"PLTHST 07143 011133 6 4 STA LOCHNO /GET LOCAL HOST NO 07144 072514 6 4 LDX THIS 07145 044005 6 4 LDA HEAD X 07146 007332 6 4 ANA (ALLOC) 07147 000401 6 4 ENB TSK 07150 101040 6 SNZ /IS THIS REPLY AN ALLOCATE OF 8? 07151 003166 6 JMP NOALL8 /NO 07152 001001 6 INH [SIN,H2I,T.O] 07153 105341 6 0 LDA (TALLYI) I /GET IN PNTR 07154 013342 6 0 ERA (TALLY+TALLYL) /COMPARE WITH END PNTR 07155 101040 6 0 SNZ /AT END? 07156 103336 6 0 JMP (FQNG) I /YES, NO ROOM FOR ALLOCATE SO NACF 07157 105343 6 0 LDA (SOURCE) I /GET SOURCE OF ALLOC 07160 111344 6 0 STA (TALLYI 0 I) I /STUFF THRU IN PNTR 07161 125341 6 0 IRS (TALLYI) I /BUMP IN PNTR 07162 044005 6 0 LDA HEAD X 07163 007333 6 0 ANA (RFNM) 07164 101040 6 0 SNZ /IS THIS REPLY AN ALLOCATED RFNM? 07165 003233 6 0 JMP GUDAL8 /NO, JUST AN ALLOCATE OF 8, POKE HO RET TSK 07166 021260 6 NOALL8: JST RFNM1 /SET UP TWDPA FOR RFNM OR INC 07167 003176 6 0 LCK FRE JMP DDEAD8 /GIVE HOST A DESTINATION DEAD 07170 073131 6 LEV TSK LDX PPTASK 07171 044030 6 LDA PLT2 X /PICK UP LINK WORD 07172 021306 6 JST RFNM2 LCK FRE 07173 044014 6 0 LDA PLT1 X /GET SOURCE OF MESS 07174 007335 6 0 ANA (0 0 177777"X"LSTPKT"X"HICODE) 07175 013132 6 0 ERA TWDPA /PUT IN IH MESS TYPE 07176 073133 6 0 DDEAD8: LDX LOCHNO 07177 033257 6 0 STX LOCHST 07200 120670 6 0 JST OWP I /DO A 2 WRD PUT 07201 003215 6 0 DEFSTAT JMP GUDRP0, HS7 /AND POKE HOST 00576 031313 6 0 31772 007201 6 0 32012 003215 6 0 07202 072514 6 0 LDX THIS /NO ROOM FOR 2 WRD MESS 07203 044005 6 0 LDA HEAD X 07204 007332 6 0 ANA (ALLOC) 07205 101040 6 0 SNZ /WAS REPLY AN ALLOCATE OF 8? 07206 103336 6 0 JMP (FQNG) I /NO, SO QUIT 07207 105343 6 0 LDA (SOURCE) I /YES, GET SOURCE 07210 121345 6 0 JST (TALLYG) I /AND GET TALLY ENTRY BACK AGAIN 07211 103336 6 0 JMP (FQNG) I /NOT THERE, FOUL-UP 07212 103336 6 0 JMP (FQNG) I /AND QUIT *** THIS DOCUMENT MAY CONTAIN BBN PROPRIETARY INFORMATION. *** *** FURNISHED FOR U. S. GOVERNMENT END USE ONLY. *** PAGE 85 IMP,3050,IMP 7:20 PM 9/16/1973 07213 173131 6 0 PPTFRE: LDX PPTASK I 07214 120671 6 0 JST FLUSHI I /FREE PPT ENTRY NOW THAT RFNM IS IN 07215 021222 6 0 GUDRP0: JST TASK2H /POKE HOST IF NECESSARY LEV TSK 07216 140040 6 GUDRP1: CRA 07217 111131 6 STA PPTASK I /CLEAR PPT OR PLT ENTRY 07220 121346 6 GOTGVB: JST (MESSOK) I /MARK MESS NO AS REPLIED LCK [H2I,T.O] 07221 103334 6 4 JMP (FQOK) I LCK SIN 07222 000000 6 0 TASK2H: 0 /GOT SOMETHING FOR HOST OUTPUT 07223 073257 6 0 LDX LOCHST 07224 104700 6 0 LDA IHXX I 07225 000013 6 0 EXA 07226 101040 6 0 SNZ /IS HOST IDLE? 07227 121347 6 0 JST (IHSB) I RET TSK /YES, SO POKE IT 07230 001001 6 INH ALL 07231 120672 6 0 JST DODXA I RET TSK 07232 103222 6 JMP TASK2H I LCK SIN 07233 073133 6 0 GUDAL8: LDX LOCHNO /GOT AN ALLOCATE OF 8 FOR HOST INPU 07234 044453 6 0 LDA HILO X 07235 017350 6 0 SUB (HIALL) 07236 000013 6 0 EXA 07237 101040 6 0 SNZ /IS HOST HUNG ON ALLOCATE? 07240 121351 6 0 JST (HISB) I RET TSK /POKE HIM SINCE HE IS WAI 07241 001001 6 INH ALL 07242 120672 6 0 JST DODXA I RET TSK 07243 003216 6 JMP GUDRP1 LEV [T.O,TSK] 07244 000000 5 HOSTNO: 0 /COMPUTE HOST NO 07245 011257 5 STA LOCHST 07246 007352 5 ANA (DESTH) 07247 040672 5 ARR 6 07250 027257 5 IMA LOCHST /SAVE DEST HOST 07251 007353 5 ANA (FORIMP) 07252 100040 5 SZE /FAKE HOST? 07253 004130 5 LDA PLNH /YES 07254 015257 5 ADD LOCHST 07255 011257 5 STA LOCHST 07256 103244 5 JMP HOSTNO I LEV VAR 07257 V LOCHST: BSS 1 /WHICH HOST WE ARE FEEDING *** THIS DOCUMENT MAY CONTAIN BBN PROPRIETARY INFORMATION. *** *** FURNISHED FOR U. S. GOVERNMENT END USE ONLY. *** PAGE 86 IMP,3050,IMP 7:20 PM 9/16/1973 LEV TSK 07260 000000 6 RFNM1: 0 /DISTINGUISH BETWEEN RFNM AND INC T: 07261 044006 6 LDA HEAD1 X 07262 007354 6 ANA (REPDED) 07263 100040 6 SZE /IS THIS A DESTINATION DEAD? 07264 003275 6 JMP RFNMD /YES 07265 044005 6 LDA HEAD X 07266 007355 6 ANA (INCTRN) 07267 100040 6 SZE /IS THIS REPLY MARKED INCOMFLETE? 07270 005356 6 LDA (0 0 CRFNM"X"CINCTR) /YES 07271 013357 6 ERA (CRFNM) /NO 07272 011132 6 STA TWDPA /SAVE IH MESS TYPE 07273 025260 6 IRS RFNM1 07274 103260 6 JMP RFNM1 I 07275 044010 6 RFNMD: LDA HEAD3 X 0"A"CHSTD 07276 001001 6 INH FRE 07277 010515 6 0 STA TWDP /SAVE LINK WORD ANO CODE 07300 044006 6 0 LDA HEAD1 X 07301 021244 6 0 JST HOSTNO 07302 044007 6 0 LDA HEAD2 X 07303 007335 6 0 ANA (0 0 177777"X"LSTPKT"X"HICODE) 07304 013360 6 0 ERA (CDESTD) /PUT IN DEST DEAD CODE 07305 103260 6 0 JMP RFNM1 I LEV TSK 07306 000000 6 RFNM2: 0 /TRANSLATE SOME INCOMPLETES INTO 07307 001001 6 INH FRE /ERROR IN DATA MESS 07310 010515 6 0 STA TWDP /SAVE LINK WORD 07311 007361 6 0 ANA (SUBCOD) 07312 013362 6 0 ERA (CERROR) 07313 100040 6 0 SZE /WAS THIS MARKED AS AN ERROR AT SOU 07314 003317 6 0 JMP .+3 /NO 07315 005363 6 0 LDA (CERRDT) /YES, SO CHANGE IH MESS TYPE 07316 011132 6 0 STA TWDPA 07317 005132 6 0 LDA TWDPA 07320 013364 6 0 ERA (CINCTR) 07321 101040 6 0 SNZ /IS THE IH MESS TYPE INC TRN? 07322 103306 6 0 JMP RFNM2 I /YES, KEEP SUB CODE 07323 004515 6 0 LDA TWDP /NO, A RFNM OR ERROR IN DATA 07324 007365 6 0 ANA (LINKNO) 07325 010515 6 0 STA TWDP /WE MAY HAVE PUT IN AT INC? TIME 07326 103306 6 0 JMP RFNM2 I *** THIS DOCUMENT MAY CONTAIN BBN PROPRIETARY INFORMATION. *** *** FURNISHED FOR U. S. GOVERNMENT END USE ONLY. *** PAGE 87 IMP,3050,IMP 7:20 PM 9/16/1973 07327 000200 C LEV CON CONSTANTS 07330 006664 C 07331 015033 C 07332 000002 C 07333 000100 C 07334 005601 C 07335 070377 C 07336 005637 C 07337 015205 C 07340 005577 C 07341 015155 C 07342 032271 C 07343 006673 C 07344 115155 C 07345 015114 C 07346 006360 C 07347 016042 C 07350 014445 C 07351 013106 C 07352 000300 C 07353 040000 C 07354 000400 C 07355 000010 C 07356 006000 C 07357 002400 C 07360 003400 C 07361 000007 C 07362 000004 C 07363 004000 C 07364 004400 C 07365 177760 C 02416 173373 C PAGEND 7,UNCON,4 *** THIS DOCUMENT MAY CONTAIN BBN PROPRIETARY INFORMATION. *** *** FURNISHED FOR U. S. GOVERNMENT END USE ONLY. *** PAGE 88 IMP,3050,IMP 7:20 PM 9/16/1973 PAGM2I: LEV M2I / MODEM TO IMP (M2I) 00064 010043 0 M1INIL/ M2I1 00065 010067 0 M2INIL/ M2I2 00066 010113 0 M3INIL/ M2I3 00067 010137 0 M4INIL/ M2I4 00070 010163 0 M5INIL/ M2I5 PAGM2I/ 10043 000000 0 M2I1: INT M2I /MODEM 1 ENTPANCE 10044 000011 0 DXA 10045 033244 0 STX TX /SAVE X REG 10046 072113 0 LDX ZERO /SET UP ACTIVE MODEM NO 10047 0 M2I1A: BSS 1 /INITIALLY A JMP M2II UNTIL AN INPL 10050 000043 0 INK 10051 011245 0 STA TK /SAVE KEYS 10052 070471 0 DEFSTAT M1ERR,MI1 00577 031202 0 31773 010052 0 32013 070471 0 10053 003231 0 M1OK: JMP M2I0 /THIS IS A NOP WHEN THE LINE GOES DI 10054 004021 0 DIS1: LDA M1INBP+1 10055 017625 0 SUB (BUFE-ACKH) 10056 010020 0 M2I1B: STA M1INBP 10057 030471 0 M1IN /ERROR- NEW "IN" INTO SAME BUFFER 10060 005245 0 DPP1: LDA TK 10061 000013 0 EXA 10062 171020 0 OTK 10063 005243 0 LDA TA 10064 073244 0 LDX TX 10065 000401 0 ENB M2I 10066 103043 0 JMP M2I1 I 10067 000000 0 M2I2: INT M2I /MODEM 2 ENTRANCE 10070 000011 0 DXA 10071 033244 0 STX TX 10072 072114 0 LDX ONE 10073 0 M2I2A: BSS 1 10074 000043 0 INK 10075 011245 0 STA TK 10076 070472 0 DEFSTAT M2ERR,MI1A 00600 031226 0 31774 010076 0 32014 070472 0 10077 003231 0 M2OK: JMP M2I0 10100 004023 0 DIS2: LDA M2INBP+1 10101 017625 0 SUB (BUFE-ACKH) 10102 010022 0 STA M2INBP 10103 030472 0 M2IN 10104 005245 0 DPP2: LDA TK 10105 000013 0 EXA 10106 171020 0 OTK 10107 005243 0 LDA TA 10110 073244 0 LDX TX 10111 000401 0 ENB M2I 10112 103067 0 JMP M2I2 I *** THIS DOCUMENT MAY CONTAIN BBN PROPRIETARY INFORMATION. *** *** FURNISHED FOR U. S. GOVERNMENT END USE ONLY. *** PAGE 89 IMP,3050,IMP 7:20 PM 9/16/1973 10113 000000 0 M2I3: INT M2I /MODEM 3 ENTRANCE 10114 000011 0 DXA 10115 033244 0 STX TX 10116 072115 0 LDX TWO 10117 0 M2I3A: BSS 1 10120 000043 0 INK 10121 011245 0 STA TK 10122 070473 0 DEFSTAT M3ERR,MI1B 00601 031236 0 31775 010122 0 32015 070473 0 10123 003231 0 M3OK: JMP M2I0 10124 004025 0 DIS3: LDA M3INBP+1 10125 017625 0 SUB (BUFE-ACKH) 10126 010024 0 STA M3INBP 10127 030473 0 M3IN 10130 005245 0 DPP3: LDA TK 10131 000013 0 EXA 10132 171020 0 OTK 10133 005243 0 LDA TA 10134 073244 0 LDX TX 10135 000401 0 ENB M2I 10136 103113 0 JMP M2I3 I 10137 000000 0 M2I4: INT M2I /MODEM 4 ENTRANCE 10140 000011 0 DXA 10141 033244 0 STX TX 10142 072116 0 LDX THREE 10143 0 M2I4A: BSS 1 10144 000043 0 INK 10145 011245 0 STA TK 10146 070474 0 DEFSTAT M4ERR,MI1C 00602 031246 0 31776 010146 0 32016 070474 0 10147 003231 0 M4OK: JMP M2I0 10150 004027 0 DIS4: LDA M4INBP+1 10151 017625 0 SUB (BUFE-ACKH) 10152 010026 0 STA M4INBP 10153 030474 0 M4IN 10154 005245 0 DPP4: LDA TK 10155 000013 0 EXA 10156 171020 0 OTK 10157 005243 0 LDA TA 10160 073244 0 LDX TX 10161 000401 0 ENB M2I 10162 103137 0 JMP M2I4 I *** THIS DOCUMENT MAY CONTAIN BBN PROPRIETARY INFORMATION. *** *** FURNISHED FOR U. S. GOVERNMENT END USE ONLY. *** PAGE 90 IMP,3050,IMP 7:20 PM 9/16/1973 10163 000000 0 M2I5: INT M2I /MODEM 5 ENTRANCE 10164 000011 0 DXA 10165 033244 0 STX TX 10166 072117 0 LDX FOUR 10167 0 M2I5A: BSS 1 10170 000043 0 INK 10171 011245 0 STA TK 10172 070475 0 DEFSTAT M5ERR,MI1D 00603 031256 0 31777 010172 0 32017 070475 0 10173 003231 0 M5OK: JMP M2I0 10174 004031 0 DIS5: LDA M5INBP+1 10175 017625 0 SUB (BUFE-ACKH) 10176 010030 0 STA M5INBP 10177 030475 0 M5IN 10200 005245 0 DPP5: LDA TK 10201 000013 0 EXA 10202 171020 0 OTK 10203 005243 0 LDA TA 10204 073244 0 LDX TX 10205 000401 0 ENB M2I 10206 103163 0 JMP M2I5 I /SOME OFFSETS WE NEED FOR THE FIRST MODEM INPUT TO GRAB A BU DIS1O=DIS1-0-M2I1 M2I1AO=M2I1A-0-M2I1 M2I1BO=M2I1B-0-M2I1 10207 011243 0 M2II: STA TA 10210 044064 0 LDA M1INIL X 10211 010000 0 STA 0 /BASE REG FOR OUR INSTR MODIFICATIO 10212 044011 0 LDA DIS1O X 10213 015626 0 ADD (STA-0-LDA) 10214 011223 0 STA M2II1 10215 104324 0 LDA FREE I 10216 101040 0 SNZ 10217 003227 0 JMP M2II2 10220 026324 0 IMA FREE 10221 024563 0 IRS NFS 10222 015627 0 ADD (BUFE 0 I) 10223 0 M2II1: BSS 1 /SET UP FIRST REAL INPUT BUFFER 10224 005207 0 LDA M2II 10225 050004 0 STA M2I1AO X 10226 042011 0 JMP DIS1O X 10227 005630 0 M2II2: LDA (I 0 1) 10230 042013 0 JMP M2I1BO X *** THIS DOCUMENT MAY CONTAIN BBN PROPRIETARY INFORMATION. *** *** FURNISHED FOR U. S. GOVERNMENT END USE ONLY. *** PAGE 91 IMP,3050,IMP 7:20 PM 9/16/1973 10231 032674 0 M2I0: STX MP /SAVE ACTIVE MODEM NO 10232 045254 0 LDA LEND X /PICK UP END-OF-LINE BIT FOR THIS MI 10233 011261 0 STA LENDT 10234 104324 0 LDA FREE I /GET PKT FOR FREE LIST 10235 101040 0 DEFSTAT SNZ, MI3 00604 031217 0 32000 010235 0 32020 101040 0 10236 143604 0 JMP DIS XI /FREE LIST EMPTY - INPUT LOST 10237 024563 0 IRS NFS 10240 026324 0 IMA FREE 10241 015631 0 ADD (ACKH 0 I) /SET UP DMC START INPUT PNTR 10242 143262 0 JMP DIP XI /DISPATCH TO SEPARATE CODE FOR EACH LEV VAR 10243 V TA: BSS 1 /SAVE A REG 10244 V TX: BSS 1 /SAVE X REG 10245 V TK: BSS 1 /SAVE KEYS 10246 V TAR: BSS 1 /SAVE ADDRET 10247 010053 V M2IOK: M1OK 10250 010077 V M2OK 10251 010123 V M3OK 10252 010147 V M4OK 10253 010173 V M5OK 10254 V LEND: BSS CH /ENDBIT ON=HIGH NO IMP /SIGN BIT ON= DEAD LINE 10261 V LENDT: BSS 1 /TEMP BECAUSE OF ONLY ONE X REG *** THIS DOCUMENT MAY CONTAIN BBN PROPRIETARY INFORMATION. *** *** FURNISHED FOR U. S. GOVERNMENT END USE ONLY. *** PAGE 92 IMP,3050,IMP 7:20 PM 9/16/1973 LEV CON 10262 010317 C DIP: DP1 10263 010311 C DP2 10264 C SATDEF DP3 02244 010264 C 02274 010303 C 02324 010303 C 10265 010275 C DP4 10266 010267 C DP5 LEV M2I 10267 072030 0 DP5: LDX M5INBP 10270 010030 0 STA M5INBP 10271 015625 0 ADD (BUFE-ACKH) 10272 026031 0 IMA M5INBP+1 10273 030475 0 M5IN 10274 003324 0 JMP DIPE 10275 072026 0 DP4: LDX M4INBP 10276 010026 0 STA M4INBP 10277 015625 0 ADD (BUFE-ACKH) 10300 026027 0 IMA M4INBP+1 10301 030474 0 M4IN 10302 003324 0 JMP DIPE 10303 072024 0 DP3: LDX M3INBP 10304 010024 0 STA M3INBP 10305 015625 0 ADD (BUFE-ACKH) 10306 026025 0 IMA M3INBP+1 10307 030473 0 M3IN 10310 003324 0 JMP DIPE 10311 072022 0 DP2: LDX M2INBP 10312 010022 0 STA M2INBP 10313 015625 0 ADD (BUFE-ACKH) 10314 026023 0 IMA M2INBP+1 10315 030472 0 M2IN 10316 003324 0 JMP DIPE 10317 072020 0 DP1: LDX M1INBP /PICK UP OUR DMC INPUT PNTR 10320 010020 0 STA M1INBP /STORE NEW DMC INPUT PNTR 10321 015625 0 ADD (BUFE-ACKH) /COMPUTE NEW DMC END PN+' 10322 026021 0 IMA M1INBP+1 /SWAP FOR CURRENT END PNTR 10323 030471 0 M1IN /DO NEW INPUT OCP *** THIS DOCUMENT MAY CONTAIN BBN PROPRIETARY INFORMATION. *** *** FURNISHED FOR U. S. GOVERNMENT END USE ONLY. *** PAGE 93 IMP,3050,IMP 7:20 PM 9/16/1973 10324 017627 0 DIPE: SUB (BUFE 0 I) /GET OLD PKT PNTR + SAVE IN X 10325 011611 0 STA M2ISP /SAVE FOR TASK-ING OR FLUSHING 10326 026000 0 IMA 0 /SWAP IT FOR END PNTR 10327 017630 0 SUB (1 0 I) /ADJUST IT FOR ONE OFF 10330 050111 0 STA BUFE X 0"A"TWOQ /SAVE IT IN PKT END PNTR 10331 140040 0 CRA 10332 050000 0 STA 0 X /CLEAR CHAIN PNTR 10333 044005 0 LDA HEAD X 10334 100400 0 SPL 0"A"SNDCOR 10335 101100 0 SLN 0"A"LINETS 10336 100000 0 SKP /ALLOW SNDCOR W/O CHKSUM 10337 103632 0 JMP (M2IRQC) I /SEND CORE REQUEST 10340 005633 0 LDA (M2IADR) 10341 026111 0 IMA ADDRET /SET UP ADD CHAIN RETURN FOR M2I 10342 011246 0 STA TAR /AND SAVE CURRENT OWNER OF ADDER 10343 004000 0 LDA 0 10344 056111 0 SUB BUFE X /COMPUTE BUFFER LENGTH 10345 015634 0 ADD (ADDBOT+ACKH) /ADD IN TABLE OFFSET 10346 011351 0 STA M2IADJ /AND SAVE AS ADD DISPATCH 10347 017635 0 SUB (ADDBOT) /GET -(NO OF WORDS) IN A 10350 103351 0 JMP M2IADJ I /AND JMP INTO ADD CHAIN 10351 0 M2IADJ: BSS 1 10352 100040 0 M2IADR: SZE /IS THE CHECKSUM GOOD? DEFPLC [NOP HERE TO ACCEPT BAD CHECKSUM PACKETS] 10353 003402 0 JMP PKTCH1 /NO, REPORT AS AN ERROR 10354 005246 0 LDA TAR 10355 010111 0 STA ADDRET /AND RESTORE PREVIOUS OWNER OF ADC 10356 131040 0 RDCLOK 10357 003356 0 JMP .-1 10360 050001 0 STA IT X /SAVE INPUT TIME- 100 MS CLOCK 10361 004674 0 LDA MP 0"A"INPCHN"A"HSTMOD 10362 050003 0 STA INCH X /SAVE INPUT MODEM NO 10363 044005 0 LDA HEAD X 10364 101100 0 SLN 0"A"LINETS /LT OR ROUTE? 10365 003420 0 JMP M2IPKT /NO 10366 040677 0 ARR 1 10367 100100 0 SLZ 0"A"NULPKT /IS THIS A NULL PKT OF ACKS ONLY? 10370 003404 0 JMP M2INUL /YES 10371 040677 0 ARR 1 10372 100100 0 SLZ 0"A"GETCOR /A RELOAD DEMAND? 10373 103636 0 JMP (M2IDMC) I /YES 10374 073611 0 M2T0: LDX M2ISP 10375 132401 0 M2T: STX ETQ I /PUT ON TASK QUEUE 10376 032401 0 STX ETQ 10377 030041 0 TASK /POKE TASK INTERRUPT 10400 072674 0 LDX MP 10401 143577 0 JMP DIPP XI /DISMISS INTERRUPT 10402 072674 0 PKTCH1: LDX MP DEFHLT [SOFTWARE CHECKSUM ERROR IN PACKET] 10403 121637 0 JST (PKTCHK) I *** THIS DOCUMENT MAY CONTAIN BBN PROPRIETARY INFORMATION. *** *** FURNISHED FOR U. S. GOVERNMENT END USE ONLY. *** PAGE 94 IMP,3050,IMP 7:20 PM 9/16/1973 10404 044005 0 M2INUL: LDA HEAD X /GOT A NULL PACKET OF ACKS 10405 141140 0 ICL /PICK UP IMP NO 10406 012106 0 ERA MINE /COMPARE WITH MINE 10407 101040 0 SNZ /IS THIS LINE LOOPED? 10410 003375 0 JMP M2T /YES, GIVE NULL TO TASK, IGNORE ACK1 10411 004420 0 LDA THD /PICK UP CHAN TO HIGH NO IMP 10412 012674 0 ERA MP /COMPARE WITH THIS LINE NO 10413 100040 0 SZE /IS IT THIS LINE? 10414 003426 0 JMP M2IACK /NO 10415 044006 0 LDA HEAD1 X /YES, SO COPY IN HIS VALUE FOR SYNC 10416 010417 0 STA SYNC /KEEPING GLOBAL TIME THROUGHOUT NET 10417 003426 0 JMP M2IACK /NO, PROCESS ACKS, THEN GIVE TO TA 1 10420 044007 0 M2IPKT: LDA HEAD2 X 10421 007640 0 ANA (ENDBIT) 10422 013261 0 ERA LENDT 10423 101400 0 SMI /IS THIS LINE DOWN? 10424 101040 0 SNZ /IS THIS PKT FROM US? 10425 103641 0 JMP (M2IFRE) I /YES. THROW AWAY PKT 10426 044004 0 M2IACK: LDA ACKH X 10427 140401 0 CMA 10430 141050 0 CAL 0"A"ACKTAB 10431 011612 0 STA ACKT /ACKS FROM PACKET 10432 072674 0 LDX MP 10433 052641 0 ERA TSEX X 10434 046653 0 ANA CHFREE X /SHOULD BE NO ACKS ON FREE SLOTS 10435 100040 0 SZE DEFHLT [SPURIOUS ACK] 10436 121642 0 JST (PKTCH2) I 10437 005612 0 LDA ACKT 10440 066641 0 IMA TSEX X /COMPARE WITH WHAT WE GOT 10441 052641 0 ERA TSEX X 10442 101040 0 SNZ 10443 003374 0 JMP M2T0 /NO ACKS, SO QUIT 10444 011612 0 STA ACKT /SAVE ACKS TO PROCESS 10445 052653 0 ERA CHFREE X /FREE UR ACKED CHANNELS 10446 050653 0 STA CHFREE X 10447 005612 0 LDA ACKT *** THIS DOCUMENT MAY CONTAIN BBN PROPRIETARY INFORMATION. *** *** FURNISHED FOR U. S. GOVERNMENT END USE ONLY. *** PAGE 95 IMP,3050,IMP 7:20 PM 9/16/1973 10450 173643 0 ACKLOP: LDX (I2MTAB 0 X) I 10451 140407 0 TCA 10452 007612 0 ANA ACKT /GET LOWEST BIT THAT TRANSITIONED 10453 013612 0 ERA ACKT /TURN IT OFF 10454 027612 0 IMA ACKT /UPDATE SET OF ACKS TO PROCESS 10455 013612 0 ERA ACKT /AND GO PROCESS THIS ONE 10456 023644 0 CAS (20) 10457 003547 0 JMP ACK567 10460 003563 0 JMP ACK4 10461 022117 0 CAS FOUR 10462 003566 0 JMP ACK3 10463 003571 0 JMP ACK2 10464 101100 0 SLN 10465 003574 0 JMP ACK1 10466 140040 0 CRA 10467 066000 0 IMA 0 X 10470 072674 0 ACKS: LDX MP 10471 023645 0 CAS (1777) /IS THIS A TRUE PKT PNTR? 10472 003475 0 JMP ACKGUD /YES 10473 101000 0 NOP DEFHLT [QUASI-IMPOSSIBLE SPURIOUS ACK] 10474 121642 0 JST (PKTCH2) I /DEBUG SPURIOUS ACK 10475 062634 0 ACKGUD: CAS I2MNXT X /IS THIS THE PKT CURRENTLY ON THE L 10476 100000 0 SKP /NO 10477 003536 0 JMP ACKSYN /YES, WE CANT FREE IT YET 10500 010000 0 STA 0 10501 044111 0 LDA BUFE X 10502 100400 0 SPL 0"A"TWOQ 10503 003511 0 JMP FREE1 /ON TWO QUEUES 10504 004324 0 LDA FREE /ON ONE ONLY, SO FREE 10505 050000 0 STA 0 X 10506 032324 0 STX FREE 10507 024537 0 IRS NFA 10510 003513 0 JMP FREE2 10511 140100 0 FREE1: SSP 0"A"TWOQ 10512 050111 0 STA BUFE X /MARK AS ON ONE QUEUE NOW 10513 024564 0 FREE2: IRS NSFS *** THIS DOCUMENT MAY CONTAIN BBN PROPRIETARY INFORMATION. *** *** FURNISHED FOR U. S. GOVERNMENT END USE ONLY. *** PAGE 96 IMP,3050,IMP 7:20 PM 9/16/1973 10514 044002 0 ACKS1: LDA PTRT X /TRACING? 10515 100040 0 SZE 10516 003543 0 JMP ACTR2 /GO DO IT 10517 044111 0 ACTR1: LDA BUFE X /GET PACKET LENGTH 10520 140100 0 SSP 0"A"TWOQ 10521 016000 0 SUB 0 10522 016116 0 SUB THREE 0"A"[ACKH-1] 10523 072674 0 LDX MP 10524 055613 0 ADD THRUPW X 10525 100400 0 SPL 10526 004112 0 LDA SIGN /MARK OFLO 10527 051613 0 STA THRUPW X 10530 065620 0 IRS THRUPT X 10531 101000 0 NOP 10532 005612 0 LDA ACKT 10533 101040 0 SNZ /HAVE WE PROCESSED ALL THE ACKS? 10534 003374 0 JMP M2T0 /YES, SO QUIT 10535 003450 0 JMP ACKLOP 10536 140500 0 ACKSYN: SSM 10537 050634 0 STA I2MNXT X 10540 140100 0 SSP 10541 010000 0 STA 0 10542 003514 0 JMP ACKS1 /MARK THE BUFFER AS ACKED 10543 121646 0 ACTR2: JST (TRCDUN) I /TRACING PACKET 10544 072674 0 LDX MP /NEEDED FOR TRCDUN 10545 073611 0 LDX M2ISP 10546 003517 0 JMP ACTR1 10547 022753 0 ACK567: CAS C100 10550 003560 0 JMP ACK7 10551 003555 0 JMP ACK6 10552 140040 0 ACK5: CRA 10553 066005 0 IMA 5 X 10554 003470 0 JMP ACKS 10555 140040 0 ACK6: CRA 10556 066006 0 IMA 6 X 10557 003470 0 JMP ACKS 10560 140040 0 ACK7: CRA 10561 066007 0 IMA 7 X 10562 003470 0 JMP ACKS 10563 140040 0 ACK4: CRA 10564 066004 0 IMA 4 X 10565 003470 0 JMP ACKS 10566 140040 0 ACK3: CRA 10567 066003 0 IMA 3 X 10570 003470 0 JMP ACKS 10571 140040 0 ACK2: CRA 10572 066002 0 IMA 2 X 10573 003470 0 JMP ACKS 10574 140040 0 ACK1: CRA 10575 066001 0 IMA 1 X 10576 003470 0 JMP ACKS *** THIS DOCUMENT MAY CONTAIN BBN PROPRIETARY INFORMATION. *** *** FURNISHED FOR U. S. GOVERNMENT END USE ONLY. *** PAGE 97 IMP,3050,IMP 7:20 PM 9/16/1973 LEV CON 10577 010060 C DIPP: DPP1 10600 010104 C DPP2 10601 010130 C DPP3 10602 010154 C DPP4 10603 010200 C DPP5 10604 010054 C DIS: DIS1 10605 010100 C DIS2 10606 010124 C DIS3 10607 010150 C DIS4 10610 010174 C DIS5 LEV VAR 10611 V M2ISP: BSS 1 /SAVED PACKET POINTER 10612 V ACKT: BSS 1 10613 V THRUPW: BSS CH 10620 V THRUPT: BSS CH *** THIS DOCUMENT MAY CONTAIN BBN PROPRIETARY INFORMATION. *** *** FURNISHED FOR U. S. GOVERNMENT END USE ONLY. *** PAGE 98 IMP,3050,IMP 7:20 PM 9/16/1973 10625 000105 C LEV CON CONSTANTS 10626 004000 C 10627 100111 C 10630 100001 C 10631 100004 C 10632 011116 C 10633 010352 C 10634 001562 C 10635 001556 C 10636 011170 C 10637 011101 C 10640 001000 C 10641 011124 C 10642 011127 C 10643 040622 C 10644 000020 C 10645 001777 C 10646 011144 C 02417 175655 C PAGEND 10,UNCON,5 *** THIS DOCUMENT MAY CONTAIN BBN PROPRIETARY INFORMATION. *** *** FURNISHED FOR U. S. GOVERNMENT END USE ONLY. *** PAGE 99 IMP,3050,IMP 7:20 PM 9/16/1973 /MODEM TO IMP PACKET-ERROR STUFF LEV M2I 11101 000000 0 PKTCHK: 0 /ADDRESS OF PKT ERROR 11102 120745 0 JST HLTNCC I /REPORT TRAP TO NCC 11103 105366 0 PKTCHC: LDA (TAR) I 11104 010111 0 STA ADDRET /RESTORE PREVIOUS OWNER OF ADDER 11105 004537 0 LDA NFA 11106 016563 0 SUB NFS 11107 016751 0 SUB TEN /LEAVE MORE THAN MINF 11110 100400 0 SPL /ROOM TO SEND PKT TO DIAG? 11111 003123 0 JMP NODIAG /NO 11112 105367 0 LDA (M2ISP) I /PICK UP PKT PNTR 11113 026342 0 IMA DIAGQ /PUT ON DIAG QUEUE 11114 111370 0 STA (M2ISP 0 I) I /AND SET UP CHAIN PNTR 11115 103371 0 JMP (DIPP 0 XI) I /DISMISS 11116 072674 0 M2IRQC: LDX MP 11117 004124 0 LDA MINUS4 11120 050265 0 STA SLT X 11121 004112 0 LDA SIGN 0"A"SNDCOR 11122 050421 0 STA SIHY X /MARK TO SEND CORE 11123 173367 0 NODIAG: LDX (M2ISP) I /AND FREE BAD PKT 11124 120671 0 M2IFRE: JST FLUSHI I 11125 072674 0 LDX MP 11126 103371 0 JMP (DIPP 0 XI) I 11127 000000 0 PKTCH2: 0 11130 120745 0 JST HLTNCC I 11131 021133 0 JST KILLIN /KILL LINES FOR SPURIOUS ACKS 11132 003103 0 JMP PKTCHC /CONTINUE KILTIM=10. /LINE HELD DEAD TIME LEV [M2I,T.O,TSK,BCK] 11133 000000 0 KILLIN: 0 /SUBR TO STOP INPUT AND OUTPUT ON 11134 005372 0 LDA (NOP) /KILL THE LINE INSTANTLY 11135 111373 0 STA (M2IOK 0 XI) I 11136 005374 0 LDA (-KILTIM) /OTHER IMP WILL SEE THE LINE GO D[ 11137 050265 0 STA SLT X 11140 050433 0 STA LINE X /FOR NCC AND RTGO 11141 140040 0 KILL2: CRA 11142 050160 0 KILL3: STA NEIGHB X 11143 103133 0 KILL4: JMP KILLIN I *** THIS DOCUMENT MAY CONTAIN BBN PROPRIETARY INFORMATION. *** *** FURNISHED FOR U. S. GOVERNMENT END USE ONLY. *** PAGE 100 IMP,3050,IMP 7:20 PM 9/16/1973 LEV [M2I,I2H] 11144 000000 0 TRCDUN: 0 /FINISH TRACE BLOCK 11145 011167 0 STA TRCD 11146 044001 0 LDA ST X 11147 073167 0 LDX TRCD 11150 050003 0 STA TST X 11151 131040 0 RDCLOK 11152 003151 0 JMP .-1 11153 050004 0 STA TAT X 11154 004112 0 LDA SIGN 11155 052012 0 ERA TDONE X 11156 050012 0 STA TDONE X 11157 005167 0 LDA TRCD 11160 015375 0 ADD (TQUE) 11161 011167 0 STA TRCD 11162 105144 0 LDA TRCDUN I 11163 011164 0 STA .+1 11164 0 BSS 1 /LDX FROM PAGE 0 11165 133167 0 STX TRCD I 11166 103144 0 JMP TRCDUN I LEV VAR 11167 V TRCD: BSS 1 /TRCDUN PTR LEV M2I 11170 044007 0 M2IDMC: LDA HEAD2 X /RELOAD DEMAND 11171 013205 0 ERA PASWRD /CHECK PASSWORD 11172 100040 0 SZE /KOSHER? 11173 003203 0 JMP M2IDM1 /NO 11174 044004 0 LDA ACKH X /LOOK AT DEMAND 11175 101400 0 SMI /PANIC DEMAND? 11176 103376 0 JMP (1004) I /YES. INSTANT RELOAD, A=MODEM NUMBE 11177 004674 0 LDA MP /NO, USE OUR MODEM NO. 11200 141206 0 AOA /(COUNTING 1-4) 11201 010137 0 STA SW3FG /AND NICE-STOP/RELOAD 11202 003124 0 JMP M2IFRE 11203 072674 0 M2IDM1: LDX MP DEFHLT [RELOAD DEMAND WITH BAD PASSWORD] 11204 021101 0 JST PKTCHK DEFPLC [DEMAND RELOAD PASSWORD] 11205 175461 0 PASWRD: 175461 /KEEP NEXT LOCATIONS IN ORDER 11206 177777 0 DMNDCR: -1 /ACKH. USED FOR RELOAD CODE 11207 000005 0 GETCOR 0 LINETS /HEADER 11210 000000 0 0 /SYNC 11211 000000 0 0 /PASSWORD PUT HERE MANUALLY 11212 0 BSS 1 /CHECKSUM *** THIS DOCUMENT MAY CONTAIN BBN PROPRIETARY INFORMATION. *** *** FURNISHED FOR U. S. GOVERNMENT END USE ONLY. *** PAGE 101 IMP,3050,IMP 7:20 PM 9/16/1973 /LINE SPEED COMPUTATIONS LEV I2M LCK ALL 11213 012114 2 0 I2MRM: ERA ONE 0"A"RM /THIS IS RM CLEAR FLAG 11214 111377 2 0 STA (RMFLG 0 X) I /NOW CHK TO SEE IF TIME I: 11215 100400 2 0 SPL /SIGN MINUS IF FIRST TIME THROUGH 11216 003323 2 0 JMP I2MRMI /INITIALIZATION 11217 141140 2 0 ICL /SPD TYPE FROM L. HALF INTD RT. 11220 010000 2 0 STA 0 /USED AS INDEX INTO MARGIN TABLE 11221 045331 2 0 LDA DELSPD X /GET PERMISSABLE VARIANCE 11222 011360 2 0 STA DELTA 11223 173400 2 0 LDX (OCHN) I /RESTORE CHAN # IN X 11224 055346 2 0 ADD RMLAST X /MAXIMUM ACCEPTABLE TIME FOR THIS M: 11225 123401 2 0 CAS (THIST) I /COMP W/ACTUAL TIME FOR THIS MSG 11226 003240 2 0 JMP I2MRMA /MAX>THIS, SO FAR SO GOOD 11227 003245 2 0 JMP I2MRMB /MAX=THIS, ALL OK, IN SPEC DEFHLT [LINE SPEED DECREASED] 11230 021231 2 0 I2MRMD: JST I2MSCG 11231 000000 2 0 I2MSCG: 0 11232 120745 2 0 JST HLTNCC I /SEND MSG TO NCC 11233 105377 2 0 LDA (RMFLG 0 X) I /DO HOLD DOWN 11234 007402 2 0 ANA (0 0 177777"X"SHD) 11235 013403 2 0 ERA (SHD) /(6) SPEED HOLD DOWN 11236 111377 2 0 STA (RMFLG 0 X) I /STORED IN RMFLG 11237 003260 2 0 JMP I2MRMC /PUT THIST INTO LAST AND QUIT /TIME WAS MIN? 11240 017360 2 0 I2MRMA: SUB DELTA 11241 017360 2 0 SUB DELTA /MIN ACCEPTABLE TIME 11242 123401 2 0 CAS (THIST) I /COMP W/ACTUAL TIME DEFHLT [LINE SPEED INCREASED] 11243 021231 2 0 JST I2MSCG /MIN>THIS, TOO SLOW 11244 101000 2 0 NOP /MIN=THIS, ALL OK 11245 105377 2 0 I2MRMB: LDA (RMFLG 0 X) I /MINTHIS) 11275 003300 2 0 JMP I2MRMH / " " " " = " 11276 024000 2 0 IRS 0 /NOPE, TRY NEXT SLOWER TYPE 11277 003272 2 0 JMP I2MRMG 11300 045340 2 0 I2MRMH: LDA LINDTT+NSPD-1 X /GET LINE DEAD TIME FOR T1 11301 011360 2 0 STA DELTA /AND SAVE IN TEMP 11302 004000 2 0 LDA 0 /INDEX= -TYPE 11303 140407 2 0 TCA /COMPLIMENT 11304 141340 2 0 ICA /INTO LEFT HALF 11305 173400 2 0 LDX (OCHN) I /RESTORE CHAN IN X 11306 111377 2 0 STA (RMFLG 0 X) I 0"A"SHD"A"RM /BACK INTO RMFLT 11307 141340 2 0 ICA /GET SPEED TYPE 11310 015407 2 0 ADD (RMCLKS) /ADD TABLE ADDRESS 11311 051353 2 0 STA RMCLKP X /SAVE FOR USE IN RSTOUT 11312 005360 2 0 LDA DELTA /PICK UP TEMP 11313 051361 2 0 STA LINDT X /AND SAVE AS THIS LINE'S DEAD TIME 11314 044433 2 0 LDA LINE X 11315 100040 2 0 SZE /IS LINE UP? 11316 021133 2 0 JST KILLIN /NO, RESET TIME IN CASE JUST RELO7 11317 105401 2 0 LDA (THIST) I /PUT (THIS+LAST)/2 INTO ACTUAL 11320 055346 2 0 ADD RMLAST X 11321 040477 2 0 LGR 1 11322 003257 2 0 JMP I2MRMF 11323 140100 2 0 I2MRMI: SSP /INITIALIZE FIRST TIME THROUGH 11324 111377 2 0 STA (RMFLG 0 X) I /CLEAR INIT BIT TOO, 11325 003260 2 0 JMP I2MRMC /PUT THIS INTO LAST AND QUIT *** THIS DOCUMENT MAY CONTAIN BBN PROPRIETARY INFORMATION. *** *** FURNISHED FOR U. S. GOVERNMENT END USE ONLY. *** PAGE 103 IMP,3050,IMP 7:20 PM 9/16/1973 LEV CON /NSPD-1 ENTRIES 11326 000161 C TIMSPC: 161 /(125K)MAX TIME A RM TAKES IN TYP1 ] 11327 001066 C 1066 /(25K) TYPE 2 11330 004202 C 4202 /(6.5K) TYPE 1 (ALL SLOWER TYPE 0) /NSPD ENTRIES 11331 000377 C DELSPD: 377 /00 10X OF EXPECTED TIME FOR RM (+8I 11332 000177 C 177 /01 11333 000060 C 60 /10 11334 000060 C 60 /11 /NSPD ENTRIES 11335 177324 C LINDTT: 0 0-PTCK"T"5 /FOR 250KBS 11336 177704 C 0 0-PTCK /FOR 50KBS 11337 177764 C 0 0-PTCK"Q"5 /FOR 10KBS 11340 177771 C 0 0-PTCK"Q"10 /LINE DEAD TIME FOR 5KBS LEV VAR 11341 V RMTACT: BSS CH /ACTUAL TIME FOR RM (AVERAGED) 11346 V RMLAST: BSS CH /TIME FOR LAST RM IN 100 MU SEC'S 11353 V RMCLKP: BSS CH /PTR TO ENTRY IN RMCLKS 11360 V DELTA: BSS 1 /DELSPD ENTRY FOR THIS LINE 11361 V LINDT: BSS CH /LINE HELD DEAD TIMES 11366 010246 C LEV CON CONSTANTS 11367 010611 C 11370 110611 C 11371 150577 C 11372 101000 C 11373 150247 C 11374 177766 C 11375 000011 C 11376 001004 C 11377 052620 C 11400 012654 C 11401 012644 C 11402 177771 C 11403 000006 C 11404 012156 C 11405 000002 C 11406 177775 C 11407 020274 C 02420 173433 C PAGEND 11,UNCON,4 *** THIS DOCUMENT MAY CONTAIN BBN PROPRIETARY INFORMATION. *** *** FURNISHED FOR U. S. GOVERNMENT END USE ONLY. *** PAGE 104 IMP,3050,IMP 7:20 PM 9/16/1973 /IMP TO MODEM (I2M) PAGI2M: LEV I2M 00071 012127 2 M1OTIL/ I2M1 00072 012123 2 M2OTIL/ I2M2 00073 012117 2 M3OTIL/ I2M3 00074 012113 2 M4OTIL/ I2M4 00075 012107 2 M5OTIL/ I2M5 PAGI2M/ LEV VAR 12103 V TATA: BSS 1 /I2M TEMPS 12104 V TXTX: BSS 1 12105 V TCTC: BSS 1 12106 V IRET: BSS 1 /IMP TO MODEM INTERRUPTS COME TO THIS PAGE. 12107 000000 2 0 I2M5: INT I2M 12110 033104 2 0 STX TXTX 12111 072117 2 0 LDX FOUR 12112 003132 2 0 JMP I2M0 12113 000000 2 0 I2M4: INT I2M 12114 033104 2 0 STX TXTX 12115 072116 2 0 LDX THREE 12116 003132 2 0 JMP I2M0 12117 000000 2 0 I2M3: INT I2M 12120 033104 2 0 STX TXTX 12121 072115 2 0 LDX TWO 12122 003132 2 0 JMP I2M0 12123 000000 2 0 I2M2: INT I2M 12124 033104 2 0 STX TXTX 12125 072114 2 0 LDX ONE 12126 003132 2 0 JMP I2M0 12127 000000 2 0 I2M1: INT I2M 12130 033104 2 0 STX TXTX 12131 072113 2 0 LDX ZERO *** THIS DOCUMENT MAY CONTAIN BBN PROPRIETARY INFORMATION. *** *** FURNISHED FOR U. S. GOVERNMENT END USE ONLY. *** PAGE 105 IMP,3050,IMP 7:20 PM 9/16/1973 12132 033654 2 0 I2M0: STX OCHN /SAVE MODEM NUMBER 12133 011103 2 0 STA TATA 12134 000011 2 0 DXA 12135 003136 2 0 JMP .+1 12136 000043 2 0 INK 12137 011105 2 0 STA TCTC 12140 004416 2 0 LDA TIMES /CURRENT 640 MS CLOCK 12141 057632 2 0 SUB TIM640 X /INITIAL READING FOR THIS MSG 12142 017712 2 0 SUB (10.) /10.24 TICKS/WRAP OF 100 MUS CLK 12143 101400 2 0 SMI /<10 TICKS? 12144 003516 2 0 JMP RAPT /NO, MSG TOOK TOO LONG, CLOCK WRAPPI 12145 131040 2 0 RDCLOK /100 MU SEC CLOCK 12146 003145 2 0 JMP .-1 12147 057637 2 0 SUB TIM100 X /MINUS START TIMER 12150 011644 2 0 STA THIST /TIME FOR THIS MESSAGE 12151 055625 2 0 ADD CUMTIM X /ADD TO TOTAL 12152 051625 2 0 STA CUMTIM X /AND SAVE 12153 045620 2 0 LDA RMFLG X /ROUTING MSG FLAGS 12154 100100 2 0 SLZ /WAS THIS A ROUTING MESSAGE? 12155 103713 2 0 JMP (I2MRM) I /YES, GO DO LINE SPEED COMPUTNS 12156 004502 2 0 I2MS: LDA MOM /LOAD MODEM OUTPUT MASK 12157 170120 2 0 SMK INTM /SET PRI INTERRUPT 12160 026134 2 0 IMA PRIM 12161 011652 2 0 STA TMTM 12162 140040 2 0 CRA 12163 066634 2 0 IMA I2MNXT X /PKT PNTR FOR NEXT OUTPUT FOR CHL 12164 101400 2 0 SMI /WAS THERE AN ACK FOR THE PKT WE L 1 12165 003173 2 0 JMP I2MALL /NO, DO NOT RELEASE PKT 12166 140100 2 0 SSP 12167 010000 2 0 STA 0 12170 120671 2 0 JST FLUSHI I /YES, SO WE CAN FREE IT NOW 12171 024564 2 0 IRS NSFS 12172 073654 2 0 LDX OCHN *** THIS DOCUMENT MAY CONTAIN BBN PROPRIETARY INFORMATION. *** *** FURNISHED FOR U. S. GOVERNMENT END USE ONLY. *** PAGE 106 IMP,3050,IMP 7:20 PM 9/16/1973 12173 000401 2 0 I2MALL: ENB I2M 12174 044265 2 LDA SLT X 12175 100040 2 SZE /TIME TO SEND A ROUTING MESSAGE? 12176 003276 2 JMP I2MLT /YES 12177 045660 2 LDA I2MLST X /PICK UP RING PNTR 12200 141206 2 AOA /ADVANCE IT 12201 062627 2 CAS I2MEND X 12202 101000 2 NOP 12203 044622 2 LDA I2MTAB X /WRAP AROUND 12204 051660 2 STA I2MLST X 12205 001001 2 INH M2I /PREVENT M2I FROM ACKING 12206 145660 2 0 LDA I2MLST XI /WHILE WE LOOK AT THIS SLOT 12207 023714 2 0 CAS (1777) /IS THERE A PKT HERE? 12210 003550 2 0 JMP I2MRET /YES, SEE IF IT IS TOO OLD 12211 073654 2 0 I2MNEW: LDX OCHN /NO, NOTHING TO RETRANSMIT 12212 000401 2 0 ENB I2M 12213 044317 2 LDA SMPQ X 12214 100040 2 SZE /A NEW PRIORITY PACKET TO SEND? 12215 003363 2 JMP I2MPRI /YES 12216 044312 2 LDA SMQ X 12217 100040 2 SZE /A NEW REGULAR PACKET TO SEND? 12220 003375 2 JMP I2MREG /YES 12221 044445 2 LDA SNULL X 12222 101040 2 SNZ /SHOULD WE SEND A NULL PKT? 12223 003500 2 JMP I2MQUT /NO, SO QUIT *** THIS DOCUMENT MAY CONTAIN BBN PROPRIETARY INFORMATION. *** *** FURNISHED FOR U. S. GOVERNMENT END USE ONLY. *** PAGE 107 IMP,3050,IMP 7:20 PM 9/16/1973 12224 140040 2 I2MNUL: CRA /SEND A NULL PKT WITH IHY 12225 066421 2 IMA SIHY X 12226 100400 2 SPL 0"A"SNDCOR /DID WE GET A REQUEST TO SEND CORE 12227 003262 2 JMP I2MCOR /YES. SO SERVICE IT 12230 100040 2 SZE /DID WE GET IN ANY ROUTING MESSAGES1 12231 005715 2 LDA (IHERDU) /YES. SEND AN I HEARD YOU 12232 013716 2 ERA (LINETS 0 NULPKT) /IN A NULL PKT 12233 141340 2 ICA 12234 012106 2 ERA MINE 12235 141340 2 ICA 12236 151704 2 STA NULPTR XI /SET UP HEADER OF NULL PKT 12237 045704 2 LDA NULPTR X /PICK UP PNTR TO NULL AREA 12240 016114 2 SUB ONE 12241 151665 2 STA MOPX XI /SET UP OUR OUTPUT AREA 12242 011655 2 STA ACKWRD 12243 014117 2 ADD FOUR 0"A"[MINPL-ACKH] /MIN PACKET LENT 12244 151672 2 STA MOP1 XI 12245 044646 2 LDA RSEX X /PUT IN ACKS 12246 073655 2 LDX ACKWRD 12247 050000 2 STA ACKH-ACKH X 12250 004417 2 LDA SYNC /PUTTING SYNC TIME INTO NULLS 12251 050002 2 STA HEAD1-ACKH X 12252 004117 2 I2MNLC: LDA FOUR 0"A"[MINPL-ACKH] 12253 056000 2 SUB ACKH-ACKH X /BUILD CKSUM 12254 056001 2 SUB HEAD-ACKH X 12255 056002 2 SUB HEAD1-ACKH X 12256 056003 2 SUB HEAD2-ACKH X 12257 050004 2 STA HEAD3-ACKH X /AND STORE IT 12260 073654 2 LDX OCHN 12261 003465 2 JMP I2MDN1 12262 005717 2 I2MCOR: LDA (CORELO) 12263 151665 2 STA MOPX XI 12264 005720 2 LDA (COREHI-1) 12265 151672 2 STA MOP1 XI 12266 003467 2 JMP I2MDUN /RETURN TO DO OUTPUT, NO ACKS 12267 005721 2 I2MDMC: LDA (DMNDCR) /SEND 'DEMAND CORE' 12270 151665 2 STA MOPX XI 12271 014117 2 ADD FOUR 0"A"[MINPL-ACKH] 12272 151672 2 STA MOP1 XI 12273 016117 2 SUB FOUR 0"A"[MINPL-ACKH] 12274 010000 2 STA 0 12275 003252 2 JMP I2MNLC /GET CHECKSUM AND SEND IT 12276 100400 2 I2MLT: SPL /ARE WE HOLDING LINE DEAD? 12277 003500 2 JMP I2MQUT /YES, GO NO FURTHER 12300 016114 2 I2ML2: SUB ONE 12301 050265 2 I2ML3: STA SLT X 12302 022114 2 I2ML4: CAS ONE /RELOAD DEMAND TO SEND? 12303 003267 2 JMP I2MDMC /YES 12304 003224 2 JMP I2MNUL /NULL TO SEND /---FALL THROUGH TO SEND ROUTING *** THIS DOCUMENT MAY CONTAIN BBN PROPRIETARY INFORMATION. *** *** FURNISHED FOR U. S. GOVERNMENT END USE ONLY. *** PAGE 108 IMP,3050,IMP 7:20 PM 9/16/1973 /THE WORDS FROM I2MCK1 TO I2MCK2 ARE CHECKSUMMED CHK=0 12305 073361 2 I2MCK1: K LDX I2MCKX /PICK UP -[# OF WDS IN CODE TO CK[ 1 12306 055363 2 K ADD I2MCK2+1 X /ADD THEM (NOTE 0 IN AN I1 12307 024000 2 K IRS 0 12310 003306 2 K JMP .-2 12311 100040 2 K SZE /DIFFERENT? RELOAD [I2M ROUTING CODE BROKEN] 12312 120061 2 K JST SWDTIL I /SOFTWARE WDT, DO A RELOAD 12313 073654 2 K LDX OCHN 12314 125353 2 K IRS IMHSI I /KEEP STAT COUNTER 12315 101000 2 K NOP 12316 004660 2 K LDA RST.O /GET OUTPUT PTR 12317 015355 2 K ADD I2MRC1 12320 151665 2 K STA MOPX XI /BEG POINTER 12321 017356 2 K SUB I2MRC2 12322 151672 2 K STA MOP1 XI 12323 015357 2 K ADD I2MRC3 12324 010000 2 K STA 0 12325 005354 2 K LDA I2MRAP /(RUTADR) 12326 026111 2 K IMA ADDRET /SAVE CURRENT OWNER OF ADDER 12327 011653 2 K STA TARTAR 12330 005356 2 K LDA I2MRC2 /(-NIMP - HEAD1 + ACKH) 12331 103332 2 K JMP .+1 I /JUMP INTO RIGHT PLACE IN ADD CHAI 12332 001454 2 K ADDBOT+0-NIMP-HEAD1+ACKH 12333 140407 2 RUTADR: K TCA 12334 072113 2 K LDX ZERO /USE TO FIND CKSUM POST INDEXED 12335 112660 2 K ERA RST.O I /COMPARE CKSUM W/ THAT GENERATED BY 12336 027653 2 K IMA TARTAR 12337 010111 2 K STA ADDRET 12340 005653 2 K LDA TARTAR 12341 073654 2 K LDX OCHN 12342 001001 2 K .INH LCK ALL 12343 100040 2 0 K SZE /DIFFERENT? DEFHLT [ROUTING MESSAGE CHECKSUM ERROR - INTRA IMP] 12344 021571 2 0 K JST I2MHLT 12345 141206 2 0 K AOA /1 12346 053620 2 0 K ERA RMFLG X /SAYS ROUTING MSG GOING OUT 12347 051620 2 0 K STA RMFLG X 12350 105360 2 0 K LDA I2MRP I /(RSTSN) 12351 051645 2 0 K STA RSTSNO X /SAVE SER # OF LAST OUTPUT 12352 003467 2 0 K JMP I2MDUN LEV CON 12353 071615 C IMHSI: K IMHS 0 X 12354 012333 C I2MRAP: K RUTADR 12355 137675 C I2MRC1: K -X 0-NIMP-HEAD1+ACKH-1 12356 177675 C I2MRC2: K -NIMP-HEAD1+ACKH-1 12357 177671 C I2MRC3: K -NIMP-HEAD1-1 12360 026644 C I2MRP: K RSTSN 12361 177722 C I2MCKX: K I2MCK1-0-I2MCK2-1 /CHECKSUM COUNTER 12362 044107 C I2MCK2: -CHK /CHECKSUM ON CODE GOES HERE *** THIS DOCUMENT MAY CONTAIN BBN PROPRIETARY INFORMATION. *** *** FURNISHED FOR U. S. GOVERNMENT END USE ONLY. *** PAGE 109 IMP,3050,IMP 7:20 PM 9/16/1973 LEV I2M 12363 050634 2 I2MPRI: STA I2MNXT X 12364 140040 2 CRA 12365 166634 2 IMA I2MNXT XI 12366 050317 2 STA SMPQ X 12367 100040 2 SZE 12370 003406 2 JMP I2MGNU 12371 005722 2 LDA (SMPQ) 12372 015654 2 ADD OCHN 12373 050370 2 STA EMPQ X 12374 003406 2 JMP I2MGNU 12375 050634 2 I2MREG: STA I2MNXT X /LOAD WITH TOP OF Q ADDR 12376 140040 2 CRA 12377 166634 2 IMA I2MNXT XI /GET CHAIN PNTR OF NEW REQ 12400 050312 2 STA SMQ X /LINK TO TOP OF Q 12401 100040 2 SZE /WAS THIS LAST? 12402 003406 2 JMP I2MGNU /NO 12403 005723 2 LDA (SMQ) /YES, FIX UP Q PNTRS 12404 015654 2 ADD OCHN 12405 050363 2 STA EMQ X 12406 173724 2 I2MGNU: LDX (I2MNXT 0 X) I /GOT A NEW PKT 12407 133725 2 STX (INCH 0 XI) I /SET UP SLOT PNTR 12410 005726 2 LDA (-200.) /GIVE A PKT 200 TRIES 12411 050003 2 STA INCH X /TO BE ACCEPTED 12412 011657 2 STA I2MREF /MARK AS NEW PKT, DON'T CHECKSUM 12413 073654 2 LDX OCHN 12414 044634 2 LDA I2MNXT X *** THIS DOCUMENT MAY CONTAIN BBN PROPRIETARY INFORMATION. *** *** FURNISHED FOR U. S. GOVERNMENT END USE ONLY. *** PAGE 110 IMP,3050,IMP 7:20 PM 9/16/1973 12415 140100 2 I2MGOT: SSP 12416 015727 2 ADD (ACKH) 12417 151665 2 STA MOPX XI 12420 011655 2 DEFSTAT STA ACKWRD, IM1 00605 031160 2 32001 012420 2 32021 011655 2 12421 173724 2 LDX (I2MNXT 0 X) I 12422 131040 2 RDCLOK 12423 003422 2 JMP .-1 12424 050001 2 STA ST X 12425 044111 2 LDA BUFE X 12426 140100 2 SSP 0"A"TWOQ 12427 073654 2 LDX OCHN 12430 151672 2 STA MOP1 XI 12431 011656 2 STA ENDWRD 12432 005657 2 LDA I2MREF /RETRANSMISSION OR NEW? DEFPLC [NOP HERE TO STOP CHECKSUM VERIFY IN I2M] 12433 100040 2 SZE 12434 003456 2 JMP I2MCHF /NO CKSUM 12435 005730 2 LDA (I2MADR) /CAPTURE ADDER 12436 026111 2 IMA ADDRET 12437 011653 2 STA TARTAR 12440 005655 2 LDA ACKWRD 12441 016117 2 SUB FOUR 0"A"ACKH 12442 010000 2 STA 0 /PACKET POINTER 12443 017656 2 SUB ENDWRD /LENGTH OF PACKET 12444 015731 2 ADD (ADDBOT+ACKH) 12445 011450 2 STA I2MADJ 12446 017732 2 SUB (ADDBOT) 12447 103450 2 JMP I2MADJ I 12450 2 I2MADJ: BSS 1 12451 100040 2 I2MADR: SZE 12452 003524 2 JMP I2MCHE /CHECKSUM ERROR! 12453 005653 2 LDA TARTAR 12454 010111 2 STA ADDRET /RESTORE ADDER OWNER 12455 073654 2 LDX OCHN 12456 105655 2 I2MCHF: LDA ACKWRD I 12457 141044 2 CAR 0"A"ACKBTS /PUT IN ACKS 12460 052646 2 ERA RSEX X 12461 127655 2 IMA ACKWRD I /AND CORRECT CHECKSUM 12462 117655 2 SUB ACKWRD I 12463 115656 2 ADD ENDWRD I 12464 111656 2 STA ENDWRD I 12465 140040 2 I2MDN1: CRA 12466 050445 2 STA SNULL X /ACKS MARKED AS SENT *** THIS DOCUMENT MAY CONTAIN BBN PROPRIETARY INFORMATION. *** *** FURNISHED FOR U. S. GOVERNMENT END USE ONLY. *** PAGE 111 IMP,3050,IMP 7:20 PM 9/16/1973 12467 004416 2 I2MDUN: LDA TIMES /640 MS COUNTER 12470 051632 2 STA TIM640 X /TABLE OF MODEM OUT START TIMES 12471 131040 2 RDCLOK /100 MICRO SEC CLOCK 12472 003471 2 JMP .-1 12473 051637 2 STA TIM100 X /SAVE THIS CLOCK TOO 12474 045677 2 LDA MXOUT X 12475 011476 2 STA . 1 12476 2 BSS 1 12477 005711 2 LDA M30SCF /SET TO WAIT FOR HARDWARE COMPLETE 12500 050440 2 I2MQUT: STA NONE X /OR SET FLAG TO INDICATE IDLE 12501 001001 2 INH MSK 12502 005652 2 0 LDA TMTM 12503 010134 2 0 STA PRIM 12504 170120 2 0 SMK INTM 12505 144071 2 0 LDA M1OTIL XI 12506 011106 2 0 STA IRET 12507 000013 2 0 EXA 12510 005105 2 0 LDA TCTC 12511 171020 2 0 OTK 12512 005103 2 0 LDA TATA 12513 073104 2 0 LDX TXTX 12514 000401 2 0 ENB I2M 12515 103106 2 JMP IRET I LEV I2M LCK ALL 12516 005733 2 0 RAPT: LDA (14400) /6400MS, 1 SLOW T.O IN 100MUS UNITS 12517 051625 2 0 STA CUMTIM X /RM TOOK TOO LONG, MAX+TIMER 12520 045620 2 0 LDA RMFLG X /CLEAR RM FLAG BIT 12521 006122 2 0 ANA MINUS2 0"A"RM /177776 12522 051620 2 0 STA RMFLG X 12523 003156 2 0 JMP I2MS /AND RETURN LEV I2M 12524 001001 2 I2MCHE: INH ALL DEFHLT [MODEM OUT DETECTED INTRA-IMP CHECKSUM ERROR] 12525 021526 2 0 JST .+1 12526 000000 2 0 0 12527 120745 2 0 JST HLTNCC I /RERORT IT 12530 004000 2 0 LDA 0 12531 026342 2 0 IMA DIAGQ /AND TO DIAG TTY 12532 050000 2 0 STA 0 X 12533 000401 2 0 ENB I2M 12534 005653 2 LDA TARTAR 12535 010111 2 STA ADDRET 12536 024564 2 IRS NSFS 12537 044004 2 LDA ACKH X /FREE UP UN-ACKED CHANNEL 12540 007734 2 ANA (CHANUM) 12541 141140 2 ICL 12542 073654 2 LDX OCHN 12543 054622 2 ADD I2MTAB X /GET SLOT POINTER 12544 011653 2 STA TARTAR /(TEMP) 12545 140040 2 CRA 12546 111653 2 STA TARTAR I /CLEAR SLOT PTR 12547 003500 2 JMP I2MQUT /LEAVE MODEM OUTPUT IDLE FOR A BI- *** THIS DOCUMENT MAY CONTAIN BBN PROPRIETARY INFORMATION. *** *** FURNISHED FOR U. S. GOVERNMENT END USE ONLY. *** PAGE 112 IMP,3050,IMP 7:20 PM 9/16/1973 LCK M2I 12550 010000 2 0 I2MRET: STA 0 /SAVE PKT PNTR 12551 131040 2 0 RDCLOK 12552 003551 2 0 JMP .-1 12553 056001 2 0 SUB ST X /COMPARE TIME NOW WITH SENT TIME 12554 100400 2 0 SPL 12555 140407 2 0 TCA /MAKE DIFF A POSITIVE NUMBER 12556 017735 2 0 SUB (1250.) /COMPARE WITH 125 MS /THIS CONSTANT VARIES WITH LINE LENGTH AND SPEED /IT SHOULD BE TABLED WHEN WE GET FAST LINES+SATELLITES 12557 100400 2 0 SPL /TOO OLD? 12560 003211 2 0 JMP I2MNEW /NOT YET 12561 064003 2 0 IRS INCH X /COUNT ANOTHER RETRANSMIT 12562 003575 2 0 JMP I2MRTR /NOT OVER THE LIMIT 12563 120671 2 0 JST FLUSHI I /KILL PKT AFTER 200 TRIES 12564 024564 2 0 IRS NSFS /AND COUNT IT OUT 12565 073654 2 0 LDX OCHN 12566 140040 2 0 CRA 12567 151660 2 0 STA I2MLST XI /SO IT WON'T BE FLUSHED TWICE DEFHLT [200 RETRANSMISSIONS - SERIOUS MALFUNCTION] 12570 021571 2 0 JST I2MHLT 12571 000000 2 0 I2MHLT: 0 12572 120745 2 0 JST HLTNCC I /REPORT TROUBLE TO NCC 12573 121736 2 0 JST (KILLIN) I /KILL LINE INSTANTLY 12574 003500 2 0 JMP I2MQUT /DISMISS INTERRUPT 12575 073654 2 0 I2MRTR: LDX OCHN 12576 140040 2 0 CRA /MARK PACKET AS A RETRANSMISSION 12577 011657 2 0 STA I2MREF /SO CHECKSUM IS VERIFIED 12600 145660 2 0 LDA I2MLST XI /PACKET SENT >125MS AGO 12601 050634 2 0 STA I2MNXT X /SO RETRANSMIT IT 12602 000401 2 0 ENB I2M 12603 003415 2 JMP I2MGOT LEV [T.O,TSK] LCK SIN 12604 000000 5 0 I2MSB: 0 /SOFTWARE WAKELP OF MODEM OUTPUT 12605 033104 5 0 STX TXTX /ALWAYS CALLED FROM LOW CORE AND DX 12606 011103 5 0 STA TATA 12607 033654 5 0 STX OCHN 12610 005604 5 0 LDA I2MSB 12611 150071 5 0 STA M1OTIL XI 12612 143613 5 0 JMP I2MSBT XI /CLEAR X BIT IN ADDR AND LEAP IN F LEV VAR 12613 012156 V I2MSBT: I2MS 12614 012156 V I2MS 12615 V SATDEF I2MS 02245 012615 V 02275 012156 V 02325 012156 V 12616 012156 V I2MS 12617 012156 V I2MS *** THIS DOCUMENT MAY CONTAIN BBN PROPRIETARY INFORMATION. *** *** FURNISHED FOR U. S. GOVERNMENT END USE ONLY. *** PAGE 113 IMP,3050,IMP 7:20 PM 9/16/1973 /BITS IN RMFLG RMINIT=100000 /SET IF FIRST TIME THROUGH (IN INI SPDTYP=77400 /TYPE 0 = 5KBS /TYPE 1 = 10KBS /TYPE 2 = 50KBS /TYPE 3 = 250 KBS SHD=6 /SPEED HOLD-DOWN COUNTER SHD1=2 /BOTTOM BIT OF SHD RM=1 /IF SET, SAYS ROUTING MESSAGE PENDING LEV VAR 12620 V RMFLG: BSS CH /INIT TO 1006(HD ON 50KB LINE) 12625 V CUMTIM: BSS CH /CUMULATIVE BUSY TIME OVER INTERVAL 12632 V TIM640: BSS CH /'TIMES' AT START OF OUTPUT 12637 V TIM100: BSS CH /100 MUS CLOCK AT START OF OUTPUT 12644 V THIST: BSS 1 /ELAPSED TIME FOR THIS TRANSMISSION 12645 V RSTSNO: BSS CH /SERIAL NO. OF LAST RM OUTPUT *** THIS DOCUMENT MAY CONTAIN BBN PROPRIETARY INFORMATION. *** *** FURNISHED FOR U. S. GOVERNMENT END USE ONLY. *** PAGE 114 IMP,3050,IMP 7:20 PM 9/16/1973 LEV VAR 12652 V TMTM: BSS 1 /TEMP M 12653 V TARTAR: BSS 1 /TEMP ADDER RETURN 12654 V OCHN: BSS 1 /ACTIVE MODEM NUMBER 12655 V ACKWRD: BSS 1 /PNTR TO WORD IN PKT WHERE ACKS GO 12656 V ENDWRD: BSS 1 /PNTR TO LAST WORD IN PKT 12657 V I2MREF: BSS 1 /RETRANSMIT FLAG: CHECKSUM IF FLAG I 12660 V I2MLST: BSS CH /PNTR TO LAST SLOT SENT LEV CON 12665 000032 C MOPX: M1OTBP /DMC OUTPUT PNTRS 12666 000034 C M2OTBP 12667 000036 C M3OTBP 12670 000040 C M4OTBP 12671 000042 C M5OTBP 12672 000033 C MOP1: M1OTBP+1 /DMC OUTPUT END PNTRS 12673 000035 C M2OTBP+1 12674 000037 C M3OTBP+1 12675 000041 C M4OTBP+1 12676 000043 C M5OTBP+1 12677 030071 C MXOUT: M1OUT /OUTPUT INSTRUCTIONS 12700 030072 C M2OUT 12701 030073 C M3OUT 12702 030074 C M4OUT 12703 030075 C M5OUT 12704 032101 C NULPTR: NULS1+1 /PNTRS TO NULL PKT AREAS 12705 032106 C NULS2+1 12706 032113 C NULS3+1 12707 032120 C NULS4+1 12710 032125 C NULS5+1 12711 175551 C M30SCF: -[0 0 30SEC"T"25.] *** THIS DOCUMENT MAY CONTAIN BBN PROPRIETARY INFORMATION. *** *** FURNISHED FOR U. S. GOVERNMENT END USE ONLY. *** PAGE 115 IMP,3050,IMP 7:20 PM 9/16/1973 12712 000012 C LEV CON CONSTANTS 12713 011213 C 12714 001777 C 12715 000020 C 12716 000003 C 12717 000060 C 12720 032777 C 12721 011206 C 12722 000317 C 12723 000312 C 12724 040634 C 12725 140003 C 12726 177470 C 12727 000004 C 12730 012451 C 12731 001562 C 12732 001556 C 12733 014400 C 12734 017400 C 12735 002342 C 12736 011133 C 02421 176744 C PAGEND 12,UNCON,5 *** THIS DOCUMENT MAY CONTAIN BBN PROPRIETARY INFORMATION. *** *** FURNISHED FOR U. S. GOVERNMENT END USE ONLY. *** PAGE 116 IMP,3050,IMP 7:20 PM 9/16/1973 /HOST TO IMP (HI) PAGH2I: LEV H2I 00100 013100 4 H1INIL/ HI0E 00101 4 H2INIL/ TIPDEF HI1E, TINT 02246 000101 4 02276 013072 4 02326 025061 4 00075 013064 4 H3INIL/ HI2E 00074 013056 4 H4INIL/ HI3E PAGH2I/ /HOST 3 INTERRUPT ROUTINE 13056 000000 4 0 HI3E: INT H2I 13057 033135 4 0 STX HIX 13060 073056 4 0 LDX HI3E 13061 033106 4 0 STX HISB 13062 072116 4 0 LDX THREE 13063 003110 4 0 JMP HISB2 /HOST 2 INTERRUPT ROUTINE 13064 000000 4 0 HI2E: INT H2I 13065 033135 4 0 STX HIX 13066 073064 4 0 LDX HI2E 13067 033106 4 0 STX HISB 13070 072115 4 0 LDX TWO 13071 003110 4 0 JMP HISB2 /HOST 1 INTERRUPT ROUTINE 13072 000000 4 0 HI1E: INT H2I 13073 033135 4 0 STX HIX 13074 073072 4 0 LDX HI1E 13075 033106 4 0 STX HISB 13076 072114 4 0 LDX ONE 13077 003110 4 0 JMP HISB2 /HOST 0 INTERRUPT ROUTINE 13100 000000 4 0 HI0E: INT H2I 13101 033135 4 0 STX HIX /SAVE INDEX REGISTER 13102 073100 4 0 LDX HI0E 13103 033106 4 0 STX HISB /SET UP RETURN ADDRESS 13104 072113 4 0 LDX ZERO /INTERRUPT FROM HOST 0 13105 003110 4 0 JMP HISB2 *** THIS DOCUMENT MAY CONTAIN BBN PROPRIETARY INFORMATION. *** *** FURNISHED FOR U. S. GOVERNMENT END USE ONLY. *** PAGE 117 IMP,3050,IMP 7:20 PM 9/16/1973 / FROM HERE ON IS COMMON TO ALL HOST INTERRUPT ROUTINES 13106 000000 4 0 HISB: 0 13107 033135 4 0 STX HIX 13110 000011 4 0 HISB2: DXA 13111 003112 4 0 JMP . 1 13112 032675 4 0 STX HIP /SAVE CURRENT HOST 13113 011133 4 0 STA HIA /SAVE AC 13114 000043 4 0 INK 13115 011134 4 0 STA HIK 13116 004501 4 0 LDA HIM /SET UP NEW INTERRUPT MASK (177760) 13117 170120 4 0 SMK INTM /OUTPUT IT 13120 026134 4 0 IMA PRIM /SAVE IT IN PRIM 13121 011136 4 0 STA HIMS /SAVE OLD PRIM 13122 000401 4 0 ENB H2I 13123 142453 4 JMP HILO XI /RESTART WHERE LAST LEFT OFF 13124 000000 4 HIWM: 0 /DEBREAK AND WAKE UP 25MS LATER 13125 072675 4 LDX HIP 13126 005124 4 LDA HIWM 13127 050453 4 HIWM1: STA HILO X 13130 004121 4 LDA MINUS1 13131 051137 4 STA HITT X /SET TIMEOUT TO WAIT 1 PERIOD 13132 003516 4 JMP HIDONE LEV VAR 13133 V HIA: BSS 1 /AC SAVE 13134 V HIK: BSS 1 /K SAVE 13135 V HIX: BSS 1 /IR SAVE 13136 V HIMS: BSS 1 /PRIM SAVE 13137 V HITT: BSS TH /HOST-TO-IMP INTERFACE TIMER *** THIS DOCUMENT MAY CONTAIN BBN PROPRIETARY INFORMATION. *** *** FURNISHED FOR U. S. GOVERNMENT END USE ONLY. *** PAGE 118 IMP,3050,IMP 7:20 PM 9/16/1973 LEV CON 13147 000050 C HIB1: H1INBP /DMC INPUT PNTRS 13150 C TIPDEF H2INBP,JUNK 02247 013150 C 02277 000052 C 02327 000001 C 13151 C TIPDEF H3INBP,TIPLNK+2 02250 013151 C 02300 000056 C 02330 000772 C 13152 000042 C H4INBP 13153 013323 C HIBB 13154 013324 C HIBB+1 13155 013325 C HIBB+2 13156 013326 C HIBB+3 13157 000051 C HIB2: H1INBP+1 /DMC INPUT END PNTRS 13160 C TIPDEF H2INBP+1,JUNK 02251 013160 C 02301 000053 C 02331 000001 C 13161 C TIPDEF H3INBP+1,TIPLNK+3 02252 013161 C 02302 000057 C 02332 000773 C 13162 000043 C H4INBP+1 13163 013327 C HIBC 13164 013330 C HIBC+1 13165 013331 C HIBC+2 13166 013332 C HIBC+3 13167 003014 C HER0: JMP 0 1000 777"A"HITEST /NEEDED FOR HOST TEST /MUST PRECEDE HER! 13170 070070 C HER: H1ERR /SKIP ON ERROR FROM HOST 13171 070060 C H2ERR 13172 C TIPDEF H3ERR,NOP 02253 013172 C 02303 070050 C 02333 101000 C 13173 070051 C H4ERR 13174 101000 C NOP 13175 101000 C NOP 13176 101000 C NOP 13177 101000 C NOP 13200 030170 C HIN: H1IN /INPUT INSTRUCTIONS 13201 030160 C H2IN 13202 C TIPDEF H3IN,JMP+0+1000+HIFAKE"A"777 02254 013202 C 02304 030150 C 02334 003531 C 13203 030151 C H4IN 13204 003531 C JMP HIFAKE 13205 003531 C JMP HIFAKE 13206 003531 C JMP HIFAKE 13207 003531 C JMP HIFAKE *** THIS DOCUMENT MAY CONTAIN BBN PROPRIETARY INFORMATION. *** *** FURNISHED FOR U. S. GOVERNMENT END USE ONLY. *** PAGE 119 IMP,3050,IMP 7:20 PM 9/16/1973 /FAKE HOST TO IMP (JAM) /SIMULATE HOST-TO-IMP INTERFACE HARDWARE FOR FAKE HOSTS: /1- RECEIVE A WORD FROM HOST /2- STORE THE WORD THROUGH THE DMC INPUT POINTER /3- INCREMENT THE DMC INPUT POINTER /4- IF LAST BIT INDICATOR IS SET, OR / IF THE DMC INPUT AND INPUT END POINTERS CROSS / GIVE INPUT COMPLETED INTERRUPT /5- GO TO 1 /HIBB SERVES AS THE DMC INPUT POINTER /HIBC SERVES AS THE DMC INPUT END POINTER /CALLING SEQUENCE /FAKE HOST NUMBER IN X REG - 0=TTY,1=DDT,2=TRACE,3=STATISTIC1 /SIGN BIT OF X REG IS LAST BIT INDICATOR - BIT ON=LAST BIT /THE WORD TO GIVE TO THE IMP IN A REG /JST JAM - SEND THIS WORD TO IMP FROM THIS FAKE HOST / - IMPLICIT BACKGROUND WAIT UNTIL THIS WORD IS TAKEN / - AND ANOTHER WORD MAY BE SENT LEV BCK 13210 000000 7 GAM: 0 13211 151323 7 STA HIBB XI /STORE NEXT WORD THROUGH INPUT PNI 13212 065323 7 IRS HIBB X /INCREMENT INPUT PNTR 13213 004000 7 LDA 0 13214 100400 7 SPL /IS LAST BIT FLAG SET? 13215 003247 7 JMP GAM2 /YES 13216 045327 7 LDA HIBC X 13217 057323 7 SUB HIBB X 13220 101400 7 SMI /HAVE PNTRS CROSSED? 13221 103210 7 JMP GAM I /NO, RETURN 13222 005177 7 LDA HER+NH+3 /(NOP) 13223 051317 7 GAM1: STA EMFH+NH X /SET UP LAST BIT INSTRUCTION FOR HO 13224 005210 7 LDA GAM 13225 051251 7 STA GAMT X /SAVE RETURN ADDRESS 13226 004000 7 LDA 0 13227 140100 7 SSP 13230 011255 7 STA GAMX 13231 014130 7 ADD PLNH 13232 010000 7 STA 0 /SET UP X REG FOR THIS FAKE HOST 13233 001001 7 INH SIN /SOFTWARE INTERRUPT HOST-TO-IMP 13234 000013 7 0 EXA 13235 021106 7 0 JST HISB RET BCK 13236 001001 7 INH ALL 13237 120672 7 0 JST DODXA I RET BCK 13240 073255 7 LDX GAMX 13241 045143 7 GAM3: LDA HITT+NH X /TIMER HAS THREE POSSIBLE STATES 13242 140401 7 CMA /0 - WAITING FOR LEADER INPUT 13243 100040 7 SZE /-1 - WAITING FOR SOFTWARE INTERRU 13244 143251 7 JMP GAMT XI /IF NOT -1, INPUT CAN GO, SO RETUF 13245 120665 7 JST DOZE I /-N - WAITING FOR DATA INPUT DEFPLC [JAM CALL TO DOZE] 13246 003241 7 JMP GAM3 /WAIT UNTIL INPUT IS ALLOWED 13247 004112 7 GAM2: LDA SIGN /(SKP) 13250 003223 7 JMP GAM1 LEV VAR DEFPLC [GAMT] 13251 V GAMT: BSS FH /TABLE OF RETURN ADDRESSES 13255 V GAMX: BSS 1 *** THIS DOCUMENT MAY CONTAIN BBN PROPRIETARY INFORMATION. *** *** FURNISHED FOR U. S. GOVERNMENT END USE ONLY. *** PAGE 120 IMP,3050,IMP 7:20 PM 9/16/1973 LEV BCK LCK INI 13256 000000 7 0 HIST: 0 /RESTART HOST TO IMP 13257 140040 7 0 CRA 13260 051333 7 0 STA HISP X 13261 011106 7 0 STA HISB /IN CASE NON-DXA IMP RELOADED FROM ] 13262 111535 7 0 STA (HIDEST 0 X) I 13263 045273 7 0 LDA HISTAB X 13264 050453 7 0 STA HILO X /SET UP INITIAL ADDRESS TO GO TO 13265 045303 7 0 LDA EMIT X 13266 051313 7 0 STA EMFH X /SET UP FOM INSTRUCTION 13267 000013 7 0 EXA 13270 021106 7 0 JST HISB /CALL HOST 13271 120672 7 0 JST DODXA I 13272 103256 7 0 JMP HIST I LEV CON 13273 013353 C HISTAB: HISTRH /INITIAL COROUTINE ENTRANCES 13274 013353 C HISTRH 13275 C TIPDEF HISTRH, HISTFH 02255 013275 C 02305 013353 C 02335 013416 C 13276 013353 C HISTRH 13277 013416 C HISTFH 13300 013416 C HISTFH 13301 013416 C HISTFH 13302 013416 C HISTFH 13303 070270 C EMIT: H1EOM /SKIP ON LAST BIT INSTRUCTIONS 13304 070260 C H2EOM 13305 C TIPDEF H3EOM, SKP 02256 013305 C 02306 070250 C 02336 100000 C 13306 070251 C H4EOM 13307 100000 C SKP 13310 100000 C SKP 13311 100000 C SKP 13312 100000 C SKP LEV VAR 13313 V EMFH: BSS TH /SKIP ON END OF MESSAGE FROM HOST 13323 V HIBB: BSS FH /DMC INPUT PNTRS FOR FAKE HOSTS 13327 V HIBC: BSS FH /DMC INPUT END PNTRS FOR FAKE HOSTS 13333 V HISP: BSS TH /POINTER TO CURRENT BUFFER 13343 V HINWAT: BSS TH /HOLD UP HOST INPUT LEV H2I 13353 005536 4 HISTRH: LDA (HIFRST) /DISCARD FIRST INPUT OF REAL HOST 13354 003417 4 JMP HISTLO *** THIS DOCUMENT MAY CONTAIN BBN PROPRIETARY INFORMATION. *** *** FURNISHED FOR U. S. GOVERNMENT END USE ONLY. *** PAGE 121 IMP,3050,IMP 7:20 PM 9/16/1973 13355 004114 4 HIDOWN: LDA ONE 0"A"HSTGDN 13356 050504 4 STA HIHD X /MARK HOST GOING DOWN DEFPLC [HI - WAITING FOR A PKT TO THROW AWAY] 13357 140040 4 HIDISC: CRA 13360 127535 4 IMA (HIDEST 0 X) I 13361 101400 4 SMI /DID THIS GUY JUST TAKE TOO LONG? 13362 003367 4 JMP HIDSC1 /NO 13363 005537 4 LDA (HIDISC) 13364 050453 4 STA HILO X 13365 140040 4 CRA /DONT'T SET ALARM CLOCK AGAIN 13366 003470 4 JMP HINLO1 13367 045333 4 HIDSC1: LDA HISP X /FLUSH HISP 13370 101040 4 SNZ 13371 003400 4 JMP HIFRST 13372 010000 4 STA 0 13373 050111 4 STA BUFE X 0"A"TWOQ 13374 001001 4 INH FRE 13375 120671 4 0 JST FLUSHI I 13376 000401 4 0 ENB H2I 13377 072675 4 LDX HIP DEFPLC [HI - WAITING FOR INITIAL INPUT] 13400 045313 4 HIFRST: LDA EMFH X /IS EOM SET? 13401 011403 4 STA .+2 13402 005537 4 LDA (HIDISC) 13403 4 BSS 1 13404 003466 4 JMP HINLO /NO 13405 140040 4 HIDB: CRA 13406 051333 4 STA HISP X 13407 045313 4 LDA EMFH X /IS EOM SET? 13410 011411 4 STA .+1 13411 4 BSS 1 13412 003457 4 JMP HINBUF /NO 13413 045343 4 HIWAIT: LDA HINWAT X /INPUT TO BE BLOCKED? 13414 100040 4 SZE 13415 003430 4 JMP HIBLKD /YES 13416 005540 4 HISTFH: LDA (HILEAD) 13417 050453 4 HISTLO: STA HILO X 13420 140040 4 CRA 13421 051137 4 STA HITT X /GIVE HIM FOREVER TO INPUT NEXT ME' 13422 004000 4 LDA 0 13423 041577 4 ALS 1 13424 015541 4 ADD (I 0 HICWS) 13425 151147 4 STA HIB1 XI 13426 141206 4 AOA 13427 003511 4 JMP HINB2 13430 021124 4 HIBLKD: JST HIWM DEFPLC [HI - INPUT BEING BLOCKED BY OUTPUT] 13431 003413 4 JMP HIWAIT LEV CON DEFPLC [HI - 2 WORD INPUT AREA] 13432 C HICWS: BSS TH+TH *** THIS DOCUMENT MAY CONTAIN BBN PROPRIETARY INFORMATION. *** *** FURNISHED FOR U. S. GOVERNMENT END USE ONLY. *** PAGE 122 IMP,3050,IMP 7:20 PM 9/16/1973 LEV H2I 13452 044453 4 HIWBUF: LDA HILO X 13453 051333 4 STA HISP X /SAVE RETURN ADDRESS 13454 021124 4 JST HIWM DEFPLC [HI - NO FREE SPACE] 13455 045333 4 LDA HISP X 13456 003466 4 JMP HINLO /RESTORE RETURN ADDRESS 13457 005542 4 HINBUF: LDA (PKTN1) 13460 115543 4 ADD (HIH1 0 X) I 13461 111543 4 STA (HIH1 0 X) I 13462 007544 4 ANA (PKTNO) 13463 101040 4 SNZ /WILL NEXT PKT BE NO 10? 13464 003357 4 JMP HIDISC /YES 13465 005545 4 LDA (HI25) 13466 050453 4 HINLO: STA HILO X 13467 005546 4 LDA (0 0 -15000."Q"25.) 13470 051137 4 HINLO1: STA HITT X /GIVE HOST 15 SECS TO INPUT PKT 13471 001001 4 INH FRE 13472 004537 4 0 LDA NFA 13473 016563 4 0 SUB NFS 13474 016570 4 0 SUB MINF 13475 100400 4 0 SPL 13476 003452 4 0 JMP HIWBUF /NOT ENOUGH BUFFERS FOR MODEM INPUT 13477 104324 4 0 LDA FREE I 13500 101040 4 0 SNZ 13501 003452 4 0 JMP HIWBUF 13502 026324 4 0 IMA FREE 13503 024563 4 0 IRS NFS 13504 000401 4 0 ENB H2I 13505 051333 4 STA HISP X /SAVE POINTER TO BUFFER 13506 015547 4 ADD (I 0 DATA) 13507 151147 4 STA HIB1 XI /THIS CONSTANT DETERMINES PACKET LENGTH FOR THE WHOLE IMPSY' 13510 015550 4 ADD (BUFE-2-DATA) /ALLOW FOR CHKSM 13511 140100 4 HINB2: SSP /FOR FAKE HOSTS 13512 151157 4 STA HIB2 XI 13513 045200 4 LDA HIN X 13514 011515 4 STA .+1 13515 4 BSS 1 13516 005136 4 HIDONE: LDA HIMS /RESTORE INTERRUPT MASK 13517 001001 4 INH MSK 13520 170120 4 0 SMK INTM 13521 010134 4 0 STA PRIM 13522 000013 4 0 EXA 13523 005134 4 0 LDA HIK 13524 171020 4 0 OTK 13525 073135 4 0 LDX HIX /RESTORE IR 13526 005133 4 0 LDA HIA /RESTORE AC 13527 000401 4 0 ENB H2I 13530 103106 4 JMP HISB I 13531 145147 4 HIFAKE: LDA HIB1 XI 13532 140100 4 SSP 13533 151147 4 STA HIB1 XI 13534 003516 4 JMP HIDONE *** THIS DOCUMENT MAY CONTAIN BBN PROPRIETARY INFORMATION. *** *** FURNISHED FOR U. S. GOVERNMENT END USE ONLY. *** PAGE 123 IMP,3050,IMP 7:20 PM 9/16/1973 13535 054177 C LEV CON CONSTANTS 13536 013400 C 13537 013357 C 13540 014053 C 13541 113432 C 13542 000400 C 13543 054147 C 13544 003400 C 13545 014544 C 13546 176650 C 13547 100011 C 13550 000076 C 02422 175557 C PAGEND 13,UNCON,4 *** THIS DOCUMENT MAY CONTAIN BBN PROPRIETARY INFORMATION. *** *** FURNISHED FOR U. S. GOVERNMENT END USE ONLY. *** PAGE 124 IMP,3050,IMP 7:20 PM 9/16/1973 LEV VAR 14003 000000 V HICW1: 0 /TEMP USED TO RETRIEVE CONTROL WORD1 LEV H2I 14004 000000 4 HILOOP: 0 14005 045042 4 LDA HBTS X 14006 012106 4 ERA MINE 14007 051147 4 STA HIH1 X 14010 004143 4 LDA HL2WD 14011 051167 4 STA HIH3 X 14012 103004 4 JMP HILOOP I 14013 021004 4 HIEXER: JST HILOOP 14014 045147 4 HITEST: LDA HIH1 X /MSG A NOP? 14015 007627 4 ANA (HICODE) 14016 013630 4 ERA (CNOP) 14017 100040 4 SZE 14020 103631 4 JMP (HIDISC) I /NO. FLUSH MESSAGE 14021 045167 4 LDA HIH3 X /DATA WORD MATCH? 14022 012143 4 ERA HL2WD 14023 101040 4 SNZ 14024 125632 4 IRS (HLRCVD) I /YES, COUNT A GOOD ONE 14025 103631 4 JMP (HIDISC) I /AND FLUSH MSG /USE TO CLEAN UP UNTIL IMPDIE LOGIC TAKES OVER 14026 000000 4 HIWMD: 0 /HIWM WITH DEAD TEST 14027 072675 4 LDX HIP 14030 173633 4 LDX (HIDEST 0 X) I 14031 044165 4 LDA RUT X 14032 072675 4 LDX HIP 14033 100400 4 SPL 0"A"RUTDED /IS DEST IMP DEAD? 14034 003272 4 JMP HI19 /YES 14035 044504 4 LDA HIHD X 0"A"HSTUP 14036 100040 4 SZE /IS SOURCE HOST DEAD? 14037 003232 4 JMP HIERR /YES 14040 005026 4 LDA HIWMD 14041 103634 4 JMP (HIWM1) I /NO, WAIT ONE TICK LEV CON 14042 000000 C HBTS: 0 /FROM IMP AND HOST BITS 14043 000100 C 100 14044 000200 C 200 14045 000300 C 300 14046 040000 C 40000 14047 040100 C 40100 14050 040200 C 40200 14051 040300 C 40300 *** THIS DOCUMENT MAY CONTAIN BBN PROPRIETARY INFORMATION. *** *** FURNISHED FOR U. S. GOVERNMENT END USE ONLY. *** PAGE 125 IMP,3050,IMP 7:20 PM 9/16/1973 LEV H2I 14052 121635 4 HIHDN: JST (HIWM) I DEFPLC [HI - WAITING FOR LEADER] VD.1P: 14053 044504 4 HILEAD: LDA HIHD X 0"A"HSTIDN 14054 022116 4 CAS THREE 14055 003052 4 JMP HIHDN 0"A"HSTIDN 14056 101000 4 NOP 14057 004000 4 LDA 0 /SET UP HIH1, HIH3 FROM CONTROL INP1 14060 041577 4 ALS 1 14061 010000 4 STA 0 14062 105636 4 LDA (HICWS 0 X) I 14063 011003 4 STA HICW1 14064 105637 4 LDA (HICWS+1 X) I 14065 072675 4 LDX HIP 14066 007640 4 ANA (LINKNO) 14067 051167 4 STA HIH3 X 14070 005003 4 LDA HICW1 0"A"[PRIBIT 0 FORIMP TRACE FOROCT DESTHI] 14071 051147 4 STA HIH1 X 0"A"PKTNO 14072 007627 4 ANA (HICODE) 14073 141140 4 ICL 14074 015641 4 ADD (HI2 0 I) 14075 051137 4 STA HIH0 X 14076 017134 4 SUB HIDE 14077 101400 4 SMI 14100 103132 4 JMP HI2+7 I /ASSUMES NO TYPE 7 MESSAGE 14101 105642 4 LDA (HER 0 X) I 14102 011103 4 STA .+1 14103 4 BSS 1 /ERROR?, LOOP JST, OR EXER OR TEST 14104 100000 4 SKP /NO 14105 003232 4 JMP HIERR /ERROR BIT SET IN LEADER 14106 140040 4 CRA 0"A"HSTUP 14107 066504 4 IMA HIHD X 14110 100040 4 SZE /WAS HOST DOWN? 14111 104700 4 LDA IHXX I /YES, IS OUTPUT IN PROGRESS? 14112 101040 4 SNZ 14113 003116 4 JMP .+3 /NOT BOTH 14114 004107 4 LDA M30SEC /WAS DOWN, GIVE OUTPUT FULL 30 SE(' 14115 111643 4 STA (IHTT 0 X) I 14116 105644 4 LDA (EMFH 0 X) I /YES 14117 011120 4 STA .+1 14120 4 BSS 1 /EOM? 14121 143137 4 DEFSTAT JMP HIH0 XI, HS2 /N0,DISPATCH ON TYPE 00606 031072 4 32002 014121 4 32022 143137 4 14122 003231 4 JMP HISHRT /YES, LESS THAN 32 BIT MESSAGE *** THIS DOCUMENT MAY CONTAIN BBN PROPRIETARY INFORMATION. *** *** FURNISHED FOR U. S. GOVERNMENT END USE ONLY. *** PAGE 126 IMP,3050,IMP 7:20 PM 9/16/1973 LEV CON 14123 014243 C HI2: HI20 /0 - REG 14124 013357 C HIDISC /1 - IMP FORMAT ERROR 14125 013355 C HIDOWN /2 - HOST GOING DOWN 14126 014230 C HIBADC /3 14127 013357 C HIDISC /4 - NOP 14130 014230 C HIBADC /5 14131 014230 C HIBADC /6 14132 014230 C HIBADC /7 - USED IN CODE FOR HIBADC REFEF ' 14133 013357 C HIDISC /8 - IMP FORMAT ERROR WITH ID 14134 114134 C HIDE: . 0 I LEV VAR /MORE OF HOST-TO-IMP, INCLUDING PACKET PROCESSING 14135 V HIT1: BSS 1 /TEMP 14136 177777 V HITF: -1 14137 V HIH0: BSS TH /SAVED HEAD,HEAD1,HEAD2,HEAD3 14147 V HIH1: BSS TH 14157 V HIH2: BSS TH 14167 V HIH3: BSS TH 14177 V HIDEST: BSS TH /DESTINATION OF CURRENT MESS /SIGN BIT ON MEANS HOST TOOK TOO LO1 14207 V HILINK: BSS TH /PNTR TO SAVED LINK+SUB-CODE WORD 14217 V HIBLKT: BSS TH /TIME TO WAIT FOR MESS NO 14227 V HIAR: BSS 1 /TEMP ADDER RETURN LEV H2I 14230 065167 4 HIBADC: IRS HIH3 X 0"A"CILLGL 14231 065167 4 HISHRT: IRS HIH3 X 0"A"CSHORT 14232 140040 4 HIERR: CRA 0"A"CERR32 14233 051147 4 STA HIH1 X 14234 005645 4 LDA (CERRLD) 14235 003273 4 JMP HI16 14236 005646 4 HIBLK: LDA (CBLOCK) 14237 053167 4 ERA HIH3 X 14240 051167 4 STA HIH3 X 14241 005647 4 LDA (CINCTR) 14242 003273 4 JMP HI16 *** THIS DOCUMENT MAY CONTAIN BBN PROPRIETARY INFORMATION. *** *** FURNISHED FOR U. S. GOVERNMENT END USE ONLY. *** PAGE 127 IMP,3050,IMP 7:20 PM 9/16/1973 14243 004675 4 HI20: LDA HIP /FIGURE OUT HOW LONG TO WAIT FOR ME: 14244 012130 4 ERA PLNH /IS THIS FROM TTY? 14245 100040 4 SZE /GIVE IT 150 MS OR 15 SECS IF NOT 14246 005650 4 LDA (0 0 -6"X"-450.) 14247 012126 4 ERA MINUS6 /15 SECS FOR ALL OTHER HOST 14250 051217 4 STA HIBLKT X 14251 045147 4 LDA HIH1 X 14252 007651 4 ANA (DESTI) 14253 051177 4 STA HIDEST X 14254 010000 4 STA 0 14255 044165 4 LDA RUT X 14256 072675 4 LDX HIP 14257 101400 4 SMI 0"A"CIMPD 0"A"RUTDED 14260 007652 4 ANA (RUTCMU) /HOSTS AT DEAD IMPS ARE DEAD 14261 100040 4 SZE /IS THERE A DELAY IN BRINGING THI1 14262 003272 4 JMP HI19 /YES, IMP IS STILL DEAD 14263 045147 4 LDA HIH1 X 14264 007653 4 ANA (FORIMP 0 DESTH) 14265 013654 4 ERA (FORIMP 0 200) 14266 101010 4 SS2 /ALL HOSTS ARE UP IF SS2 IS UP 14267 100040 4 SZE /PARAM CHANGE IS DOWN IF IT'S NOT 14270 003311 4 JMP HI23 /HOST IS UP 14271 065167 4 HI18: IRS HIH3 X 0"A"CHSTD 14272 005655 4 HI19: LDA (CDESTD) 14273 051137 4 HI16: STA HIH0 X 14274 001001 4 HI17: INH FRE 14275 045167 4 0 LDA HIH3 X 14276 010515 4 0 STA TWDP 14277 045147 4 0 LDA HIH1 X 14300 053137 4 0 ERA HIH0 X 14301 120670 4 0 JST OWP I 14302 103631 4 0 JMP (HIDISC) I 14303 121635 4 0 JST (HIWM) I RET H2I DEFPLC [HI - WAITING FOR TWO-WORD STORE] 14304 003274 4 JMP HI17 *** THIS DOCUMENT MAY CONTAIN BBN PROPRIETARY INFORMATION. *** *** FURNISHED FOR U. S. GOVERNMENT END USE ONLY. *** PAGE 128 IMP,3050,IMP 7:20 PM 9/16/1973 14305 065217 4 HI22: IRS HIBLKT X /HAVE WE WAITED TOO LDNG? 14306 100000 4 SKP /NO 14307 003236 4 JMP HIBLK /YES, SEND BACK BLOCKED 14310 021026 4 JST HIWMD DEFPLC [HI - WAITING FOR MESS NO] 14311 045147 4 HI23: LDA HIH1 X 14312 007656 4 ANA (PRIBIT 0 DESTI) 14313 121657 4 JST (MESGET) I 14314 003305 4 JMP HI22 /MESSNO IN USE, WAIT 14315 051137 4 STA HIH0 X /SET UP HIH0, HIH2 14316 045147 4 LDA HIH1 X 14317 007660 4 ANA (FOROCT) 0"A"LSTPKT 14320 012106 4 ERA MINE /CONSTRUCT SOURCE 14321 053042 4 ERA HBTS X 0"A"SRCEH 14322 051157 4 STA HIH2 X 14323 004675 4 LDA HIP 14324 013661 4 ERA (NH+2) 14325 100040 4 SZE /DO NOT AUTO-TRACE TRACE 14326 105662 4 LDA (TF) I 14327 100040 4 SZE /IS AUTO TRACE ON? 14330 025136 4 IRS HITF /YES, IS IT TIME TO TRACE? 14331 003341 4 JMP HI24 /NO 14332 045147 4 LDA HIH1 X /YES 14333 007663 4 ANA (0 0 177777"X"TRACE) 14334 013664 4 ERA (TRACE) /TURN ON TRACE BIT 14335 051147 4 STA HIH1 X 14336 105662 4 LDA (TF) I 14337 140407 4 TCA 14340 011136 4 STA HITF /RESET AUTO TRACE INTERVAL 14341 005665 4 HI24: LDA (HIPKT1) 14342 103666 4 JMP (HINLO) I DEFPLC [HI - WAITING FOR FIRST PKT] 14343 105667 4 HIPKT1: LDA (HITT 0 X) I 14344 101040 4 SNZ /DID ALARM CLOCK GO OFF? 14345 003353 4 JMP HIPK1S /YES 14346 105644 4 LDA (EMFH 0 X) I 14347 011350 4 STA .+1 14350 4 BSS 1 14351 003400 4 JMP HIPLT /MULTI-PACKET INPUT 14352 003361 4 JMP HIPK1A 14353 140500 4 HIPK1S: SSM 14354 051177 4 STA HIDEST X /MARK AS TOO SLOW 14355 045147 4 LDA HIH1 X 14356 007670 4 ANA (0 0 177777"X"PKTNO) 14357 013655 4 ERA (PKTNO) /MARK AS LAST PKT - FOR HIDISC 14360 051147 4 STA HIH1 X 14361 005671 4 HIPK1A: LDA (ONEOR8 0 REQALL) /MARK AS REQ FOR 1 14362 053137 4 ERA HIH0 X 14363 051137 4 STA HIH0 X 14364 021464 4 JST HIPKT 14365 003370 4 JMP HIPPT *** THIS DOCUMENT MAY CONTAIN BBN PROPRIETARY INFORMATION. *** *** FURNISHED FOR U. S. GOVERNMENT END USE ONLY. *** PAGE 129 IMP,3050,IMP 7:20 PM 9/16/1973 14366 021026 4 HIPPT0: JST HIWMD DEFPLC [HI - WAITING FOR PPT SLOT FOR REQ1] 14367 172677 4 LDX HIXX I 14370 121672 4 HIPPT: JST (PPTPUT) I 14371 003366 4 JMP HIPPT0 /NO ROOM IN PPT, WAIT 14372 051207 4 HIMESS: STA HILINK X /SAVE PNTR INTO RPT OR PLT 14373 045177 4 LDA HIDEST X 14374 100400 4 SPL /DID THIS GUY TAKE TOO LONG 14375 003610 4 JMP HIPSLO /YES, GO TO TASK 14376 121673 4 JST (HTPMT) I /COUNT A MESSAGE OF THROUGHPUT 14377 003551 4 JMP HI26 14400 045177 4 HIPLT: LDA HIDEST X 14401 121674 4 JST (TALLYG) I /ANY ALLOC FROM OUR DEST? 14402 003412 4 JMP HIPLT2 /NO 14403 021464 4 HIPLTA: JST HIPKT 14404 072675 4 LDX HIP 14405 003407 4 JMP HIPLT1 14406 021026 4 JST HIWMD DEFPLC [HI - WAITING FOR PLT SLOT FOR MESS8] 14407 121675 4 HIPLT1: JST (PLTPUT) I 14410 003406 4 JMP .-2 /NO PLT ROOM, WAIT 14411 003372 4 JMP HIMESS 14412 005676 4 HIPLT2: LDA (REQALL) /MARK AS REQUEST FOR 8 14413 053137 4 ERA HIH0 X 14414 051137 4 STA HIH0 X 14415 021464 4 JST HIPKT /COPY HEADER 14416 004000 4 LDA 0 14417 015677 4 ADD (TWOQ MINPL) /MARK AS ON TWO QUEUES, 14420 050111 4 STA BUFE X /FROM SAME BUFFER 14421 072675 4 LDX HIP 14422 100000 4 SKP 14423 021026 4 JST HIWMD DEFPLC [HI - WAITING FOR PLT SLOT FOR REQ8] 14424 121675 4 JST (PLTPUT) I 14425 003423 4 JMP .-2 /NO PLT ROOM, WAIT 14426 051207 4 STA HILINK X /SAVE PNTR INTO PLT 14427 172677 4 HIPLT3: LDX HIXX I 14430 021520 4 JST HICKSM /MAKE A CHECKSUM 14431 001001 4 INH M2I 14432 132401 4 0 STX ETQ I 14433 032401 4 0 STX ETQ 14434 030041 4 0 TASK 14435 121635 4 0 HIPLT4: JST (HIWM) I RET H2I DEFPLC [HI - WAITING FOR TASK TO TAKE A REQ8] 14436 003435 4 JMP HIPLT4 14437 003427 4 JMP HIPLT3 /TASK REFUSED IT *** THIS DOCUMENT MAY CONTAIN BBN PROPRIETARY INFORMATION. *** *** FURNISHED FOR U. S. GOVERNMENT END USE ONLY. *** PAGE 130 IMP,3050,IMP 7:20 PM 9/16/1973 14440 045177 4 HIPLT5: LDA HIDEST X 14441 121674 4 JST (TALLYG) I /ANY ALLOC FROM OUR DEST? 14442 003444 4 JMP HIPLT6 /NO 14443 003447 4 JMP HIPLT8 14444 021026 4 HIPLT6: JST HIWMD DEFPLC [HI - WAITING FOR ALL8] 14445 003440 4 HIALL: JMP HIPLT5 14446 121635 4 HIPLT7: JST (HIWM) I 14447 172677 4 HIPLT8: LDX HIXX I 14450 044111 4 LDA BUFE X 14451 100400 4 SPL 0"A"TWOQ /HAS THE ACK FOR THIS PKT BEEN PRC*] 14452 003446 4 JMP HIPLT7 /NOT YET, PKT STILL ON LINE, SO WAI 14453 072675 4 LDX HIP 14454 003456 4 JMP HIPLT0 14455 021026 4 HIPLT9: JST HIWMD DEFPLC [HI - WAITING FOR MESS NO FOR MESS8] 14456 045177 4 HIPLT0: LDA HIDEST X /KEEP SAME ORDNO AS REQS 14457 121657 4 JST (MESGET) I /GET NEW MESS NO FOR MESS8 14460 003455 4 JMP HIPLT9 /MESS NO IN USE, WAIT 14461 051137 4 STA HIH0 X 0"A"REQALL /SAVE IN HEADER 14462 111667 4 STA (HITT 0 X) I /DEFEAT INC TRN LOGIC 14463 003403 4 JMP HIPLTA *** THIS DOCUMENT MAY CONTAIN BBN PROPRIETARY INFORMATION. *** *** FURNISHED FOR U. S. GOVERNMENT END USE ONLY. *** PAGE 131 IMP,3050,IMP 7:20 PM 9/16/1973 14464 000000 4 HIPKT: 0 14465 104677 4 LDA HIXX I /COPY HEADER 14466 015700 4 ADD (HEAD) 14467 011135 4 STA HIT1 14470 045137 4 LDA HIH0 X 14471 111135 4 STA HIT1 I 14472 025135 4 IRS HIT1 14473 045147 4 LDA HIH1 X 14474 111135 4 STA HIT1 I 14475 025135 4 IRS HIT1 14476 045157 4 LDA HIH2 X 14477 111135 4 STA HIT1 I 14500 025135 4 IRS HIT1 14501 045167 4 LDA HIH3 X 14502 111135 4 STA HIT1 I 14503 105701 4 LDA (HIB1 0 XI) I /SAVE LENGTH 14504 140100 4 SSP 0"A"TWOQ 14505 172677 4 LDX HIXX I /LEAVE ROOM FOR CKSUM WRD 14506 050111 4 STA BUFE X /SET UP TWOQ BIT AFTER CALL TO HIPK 14507 131040 4 RDCLOK /SAVE TIME 14510 003507 4 JMP .-1 14511 050001 4 STA IT X 14512 004675 4 LDA HIP 0"A"INPCHN 14513 140500 4 SSM 0"A"HSTMOD 14514 050003 4 STA INCH X 14515 140040 4 CRA 14516 050000 4 STA 0 X /CLEAR CHAIN POINTER 14517 103464 4 JMP HIPKT I 14520 000000 4 HICKSM: 0 14521 005702 4 LDA (HICKAD) /GRAB ADDER 14522 026111 4 IMA ADDRET /AND SAVE OLD OWNER 14523 011227 4 STA HIAR 14524 044111 4 LDA BUFE X 14525 140100 4 SSP 0"A"TWOQ 14526 011543 4 STA HICKT 14527 140407 4 TCA 14530 014000 4 ADD 0 14531 015703 4 ADD (ADDBOT+ACKH+1) 14532 011535 4 STA HICKAJ 14533 017704 4 SUB (ADDBOT+1) /-NO DF WORDS 14534 103535 4 JMP HICKAJ I 14535 4 HICKAJ: BSS 1 14536 140407 4 HICKAD: TCA DEFPLC [NOP HERE TO TURN OFF H2I CHECKSUM GENERATION] 14537 111543 4 STA HICKT I /STORE CHECKSUM 14540 005227 4 LDA HIAR /PUT BACK OLD OWNER 14541 010111 4 STA ADDRET 14542 103520 4 JMP HICKSM I LEV VAR 14543 V HICKT: BSS 1 /TEMP BUFE PTR *** THIS DOCUMENT MAY CONTAIN BBN PROPRIETARY INFORMATION. *** *** FURNISHED FOR U. S. GOVERNMENT END USE ONLY. *** PAGE 132 IMP,3050,IMP 7:20 PM 9/16/1973 /TOP OF PACKET LOOP LEV H2I DEFPLC [HI - WAITING FOR MIDDLE PACKET] 14544 021464 4 HI25: JST HIPKT /SET UP HEADER AND BUFFER CONTROL W[ 14545 072675 4 LDX HIP 14546 105667 4 LDA (HITT 0 X) I 14547 101040 4 SNZ /DID ALARM CLOCK GO OFF? 14550 003610 4 JMP HIPSLO /YES 14551 105642 4 HI26: LDA (HER 0 X) I 14552 011553 4 STA .+1 14553 4 BSS 1 /ERROR? 14554 003570 4 JMP HI84 /NO 14555 005646 4 LDA (CERROR) /YES, MARK MESS AS ERROR IN DATA 14556 153207 4 HISUBC: ERA HILINK XI /PUT IN NEW SUB CODE 14557 006120 4 ANA SEVEN 0"A"SUBCOD 14560 153207 4 ERA HILINK XI /INTO PNTR TO LINK AND SUB CODE WOR[ 14561 151207 4 STA HILINK XI 14562 172677 4 LDX HIXX I 14563 044005 4 LDA HEAD X 14564 007705 4 ANA (0 0 177777"X"INCTRN) 14565 013706 4 ERA (INCTRN) /SET INC TRN BIT 14566 050005 4 STA HEAD X 14567 003616 4 JMP H2TASK 14570 045177 4 HI84: LDA HIDEST X /COUNT A PACKET OF THROUGHPUT 14571 121707 4 JST (HTPPT) I 14572 105644 4 LDA (EMFH 0 X) I 14573 011574 4 STA HIEM1 14574 4 HIEM1: BSS 1 /IS FOM SET? 14575 003577 4 JMP .+2 /NO 14576 003612 4 JMP HI87 /YES 14577 045147 4 LDA HIH1 X /GET PACKET # 14600 007655 4 ANA (PKTNO) 14601 013655 4 ERA (PKTNO) 14602 101040 4 SNZ /IS PKT NO=7 ? 14603 003606 4 JMP HIPLNG /YES 14604 172677 4 HI85: LDX HIXX I 14605 003616 4 JMP H2TASK /NO 14606 004114 4 HIPLNG: LDA ONE 0"A"CLONG 14607 003556 4 JMP HISUBC /MARK MESS AS TOO LONG 14610 004115 4 HIPSLO: LDA TWO 0"A"CSLOWS 14611 003556 4 JMP HISUBC /MARK MESS AS TOO SLOW *** THIS DOCUMENT MAY CONTAIN BBN PROPRIETARY INFORMATION. *** *** FURNISHED FOR U. S. GOVERNMENT END USE ONLY. *** PAGE 133 IMP,3050,IMP 7:20 PM 9/16/1973 14612 172677 4 HI87: LDX HIXX I 14613 044007 4 DEFSTAT LDA HEAD2 X, HS0 00607 031055 4 32003 014613 4 32023 044007 4 14614 140500 4 SSM 0"A"LSTPKT 14615 050007 4 STA HEAD2 X 14616 021520 4 H2TASK: JST HICKSM /CHECKSUM PACKET 14617 001001 4 INH M2I 14620 132401 4 0 STX ETQ I /PUT PACKET ON MIDDLE TASK QUEUE 14621 032401 4 0 STX ETQ 14622 030041 4 0 TASK /POKE TASK INTERRUPT 14623 121635 4 0 H2TSKS: JST (HIWM) I RET H2I DEFPLC [HI - WAITING FOR TASK TO TAKE A PKT] 14624 003623 4 JMP H2TSKS /NO ACTION YET 14625 003604 4 JMP HI85 /TASK REFUSED IT 14626 103710 4 JMP (HIDB) I /TASK TOOK IT *** THIS DOCUMENT MAY CONTAIN BBN PROPRIETARY INFORMATION. *** *** FURNISHED FOR U. S. GOVERNMENT END USE ONLY. *** PAGE 134 IMP,3050,IMP 7:20 PM 9/16/1973 14627 007400 C LEV CON CONSTANTS 14630 002000 C 14631 013357 C 14632 021431 C 14633 054177 C 14634 013127 C 14635 013124 C 14636 053432 C 14637 053433 C 14640 177760 C 14641 114123 C 14642 053170 C 14643 056306 C 14644 053313 C 14645 000400 C 14646 000004 C 14647 004400 C 14650 000704 C 14651 000077 C 14652 000340 C 14653 040300 C 14654 040200 C 14655 003400 C 14656 100077 C 14657 015161 C 14660 010000 C 14661 000006 C 14662 030457 C 14663 157777 C 14664 020000 C 14665 014343 C 14666 013466 C 14667 053137 C 14670 174377 C 14671 000300 C 14672 015064 C 14673 022415 C 14674 015114 C 14675 015233 C 14676 000100 C 14677 100010 C 14700 000005 C 14701 153147 C 14702 014536 C 14703 001563 C 14704 001557 C 14705 177767 C 14706 000010 C 14707 022426 C 14710 013405 C 02423 176721 C PAGEND 14,UNCON,4 *** THIS DOCUMENT MAY CONTAIN BBN PROPRIETARY INFORMATION. *** *** FURNISHED FOR U. S. GOVERNMENT END USE ONLY. *** PAGE 135 IMP,3050,IMP 7:20 PM 9/16/1973 LEV [T.O,TSK,BCK] LCK H2I /PENDING PACKET TABLE SUBROUTINES - LOCK INTERRUPTS 15033 000000 5 4 PPTGET: 0 /GET AN ENTRY FROM PPT 15034 011160 5 4 STA PPWANT /MATCH ON MESSNO AND IMPNO IN A 15035 005521 5 4 LDA (-PPTL) 15036 011157 5 4 STA PPTRY 15037 005522 5 4 LDA (PPT) 15040 011156 5 4 STA PPSLT 15041 105156 5 4 PPTL1: LDA PPSLT I /LOOK AT NEXT SLOT 15042 101040 5 4 SNZ /IS THIS SLOT OCCUPIED? 15043 003060 5 4 JMP PPTN1 /NO 15044 010000 5 4 STA 0 /YES, SO LOOK FOR MATCH 15045 044005 5 4 LDA HEAD X 15046 141044 5 4 CAR 0"A"MESSNO 15047 052006 5 4 ERA HEAD1 X 15050 007523 5 4 ANA (0 0 177777"X"DESTI) 15051 052006 5 4 ERA HEAD1 X 15052 013160 5 4 ERA PPWANT 15053 100040 5 4 SZE /MATCH ON MESSNO+IMPNO? 15054 003060 5 4 JMP PPTN1 /NO 15055 005156 5 4 LDA PPSLT /RETURN PNTR TO PPT PNTR IN AC 15056 025033 5 4 IRS PPTGET /SKIP=SUCCESS 15057 103033 5 4 JMP PPTGET I 15060 025156 5 4 PPTN1: IRS PPSLT /GET NEXT SLOT 15061 025157 5 4 IRS PPTRY 15062 003041 5 4 JMP PPTL1 /LOOP BACK 15063 103033 5 4 JMP PPTGET I /NO MATCH, NO SKIP LEV H2I 15064 000000 4 PPTPUT: 0 /PUT AN ENTRY INTO PPT - PNTR IN X 15065 004675 4 LDA HIP /TABLE IS PPTL DEEP FOR FAKE HOSTS 15066 040576 4 ARS 2 15067 140407 4 TCA 0"A"NH /AND PPTL-1 DEEP FOR REAL HOSTS 15070 015524 4 ADD (0 1-PPTL) 15071 011157 4 STA PPTRY 15072 005522 4 LDA (PPT) 15073 011156 4 STA PPSLT 15074 105156 4 PPTL2: LDA PPSLT I 15075 100040 4 SZE /IS THIS SLOT FREE? 15076 003110 4 JMP PPTN2 /NO 15077 133156 4 STX PPSLT I /YES, SO PUT IN OUR PNTR 15100 044111 4 LDA BUFE X 15101 140500 4 SSM 0"A"TWOQ /MARK PACKET AS ON 2 QUEUES 15102 050111 4 DEFSTAT STA BUFE X, HS4 00610 031266 4 32004 015102 4 32024 050111 4 15103 004000 4 LDA 0 15104 015525 4 ADD (HEAD3) 15105 072675 4 LDX HIP 15106 025064 4 IRS PPTPUT /SKIP=SUCCESS 15107 103064 4 JMP PPTPUT I 15110 025156 4 PPTN2: IRS PPSLT /GET NEXT SLOT 15111 025157 4 IRS PPTRY 15112 003074 4 JMP PPTL2 /LOOP BACK 15113 103064 4 JMP PPTPUT I /NO ROOM, NO SKIP *** THIS DOCUMENT MAY CONTAIN BBN PROPRIETARY INFORMATION. *** *** FURNISHED FOR U. S. GOVERNMENT END USE ONLY. *** PAGE 136 IMP,3050,IMP 7:20 PM 9/16/1973 LEV [H2I,T.O,BCK] /TALLY TABLE SUBROUTINES - LOCK INTERRUPTS /ARG PASSED IN A, AND X PRESERVED 15114 000000 4 TALLYG: 0 /GET AN ENTRY FROM TALLY 15115 011153 4 STA TALLYT /IMPNO TO MATCH IN A 15116 033154 4 STX TALLYX 15117 073526 4 LDX (TALLY-1) 15120 024000 4 TALLYK: IRS 0 15121 004000 4 LDA 0 15122 023155 4 CAS TALLYI /COMPARE WITH IN PNTR 15123 003150 4 JMP TALLYR 15124 003150 4 JMP TALLYR /NO MATCH, NO SKIP 15125 044000 4 LDA 0 X 15126 013153 4 ERA TALLYT 15127 100040 4 SZE /IS THIS ENTRY ONE WE WANT? 15130 003120 4 JMP TALLYK /NO, LOOP BACK 15131 004000 4 LDA 0 15132 013527 4 ERA (TALLY) 15133 101040 4 SNZ /DID WE JUST GRAB THE OLDEST ALLOCA 15134 111530 4 STA (TALLYC) I /YES, SO RESET TALLY CLOCK 15135 044001 4 TALLYM: LDA 1 X 15136 050000 4 STA 0 X /MOVE REST OF TABLE UP BY ONE SLOT 15137 024000 4 IRS 0 15140 004000 4 LDA 0 15141 013155 4 ERA TALLYI 15142 100040 4 SZE /DONE YET? 15143 003135 4 JMP TALLYM /NO, LOOP BACK 15144 005155 4 LDA TALLYI /YES, NOW ADJUST IN PNTR 15145 016114 4 SUB ONE 15146 011155 4 STA TALLYI 15147 025114 4 IRS TALLYG /SKIP=SUCCFSS 15150 073154 4 TALLYR: LDX TALLYX /RESTORE X 15151 005153 4 LDA TALLYT /RESTORE A 15152 103114 4 JMP TALLYG I LEV VAR 15153 V TALLYT: BSS 1 /TEMP A 15154 V TALLYX: BSS 1 /TEMP X 15155 V TALLYI: BSS 1 /IN PNTR 15156 V PPSLT: BSS 1 /PNTR TO PPT ENTRY 15157 V PPTRY: BSS 1 /NO OF TIMES TO LOOK 15160 V PPWANT: BSS 1 /MESSNO + IMPNO WE WANT *** THIS DOCUMENT MAY CONTAIN BBN PROPRIETARY INFORMATION. *** *** FURNISHED FOR U. S. GOVERNMENT END USE ONLY. *** PAGE 137 IMP,3050,IMP 7:20 PM 9/16/1973 LEV [H2I,BCK] 15161 000000 4 MESGET: 0 /GFT MESSNO, DEST IMP IN A 15162 033204 4 STX MESGX 15163 011203 4 STA MESGT 15164 140100 4 SSP 0"A"PRIBIT 15165 015531 4 ADD (TMESS) 15166 010000 4 STA 0 15167 044000 4 LDA 0 X 15170 101100 4 SLN 0"A"MESBTS 15171 003201 4 JMP MESGND /MESS NO IN USE 15172 005203 4 LDA MESGT 15173 100400 4 SPL 0"A"PRIBIT /NEED A NEW ORD NO? 15174 021361 4 JST UPORD /YES 15175 021347 4 JST UPMESS 15176 007532 4 ANA (MESSNO 0 ORDNO) 15177 013533 4 ERA (TRNREP) /MARK AS TRANSMISSION 15200 025161 4 IRS MESGET /SKIP=SUCCESS 15201 073204 4 MESGND: LDX MESGX 15202 103161 4 JMP MESGET I LEV VAR 15203 V MESGT: BSS 1 15204 V MESGX: BSS 1 LEV [T.O,TSK,BCK] LCK H2I /PENDING LEADER TABLE SUBROUTINES - LOCK INTERRUPTS 15205 000000 5 4 PLTGET: 0 /GET AN ENTRY FROM PLT 15206 011274 5 4 STA PLWANT /MATCH ON MESSNO AND IMPNO IN A 15207 005534 5 4 LDA (-PLTL) 15210 011273 5 4 STA PLTRY 15211 073535 5 4 LDX (PLT) 15212 044000 5 4 PLTL1: LDA PLT0 X 15213 101040 5 4 SNZ /IS THIS ENTRY EMPTY? 15214 003226 5 4 JMP PLTN1 /YES 15215 141044 5 4 CAR 0"A"MESSNO 15216 052014 5 4 ERA PLT1 X 15217 007523 5 4 ANA (0 0 177777"X"DESTI) 15220 052014 5 4 ERA PLT1 X 15221 013274 5 4 ERA PLWANT 15222 100040 5 4 SZE /MATCH ON MESSNO+IMPNO? 15223 003226 5 4 JMP PLTN1 /NO 15224 025205 5 4 IRS PLTGET /SKIP=SUCCESS 15225 103205 5 4 JMP PLTGET I /RETURN PNTR TO PLT ENTRY IN X 15226 024000 5 4 PLTN1: IRS 0 /GET NEXT ENTRY 15227 025273 5 4 IRS PLTRY 15230 003212 5 4 JMP PLTL1 /LOOP BACK 15231 005274 5 4 LDA PLWANT /RESTORE A 15232 103205 5 4 JMP PLTGET I /NO MATCH, NO SKIP *** THIS DOCUMENT MAY CONTAIN BBN PROPRIETARY INFORMATION. *** *** FURNISHED FOR U. S. GOVERNMENT END USE ONLY. *** PAGE 138 IMP,3050,IMP 7:20 PM 9/16/1973 LEV H2I 15233 000000 4 PLTPUT: 0 /PUT AN ENTRY INTD PLT 15234 004000 4 LDA 0 /HOST NO IN A 15235 113536 4 ERA (HIH0 0 X) I 15236 007537 4 ANA (0 0 177777"X"MESSNO"X"REQALL) 15237 113536 4 ERA (HIH0 0 X) I 15240 013540 4 ERA (PLTUSE) /MARK PLT0 ENTRY IN USE 15241 011275 4 STA PLTH /SAVE PLT0 ENTRY 15242 105541 4 LDA (HIH1 0 X) I 15243 011276 4 STA PLTH1 /SAVE PLT1 ENTRY 15244 105542 4 LDA (HIH3 0 X) I 15245 011277 4 STA PLTH3 /SAVE PLT2 ENTRY 15246 005534 4 LDA (-PLTL) 15247 011273 4 STA PLTRY 15250 073535 4 LDX (PLT) 15251 044000 4 PLTL2: LDA PLT0 X 15252 100040 4 SZE /IS THIS ENTRY FREE? 15253 003267 4 JMP PLTN2 /NO 15254 005275 4 LDA PLTH /YES, SO PLANT PLT0,1,2 15255 050000 4 STA PLT0 X 15256 005276 4 LDA PLTH1 15257 050014 4 STA PLT1 X 15260 005277 4 LDA PLTH3 15261 050030 4 DEFSTAT STA PLT2 X, HS5 00611 031276 4 32005 015261 4 32025 050030 4 15262 025233 4 IRS PLTPUT /SKIP=SUCCESS 15263 004000 4 PLTPX: LDA 0 15264 015543 4 ADD (PLT2) 15265 072675 4 LDX HIP 15266 103233 4 JMP PLTPUT I 15267 024000 4 PLTN2: IRS 0 /GET NEXT ENTRY 15270 025273 4 IRS PLTRY 15271 003251 4 JMP PLTL2 /LOOP BACK 15272 003263 4 JMP PLTPX /NO ROOM, NO SKIP LEV VAR 15273 V PLTRY: BSS 1 15274 V PLWANT: BSS 1 15275 V PLTH: BSS 1 15276 V PLTH1: BSS 1 15277 V PLTH3: BSS 1 15300 V RALLYA: BSS 1 15301 V RALLYI: BSS 1 15302 V RALMRK: BSS 1 *** THIS DOCUMENT MAY CONTAIN BBN PROPRIETARY INFORMATION. *** *** FURNISHED FOR U. S. GOVERNMENT END USE ONLY. *** PAGE 139 IMP,3050,IMP 7:20 PM 9/16/1973 /RALLY TABLE SUBROUTINES LEV [I2H,TSK] 15303 000000 3 RALLYP: 0 /PUT AN ENTRY IN RALLY TABLE 15304 011300 3 STA RALLYA /A = MESSNO, ONEOR8, RFNM, SRCEI 15305 007544 3 ANA (SRCEI) 15306 015545 3 ADD (RALLY) 15307 011301 3 STA RALLYI /SET UP INPUT PNTR 15310 004121 3 LDA MINUS1 15311 022000 3 CAS 0 /X = REGULAR. INCOMPLETE, OR DEAD 15312 141206 3 AOA /X=SIGN, DEAD 15313 141206 3 AOA /X=MINUS1, INCOMPLETE 15314 141206 3 AOA /X=0 OR X>0, REGULAR 15315 141206 3 AOA /MAKE INTO 11, 10, OR 01 15316 041576 3 ALS 2 /SHIFT INTO POSITION 15317 011302 3 STA RALMRK /AND SAVE AS MARK BITS 15320 005300 3 LDA RALLYA 15321 141140 3 ICL 0"A"MESSNO 15322 006116 3 ANA THREE 15323 041576 3 ALS 2 15324 140407 3 TCA 15325 015546 3 ADD (ALR 0 15326 011331 3 STA RALPS1 /SET UP SHIFT 15327 011341 3 STA RALPS2 15330 005547 3 LDA (17) 15331 3 RALPS1: BSS 1 15332 107301 3 ANA RALLYI I 15333 100040 3 SZE /SOMETHING ALREADY THERE? 15334 003346 3 JMP RALPX /YES, A BUG 15335 005300 3 LDA RALLYA 15336 040672 3 ARR 6 0"A"[ONEOR8 0 RFNM] 15337 006116 3 ANA THREE /GET BITS 15340 013302 3 ERA RALMRK /MARK GOT-IT BIT 15341 3 RALPS2: BSS 1 /SHIFT THEM OVER 15342 113301 3 ERA RALLYI I /OR THE BITS IN 15343 111301 3 STA RALLYI I 15344 010477 3 STA RALLCF /COUNT AN ALLOCATE PENDING 15345 025303 3 IRS RALLYP /SKIP=SUCCESS 15346 103303 3 RALPX: JMP RALLYP I /FORMAT OF EACH RALLY WORD IS 4 4-BIT BYTES: A,B,C,D /THIS TABLE RUNS IN PARALLEL WITH AMESS, THE NEXT MESSAGE /NUMBER FOR WHICH A REPLY SHOULD BE RETURNED /BYTE A IS FOR AMESS=3 MOD 4, B FOR AMESS=2 MOD 4 /C= 1 MOD 4, D= 0 MOD 4 /FORMAT OF EACH 4 -BIT BYTE IS TTMM: /TT=00 NO ENTRY /TT=01 RFNM OR RFNM/ALLOCATE /TT=10 INCOMPLETE TRANSMISSION /TT=11 DESTINATION DEAD /FOR TT=10 OR TT=01: /MM=00 8 PKT ALLOCATE /MM=01 8 PKT RFNM/ALLOCATE /MM=10 1 PKT ALLOCATE /MM=11 1 PKT RFNM *** THIS DOCUMENT MAY CONTAIN BBN PROPRIETARY INFORMATION. *** *** FURNISHED FOR U. S. GOVERNMENT END USE ONLY. *** PAGE 140 IMP,3050,IMP 7:20 PM 9/16/1973 LEV [H2I,T.O,TSK,BCK] 15347 000000 4 UPMESS: 0 /ADD ONE TO MESS NO 15350 044000 4 LDA 0 X /PNTR TO MESS TAB IN X 15351 007547 4 ANA (MESBTS) 15352 040477 4 LGR 1 /SHIFT BITS 15353 052000 4 ERA 0 X 15354 007547 4 ANA (MESBTS) 15355 052000 4 ERA 0 X 15356 015550 4 ADD (MESS1) 0"A"MESSNO 15357 050000 4 STA 0 X /INCREMENT MESS NO 15360 103347 4 JMP UPMESS I 15361 000000 4 UPORD: 0 /ADD ONE TO ORDER NO 15362 044000 4 LDA 0 X /PNTR TO MESS TAB IN X 15363 015551 4 ADD (20) 0"A"ORDNO 15364 052000 4 ERA 0 X /INCREMENT ORDER NO 15365 007552 4 ANA (ORDNO) 15366 052000 4 ERA 0 X 15367 050000 4 STA 0 X 15370 103361 4 JMP UPORD I *** THIS DOCUMENT MAY CONTAIN BBN PROPRIETARY INFORMATION. *** *** FURNISHED FOR U. S. GOVERNMENT END USE ONLY. *** PAGE 141 IMP,3050,IMP 7:20 PM 9/16/1973 LEV FRE /PUT A TWO-WORD MESSAGE - LOCK INTERRUPTS /CALLED BY I2H,H2I,T.O,TSK,BCK 15371 000000 0 OWPE: 0 15372 033501 0 STX HNUM 15373 011502 0 STA ONEW 15374 005501 0 LDA HNUM 15375 022130 0 CAS PLNH /REAL HOST? 15376 003442 0 JMP OWPF /NO 15377 101000 0 NOP /TTY LIKE REAL HOST 15400 073553 0 LDX (SHBQ) 15401 004124 0 LDA MINUS4 15402 011500 0 STA TPEE 15403 003411 0 JMP OWP4 15404 010000 0 OWP0: STA 0 15405 064003 0 IRS 3 X 15406 003462 0 JMP OWP3 15407 004121 0 LDA MINUS1 15410 050003 0 STA 3 X 15411 025500 0 OWP4: IRS TPEE /ALLOWED TO HAVE ANOTHER BUFFER? 15412 003415 0 JMP OWP8 /YES 15413 025371 0 OWP7: IRS OWPE /NO 15414 003476 0 JMP OWP5 15415 044000 0 OWP8: LDA 0 X 15416 100040 0 SZE 15417 003404 0 JMP OWP0 15420 104324 0 LDA FREE I 15421 101040 0 SNZ 15422 003413 0 JMP OWP7 15423 026324 0 IMA FREE 15424 024563 0 IRS NFS 15425 050000 0 STA 0 X 15426 011500 0 STA TPEE 15427 026000 0 IMA 0 15430 050001 0 STA 1 X 15431 005554 0 LDA (-17.) /(DECIMAL) 15432 011503 0 STA OWT3 15433 050003 0 STA 3 X 15434 140040 0 CRA 15435 050000 0 STA 0 X 15436 005500 0 LDA TPEE 15437 014117 0 ADD FOUR 15440 050002 0 STA 2 X 15441 003452 0 JMP OWP1 15442 012120 0 OWPF: ERA SEVEN /DISCARD? 15443 100040 0 SZE 15444 103371 0 JMP OWPE I /NO. 15445 005555 0 LDA (-300.) /YES, RESET SOFTWARE WDT. TO 3 MIN. 15446 010503 0 STA WDTIME 15447 030026 0 WDT /AND POKE THE HARDWARE 15450 103371 0 JMP OWPE I *** THIS DOCUMENT MAY CONTAIN BBN PROPRIETARY INFORMATION. *** *** FURNISHED FOR U. S. GOVERNMENT END USE ONLY. *** PAGE 142 IMP,3050,IMP 7:20 PM 9/16/1973 15451 044000 0 OWP2: LDA 0 X 15452 010000 0 OWP1: STA 0 15453 014117 0 ADD FOUR 15454 050000 0 STA 0 X 15455 005500 0 LDA TPEE 15456 050003 0 STA 3 X 15457 025503 0 IRS OWT3 15460 003451 0 JMP OWP2 15461 073500 0 LDX TPEE 15462 144002 0 OWP3: LDA 2 XI 15463 066002 0 IMA 2 X 15464 073501 0 LDX HNUM 15465 150403 0 STA EHWQ XI 15466 050403 0 STA EHWQ X 15467 010000 0 STA 0 15470 140040 0 CRA 15471 050000 0 STA 0 X 15472 005502 0 LDA ONEW 15473 050001 0 STA 1 X 15474 004515 0 LDA TWDP 15475 050002 0 STA 2 X 15476 073501 0 OWP5: LDX HNUM 15477 103371 0 JMP OWPE I LEV VAR 15500 V TPEE: BSS 1 15501 V HNUM: BSS 1 15502 V ONEW: BSS 1 15503 V OWT3: BSS 1 *** THIS DOCUMENT MAY CONTAIN BBN PROPRIETARY INFORMATION. *** *** FURNISHED FOR U. S. GOVERNMENT END USE ONLY. *** PAGE 143 IMP,3050,IMP 7:20 PM 9/16/1973 /SUBROUTINE TO GET FROM A QUEUE - LOCK INTEPRUPTS LEV [I2H,T.O,BCK] 15504 000000 3 GETQ: 0 15505 044000 3 LDA 0 X 15506 101040 3 SNZ 15507 103504 3 JMP GETQ I /NOTHING ON QUEUE 15510 144000 3 LDA 0 XI 15511 101040 3 SNZ /IS THIS THE ONLY THING ON QUEUE? 15512 133556 3 STX (QUEUEE-QUEUEB X) I /YES, MAKE END POINT TO 15513 066000 3 IMA 0 X /REMOVE FROM QUEUE 15514 010000 3 STA 0 15515 140040 3 CRA 15516 050000 3 STA 0 X /CLEAR CHAIN POINTER 15517 025504 3 IRS GETQ 15520 103504 3 JMP GETQ I 15521 177770 C LEV CON CONSTANTS 15522 033457 C 15523 177700 C 15524 177771 C 15525 000010 C 15526 032260 C 15527 032261 C 15530 020210 C 15531 032271 C 15532 177460 C 15533 000004 C 15534 177764 C 15535 033477 C 15536 054137 C 15537 000277 C 15540 000200 C 15541 054147 C 15542 054167 C 15543 000030 C 15544 000077 C 15545 032571 C 15546 041700 C 15547 000017 C 15550 000400 C 15551 000020 C 15552 000060 C 15553 000337 C 15554 177757 C 15555 177324 C 15556 040051 C 02424 175566 C PAGEND 15,UNCON,4 *** THIS DOCUMENT MAY CONTAIN BBN PROPRIETARY INFORMATION. *** *** FURNISHED FOR U. S. GOVERNMENT END USE ONLY. *** PAGE 144 IMP,3050,IMP 7:20 PM 9/16/1973 /IMP TO HOST (IH) PAGI2H: LEV I2H 00076 016034 3 H1OTIL/ IH0E 00077 3 H2OTIL/ TIPDEF IH1E,TINT 02257 000077 3 02307 016026 3 02337 025061 3 00070 016020 3 H3OTIL/ IH2E 00067 016012 3 H4OTIL/ IH3E PAGI2H/ /HOST 3 INTERRUPT ROUTINE 16012 000000 3 0 IH3E: INT I2H 16013 033121 3 0 STX IHX 16014 073012 3 0 LDX IH3E 16015 033042 3 0 STX IHSB 16016 072116 3 0 LDX THREE 16017 003044 3 0 JMP IHSB2 /HOST 2 INTERRUPT ROUTINE 16020 000000 3 0 IH2E: INT I2H 16021 033121 3 0 STX IHX 16022 073020 3 0 LDX IH2E 16023 033042 3 0 STX IHSB 16024 072115 3 0 LDX TWO 16025 003044 3 0 JMP IHSB2 /HOST 1 INTERRUPT ROUTINE 16026 000000 3 0 IH1E: INT I2H 16027 033121 3 0 STX IHX 16030 073026 3 0 LDX IH1E 16031 033042 3 0 STX IHSB 16032 072114 3 0 LDX ONE 16033 003044 3 0 JMP IHSB2 /HOST 0 INTERRUPT ROUTINE 16034 000000 3 0 IH0E: INT I2H 16035 033121 3 0 STX IHX /SAVE INDEX REGISTER 16036 073034 3 0 LDX IH0E 16037 033042 3 0 STX IHSB 16040 072113 3 0 LDX ZERO /NOTE HOST WHICH CAUSED INTERRUPT 16041 003044 3 0 JMP IHSB2 *** THIS DOCUMENT MAY CONTAIN BBN PROPRIETARY INFORMATION. *** *** FURNISHED FOR U. S. GOVERNMENT END USE ONLY. *** PAGE 145 IMP,3050,IMP 7:20 PM 9/16/1973 /FROM HERE ON IS COMMON TO ALL IMP-HOST INTERRUPT ROUTINES 16042 000000 3 0 IHSB: 0 16043 033121 3 0 STX IHX 16044 000011 3 0 IHSB2: DXA 16045 003046 3 0 JMP . 1 16046 011117 3 0 STA IHA /SAVE AC 16047 000043 3 0 INK 16050 011120 3 0 STA IHK /SAVE EX-MODE 16051 032676 3 0 STX IHP /SAVE CURRENT HOST 16052 004500 3 0 LDA IHM /SET UP NEW INTERRUPT MASK (177700) 16053 170120 3 0 SMK INTM /OUTPUT IT 16054 026134 3 0 IMA PRIM /SAVE IT IN PRIM 16055 011122 3 0 STA IHMS /SAVE OLD PRIM 16056 000401 3 0 ENB I2H 16057 143107 3 JMP IHLO XI /RESTART WHERE LAST LEFT OFF 16060 000000 3 IHDB: 0 /DEBREAK 16061 004000 3 LDA 0 16062 016130 3 SUB PLNH 16063 100400 3 SPL 16064 003071 3 JMP IHDO /REAL HOST - DO THE OCP 16065 004107 3 LDA M30SEC /FAKE HOSTS ALWAYS GET 2 MINUTES 16066 041576 3 ALS 2 16067 051306 3 STA IHTT X 16070 100000 3 SKP /DON'T DO OCP FOR FAKE GUYS 16071 3 IHDO: BSS 1 16072 005060 3 LDA IHDB 16073 051107 3 IHDONE: STA IHLO X 16074 005122 3 LDA IHMS /RESTORE INTERPUPT MASK 16075 001001 3 INH MSK 16076 170120 3 0 SMK INTM 16077 010134 3 0 STA PRIM 16100 000013 3 0 EXA 16101 005120 3 0 LDA IHK 16102 171020 3 0 OTK /RESTORE EX-MODE 16103 073121 3 0 LDX IHX /RESTORE IR 16104 005117 3 0 LDA IHA /RESTORE AC 16105 000401 3 0 ENB I2H 16106 103042 3 JMP IHSB I LEV VAR / IHLO INDICATES WHAT ROUTINES DID LAST DEFPLC [IHLO] 16107 V IHLO: BSS TH /RETURN ADDRESSES WHERE IH LEFT OFF 16117 V IHA: BSS 1 /AC SAVE 16120 V IHK: BSS 1 /K SAVE 16121 V IHX: BSS 1 /IR SAVE 16122 V IHMS: BSS 1 /OLD PRIM SAVE 16123 V IHAR: BSS 1 /ADD RET SAVE *** THIS DOCUMENT MAY CONTAIN BBN PROPRIETARY INFORMATION. *** *** FURNISHED FOR U. S. GOVERNMENT END USE ONLY. *** PAGE 146 IMP,3050,IMP 7:20 PM 9/16/1973 /IMP-TO-HOST ROUTINES LOCAL STORAGE LEV CON 16124 030270 C IHED: H1FOUT /FINAL OUTPUT INSTRUCTIONS 16125 030260 C H2FOUT 16126 C TIPDEF H3FOUT, NOP 02260 016126 C 02310 030250 C 02340 101000 C 16127 030251 C H4FOUT 16130 016205 C OWOP: OWO /PNTRS TO TWO WORD OUTPUT AREAS 16131 016207 C OWO+2 16132 016211 C OWO+4 16133 016213 C OWO+6 16134 016215 C OWO+10 16135 000044 C IHB1: H1OTBP /DMC OUTPUT PNTRS 16136 000046 C H2OTBP 16137 C TIPDEF H3OTBP, TIPLNK 02261 016137 C 02311 000054 C 02341 000770 C 16140 000030 C H4OTBP 16141 017407 C IHBB 16142 017410 C IHBB+1 16143 017411 C IHBB+2 16144 017412 C IHBB+3 16145 000045 C IHB2: H1OTBP+1 /DMC OUTPUT END PNTRS 16146 000047 C H2OTBP+1 16147 C TIPDEF H3OTBP+1, TIPLNK+1 02262 016147 C 02312 000055 C 02342 000771 C 16150 000031 C H4OTBP+1 16151 017413 C IHBC 16152 017414 C IHBC+1 16153 017415 C IHBC+2 16154 017416 C IHBC+3 LEV VAR /IN IHSP: /0 ==> NOTHING IS GOING OUT /100000 ==> LEADER ONLY (2-WRD MSG) GOING /2000-37777 ==> PACKET 1S GOING OUT /102000-137777 ==> PACKET WITH BAD CKSUM IS GOING OUT 16155 V IHSP: BSS TH /SAVED BUFFER POINTERS 16165 V IHWQ: BSS TH /SAVED QUEUE POINTERS 16175 V IHLSTP: BSS TH /MINUS IF LAST PKT DEFPLC [IH - 2 WORD OUTPUT AREA] 16205 V OWO: BSS [[NH+1]"T"2] /TWO WORD OUTPUT AREA *** THIS DOCUMENT MAY CONTAIN BBN PROPRIETARY INFORMATION. *** *** FURNISHED FOR U. S. GOVERNMENT END USE ONLY. *** PAGE 147 IMP,3050,IMP 7:20 PM 9/16/1973 LEV BCK LCK INI /INITIALIZATION ROUTINE 16217 000000 7 0 IHIN: 0 16220 140040 7 0 CRA 16221 051155 7 0 STA IHSP X 16222 151135 7 0 STA IHB1 XI /FOR FAKE HOSTS 16223 011042 7 0 STA IHSB /IN CASE NON-DXA IMP RELOADS FROM 1 16224 140500 7 0 SSM /BLOCK INPUT! 16225 111575 7 0 STA (HINWAT 0 X) I 16226 005576 7 0 LDA (IHBEG) 16227 021273 7 0 JST IHST 16230 103217 7 0 JMP IHIN I LEV I2H 16231 000000 3 IHS1: 0 /DISCARD BUFFERS FROM QUEUE 16232 014676 3 ADD IHP 16233 011303 3 STA IHT2 16234 015577 3 ADD (NHS+0-SHQ) 16235 011304 3 STA IHT3 16236 004676 3 LDA IHP 16237 012120 3 ERA SEVEN 16240 101040 3 SNZ /DISCARD? 16241 103231 3 JMP IHS1 I /YES, DO NOT DISCARD DISCARD 16242 105303 3 IHS1A: LDA IHT2 I 16243 101040 3 SNZ /ANYTHING ON THIS QUEUE? 16244 103231 3 JMP IHS1 I /NO, QUIT 16245 010000 3 STA 0 16246 005305 3 LDA IHS1F /=0, FLUSH ALL, ELSE, FLUSH TIMEOL' 16247 101040 3 SNZ /DISCARD ALL? 16250 003261 3 JMP IHS1B /YES 16251 004416 3 LDA TIMES /GFT TIME IN SLOW TICKS 16252 056003 3 SUB INCH X /NO, CHECK TIME 16253 100400 3 SPL /TOO OLD? 16254 003267 3 JMP IHS1C /NO, SO SAVE TIME LEFT 16255 004676 3 LDA IHP 16256 016130 3 SUB PLNH 16257 101400 3 SMI /FAKE HOST? 16260 103231 3 JMP IHS1 I /YES, HAVE MERCY 16261 073303 3 IHS1B: LDX IHT2 16262 121600 3 JST (GETQ) I 16263 103231 3 JMP IHS1 I /SHOULDNT HAPPEN 16264 121601 3 JST (IHS5) I 16265 125304 3 IRS IHT3 I 16266 003242 3 JMP IHS1A 16267 023305 3 IHS1C: CAS IHS1F /PICK MIN TIME LEFT 16270 011305 3 STA IHS1F /FOR OLDEST PKT ON PRI OR REG QUEUE 16271 101000 3 NOP /IF NOTHING THERE, USE 30 SECS 16272 103231 3 JMP IHS1 I *** THIS DOCUMENT MAY CONTAIN BBN PROPRIETARY INFORMATION. *** *** FURNISHED FOR U. S. GOVERNMENT END USE ONLY. *** PAGE 148 IMP,3050,IMP 7:20 PM 9/16/1973 LEV T.O /RESTART ROUTINE 16273 000000 5 IHST: 0 /HERE AT INIT AND WHEN HOST READY DT 16274 051107 5 STA IHLO X /THROW AWAY ALL MESSAGES 16275 001001 5 INH SIN 16276 000013 5 0 EXA /BUT DO NOT FLAP IMP'S READY LINE 16277 021042 5 0 JST IHSB RET T.O 16300 001001 5 INH ALL 16301 120672 5 0 JST DODXA I RET T.O 16302 103273 5 JMP IHST I LEV VAR 16303 V IHT2: BSS 1 /TEMP 16304 V IHT3: BSS 1 /TEMP 16305 V IHS1F: BSS 1 /0=FLUSH ALL, ELSE=FLUSH TIMEOUTS /ALSO KEEPS ALARM CLOCK TIME FOR [ 1 16306 V IHTT: BSS TH /TIME OUT CHECK FLAGS LEV CON 16316 030570 C HENABT: H1ENAB 16317 030560 C H2ENAB 16320 030550 C H3ENAB 16321 030551 C H4ENAB LEV I2H 16322 000000 3 IHW640: 0 /SUBR TO WAIT 640 MS 16323 011324 3 STA .+1 /SET UP READY LINE OCP 16324 3 BSS 1 /DO IT 16325 004121 3 LDA MINUS1 /AND WAIT 640 MS FOR RELAY TO SETTL1 16326 051306 3 STA IHTT X 16327 005322 3 LDA IHW640 16330 003073 3 JMP IHDONE 16331 004110 3 IHBEG: LDA PTICKS /A LITTLE MORE THAN TWICE PTICKS 16332 016120 3 SUB SEVEN 16333 041577 3 ALS 1 /WAIT FOR LINES TO COME UP AND ROUT 16334 051306 3 STA IHTT X 16335 005602 3 LDA (IHWAIT) 16336 003073 3 JMP IHDONE 16337 005603 3 IHWT1: LDA (NOP) 16340 021322 3 JST IHW640 DEFPLC [IH - WAITING FOR INITIALIZATION DELAY] 16341 004172 3 IHWAIT: LDA RUT+BBNIMP 16342 100400 3 SPL 0"A"RUTDED /IS NCC UP YET? 16343 003347 3 JMP IHWT2 /NEVER COMING UP...GO AHEAD 16344 007604 3 ANA (RUTCMU) /COMING UP? 16345 100040 3 SZE 16346 003337 3 JMP IHWT1 /YES, WAIT SOME MORE 16347 004116 3 IHWT2: LDA THREE 0"A"HSTOFF /OK, START UP HOSTS 16350 003357 3 JMP IHR11 /HOLD DOWN RDY FOR 60 SECS AT INIT *** THIS DOCUMENT MAY CONTAIN BBN PROPRIETARY INFORMATION. *** *** FURNISHED FOR U. S. GOVERNMENT END USE ONLY. *** PAGE 149 IMP,3050,IMP 7:20 PM 9/16/1973 16351 004000 3 IHR2: LDA 0 /HERE TO FLUSH ALL/FLAP READY LINE 16352 016120 3 SUB SEVEN /DON'T FLUSH STUFF ON DISCARD QUEUE 16353 101040 3 SNZ 16354 103605 3 JMP (IH62) I 16355 111575 3 STA (HINWAT 0 X) I /DISCARD STUFF ON OTHER O1 16356 004115 3 LDA TWO 0"A"HSTTRD 16357 050504 3 IHR11: STA HIHD X /MARK HOST AS TARDY (DEAD) 16360 121606 3 IHR1: JST (OWGE) I /HERE TO FLUSH ALL/NO READY LINE FL 16361 100000 3 SKP /THROW AWAY ALL 2 WORD MESSAGES 16362 003360 3 JMP IHR1 16363 140040 3 CRA /FLUSH BUFFER CURRENTLY IN INTERFACI 16364 151145 3 STA IHB2 XI 16365 151135 3 STA IHB1 XI 16366 067155 3 IMA IHSP X 16367 140100 3 SSP /IF 0, NOTHING GOING 16370 101040 3 SNZ /IF SIGN BIT ONLY, TWO WORD GOING 16371 003400 3 JMP IS40 /IN EITHER CASE, NOTHING TO FLUSH 16372 024541 3 IRS NREA 16373 011305 3 STA IHS1F /SAVE PKT PNTR IN TEMP 16374 045175 3 LDA IHLSTP X /PICK UP LST PKT BIT 16375 073305 3 LDX IHS1F /GET PKT PNTR 16376 050007 3 STA HEAD2 X /AND RESTORE LST PKT BIT TO PKT 16377 121601 3 JST (IHS5) I 16400 140040 3 IS40: CRA /SET TO DISCARD ALL BUFFERS ON QU[ 16401 011305 3 STA IHS1F 16402 005607 3 LDA (SHQ) /GET REGULAR QUEUE 16403 021231 3 JST IHS1 16404 005610 3 LDA (SHPQ) /GET PRIORITY QUEUE 16405 021231 3 JST IHS1 16406 072676 3 LDX IHP 16407 004000 3 LDA 0 16410 016130 3 SUB PLNH 16411 101400 3 SMI /FAKE HOST? 16412 003422 3 JMP IS30 /YES, DO NOT DROP READY LINE 16413 105575 3 LDA (HINWAT 0 X) I /WE BLOCKING INPUT? 16414 101040 3 SNZ 16415 003422 3 JMP IS30 /NO, DON'T DROP READY LINE 16416 105611 3 LDA (HUNXPT 0 X) I 16417 021322 3 JST IHW640 /WAIT FOR 640 MS DEFPLC [IH - WAITING FOR READY LINE TO DROP] 16420 045316 3 LDA HENABT X 16421 021322 3 JST IHW640 /WAIT FOR 640 MS DEFPLC [IH - WAITING FOR READY LINE TO GO UP] 16422 004123 3 IS30: LDA MINUS3 16423 011303 3 STA IHT2 16424 000401 3 IS10: ENB I2H 16425 005612 3 LDA (CNOP) 16426 001001 3 INH FRE 16427 120670 3 0 JST OWP I /PUT 3 NOPS ON HOST TWO WORD QUEUE 16430 101000 3 0 NOP 16431 025303 3 0 IRS IHT2 16432 003424 3 0 JMP IS10 16433 005613 3 0 LDA (CRESET) 16434 120670 3 0 JST OWP I /PUT AN IMP-TO-HOST RESET MESS ON ' 16435 101000 3 0 NOP 16436 000401 3 0 ENB I2H *** THIS DOCUMENT MAY CONTAIN BBN PROPRIETARY INFORMATION. *** *** FURNISHED FOR U. S. GOVERNMENT END USE ONLY. *** PAGE 150 IMP,3050,IMP 7:20 PM 9/16/1973 16437 140040 3 CRA /RELEASE INPUT 16440 111575 3 STA (HINWAT 0 X) I 16441 005603 3 IH00: LDA (NOP) 16442 021322 3 JST IHW640 RET I2H DEFPLC [IH - NOTHING TO DO] 16443 004107 3 IH1: LDA M30SEC /SET TO DISCARD TIMED-OUT BUFFERS 16444 011305 3 STA IHS1F /AND SAVE TIME LEFT ON OLDEST 16445 005607 3 LDA (SHQ) 16446 021231 3 JST IHS1 /CHECK REG QUEUE FOR OLD MESS 16447 005610 3 LDA (SHPQ) 16450 021231 3 JST IHS1 /AND PRI QUEUE ALSO 16451 072676 3 LDX IHP 16452 121606 3 JST (OWGE) I /IS THERE ENTRY ON ONE WORD QUEUE 16453 003503 3 JMP IH2 /NO 16454 151130 3 STA OWOP XI /(OWO+2*IR) PUT WORD IN OUTPUT ARE 16455 045130 3 LDA OWOP X /GET POINTER TO FRONT OF AREA 16456 151135 3 STA IHB1 XI /BUILD FIRST BUFFER CONTROL WORD 16457 141206 3 DEFSTAT AOA,HS3 00612 031113 3 32006 016457 3 32026 141206 3 16460 151145 3 STA IHB2 XI /BUILD SECOND BUFFER CONTROL WORD 16461 051155 3 STA IHSP X 16462 004516 3 LDA TWDG 16463 151155 3 STA IHSP XI /PUT OUT SECOND WORD 16464 045124 3 LDA IHED X 16465 011071 3 STA IHDO /DO OUTPUT + END 16466 004112 3 LDA SIGN 16467 051155 3 STA IHSP X 16470 051175 3 STA IHLSTP X /SO SUCK AND TIP WILL WORK PROPER1 16471 005305 3 LDA IHS1F /USE MIN TIME LEFT FOR PKTS ON QUEU 16472 051306 3 STA IHTT X /OR 30 SECS IF BOTH QUEUES EMPTY 16473 021060 3 JST IHDB / WAITING FOR INTERRUPT AFTER OUTPUT OF 2 WORD MESSAGE DEFPLC [IH - SENDING 2 WORD MSG] 16474 140040 3 CRA 16475 151135 3 STA IHB1 XI 16476 051155 3 STA IHSP X 16477 045306 3 LDA IHTT X 16500 101040 3 SNZ /DID HARDWARE INTERRUPT? 16501 003351 3 JMP IHR2 /NO, ALARM CLOCK WENT OFF- HOST TAR 16502 003443 3 JMP IH1 /YES, NORMAL OUTPUT COMPLETE 16503 044302 3 IH2: LDA SHPQ X /IS THERE SOMETHING IN THE PRIORITY 16504 101040 3 SNZ 16505 003510 3 JMP .+3 /NO 16506 005610 3 LDA (SHPQ) 16507 003514 3 JMP IH19 16510 044272 3 LDA SHQ X /IS THERE SOMETHING IN THE REGULAR 16511 101040 3 SNZ 16512 003441 3 JMP IH00 16513 005607 3 LDA (SHQ) 16514 014000 3 IH19: ADD 0 16515 051165 3 STA IHWQ X /SAVE POINTER TO QUEUE *** THIS DOCUMENT MAY CONTAIN BBN PROPRIETARY INFORMATION. *** *** FURNISHED FOR U. S. GOVERNMENT END USE ONLY. *** PAGE 151 IMP,3050,IMP 7:20 PM 9/16/1973 16516 004115 3 LDA TWO 0"A"[DATA-HEAD2] 16517 111614 3 STA (FPSW 0 X) I 16520 145165 3 IH21: LDA IHWQ XI 16521 051155 3 STA IHSP X /SAVE POINTER TO BUFFER 16522 045165 3 LDA IHWQ X 16523 010000 3 STA 0 16524 144000 3 LDA 0 XI /UPDATE QUEUE START POINTER 16525 050000 3 STA 0 X 16526 101040 3 SNZ /IS THIS LAST ENTRY ON QUEUE 16527 133615 3 STX (EHQ-SHQ X) I /MAKE START PTR POINTED TT 16530 064251 3 IRS NHS-SHQ X 16531 072676 3 LDX IHP 16532 172700 3 LDX IHXX I 16533 005616 3 LDA (IHCKAD) 16534 026111 3 IMA ADDRET 16535 011123 3 STA IHAR 16536 004000 3 LDA 0 16537 056111 3 SUB BUFE X 16540 015617 3 ADD (ADDBOT+ACKH) 16541 140100 3 SSP 0"A"TWOQ 16542 011545 3 STA IHCKAJ 16543 017620 3 SUB (ADDBOT) /-NO OF WORDS 16544 103545 3 JMP IHCKAJ I 16545 3 IHCKAJ: BSS 1 16546 100040 3 IHCKAD: SZE 16547 003553 3 JMP IHBAD 16550 005123 3 LDA IHAR 16551 010111 3 STA ADDRET 16552 103621 3 JMP (IHNOCK) I 16553 027123 3 IHBAD: IMA IHAR /TEMP FOR CKSUM ERROR 16554 010111 3 STA ADDRET /AND RESTORE OWNER 16555 004676 3 LDA IHP 16556 012120 3 ERA SEVEN DEFPLC [NOP HERE TO TURN OFF I2H CHECKSUM CHECK] 16557 101040 3 SNZ 16560 103621 3 JMP (IHNOCK) I /DON'T REPORT DISCARD ERRORS 16561 005123 3 LDA IHAR 16562 001001 3 INH ALL DEFHLT [HOST OUTPUT DETECTED INTRA-IMP CKSUM ERROR] 16563 021564 3 0 JST .+1 /NOW TRAP TO NCC 16564 000000 3 0 0 16565 120745 3 0 JST HLTNCC I 16566 000401 3 0 ENB I2H 16567 072676 3 LDX IHP 16570 045155 3 LDA IHSP X 16571 140500 3 SSM /FLAG PACKET TO GO TO DIAGTT 16572 051155 3 STA IHSP X 16573 140100 3 SSP 16574 103622 3 JMP (IHNOC2) I /AND CONTINUE ANYWAY *** THIS DOCUMENT MAY CONTAIN BBN PROPRIETARY INFORMATION. *** *** FURNISHED FOR U. S. GOVERNMENT END USE ONLY. *** PAGE 152 IMP,3050,IMP 7:20 PM 9/16/1973 16575 053343 C LEV CON CONSTANTS 16576 016331 C 16577 000251 C 16600 015504 C 16601 017237 C 16602 016341 C 16603 101000 C 16604 000340 C 16605 017143 C 16606 017250 C 16607 000272 C 16610 000302 C 16611 041170 C 16612 002000 C 16613 005000 C 16614 057203 C 16615 040051 C 16616 016546 C 16617 001562 C 16620 001556 C 16621 017062 C 16622 017064 C 02425 175632 C PAGEND 16,UNCON,4 *** THIS DOCUMENT MAY CONTAIN BBN PROPRIETARY INFORMATION. *** *** FURNISHED FOR U. S. GOVERNMENT END USE ONLY. *** PAGE 153 IMP,3050,IMP 7:20 PM 9/16/1973 LEV CON 17056 030070 C IHOT: H1ROUT /REGULAR OUTPUT INSTRUCTIONS 17057 030060 C H2ROUT 17060 C TIPDEF H3ROUT, NOP 02263 017060 C 02313 030050 C 02343 101000 C 17061 030051 C H4ROUT LEV I2H /MORE IMP-TO-HOST CODE 17062 072676 3 IHNOCK: LDX IHP 17063 105424 3 LDA (IHSP 0 X) I 17064 015425 3 IHNOC2: ADD (DATA) 17065 057203 3 SUB FPSW X /BUILD FIRST BUFFER CONTROL WORD 17066 111426 3 STA (IHB1 0 XI) I 17067 172700 3 LDX IHXX I 17070 131040 3 RDCLOK 17071 003070 3 JMP .-1 17072 050001 3 STA ST X 17073 140040 3 CRA 17074 050000 3 STA 0 X /CLEAR CHAIN PNTR 17075 044111 3 LDA BUFE X 17076 140100 3 SSP 0"A"TWOQ 17077 016114 3 SUB ONE /STRIP CHECKSUM/DUMMY WRD 17100 072676 3 LDX IHP 17101 111427 3 STA (IHB2 0 XI) I /MAKE SECOND BUFFER CONTR 17102 024565 3 IRS NRES /UPDATE REASSEMBLY COUNT 17103 172700 3 LDX IHXX I 17104 044007 3 LDA HEAD2 X /TURN OFF BITS FOR HOSTS 17105 007430 3 ANA (FRMIMP 0 FRMOCT SRCEHI) 17106 066007 3 IMA HEAD2 X 0"A"[LSTPKT 0 ENDBIT] 17107 072676 3 LDX IHP 17110 111431 3 STA (IHLSTP 0 X) I /SAVE LAST PKT FLAG 17111 100400 3 SPL 0"A"LSTPKT /IS THIS LAST PACKET OF M 17112 003115 3 JMP IH4 /YES 17113 045056 3 LDA IHOT X 17114 100000 3 SKP 17115 105432 3 IH4: DEFSTAT LDA (IHED 0 X) I, HS1 00613 031076 3 32007 017115 3 32027 105432 3 17116 111433 3 STA (IHDO) I /DO OUTPUT 17117 021127 3 JST IH6 17120 105431 3 LDA (IHLSTP 0 X) I 17121 121434 3 JST (HTPPF) I /COUNT A PACKET OF THROUGHPUT 17122 105431 3 LDA (IHLSTP 0 X) I 17123 101400 3 SMI /DID WE JUST PUT OUT LAST PKT? 17124 103435 3 JMP (IH21) I /NO 17125 121436 3 JST (HTPMF) I /COUNT A MESSAGE OF THROUGHPUT 17126 103437 3 JMP (IH1) I /YES *** THIS DOCUMENT MAY CONTAIN BBN PROPRIETARY INFORMATION. *** *** FURNISHED FOR U. S. GOVERNMENT END USE ONLY. *** PAGE 154 IMP,3050,IMP 7:20 PM 9/16/1973 LEV I2H /MORE DF IMP-TO-HOST 17127 000000 3 IH6: 0 /SEND OUT A PKT 17130 172700 3 LDX IHXX I 17131 004416 3 LDA TIMES /GET TIME IN SLOW TICKS 17132 056003 3 SUB INCH X 17133 072676 3 LDX IHP 17134 111440 3 STA (IHTT 0 X) I 17135 100400 3 SPL 17136 003143 3 JMP IH62 /SOME TIME LEFT - GO USE IT 17137 004000 3 LDA 0 /RUN OUT - FAKE HOST? 17140 016130 3 SUB PLNH 17141 100400 3 SPL 17142 103441 3 JMP (IHR2) I /NO - HAVE NO MERCY 17143 121442 3 IH62: JST (IHDB) I DEFPLC [IH - SENDING OUT A PKT] 17144 140040 3 CRA 17145 111426 3 STA (IHB1 0 XI) I 17146 105440 3 LDA (IHTT 0 X) I 17147 101040 3 SNZ /DID HARDWARE INTERRUPT? 17150 103441 3 JMP (IHR2) I /NO, ALARM CLOCK WENT OFF - HOST TA 17151 172700 3 LDX IHXX I /YES, NORMAL OUTPUT COMPLETE 17152 044002 3 LDA PTRT X 17153 001001 3 INH M2I 17154 100040 3 0 SZE /MUST WE TRACE HIM? 17155 121443 3 0 JST (TRCDUN) I /YES 17156 072676 3 0 LDX IHP /MUST FOLLOW TRCDUN CALL 17157 000401 3 0 ENB I2H 17160 140040 3 CRA 17161 067203 3 IMA FPSW X /RESET FIRST PKT SWITCH 17162 172700 3 LDX IHXX I 17163 100040 3 SZE /IS THIS THE FIRST PKT? 17164 003214 3 JMP IH63 /YES 17165 072676 3 IH6F: LDX IHP 17166 140040 3 CRA 17167 126700 3 IMA IHXX I /CLEAR OUT IHSP 17170 010000 3 STA 0 17171 001001 3 INH FRE 17172 100400 3 0 SPL 17173 003177 3 0 JMP IH6B /WAS BAD PACKET. PUT ON DIAG Q 17174 120671 3 0 JST FLUSHI I /FLUSH PACKET 17175 072676 3 0 IH6F1: LDX IHP 17176 103127 3 0 JMP IH6 I 17177 140100 3 0 IH6B: SSP 17200 026342 3 0 IMA DIAGQ /PUT ON DIAG Q 17201 050000 3 0 STA 0 X 17202 003175 3 0 JMP IH6F1 LEV VAR 17203 V FPSW: BSS TH /FIRST PACKET SWITCH 17213 V IH6INC: BSS 1 /MINUS IF RFNM IS FOR INC TRN *** THIS DOCUMENT MAY CONTAIN BBN PROPRIETARY INFORMATION. *** *** FURNISHED FOR U. S. GOVERNMENT END USE ONLY. *** PAGE 155 IMP,3050,IMP 7:20 PM 9/16/1973 LEV I2H 17214 044006 3 IH63: LDA HEAD1 X /THIS CODE IS FOR MULTI-PKT MESS FO: 17215 007444 3 ANA (PKTNO) /THAT WAS ON IH Q TOO LONG IN MID. ] 17216 100040 3 SZE /IS THIS FIRST PACKET? 17217 003165 3 JMP IH6F /NO, THE RFNM HAS BEEN SENT ALREADY 17220 044005 3 LDA HEAD X /NORMAL CASE, SEND BACK RFNM-ALLOC 17221 007445 3 ANA (INCTRN) 17222 100040 3 SZE 17223 004121 3 LDA MINUS1 17224 011213 3 STA IH6INC 17225 044005 3 LDA HEAD X 17226 007446 3 ANA (MESSNO 0 ONEOR8) 17227 013447 3 ERA (RFNM) 17230 052007 3 ERA HEAD2 X 17231 007450 3 ANA (0 0 177777"X"SRCEI) 17232 052007 3 ERA HEAD2 X 17233 073213 3 LDX IH6INC /SET UP AS INCTRN OR NOT 17234 121451 3 JST (RALLYP) I /PUT IN RALLY TABLE 17235 101000 3 NOP /ENTRY ALREADY THERE - BAD 17236 003165 3 JMP IH6F LEV I2H 17237 000000 3 IHS5: 0 17240 044005 3 LDA HEAD X 17241 007452 3 ANA (0 0 177777"X"INCTRN) 17242 013445 3 ERA (INCTRN) 17243 050005 3 STA HEAD X 17244 132352 3 STX EHQ+NH+3 I 17245 032352 3 STX EHQ+NH+3 17246 024526 3 IRS NHA+NH+3 17247 103237 3 JMP IHS5 I *** THIS DOCUMENT MAY CONTAIN BBN PROPRIETARY INFORMATION. *** *** FURNISHED FOR U. S. GOVERNMENT END USE ONLY. *** PAGE 156 IMP,3050,IMP 7:20 PM 9/16/1973 /ROUTINE TO GET WORD OFF ONE WORD MESSAGE QUEUE TO HOST /CALLING SEQUENCE /INDEX REGISTER CONTAINS HOST NUMBER / JST OWG I / / LEV I2H 17250 000000 3 OWGE: 0 17251 033337 3 STX OWGY 17252 044332 3 LDA SHWQ X /GET START OF HOST ONE WORD QUEUE 17253 100040 3 SZE 17254 003260 3 JMP OWGL /RETURN IF NOTHING ON QUEUE 17255 073337 3 OWGX: LDX OWGY 17256 005340 3 LDA OWGA /GET DATA IN AC 17257 103250 3 JMP OWGE I /RETURN 17260 011341 3 OWGL: STA OWGS /SAVE START OF QUEUE FOR LATER USE 17261 004000 3 LDA 0 17262 022130 3 CAS PLNH /REAL HOST? 17263 003255 3 JMP OWGX /NO 17264 101000 3 NOP /TTY LIKE REAL HOST 17265 025250 3 IRS OWGE /PREPARE TO TAKE SECOND RETURN 17266 073341 3 LDX OWGS /PUT START OF QUEUE IN INDEX REGI[*1 17267 044001 3 LDA 1 X 17270 011340 3 STA OWGA 17271 044002 3 LDA 2 X 17272 010516 3 STA TWDG 17273 044003 3 LDA 3 X /GET POINTER TO POINTER TO HEAD OF 17274 011342 3 STA OWGT /SAVE FOP LATER USE 17275 073337 3 LDX OWGY /GET HOST NUMBER 17276 144332 3 LDA SHWQ XI 17277 050332 3 STA SHWQ X /UPDATE QUEUE POINTER 17300 100040 3 SZE 17301 003305 3 JMP OWG1 17302 005453 3 LDA (SHWQ) 17303 014000 3 ADD 0 17304 050403 3 STA EHWQ X /IF QUEUE NOW EMPTY FIX THINGS *** THIS DOCUMENT MAY CONTAIN BBN PROPRIETARY INFORMATION. *** *** FURNISHED FOR U. S. GOVERNMENT END USE ONLY. *** PAGE 157 IMP,3050,IMP 7:20 PM 9/16/1973 17305 073342 3 OWG1: LDX OWGT /GET POINTER TO HEAD OF BUFFER 17306 044002 3 LDA 2 X /GET FREE STORAGE POINTER FOR THIS I 17307 111341 3 STA OWGS I 17310 005341 3 LDA OWGS /PUT THREE WORD BLOCK ON FREE STORA1 17311 050002 3 STA 2 X 17312 044003 3 LDA 3 X /GET FREE BLOCK COUNT 17313 016114 3 SUB ONE 17314 050003 3 STA 3 X /UPDATE FREE BLOCK COUNT 17315 023454 3 CAS (-18.) /IS BUFFER EMPTY 17316 003255 3 JMP OWGX /IF NO, RETURN 17317 044001 3 LDA 1 X /IF YES, PUT IT ON FREE LIST 17320 054000 3 ADD 0 X 17321 017455 3 SUB (SHBQ) /CHECK FOR LAST BUFFER ON QUEUE 17322 101040 3 SNZ 17323 003255 3 JMP OWGX /IF YES, RETURN 17324 044000 3 LDA 0 X /TAKE BUFFER OUT OF USE FOR ONE WORI 17325 150001 3 STA 1 XI 17326 044001 3 LDA 1 X 17327 064000 3 IRS 0 X 17330 150000 3 STA 0 XI 17331 140040 3 CRA 0"A"TWOQ 17332 050111 3 STA BUFE X 17333 001001 3 INH FRE 17334 120671 3 0 JST FLUSHI I 17335 000401 3 0 ENB I2H 17336 003255 3 JMP OWGX LEV VAR 17337 V OWGY: BSS 1 17340 V OWGA: BSS 1 17341 V OWGS: BSS 1 17342 V OWGT: BSS 1 LEV ALL /CALLED BY VDI,T.O,TSK,PCK 17343 000000 0 .DODXA: 0 /DISABLE EXTENDED ADDRESSING 17344 000011 0 DXA /CALLED WITH INTERRUPTS LOCKED 17345 000401 0 ENB ALL /RETURNS WITH INTERRUPTS ENABLED 17346 103343 0 JMP .DODXA I *** THIS DOCUMENT MAY CONTAIN BBN PROPRIETARY INFORMATION. *** *** FURNISHED FOR U. S. GOVERNMENT END USE ONLY. *** PAGE 158 IMP,3050,IMP 7:20 PM 9/16/1973 /IMP TO FAKE HOST (SUCK) /SIMULATE IMP-TO-HOST INTERFACE HARDWARE FOR FAKE HOSTS: /1- IF THE DMC OUTPUT AND OUTPUT END POINTERS CROSS, / GIVE OUTPUT COMPLETED INTERRUPT /2- FETCH NEXT WORD THROUGH THE DMC OUTPUT POINTER /3- INCREMENT THE DMC OUTPUT POINTER, AND IF THE POINTERS C'1 / AND IF THIS IS A FINAL OUTPUT, SET THE LAST BIT INDICATOI /4- SEND THE WORD TO THE HOST /5- GO TO 1 /IHBB SERVES AS THE DMC OUTPUT POINTER /IHBC SERVES AS THE DMC OUTPUT END POINTER /CALLING SEQUENCE /FAKE HOST NUMBER IN X REG - 0=TTY,1=DDT.2=PARAM CHANGE,3=DI1 /JST SUCK - GET NEXT WORD FROM IMP FOR THIS FAKE HOST / - IMPLICIT BACKGROUND WAIT UNTIL WORD IS READY /R1 - WORD IN A REG /R2 - WORD IN A REG IS LAST WORD OF CURRENT MESSAGE LEV BCK 17347 000000 7 SUC: 0 17350 045407 7 SUC1: LDA IHBB X /IS THERE ANY OUTPUT TO GO? 17351 101040 7 SNZ 17352 003366 7 JMP SUC2 /NO, WAIT ONE BACKGROUND LOOP 17353 057413 7 SUB IHBC X 17354 022113 7 CAS ZERO /HAVE PNTRS CROSSED? 17355 003374 7 JMP SUC4 /YES 17356 003362 7 JMP SUC3 /ALMOST, THIS IS LAST WORD IN BUFFE1 17357 145407 7 SUC5: LDA IHBB XI /FETCH NEXT WORD FROM OUTPUT PNTR 17360 065407 7 IRS IHBB X /INCREMENT OUTPUT PNTR 17361 103347 7 JMP SUC I /NOW RETURN WITH DATA 17362 105456 7 SUC3: LDA (IHLSTP+NH X) I /YES 17363 100400 7 SPL 0"A"LSTPKT /IS THIS THE LAST PKT? 17364 025347 7 IRS SUC /YES, SO GIVE SKIP RETURN=LAST BIT 17365 003357 7 JMP SUC5 17366 005347 7 SUC2: LDA SUC 17367 051420 7 STA SUCT X /SAVE RETURN ADDRESS 17370 120667 7 JST WAIT I /COROUTINE RETURN TO BACKGROUND DEFPLC [SUCK CALL TO WAIT] 17371 045420 7 LDA SUCT X 17372 011347 7 STA SUC /RESTORE RETURN ADDRESS 17373 003350 7 JMP SUC1 17374 033417 7 SUC4: STX SUCX /YES, SO INTERRUPT ON OUTPUT COMPLE 17375 004000 7 LDA 0 17376 014130 7 ADD PLNH 17377 010000 7 STA 0 /SET UP X REG FOR THIS FAKE HOST 17400 001001 7 INH SIN /SOFTWARE INTERRUPT IMP-TO-HOST 17401 000013 7 0 EXA 17402 121457 7 0 JST (IHSB) I RET BCK 17403 001001 7 INH ALL 17404 120672 7 0 JST DODXA I RET BCK 17405 073417 7 LDX SUCX 17406 003350 7 JMP SUC1 /NOW GO BACK FOR MORE OUTPUT *** THIS DOCUMENT MAY CONTAIN BBN PROPRIETARY INFORMATION. *** *** FURNISHED FOR U. S. GOVERNMENT END USE ONLY. *** PAGE 159 IMP,3050,IMP 7:20 PM 9/16/1973 LEV VAR 17407 V IHBB: BSS FH /DMC OUTPUT PNTRS FOR FAKE HOSTS 17413 V IHBC: BSS FH /DMC OUTPUT END PNTRS FOR FAKE HOE : 17417 V SUCX: BSS 1 DEFPLC [SUCT] 17420 V SUCT: BSS FH /TABLE OF RETURN ADDRESSES *** THIS DOCUMENT MAY CONTAIN BBN PROPRIETARY INFORMATION. *** *** FURNISHED FOR U. S. GOVERNMENT END USE ONLY. *** PAGE 160 IMP,3050,IMP 7:20 PM 9/16/1973 17424 056155 C LEV CON CONSTANTS 17425 000011 C 17426 156135 C 17427 156145 C 17430 050377 C 17431 056175 C 17432 056124 C 17433 016071 C 17434 022462 C 17435 016520 C 17436 022451 C 17437 016443 C 17440 056306 C 17441 016351 C 17442 016060 C 17443 011144 C 17444 003400 C 17445 000010 C 17446 177600 C 17447 000100 C 17450 177700 C 17451 015303 C 17452 177767 C 17453 000332 C 17454 177756 C 17455 000337 C 17456 056201 C 17457 016042 C 02426 174464 C PAGEND 17,UNCON,4 *** THIS DOCUMENT MAY CONTAIN BBN PROPRIETARY INFORMATION. *** *** FURNISHED FOR U. S. GOVERNMENT END USE ONLY. *** PAGE 161 IMP,3050,IMP 7:20 PM 9/16/1973 TO: LEV T.O 00102 020022 5 CLOKIL/ TO 20022 000000 5 0 TO/ INT T.O /TIMEOUT INTERRUPT ENTRANCE 20023 000011 5 0 DXA 20024 003025 5 0 JMP . 1 20025 033145 5 0 STX TOT 20026 025143 5 0 IRS TOSLOW /IS THIS REALLY A SLOW TICK? 20027 003034 5 0 JMP TO1 /NO 20030 073574 5 0 LDX (-25.) /YES, RESET CLOCK 20031 033143 5 0 STX TOSLOW /EVERY 25TH TICK 20032 072114 5 0 LDX ONE 20033 100000 5 0 SKP 20034 072113 5 0 TO1: LDX ZERO /CHOOSE APPROPRIATE X 20035 051146 5 0 STA TOA X /SAVE AC 20036 045160 5 0 LDA TOM X 20037 170120 5 0 SMK INTM 20040 026134 5 0 IMA PRIM 20041 051156 5 0 STA TOMK X 20042 000043 5 0 INK 20043 051150 5 0 STA TOCK X 20044 005145 5 0 LDA TOT 20045 051152 5 0 STA TOX X 20046 005022 5 0 LDA TO /SAVE RETURN 20047 051154 5 0 STA TOC X 20050 024415 5 0 IRS TIME /COUNT LOCAL TIME 20051 101000 5 0 NOP 20052 024417 5 0 IRS SYNC /COUNT GLOBAL TIME 20053 101000 5 0 NOP 20054 030026 5 0 WDT /** TAKE THIS AWAY WHEN ALGORITHM ' 20055 143162 5 0 JMP TOS XI LEV T.O 20056 001001 5 TOR: INH MSK 20057 045154 5 0 LDA TOC X 20060 011022 5 0 STA TO 20061 045152 5 0 LDA TOX X 20062 011145 5 0 STA TOT 20063 045156 5 0 LDA TOMK X 20064 170120 5 0 SMK INTM 20065 010134 5 0 STA PRIM 20066 000013 5 0 EXA 20067 045150 5 0 LDA TOCK X 20070 171020 5 0 OTK 20071 045146 5 0 LDA TOA X 20072 073145 5 0 LDX TOT 20073 000401 5 0 ENB T.O 20074 103022 5 JMP TO I *** THIS DOCUMENT MAY CONTAIN BBN PROPRIETARY INFORMATION. *** *** FURNISHED FOR U. S. GOVERNMENT END USE ONLY. *** PAGE 162 IMP,3050,IMP 7:20 PM 9/16/1973 LEV BCK LCK INI 20075 000000 7 0 TOI: 0 /TIMEOUT INITIALIZATION 20076 004127 7 0 LDA MICH 20077 010141 7 0 STA HTPAR 20100 072113 7 0 LDX ZERO 20101 140040 7 0 TOIL: CRA 20102 111575 7 0 STA (E123 0 X) I /CLEAR LINE ERROR 20103 004115 7 0 LDA TWO 20104 051300 7 0 STA RMBIT X /TIMER BIT FOR VAR FRQ RM'S 20105 005576 7 0 LDA (1000 SHD RMINIT) /101006, 50 KB LINE FULL 1 20106 111577 7 0 STA (RMFLG 0 X) I /AND INIT FLAG IN EACH RM] 20107 005600 7 0 LDA (RMCLKS+2) /POINT ALL LINES AT 50KB TIME 20110 111601 7 0 STA (RMCLKP 0 X) I 20111 004110 7 0 LDA PTICKS 20112 111602 7 0 STA (LINDT 0 X) I 20113 004121 7 0 LDA MINUS1 20114 051452 7 0 STA LTR X 20115 021354 7 0 TOIL2: JST DEDL /SET SLT MINUS, KILL LINE 20116 024000 7 0 IRS 0 20117 024141 7 0 IRS HTPAR /ENDS UF BY SETTING HTPAR TO 0 20120 003101 7 0 JMP TOIL 20121 004121 7 0 LDA MINUS1 20122 011143 7 0 STA TOSLOW /START WITH SLOW TICK 20123 010142 7 0 STA HLNM /CLEAR HOST INTERFACE TEST 20124 111603 7 0 STA (HLNMS) I 20125 111604 7 0 STA (RTSSNT) I 20126 011210 7 0 STA TALLYC /DO THIS OR BACK2 WONT WORK RIGHT 20127 111605 7 0 STA (RALTRY) I 20130 111606 7 0 STA (GODWNC) I 20131 111607 7 0 STA (COMUPC) I 20132 111610 7 0 STA (MESST) I /THIS CODE IS TO START ALL LINES W/ROUTING MSG SYNC-ED W/SLO 20133 011277 7 0 STA RMCLKS+NSPD-1 20134 004122 7 0 LDA MINUS2 20135 073611 7 0 LDX (-NSPD+1) 20136 051277 7 0 TOIL1: STA RMCLKS+NSPD-1 X 20137 024000 7 0 IRS 0 20140 003136 7 0 JMP TOIL1 20141 030040 7 0 CLKON 20142 103075 7 0 JMP TOI I LEV VAR 20143 V TOSLOW: BSS 1 20144 V TOK: BSS 1 20145 V TOT: BSS 1 20146 V TOA: BSS 2 20150 V TOCK: BSS 2 20152 V TOX: BSS 2 20154 V TOC: BSS 2 20156 V TOMK: BSS 2 LEV CON 20160 177774 C TOM: -4 /LOCK OUT T.O IN JOBF 20161 177774 C -4 /ENB T.O IN JOBS **TEMP NOT** 20162 020170 C TOS: JOBF 20163 021075 C JOBS *** THIS DOCUMENT MAY CONTAIN BBN PROPRIETARY INFORMATION. *** *** FURNISHED FOR U. S. GOVERNMENT END USE ONLY. *** PAGE 163 IMP,3050,IMP 7:20 PM 9/16/1973 LEV T.O 20164 005160 5 JOBF1: LDA TOM /DONE WITH SLOW TICK 20165 170120 5 SMK INTM 20166 010134 5 STA PRIM /LOCK OUT T.O 20167 072114 5 LDX ONE /REMEMBER IT IS A SLOW TICK /FAST TIMEOUT JOBS - RESTART EVERYBODY 20170 033144 5 JOBF: STX TOK /SAVE TYPE OF TICK 20171 021211 5 JST RSTOUT /MUST PRECEDE IMTC 20172 021305 5 JST IMTC RET T.O /ATTEMPT TO RESTART MODEI 20173 021327 5 JST HITC /ATTEMPT TO RESTART HOST INS 20174 121612 5 JST (SWCH) I /MONITOR THINGS 20175 021200 5 JST TALLYB /TIME OUT OLDEST ALLOCATE WE HAVE 20176 073144 5 LDX TOK 20177 003056 5 JMP TOR 20200 000000 5 TALLYB: 0 /BUMP TALLY CLOCK EVERY 25 MS 20201 005613 5 LDA (TALLY) 20202 113614 5 ERA (TALLYI) I 20203 101040 5 SNZ /IS THE TALLY TABLE EMPTY? 20204 011210 5 STA TALLYC /YES, HOLD TALLYC AT 1 WHILE QUIESC 20205 025210 5 IRS TALLYC /BUMP TALLY CLOCK 20206 101000 5 NOP /IN CASE BACK ISNT GOING 20207 103200 5 JMP TALLYB I LEV VAR 20210 V TALLYC: BSS 1 /TALLY CLOCK - COUNTS FROM 0 TO 5 LEV T.O 20211 000000 5 RSTOUT: 0 20212 025274 5 IRS RMCLKS /CHECK TO SEND ROUTING MSGS 20213 100000 5 SKP /...RUN CLKS FOR EACH POSS LINE SPD 20214 003255 5 JMP RSTR50 /2 SLOW TICKS 20215 025275 5 IRS RMCLKS+1 20216 100000 5 SKP 20217 003257 5 JMP RSTR25 /RESET (1 SLOW TICK) 20220 025276 5 IRS RMCLKS+2 20221 100000 5 SKP 20222 003261 5 JMP RSTR5 /5 FAST TICKS [RMCLKS+3 IS FAST T.O *** THIS DOCUMENT MAY CONTAIN BBN PROPRIETARY INFORMATION. *** *** FURNISHED FOR U. S. GOVERNMENT END USE ONLY. *** PAGE 164 IMP,3050,IMP 7:20 PM 9/16/1973 20223 072127 5 RSTR0: LDX MICH 20224 004121 5 LDA MINUS1 20225 123615 5 RSTO2: CAS (RMCLKP+CH XI) I /TIME UP TEST 20226 100000 5 SKP 20227 003233 5 JMP RSTO4 /YES, DO ROUTING CHECK 20230 024000 5 RSTO3: IRS 0 /NO, GO TO NEXT LINE 20231 003225 5 JMP RSTO2 20232 103211 5 JMP RSTOUT I /DONE 20233 045305 5 RSTO4: LDA RMBIT+CH X /ADVANCE BIT POINTER 20234 040677 5 ARR 1 20235 100400 5 SPL /TIME TO WRAP? 20236 005616 5 LDA (20) /YES, RESET TO 5TH BIT 20237 051305 5 STA RMBIT+CH X 20240 107617 5 ANA (RUTFRQ+CH XI) I /GET RIGHT BIT OUT OF RI 1 20241 101040 5 SNZ /TIME TO SEND ROUTING? 20242 003253 5 JMP RSTO5 /NO, GO TO NEXT LINE 20243 100100 5 SLZ 20244 003264 5 JMP RSTDL 20245 001001 5 RSTO6: INH I2M /SEND ROUTING 20246 044272 5 2 LDA SLT+CH X 20247 101040 5 2 SNZ /NO ROUTING IF HELD DEAD OR BUSY 20250 004115 5 2 LDA TWO /ALWAYS SEND NULL W/ROUTING 20251 050272 5 2 STA SLT+CH X 20252 000401 5 2 ENB T.O 20253 004121 5 RSTO5: LDA MINUS1 /ON TO NEXT LINE 20254 003230 5 JMP RSTO3 20255 005620 5 RSTR50: LDA (-50.) 20256 011274 5 STA RMCLKS 20257 005574 5 RSTR25: LDA (-25.) 20260 011275 5 STA RMCLKS+1 20261 004125 5 RSTR5: LDA MINUS5 20262 011276 5 STA RMCLKS+2 20263 003223 5 JMP RSTR0 20264 033273 5 RSTDL: STX RSTDT /SAVE X 20265 004000 5 LDA 0 20266 016127 5 SUB MICH /CONVERT NEG X TO POS X 20267 010000 5 STA 0 20270 021354 5 JST DEDL /CALL DEDL FOR HELLO-IHY AT BASIC * 20271 073273 5 LDX RSTDT /RESTORE X 20272 003245 5 JMP RSTO6 LEV VAR 20273 V RSTDT: BSS 1 /TEMP X 20274 V RMCLKS: BSS NSPD /1 CLOCK/SPD 20300 V RMBIT: BSS CH /5 BIT ROTATE BIT 1/LINE *** THIS DOCUMENT MAY CONTAIN BBN PROPRIETARY INFORMATION. *** *** FURNISHED FOR U. S. GOVERNMENT END USE ONLY. *** PAGE 165 IMP,3050,IMP 7:20 PM 9/16/1973 LEV T.O 20305 000000 5 IMTC: 0 /WAKE UP IDLE MODEMS 20306 072113 5 LDX ZERO 20307 004127 5 LDA MICH /DO FOR ALL MODEMS 20310 011353 5 STA IMTK 20311 001001 5 IMTCL: INH SIN 20312 044440 5 0 LDA NONE X /CHECK STATUS OF MODEM 20313 100040 5 0 SZE /WAITING FOR HARDWARE INTERRUPT? 20314 003324 5 0 JMP I2MTC2 20315 121621 5 0 I2MTC0: JST (I2MSB) I RET T.O /NO, SO GIVE SOFTWARE INT] 20316 001001 5 INH ALL 20317 120672 5 0 JST DODXA I RET T.O 20320 024000 5 I2MTC1: IRS 0 20321 025353 5 IRS IMTK 20322 003311 5 JMP IMTCL 20323 103305 5 JMP IMTC I LEV T.O LCK SIN 20324 064440 5 0 I2MTC2: IRS NONE X 20325 003320 5 0 JMP I2MTC1 20326 003315 5 0 JMP I2MTC0 LEV T.O 20327 000000 5 HITC: 0 /TIMEOUT CHECK ROUTINE 20330 004131 5 LDA MITH 20331 011352 5 STA HITK /ATTEMPT TO WAKE UP ALL HOST-TO-IMP 20332 005352 5 HITZ: LDA HITK 20333 012415 5 ERA TIME /USE A RANDOM WAKEUP ORDER 20334 006120 5 ANA SEVEN /TO FACILITATE RESOURCE SHARING 20335 010000 5 STA 0 20336 001001 5 INH [SIN,H2I,TPC] 20337 105622 5 0 LDA (HITT 0 X) I 20340 100040 5 0 SZE /IS THIS HOST WAITING TO WAKE UP? 20341 125622 5 0 IRS (HITT 0 X) I /YES, TIME TO WAKE HIM YF 20342 003346 5 0 JMP HITZL /NO 20343 000013 5 0 EXA /YES. SOFTWARE INTERRUPT HOST-TO-I' 20344 121623 5 0 JST (HISB) I RET T.O 20345 001001 5 INH ALL 20346 120672 5 0 HITZL: JST DODXA I RET T.O 20347 025352 5 IRS HITK 20350 003332 5 JMP HITZ 20351 103327 5 JMP HITC I LEV VAR 20352 V HITK: BSS 1 20353 V IMTK: BSS 1 /TEMP COUNTER *** THIS DOCUMENT MAY CONTAIN BBN PROPRIETARY INFORMATION. *** *** FURNISHED FOR U. S. GOVERNMENT END USE ONLY. *** PAGE 166 IMP,3050,IMP 7:20 PM 9/16/1973 LEV T.O 20354 000000 5 DEDL: 0 /INVESTIGATE FOR LINE STATUS 20355 044265 5 LDA SLT X 20356 100400 5 SPL /IS THIS LINE IN DEAD STATE? 20357 003445 5 JMP HEL4 /YES, GO NO FURTHER 20360 140040 5 CRA 20361 127575 5 IMA (E123 0 X) I 20362 101040 5 SNZ /DID WE GET ANY ROUTING MSGS? 20363 003367 5 JMP DED1 /NO 20364 064421 5 IRS SIHY X /YES, COUNT ONE AS AN HELLO 20365 065457 5 IRS RTRCVD X /AND RETURN AN I-HEARD-YOU 20366 101000 5 NOP 20367 125624 5 DED1: IRS (RTSSNT 0 X) I /COUNT HELLO SENT 20370 101000 5 NOP 20371 044426 5 LDA LAC X /CHECK LINE ALIVE COUNT 20372 101040 5 SNZ /DID WE GET AN I-HEARD-YOU? 20373 003416 5 JMP NOC /NO INPUT ON THIS CHANNEL 20374 016114 5 SUB ONE /YES, CAN ONLY GET ONE (TWO IN CAI' 20375 100040 5 SZE /PER BASIC INTERVAL 20376 004114 5 LDA ONE 20377 050426 5 STA LAC X 20400 044433 5 LDA LINE X 20401 101040 5 SNZ 20402 003414 5 JMP DED3 /LINE WAS ALREADY ALIVE 20403 065452 5 IRS LTR X 20404 103354 5 JMP DEDL I /NOT TIME TO BRING LINE UP YET 20405 140040 5 CRA 20406 050433 5 STA LINE X 20407 044160 5 LDA NEIGHB X /FOR DETECTING PACKETS ON LOOPED LI 20410 016106 5 SUB MINE 20411 006112 5 ANA SIGN /1=I AM THE HIGHER NUMBER IMP 20412 040672 5 ARR 6 0"A"ENDBIT 20413 111625 5 STA (LEND 0 X) I /SAVE FOR USE IN PACKET 20414 004125 5 DED3: LDA MINUS5 20415 003431 5 JMP HEL1 *** THIS DOCUMENT MAY CONTAIN BBN PROPRIETARY INFORMATION. *** *** FURNISHED FOR U. S. GOVERNMENT END USE ONLY. *** PAGE 167 IMP,3050,IMP 7:20 PM 9/16/1973 20416 044433 5 NOC: LDA LINE X 20417 100040 5 SZE /WAS LINE ALIVE? 20420 003433 5 JMP DED4 /LINE STILL IS DEAD 20421 065452 5 IRS LTR X /CURRENTLY UP, SHOULD IT BE? 20422 003440 5 JMP HEL3 /NOT TIME TO KILL LINE YET 20423 001001 5 INH M2I 20424 121626 5 0 JST (KILLIN) I 20425 000401 5 0 ENB T.O 20426 105602 5 HELD: LDA (LINDT 0 X) I 20427 111625 5 STA (LEND 0 X) I /MARK LINE DOWN 20430 050433 5 HEL0: STA LINE X 20431 051452 5 HEL1: STA LTR X 20432 103354 5 JMP DEDL I 20433 045452 5 DED4: LDA LTR X /LINE IS DEAD 20434 123602 5 CAS (LINDT 0 X) I /IS IT AT MAX DEAD COUNT? 20435 016114 5 SUB ONE /NOT YET. COUNT DOWN 20436 003430 5 JMP HEL0 /AND RETURN 20437 003426 5 JMP HELD /PAST MAX!? RESET 20440 045452 5 HEL3: LDA LTR X /LINE IS DYING 20441 022123 5 CAS MINUS3 /IS IT TIME TO GIVE FAKE ROUTING? 20442 100000 5 SKP /NO 20443 121627 5 JST (RSTINP) I /YES,CALL ROUTING INPUT W/ DUMMY F 20444 103354 5 JMP DEDL I 20445 023630 5 HEL4: CAS (-KILTIM+1) /LINE HAS BEEN KILLED 20446 100000 5 SKP /IS IT TIME TO GIVE FAKE ROUTING? 20447 121627 5 JST (RSTINP) I /YES, CALL ROUT INPUT W/ DUMMY MSG 20450 021464 5 JST JSRT 20451 003426 5 JMP HELD LEV VAR 20452 V LTR: BSS CH 20457 V RTRCVD: BSS CH /COUNT OF HELLO'S RCVD *** THIS DOCUMENT MAY CONTAIN BBN PROPRIETARY INFORMATION. *** *** FURNISHED FOR U. S. GOVERNMENT END USE ONLY. *** PAGE 168 IMP,3050,IMP 7:20 PM 9/16/1973 LEV T.O 20464 000000 5 JSRT: 0 20465 004112 5 LDA SIGN /TURN OFF I2MTC CLOCK WAKEUP 20466 050440 5 STA NONE X /FOR DEAD OR NON-EXISTENT LINES 20467 004000 5 LDA 0 20470 014127 5 ADD MICH 20471 023544 5 CAS VDHNO 20472 100000 5 SKP /IS THIS MODEM STOLEN BY VDH? 20473 103464 5 JMP JSRT I /YES 20474 023545 5 CAS MODNO 20475 103464 5 JMP JSRT I /IS THIS MODEM STOLEN BY HOST? 20476 103464 5 JMP JSRT I 20477 115631 5 ADD (SATNO) I 20500 101040 5 SNZ 20501 103543 5 JMP SATGCI I 20502 064265 5 IRS SLT X /YES, TIME TO START BRINGING IT UP? 20503 103464 5 JMP JSRT I /NO 20504 001001 5 INH I2M 20505 033546 5 2 STX SENR 20506 005632 5 2 JSRT2: LDA (SMPQ) 20507 021547 5 2 JSRT3: JST JSRTS 20510 005633 5 2 JSRT4: LDA (SMQ) 20511 021547 5 2 JST JSRTS 20512 073546 5 2 LDX SENR 20513 005634 5 2 LDA (ACKTAB) 20514 050646 5 2 STA RSEX X 20515 050653 5 2 STA CHFREE X 20516 044622 5 2 LDA I2MTAB X 20517 111635 5 2 STA (I2MLST 0 X) I 20520 050627 5 2 STA I2MEND X 20521 005636 5 2 LDA (-NACH) 20522 050634 5 2 STA I2MNXT X 20523 140040 5 2 NACKL: CRA 20524 050641 5 2 STA TSEX X /ZERO THIS - LOOP UNNECESSARY 20525 050440 5 2 STA NONE X /ZERO THIS - LOOP UNNECESSARY 20526 166627 5 2 IMA I2MEND XI 20527 010000 5 2 STA 0 20530 023637 5 2 CAS (1777) 20531 021557 5 2 JST RQSUB 20532 101000 5 2 NOP /NOTHING THERE OR JUST A DUMMY 20533 073546 5 2 LDX SENR 20534 064627 5 2 IRS I2MEND X 20535 064634 5 2 IRS I2MNXT X 20536 003523 5 2 JMP NACKL 20537 005640 5 2 LDA (JMP+0+1000+M2I0"A"777) 20540 111641 5 2 STA (M2IOK 0 XI) I 20541 000401 5 2 ENB T.O 20542 103464 5 JMP JSRT I LEV VAR 20543 V SATGCI: SATDEF [0 0 JSRT I] 02264 020543 V 02314 120464 V 02344 120464 V 20544 V VDHNO: BSS 1 /0 FOR NO VDH, ELSE M.N-5 20545 V MODNO: BSS 1 /0=5 MODS, -1=4 MODS, -2=3 MODS 20546 V SENR: BSS 1 *** THIS DOCUMENT MAY CONTAIN BBN PROPRIETARY INFORMATION. *** *** FURNISHED FOR U. S. GOVERNMENT END USE ONLY. *** PAGE 169 IMP,3050,IMP 7:20 PM 9/16/1973 LEV T.O LCK I2M 20547 000000 5 2 JSRTS: 0 20550 015546 5 2 ADD SENR 20551 011573 5 2 STA JSRTQ 20552 073573 5 2 JSRTS1: LDX JSRTQ 20553 121642 5 2 JST (GETQ) I 20554 103547 5 2 JMP JSRTS I 20555 021557 5 2 JST RQSUB 20556 003552 5 2 JMP JSRTS1 20557 000000 5 2 RQSUB: 0 20560 132402 5 2 STX ERQ I 20561 032402 5 2 STX ERQ 20562 024564 5 2 IRS NSFS /TASK WILL FLUSH IF DEST WENT DEAD 20563 044002 5 2 LDA PTRT X 20564 101040 5 2 SNZ 20565 103557 5 2 JMP RQSUB I 20566 010000 5 2 STA 0 20567 005643 5 2 LDA (140000) 20570 052012 5 2 ERA TDONE X 20571 050012 5 2 STA TDONE X 20572 103557 5 2 JMP RQSUB I LEV VAR 20573 V JSRTQ: BSS 1 *** THIS DOCUMENT MAY CONTAIN BBN PROPRIETARY INFORMATION. *** *** FURNISHED FOR U. S. GOVERNMENT END USE ONLY. *** PAGE 170 IMP,3050,IMP 7:20 PM 9/16/1973 20574 177747 C LEV CON CONSTANTS 20575 045565 C 20576 101006 C 20577 052620 C 20600 020276 C 20601 051353 C 20602 051361 C 20603 022273 C 20604 022303 C 20605 004601 C 20606 027263 C 20607 027264 C 20610 021561 C 20611 177775 C 20612 022320 C 20613 032261 C 20614 015155 C 20615 151360 C 20616 000020 C 20617 167274 C 20620 177716 C 20621 012604 C 20622 053137 C 20623 013106 C 20624 062303 C 20625 050254 C 20626 011133 C 20627 026120 C 20630 177767 C 20631 005153 C 20632 000317 C 20633 000312 C 20634 000377 C 20635 052660 C 20636 177770 C 20637 001777 C 20640 003231 C 20641 150247 C 20642 015504 C 20643 140000 C 02427 175651 C PAGEND 20,UNCON,4 *** THIS DOCUMENT MAY CONTAIN BBN PROPRIETARY INFORMATION. *** *** FURNISHED FOR U. S. GOVERNMENT END USE ONLY. *** PAGE 171 IMP,3050,IMP 7:20 PM 9/16/1973 LEV T.O LCK ALL /SLOW TIMEOUT JOBS 21075 021460 5 0 JOBS: JST IHTC RET T.O /ATTEMPT TO RESTART HOST T 21076 021362 5 JST DEDH /ESTABLISH HOST UP/DOWN STATUS 21077 021432 5 JST JED /COMPUTE EFFECTIVE DELAY 21100 121672 5 JST (RUTCLK) I /THESE FIRST FOUR SHOULD PRECEDE THE ROUTING COMPUTATION 21101 121673 5 JST (RUTOUT) I /COMPUTE ROUTING 21102 021564 5 JST HTEST /OCP INTERFACES IF NECESSARY 21103 021640 5 JST HPOKE /TEST HOST INTERFACE 21104 021134 5 JST DEDI /DEAD IMP CLEANUP - AFTER ROUTING C 21105 021500 5 JST JUQC /ADJUST QUEUE COUNTERS 21106 000401 5 ENB T.O 21107 021526 5 JST MESSTO /TIMEOUT INCOMPLETE MESSAGE NUMBERS 21110 073674 5 LDX (0 0 -ADDBOT-1+ADDTOP) /CHECK ADD CH: 21111 005675 5 LDA (ADD BUFE+4 X) /BASIC INSTRUCTION 21112 123676 5 ADDCH1: CAS (ADDBOT+1 X) I 21113 100000 5 SKP /BAD 21114 100000 5 SKP /GOOD RELOAD [ADD CHAIN BROKEN] 21115 120061 5 JST SWDTIL I /BAD, GO RELOAD 21116 016114 5 SUB ONE /MODIFY INSTR IN A 21117 024000 5 IRS 0 21120 003112 5 JMP ADDCH1 21121 005677 5 LDA (JMP ADDRET I) /CHECK RETURN INSTR 21122 113676 5 ERA (ADDBOT+1 X) I 21123 100040 5 SZE RELOAD [ADD CHAIN RETURN BROKEN] 21124 120061 5 JST SWDTIL I /BAD, GO RELOAD 21125 010452 5 STA LUUP /BLINK LOOPED LIGHT 21126 101000 5 VDH3: NOP /VDH TIMEOUT CALL 21127 001001 5 INH ALL 21130 024416 5 0 IRS TIMES /COUNT TIME IN SLOW TICKS 21131 024503 5 0 IRS WDTIME /CHECK SOFTWARE W.D.T. 21132 103700 5 0 JMP (JOBF1) I /NOW DO FAST STUFF. RELOAD [SOFTWARE WDT FIRED] 21133 120061 5 0 JST SWDTIL I *** THIS DOCUMENT MAY CONTAIN BBN PROPRIETARY INFORMATION. *** *** FURNISHED FOR U. S. GOVERNMENT END USE ONLY. *** PAGE 172 IMP,3050,IMP 7:20 PM 9/16/1973 LEV T.O 21134 000000 5 DEDI: 0 /TIMEOUT COMES HERE TO CLEAN UP 21135 005701 5 LDA (TMESS) 21136 011356 5 STA DMSTAB 21137 072113 5 LDX ZERO 21140 033355 5 IMPD: STX DEDIMP /NO OF IMP WHICH DIED 21141 044165 5 LDA RUT X 21142 101400 5 SMI 0"A"RUTDED /IS THIS IMP DEAD? 21143 003274 5 JMP IMPD7 /NO, GO ON TO NEXT ONE 21144 073356 5 LDX DMSTAB /FIRST CLEAN UP TRANSMIT SIDE 21145 001001 5 INH ALL 21146 044000 5 0 LDA 0 X 21147 007702 5 0 ANA (MESBTS) 21150 013702 5 0 ERA (MESBTS) 21151 101040 5 0 SNZ /ARE THERE ANY OUTSTANDING MESSAGE 21152 003232 5 0 JMP IMPD2A /NO, GO ON TO CLEAN UP OTHER THINGS 21153 004124 5 0 LDA MINUS4 21154 011357 5 0 STA DEDTRY /LOOK AT 4 POSSIBLE MESS FOR DEAD 1 21155 044000 5 0 LDA 0 X 21156 017703 5 0 SUB (0 0 3"T"400) 0"A"MESSNO 21157 050000 5 0 STA 0 X /ROLL BACK 4 MESS NOS 21160 100100 5 0 IMPD0: SLZ /IS THIS MESS NO WAITING FOR REPLY? 21161 003226 5 0 JMP IMPD2 /NO 21162 141044 5 0 CAR 0"A"MESSNO /YES, SO LOOK FOR IT 21163 013355 5 0 ERA DEDIMP 21164 121704 5 0 JST (PPTGET) I 21165 003203 5 0 JMP IMPD1 /NOT IN PPT 21166 010000 5 0 STA 0 /GOT IT IN PPT 21167 140040 5 0 CRA 21170 066000 5 0 IMA PPT0 X 21171 140100 5 0 SSP 0"A"RETRAN 21172 010000 5 0 STA 0 21173 120671 5 0 JST FLUSHI I /IF ON 2 QUEUES, RQSUB WILL FLUSH 21174 044010 5 0 LDA HEAD3 X 21175 141044 5 0 CAR 0"A"CIMPD 21176 010515 5 0 STA TWDP 21177 044007 5 0 LDA HEAD2 X 21200 121705 5 0 JST (HOSTNO) I 21201 044006 5 0 LDA HEAD1 X 21202 003221 5 0 JMP IMPDP 21203 105356 5 0 IMPD1: LDA DMSTAB I 21204 141044 5 0 CAR 0"A"MESSNO 21205 013355 5 0 ERA DEDIMP 21206 121706 5 0 JST (PLTGET) I 21207 003226 5 0 JMP IMPD2 /MUST HAVE BEEN A GIVE BACK 21210 010000 5 0 STA 0 21211 140040 5 0 CRA 21212 066000 5 0 IMA PLT0 X /CLEAR PLT ENTRY 21213 006120 5 0 ANA SEVEN 21214 011361 5 0 STA IMPDLH 21215 044030 5 0 LDA PLT2 X 21216 141044 5 0 CAR 0"A"CIMPD 21217 010515 5 0 STA TWDP 21220 044014 5 0 LDA PLT1 X *** THIS DOCUMENT MAY CONTAIN BBN PROPRIETARY INFORMATION. *** *** FURNISHED FOR U. S. GOVERNMENT END USE ONLY. *** PAGE 173 IMP,3050,IMP 7:20 PM 9/16/1973 21221 007707 5 0 IMPDP: ANA (0 0 177777"X"LSTPKT"X"HICODE) 21222 013710 5 0 ERA (CDESTD) /RETURN A DEST IMP DEAD 21223 073361 5 0 LDX IMPDLH 21224 120670 5 0 JST OWP I 21225 101000 5 0 NOP 21226 073356 5 0 IMPD2: LDX DMSTAB 21227 121711 5 0 JST (UPMESS) I 21230 025357 5 0 IRS DEDTRY 21231 003160 5 0 JMP IMPD0 21232 005355 5 0 IMPD2A: LDA DEDIMP 21233 121712 5 0 JST (TALLYG) I /FLUSH ALL ALLOCATES FROM HIM 21234 100000 5 0 SKP 21235 003232 5 0 JMP IMPD2A 21236 073713 5 0 LDX (SHRQ) /NOW CLEAN UP RECEIVE SIDE 21237 044000 5 0 IMPD3: LDA 0 X /GET ALL REAS BLOCKS BACK 21240 101040 5 0 SNZ 21241 003244 5 0 JMP IMPD3A 21242 021303 5 0 JST DREAS 21243 003237 5 0 JMP IMPD3 21244 073714 5 0 IMPD3A: LDX (MESSTK) /GET ALL MESSTK ENTRIES BACK 21245 044000 5 0 IMPD4: LDA 0 X 21246 101040 5 0 SNZ 21247 003271 5 0 JMP IMPD6 /END OF MESSTK 21250 100400 5 0 SPL /REAS BLOCK? 21251 003267 5 0 JMP IMPD5 /YES 21252 033360 5 0 STX DTEND 21253 010000 5 0 STA 0 21254 044007 5 0 LDA HEAD2 X 21255 013355 5 0 ERA DEDIMP 21256 007715 5 0 ANA (SRCEI) 21257 100040 5 0 SZE /FROM DEAD IMP? 21260 003245 5 0 JMP IMPD4 /NO 21261 044000 5 0 LDA 0 X /YES, REMOVE FROM MESSTK 21262 111360 5 0 STA DTEND I 21263 120671 5 0 JST FLUSHI I /AND FREE BUFFER 21264 024565 5 0 IRS NRES /ADJUST REAS COUNT 21265 073360 5 0 LDX DTEND 21266 003245 5 0 JMP IMPD4 21267 021303 5 0 IMPD5: JST DREAS 21270 003245 5 0 JMP IMPD4 21271 073355 5 0 IMPD6: LDX DEDIMP 21272 121716 5 0 JST (MESINI) I 21273 000401 5 0 ENB T.O 21274 024000 5 IMPD7: IRS 0 21275 025356 5 IRS DMSTAB 21276 004000 5 LDA 0 21277 014132 5 ADD MINIMP 21300 100400 5 SPL /HAVE WE DONE ALL IMPS YET? 21301 003140 5 JMP IMPD /NOT YET, CYCLE BACK 21302 103134 5 JMP DEDI I *** THIS DOCUMENT MAY CONTAIN BBN PROPRIETARY INFORMATION. *** *** FURNISHED FOR U. S. GOVERNMENT END USE ONLY. *** PAGE 174 IMP,3050,IMP 7:20 PM 9/16/1973 LCK ALL 21303 000000 5 0 DREAS: 0 /TRY TO FREE A REAS BLOCK 21304 140100 5 0 SSP 21305 033360 5 0 STX DTEND 21306 010000 5 0 STA 0 21307 044001 5 0 LDA RID X 21310 013355 5 0 ERA DEDIMP 21311 007715 5 0 ANA (SRCEI) 21312 100040 5 0 SZE /FROM DEAD IMP? 21313 103303 5 0 JMP DREAS I /NO 21314 044000 5 0 LDA 0 X /YES, REMOVE FROM MESSTK OR SHRQ 21315 111360 5 0 STA DTEND I 21316 021321 5 0 JST REASF /FREE REAS BLOCK AND PKTS 21317 073360 5 0 LDX DTEND 21320 103303 5 0 JMP DREAS I 21321 000000 5 0 REASF: 0 /FREE REAS BLOCK AND ANY PKTS 21322 004000 5 0 LDA 0 21323 026326 5 0 IMA RASF 21324 110326 5 0 STA RASF I /RETURN REAS BLOCK TO REAS FREE LIS 21325 005717 5 0 LDA (-8) 0"A"8PKTS 21326 011353 5 0 STA INCN 21327 140040 5 0 CRA 21330 050013 5 0 STA RSF X 21331 044002 5 0 LDA RMAX X 21332 100400 5 0 SPL /DID WE GET LAST PKT? 21333 004120 5 0 LDA SEVEN 0"A"8PKTS /NO 21334 141206 5 0 AOA 21335 014565 5 0 ADD NRES 21336 010565 5 0 STA NRES /ADJUST REAS COUNT 21337 140040 5 0 INCFRE: CRA 21340 066003 5 0 IMA REAS X 21341 101040 5 0 SNZ /DID WE GET THIS PKT? 21342 003347 5 0 JMP INCNXT /NO 21343 033354 5 0 STX INCX 21344 010000 5 0 STA 0 /YES, SO FREE IT 21345 120671 5 0 JST FLUSHI I 21346 073354 5 0 LDX INCX 21347 024000 5 0 INCNXT: IRS 0 21350 025353 5 0 IRS INCN 21351 003337 5 0 JMP INCFRE 21352 103321 5 0 JMP REASF I LEV VAR 21353 V INCN: BSS 1 21354 V INCX: BSS 1 21355 V DEDIMP: BSS 1 /NO OF A DEAD IMP 21356 V DMSTAB: BSS 1 /PNTR TO HIS TMESS TABLE 21357 V DEDTRY: BSS 1 21360 V DTEND: BSS 1 /TEMP Q PNTR 21361 V IMPDLH: BSS 1 *** THIS DOCUMENT MAY CONTAIN BBN PROPRIETARY INFORMATION. *** *** FURNISHED FOR U. S. GOVERNMENT END USE ONLY. *** PAGE 175 IMP,3050,IMP 7:20 PM 9/16/1973 LEV T.O 21362 000000 5 DEDH: 0 /TEST FOR DEAD HOSTS 21363 004131 5 LDA MITH 21364 011430 5 STA DHC 21365 072113 5 LDX ZERO 21366 045662 5 TDH1: LDA SKST X 21367 011372 5 STA TDH4 21370 001001 5 INH [I2H,H2I] 21371 044504 5 3 LDA HIHD X 21372 5 3 TDH4: BSS 1 21373 015720 5 3 ADD (TDHDN-0-TDHUP) /READY LINE DOWN 21374 015721 5 3 ADD (JMP TDHUP 0 I) /READY LINE DOWN 21375 011376 5 3 STA .+1 21376 5 3 BSS 1 21377 021423 5 3 TDHUP: TDH5 /STEADY-STATE UP 21400 021423 5 3 TDH5 /READY LINE UP, HOST GOING DOWN 21401 021423 5 3 TDH5 /READY LINE UP, HOST TARDY 21402 021411 5 3 TDH3 /READY LINE JUST WENT UP, WAS DOWN 21403 021423 5 3 TDH5 /IGNORE HOST IF IMP NOT UP 21404 021421 5 3 TDHDN: TDH2 /READY LINE JUST WENT DOWN, WAS UP 21405 021423 5 3 TDH5 /READY LINE DOWN, HOST GOING DOWN 21406 021421 5 3 TDH2 /READY LINE JUST WENT DOWN, WAS T: 21407 021423 5 3 TDH5 /STEADY-STATE DOWN 21410 021423 5 3 TDH5 /IGNORE HOST IF IMP NOT UR 21411 140040 5 3 TDH3: CRA 21412 050504 5 3 STA HIHD X 21413 104700 5 3 LDA IHXX I /NOW TRULY UP 21414 101040 5 3 SNZ /IS THERE AN OUTPUT IN PROGESS? 21415 003423 5 3 JMP TDH5 /NO 21416 004107 5 3 LDA M30SEC /YES - MOST LIKELY A NOP 21417 111722 5 3 STA (IHTT 0 X) I /GIVE FULL 30 SECS 21420 003423 5 3 JMP TDH5 21421 005723 5 3 TDH2: LDA (IHWAIT) /HOST WENT DOWN, DO NOT DROP IMP RE 21422 121724 5 3 JST (IHST) I RET T.O / CLEAR OUT HIS QUEUES 21423 000401 5 TDH5: ENB T.O 21424 024000 5 IRS 0 21425 025430 5 IRS DHC 21426 003366 5 JMP TDH1 21427 103362 5 JMP DEDH I LEV VAR 21430 V DHC: BSS 1 *** THIS DOCUMENT MAY CONTAIN BBN PROPRIETARY INFORMATION. *** *** FURNISHED FOR U. S. GOVERNMENT END USE ONLY. *** PAGE 176 IMP,3050,IMP 7:20 PM 9/16/1973 LEV VAR 21431 000000 V HLRCVD: 0 /= OF CORRECT RESPONSES /* COMPUTE OUR EFFECTIVE CHANNEL DELAY / S= 20L + (100+S) E/T WHERE T=20 /S' = [(L+5)(256/(20-E))-64] LEV T.O 21432 000000 5 JED: 0 21433 072127 5 LDX MICH 21434 001001 5 ED1: INH I2M 21435 004116 5 2 LDA THREE 21436 111455 5 2 STA PCED I 21437 005717 5 2 LDA (-NACH) 21440 011457 5 2 STA JEDC 21441 044627 5 2 LDA I2MTAB+CH X 21442 011456 5 2 STA JEDP 21443 105456 5 2 JEDL: LDA JEDP I 21444 100040 5 2 SZE 21445 125455 5 2 IRS PCED I 21446 025456 5 2 IRS JEDP 21447 025457 5 2 IRS JEDC 21450 003443 5 2 JMP JEDL 21451 000401 5 2 ENB T.O 21452 024000 5 IRS 0 21453 003434 5 JMP ED1 21454 103432 5 JMP JED I LEV CON 21455 066505 C PCED: CED+CH X LEV VAR 21456 V JEDP: BSS 1 21457 V JEDC: BSS 1 LEV T.O 21460 000000 5 IHTC: 0 /TIME OUT CHECK ROUTINE 21461 004131 5 LDA MITH 21462 011477 5 STA IHTK 21463 072113 5 LDX ZERO /ATTEMPT TO WAKE UP ALL IMP-TO-HOST 21464 125722 5 IHTY: IRS (IHTT 0 X) I /TIME TO WAKE HIM YET? 21465 003473 5 JMP IHTZ /NO 21466 001001 5 INH SIN /YES, SOFTWARE INTERRUPT IMP-TO-HOS 21467 000013 5 0 EXA 21470 121725 5 0 JST (IHSB) I RET T.O 21471 001001 5 INH ALL 21472 120672 5 0 JST DODXA I RET T.O 21473 024000 5 IHTZ: IRS 0 21474 025477 5 IRS IHTK 21475 003464 5 JMP IHTY 21476 103460 5 JMP IHTC I LEV VAR 21477 V IHTK: BSS 1 *** THIS DOCUMENT MAY CONTAIN BBN PROPRIETARY INFORMATION. *** *** FURNISHED FOR U. S. GOVERNMENT END USE ONLY. *** PAGE 177 IMP,3050,IMP 7:20 PM 9/16/1973 LEV T.O 21500 000000 5 JUQC: 0 21501 073726 5 LDX (-COUNTL) 21502 001001 5 QC1: INH ALL 21503 044543 5 0 LDA COUNTA+COUNTL X 21504 056567 5 0 SUB COUNTS+COUNTL X 21505 101400 5 0 SMI /NEGATIVE 21506 003513 5 0 JMP QC2 /NO DEFHLT [QUEUE COUNTER WENT NEGATIVE] 21507 021510 5 0 JST CNTHLT 21510 000000 5 0 CNTHLT: 0 21511 120745 5 0 JST HLTNCC I 21512 140040 5 0 CRA /RESET COUNT TOT ZERO 21513 050543 5 0 QC2: STA COUNTA+COUNTL X 21514 140040 5 0 CRA 21515 050567 5 0 STA COUNTS+COUNTL X 21516 000401 5 0 ENB T.O 21517 024000 5 IRS 0 21520 003502 5 JMP QC1 21521 001001 5 INH ALL 21522 125727 5 0 IRS (SNTALL) I /ARE WE ALLOCATE-IDLE? 21523 103500 5 0 JMP JUQC I /NO 21524 010542 5 0 STA NALA /YES, FREE UP ALLOCATE STORE 21525 103500 5 0 JMP JUQC I *** THIS DOCUMENT MAY CONTAIN BBN PROPRIETARY INFORMATION. *** *** FURNISHED FOR U. S. GOVERNMENT END USE ONLY. *** PAGE 178 IMP,3050,IMP 7:20 PM 9/16/1973 LEV T.O 21526 000000 5 MESSTO: 0 /TIMEOUT MESS NO IN 34-51 SECS 21527 025561 5 IRS MESST /TIME TO LOOK YET? 21530 103526 5 JMP MESSTO I /NO 21531 072132 5 LDX MINIMP 21532 001001 5 MESST1: INH H2I 21533 105730 5 4 LDA (TMESS+NIMP 0 X) I 21534 007702 5 4 ANA (MESBTS) 21535 013702 5 4 ERA (MESBTS) 21536 101040 5 4 SNZ /ANY MESSAGES OUTSTANDING? 21537 003550 5 4 JMP MESST2 /NOTHING TO TIME OUT 21540 105730 5 4 LDA (TMESS+NIMP 0 X) I 21541 007731 5 4 ANA (MSTO1 0 MSTO2) 21542 013731 5 4 ERA (MSTO1 0 MSTO2) 21543 101040 5 4 SNZ 21544 003550 5 4 JMP MESST2 /ALREADY TIMED OUT 21545 005732 5 4 LDA (MSTO1) 21546 115730 5 4 ADD (TMESS+NIMP 0 X) I 21547 111730 5 4 STA (TMESS+NIMP 0 X) I 21550 000401 5 4 MESST2: ENB T.O 21551 024000 5 IRS 0 21552 003532 5 JMP MESST1 21553 004107 5 LDA M30SEC /17 SECS 21554 040575 5 ARS 3 21555 014107 5 ADD M30SEC 21556 040577 5 ARS 1 21557 011561 5 STA MESST /BETWEEN LOOKS 21560 103526 5 JMP MESSTO I LEV VAR 21561 V MESST: BSS 1 21562 V HTOLD: BSS 1 21563 V HTINTF: BSS 1 *** THIS DOCUMENT MAY CONTAIN BBN PROPRIETARY INFORMATION. *** *** FURNISHED FOR U. S. GOVERNMENT END USE ONLY. *** PAGE 179 IMP,3050,IMP 7:20 PM 9/16/1973 LEV T.O 21564 000000 5 HTEST: 0 21565 101000 5 HTMIN: NOP 21566 005733 5 LDA (NOP) /RESET MXIN/NOP INSTRUCTION 21567 011565 5 STA HTMIN 21570 004141 5 LDA HTPAR 21571 013562 5 ERA HTOLD 21572 101040 5 SNZ 21573 103564 5 JMP HTEST I /NO CHANGE, NOTHING TO DO 21574 004141 5 LDA HTPAR 21575 006120 5 ANA SEVEN /GET FUNCTION 21576 101040 5 SNZ 21577 003626 5 JMP HTX /FUNCTION ZERO?! 21600 010000 5 STA 0 21601 004141 5 LDA HTPAR 21602 040575 5 ARS 3 /GET INTERFACE 21603 006752 5 ANA C77 21604 011563 5 STA HTINTF 21605 055630 5 ADD HTTAB-1 X 21606 011624 5 STA HT5 /CORRECT OCP 21607 004000 5 LDA 0 21610 022116 5 CAS THREE 21611 003624 5 JMP HT5 /HOST FUNCTION...DO IT 21612 100000 5 SKP /MODEM UNPATCH...MORE TO DO 21613 003621 5 JMP HT1 /MODEM OTHER...SET UP IN 21614 073563 5 LDX HTINTF 21615 001001 5 INH I2M 21616 044437 5 2 LDA NONE-1 X /MODEM BUSY? 21617 100040 5 2 SZE 21620 103564 5 2 JMP HTEST I /YES, COME AGAIN 21621 005563 5 2 HT1: LDA HTINTF /SET UP IN FOR NEXT T.O. TO DO 21622 015734 5 2 ADD (M1IN-1) 21623 011565 5 2 STA HTMIN 21624 5 2 HT5: BSS 1 21625 000401 5 2 ENB T.O 21626 004141 5 HTX: LDA HTPAR /RESET HTOLD 21627 011562 5 STA HTOLD 21630 103564 5 JMP HTEST I LEV CON /HTPAR HAS VALUE DDF - DEVICE IS DD AND FUNCTION IS F /D=1,2,3,4,5 FOR MODEMS 1,2,3,4,5 (F=1,2,OR 3) /D=70,60,50,51 FOR HOSTS 1,2,3,4 (F=4,5,OR 6) 21631 030270 C HTTAB: M1LXP-1 /1 - LINE CROSSPATCH 21632 030370 C M1IXP-1 /2 - INTERFACE CROSSPATCH 21633 030170 C M1UNXP-1 /3 - UNPATCH (RESTORE) 21634 030300 C H1XP-70 /4 - CROSSPATCH HOST INTERFACE 21635 030500 C H1ENAB-70 /5 - ENABLE NORMAL HOST TRAFFIC 21636 030400 C H1UNXP-70 /6 - UNPATCH (CLEAR) HOST INTERFACE 21637 101000 C NOP /7 *** THIS DOCUMENT MAY CONTAIN BBN PROPRIETARY INFORMATION. *** *** FURNISHED FOR U. S. GOVERNMENT END USE ONLY. *** PAGE 180 IMP,3050,IMP 7:20 PM 9/16/1973 LEV T.O 21640 000000 5 HPOKE: 0 /TEST HOST INTERFACE 21641 001001 5 INH FRE 21642 004142 5 0 LDA HLNM /TESTER TURNED ON? 21643 100400 5 0 SPL 21644 003656 5 0 JMP HPOKE2 /OFF 21645 010000 5 0 STA 0 21646 044332 5 0 LDA SHWQ X /ROOM FOR ANOTHER TEST PROD? 21647 100040 5 0 SZE 21650 003656 5 0 JMP HPOKE2 /NO 21651 004143 5 0 LDA HL2WD 21652 010515 5 0 STA TWDP 21653 005735 5 0 LDA (CNOP) 21654 120670 5 0 JST OWP I 21655 025660 5 0 IRS HLSNT /COUNT ANOTHER POKE 21656 000401 5 0 HPOKE2: ENB T.O 21657 103640 5 JMP HPOKE I LEV VAR 21660 V HLSNT: BSS 1 LEV CON 21661 037454 C VDH3.: VD.TO 21662 070170 C SKST: H1RDY 21663 070160 C H2RDY 21664 C TIPSKP: TIPDEF H3RDY, NOP 02265 021664 C 02315 070150 C 02345 101000 C 21665 070151 C H4RDY 21666 100000 C SKP 21667 100000 C SKP 21670 100000 C SKP 21671 100000 C SKP *** THIS DOCUMENT MAY CONTAIN BBN PROPRIETARY INFORMATION. *** *** FURNISHED FOR U. S. GOVERNMENT END USE ONLY. *** PAGE 181 IMP,3050,IMP 7:20 PM 9/16/1973 21672 027112 C LEV CON CONSTANTS 21673 026512 C 21674 177666 C 21675 054115 C 21676 041557 C 21677 102111 C 21700 020164 C 21701 032271 C 21702 000017 C 21703 001400 C 21704 015033 C 21705 007244 C 21706 015205 C 21707 070377 C 21710 003400 C 21711 015347 C 21712 015114 C 21713 000340 C 21714 000327 C 21715 000077 C 21716 002374 C 21717 177770 C 21720 000005 C 21721 103377 C 21722 056306 C 21723 016341 C 21724 016273 C 21725 016042 C 21726 177754 C 21727 004161 C 21730 072371 C 21731 000300 C 21732 000100 C 21733 101000 C 21734 030470 C 21735 002000 C 02430 176745 C PAGEND 21,UNCON,4 *** THIS DOCUMENT MAY CONTAIN BBN PROPRIETARY INFORMATION. *** *** FURNISHED FOR U. S. GOVERNMENT END USE ONLY. *** PAGE 182 IMP,3050,IMP 7:20 PM 9/16/1973 LEV BCK /TROUBLE REPORTS TO NCC AT HOST 0 AT BBN 22057 005524 7 TRBL: LDA (301) /*SEND TRBL REPT CODE 22060 011301 7 STA NTRCKS /INIT THE CHECKSUM COUNTER 22061 121525 7 JST (GIVE) I 22062 073526 7 LDX (-NH) 22063 001001 7 INH ALL /USING B REG - MUST LOCK INTERRUPT' 22064 044510 7 0 NTR6: LDA HIHD+NH X 22065 100040 7 0 SZE 22066 004112 7 0 LDA SIGN 22067 140024 7 0 CHS 22070 041277 7 0 LLR 1 22071 024000 7 0 IRS 0 22072 003064 7 0 JMP NTR6 22073 040274 7 0 LRR NH 22074 013272 7 0 ERA SWS /*SEND ANOMALY WORD - HOSTS + SWIT ] 22075 021310 7 0 JST NTGIVE RET BCK 22076 127527 7 IMA (RSFNCC) I /*SEND RESTART-RELOAD INDICATOR 22077 021310 7 JST NTGIVE 22100 026746 7 IMA HLTLOC /*SEND HALT PC REG 22101 021310 7 JST NTGIVE 22102 004747 7 LDA HLTA /*SEND HALT A REG 22103 021310 7 JST NTGIVE 22104 004750 7 LDA HLTX /*SEND HALT X REG 22105 021310 7 JST NTGIVE 22106 072124 7 LDX MINUS4 /*SEND COUNTS FOR 22107 001001 7 NTR7: INH ALL /FREE, REAS, S+F, AND ALLOCATE 22110 044543 7 0 LDA NFA+4 X 22111 056567 7 0 SUB NFS+4 X 22112 021310 7 0 JST NTGIVE RET BCK 22113 024000 7 IRS 0 22114 003107 7 JMP NTR7 22115 004105 7 LDA VERS /*SEND IMP VERSION NO 22116 021310 7 JST NTGIVE 22117 105530 7 LDA (HOST34) I /*SEND HOST34 CONFIGURATOR WORD 22120 021310 7 JST NTGIVE 22121 000013 7 EXA 22122 105531 7 LDA (TIPVER) I /*SEND TIP VERSION NO 22123 001001 7 INH [ALL] 22124 120672 7 0 JST DODXA I RET BCK 22125 021310 7 JST NTGIVE 22126 004142 7 LDA HLNM /*SEND NO OF HOST INTERFACE BEING T 22127 021310 7 JST NTGIVE 22130 127532 7 IMA (HLSNT) I /*SEND TEST MESS SENT COUNT 22131 021310 7 JST NTGIVE 22132 127533 7 IMA (HLRCVD) I /*SEND TEST MESS RECVD COUNT 22133 021310 7 JST NTGIVE 22134 011277 7 STA NTRTM1 /ZERO LINE-SPEEDS WORD 22135 072127 7 LDX MICH /TAKE A SNAPSHOT OF LINE ERRORS 22136 001001 7 NTR1: INH [T.O,TSK] /A=0 NOW *** THIS DOCUMENT MAY CONTAIN BBN PROPRIETARY INFORMATION. *** *** FURNISHED FOR U. S. GOVERNMENT END USE ONLY. *** PAGE 183 IMP,3050,IMP 7:20 PM 9/16/1973 22137 140040 7 5 CRA 22140 127534 7 5 IMA (RTRCVD+CH 0 X) I 22141 057310 7 5 SUB RTSSNT+CH X /SUBTRACT ROUTING MESS E , 22142 140407 7 5 TCA /COMPUTE NO OF ROUTING MESS MISSED 22143 100400 7 5 SPL 22144 140040 7 5 CRA /MUST BE A POSITIVE NUMBER 22145 023535 7 5 CAS (377) 22146 005535 7 5 LDA (377) 22147 101000 7 5 NOP 22150 011302 7 5 STA E321 /SAVE AS ERROR COUNT FOR THIS LINE 22151 004121 7 5 LDA MINUS1 22152 067310 7 5 IMA RTSSNT+CH X /*SEND NO OF ROUTING MEI 22153 023535 7 5 CAS (377) 22154 005535 7 5 LDA (377) 22155 101000 7 5 NOP 22156 021310 7 5 JST NTGIVE RET BCK 22157 044440 7 LDA LINE+CH X /NOW ERROR+THROUGHPUT COUNTS FOR EAT 22160 100040 7 SZE 22161 005536 7 LDA (200) 22162 052165 7 ERA NEIGHB+CH X /PICK UP NEIGHBOR IMP NUMT 22163 022106 7 CAS MINE /IS LINE LOOPED? 22164 100000 7 SKP /NO 22165 012753 7 ERA C100 /YES, PUT IN LOOPED BIT 22166 141340 7 ICA 22167 013302 7 ERA E321 /*SEND NO OF ROUTING MESS MISSED 22170 021310 7 JST NTGIVE 22171 105537 7 LDA (RMFLG+CH X) I /GET LINE SPEED BITS 22172 141340 7 ICA 22173 006116 7 ANA THREE 0"A"SPDTYP 22174 013277 7 ERA NTRTM1 22175 041676 7 ALR 2 22176 011277 7 STA NTRTM1 22177 024000 7 IRS 0 22200 003136 7 JMP NTR1 22201 041674 7 ALR 4 /LEFT ADJUST 22202 021310 7 JST NTGIVE /*SEND LINE SPEEDS 22203 072123 7 LDX MINUS3 22204 105540 7 LDA (37777 0 X) I /*SEND TRAP INFO (P, A, X 22205 021310 7 JST NTGIVE 22206 024000 7 IRS 0 22207 003204 7 JMP .-3 *** THIS DOCUMENT MAY CONTAIN BBN PROPRIETARY INFORMATION. *** *** FURNISHED FOR U. S. GOVERNMENT END USE ONLY. *** PAGE 184 IMP,3050,IMP 7:20 PM 9/16/1973 22210 027301 7 IMA NTRCKS /A=0 NOW 22211 140407 7 TCA 22212 121525 7 JST (GIVE) I /*SEND CHECKSUM 22213 140040 7 CRA 22214 027276 7 IMA TRBSTF /FIRED BY SYNC OR SWCH? 22215 100040 7 SZE 22216 103541 7 JMP (GIVLST) I /*SEND PADDING--FIRED BY SWCH 22217 073542 7 LDX (100003) /END OUR OWN MESSAGE 22220 004112 7 LDA SIGN 22221 120664 7 JST JAM I /*PADDING AND END OF MESSAGE 22222 105543 7 LDA (TRBD) I /*NCC DEST 22223 121525 7 JST (GIVE) I 22224 105544 7 LDA (TRBD+0+TLNK-TDST) I /*NCC LINK 22225 121525 7 JST (GIVE) I 22226 005545 7 LDA (302) /*STAT MESSAGE CODE 22227 021310 7 JST NTGIVE 22230 072127 7 LDX MICH /SEND LINE STATS 22231 127546 7 NTR8: IMA (THRUPT+CH X) I 22232 021310 7 JST NTGIVE /*PACKET THRUPUT 22233 127547 7 IMA (THRUPW+CH X) I 22234 021310 7 JST NTGIVE /*WORD THRUPUT 22235 024000 7 IRS 0 22236 003231 7 JMP NTR8 22237 073526 7 LDX (-NH) /NOW HOST THROUGHPUTS FOR EACH HO1' 22240 005550 7 NTR5: LDA (-10.) /AND FOR EACH OF 10 FLAVORS 22241 011277 7 STA NTRTM1 22242 005551 7 LDA (NTRTAB 0 I) 22243 011300 7 STA NTRTM2 22244 140040 7 NTR4: CRA 22245 127300 7 IMA NTRTM2 I /*SEND HOST THROUGHPUT COUNT 22246 021310 7 JST NTGIVE 22247 025300 7 IRS NTRTM2 22250 025277 7 IRS NTRTM1 22251 003244 7 JMP NTR4 22252 024000 7 IRS 0 22253 003240 7 JMP NTR5 22254 027301 7 IMA NTRCKS /A=0 NOW 22255 140407 7 TCA 22256 121525 7 JST (GIVE) I /*SEND CKSUM 22257 103541 7 JMP (GIVLST) I /*SEND PADDING *** THIS DOCUMENT MAY CONTAIN BBN PROPRIETARY INFORMATION. *** *** FURNISHED FOR U. S. GOVERNMENT END USE ONLY. *** PAGE 185 IMP,3050,IMP 7:20 PM 9/16/1973 LEV CON 22260 073563 C NTRTAB: HTPMTN+NH X 22261 073567 C HTPMFN+NH X 22262 073573 C HTPPTN+NH X 22263 073577 C HTPPFN+NH X 22264 073603 C NTRT1: HTPMTL+NH X 22265 073607 C NTRT3: HTPMFL+NH X 22266 073613 C NTRT2: HTPPTL+NH X 22267 073617 C NTRT4: HTPPFL+NH X 22270 073623 C HTPWTI+NH X 22271 073627 C HTPWFI+NH X LEV VAR 22272 V SWS: BSS 1 /ANOMALIES 22273 V HLNMS: BSS 1 22274 V SWCHTM: BSS 1 22275 003014 V HERSAV: JMP 0 1000 777"A"HITEST 22276 V TRBSTF: BSS 1 22277 V NTRTM1: BSS 1 22300 V NTRTM2: BSS 1 22301 V NTRCKS: BSS 1 /CHECKSUM FOR TROUBLE REPT 22302 V E321: BSS 1 /NO OF ERRORS ON EACH LINE 22303 V RTSSNT: BSS CH /NO OF HELLO'S SENT LEV BCK 22310 000000 7 NTGIVE: 0 /BUILD CHECKSUM 22311 000401 7 ENB BCK 22312 027301 7 IMA NTRCKS 22313 015301 7 ADD NTRCKS 22314 027301 7 IMA NTRCKS 22315 121525 7 JST (GIVE) I /AND GIVE A WORD TO IMP VIA JAM 22316 140040 7 CRA 22317 103310 7 JMP NTGIVE I *** THIS DOCUMENT MAY CONTAIN BBN PROPRIETARY INFORMATION. *** *** FURNISHED FOR U. S. GOVERNMENT END USE ONLY. *** PAGE 186 IMP,3050,IMP 7:20 PM 9/16/1973 /BITS IN SWS (TROUBLE REPORT ANOMALIES): / 100000 - HOST 0 UP (NOT KEPT IN SWS) / 40000 - HOST 1 UP (NOT KEPT IN SWS) / 20000 - HOST 2 UP (NOT KEPT IN SWS) / 10000 - HOST 3 UP (NOT KEPT IN SWS) / 4000 - VDH SOFTWARE IS UP / 2000 - M.GENERATOR IS ON / 1000 - STATISTICS IS ON / 400 - SNAPSHOT IS ON / 200 - TRACE IS ON / 100 - MEM PROTECT IS OFF / 40 - SPARE / 20 - OVERRIDE IS ON / 10 - SS 1 IS ON / 4 - SS 2 IS ON / 2 - SS 3 IS ON / 1 - SS 4 IS ON *** THIS DOCUMENT MAY CONTAIN BBN PROPRIETARY INFORMATION. *** *** FURNISHED FOR U. S. GOVERNMENT END USE ONLY. *** PAGE 187 IMP,3050,IMP 7:20 PM 9/16/1973 LEV T.O 22320 000000 5 SWCH: 0 /SET UP SWITCH SETTINGS FOR TROUBLE 22321 005552 5 LDA (4000) /SET UP FREQ FOR NCC TRBL REPTS 22322 111553 5 STA (TRBF) I /DEST IS SET IN BACK 22323 072121 5 LDX MINUS1 22324 105527 5 LDA (RSFNCC) I 22325 101040 5 SNZ 22326 105554 5 LDA (HLTLOC) I 22327 100040 5 SZE /IF RSFLAG OR HLTLOC NON-ZERO 22330 033272 5 STX SWS /FIRE OFF A TRBL REPT NOW 22331 004142 5 LDA HLNM 22332 027273 5 IMA HLNMS 22333 023273 5 CAS HLNMS 22334 100000 5 SKP /CHANGE IN HOST TEST STATUS? 22335 003345 5 JMP SWCH0 /NO 22336 033272 5 STX SWS 22337 010000 5 STA 0 /RICK HOST NO GOING OFF 22340 005275 5 LDA HERSAV 22341 127555 5 IMA (HER 0 X) I /INTERCHANGE PATCH REGIST 22342 072142 5 LDX HLNM /PICK HOST NO COMING ON 22343 127555 5 IMA (HER 0 X) I 22344 011275 5 STA HERSAV 0"A"HER0 22345 004753 5 SWCH0: LDA C100 22346 111556 5 STA (1777) I /ATTEMPT TO CHANGE WORD ON PROT P: 22347 140040 5 CRA 22350 127556 5 IMA (1777) I /IF SUCCESSFUL, PUT IN MP OFF BIT 22351 012473 5 ERA OVRDF /OVRDF=20 IF ON, =0 IF OFF 22352 100020 5 SR1 22353 012751 5 ERA TEN 22354 100010 5 SR2 22355 012117 5 ERA FOUR 22356 100004 5 SR3 22357 012115 5 ERA TWO 22360 100002 5 SR4 22361 012114 5 ERA ONE 22362 072124 5 LDX MINUS4 22363 011274 5 SWCH4: STA SWCHTM 22364 105557 5 LDA (PARAMT+4 X) I 22365 100040 5 SZE 22366 105560 5 LDA (SWCHB+4 X) I /SET THE BIT 22367 013274 5 ERA SWCHTM 22370 024000 5 IRS 0 22371 003363 5 JMP SWCH4 22372 012567 5 ERA VDHUPF /=4000 IF VDH IS UP 22373 027272 5 IMA SWS 22374 013272 5 ERA SWS 22375 101040 5 SNZ 22376 103320 5 JMP SWCH I 22377 011276 5 STA TRBSTF /TELL TRBL RPTS THAT SWS FIRED IT 22400 004417 5 LDA SYNC 22401 117553 5 SUB (TRBF) I 22402 111561 5 STA (TRBOLD) I 22403 103320 5 JMP SWCH I *** THIS DOCUMENT MAY CONTAIN BBN PROPRIETARY INFORMATION. *** *** FURNISHED FOR U. S. GOVERNMENT END USE ONLY. *** PAGE 188 IMP,3050,IMP 7:20 PM 9/16/1973 LEV [M2I,VDI,I2H,T.O,TSK] 22404 000000 0 HLTWRD: 0 22405 010747 0 STA HLTA 22406 032750 0 STX HLTX 22407 004122 0 LDA MINUS2 22410 015404 0 ADD HLTWRD 22411 010746 0 STA HLTLOC 22412 104746 0 LDA HLTLOC I 22413 010746 0 STA HLTLOC /SAVE LOC OF HLT 22414 103404 0 JMP HLTWRD I LEV H2I /8-WAY BREAKDOWN OF HOST THROUGHPUT 22415 000000 4 HTPMT: 0 /COUNT MESSAGES TO NET 22416 012106 4 ERA MINE 22417 100040 4 SZE /INTER- OR INTRA-NODE? 22420 005562 4 LDA (HTPMTN+0-HTPMTL) 22421 015264 4 ADD NTRT1 22422 001001 4 INH I2H 22423 021505 4 3 JST HTPIRS RET H2I 22424 101000 4 NOP 22425 103415 4 JMP HTPMT I 22426 000000 4 HTPPT: 0 /COUNT PACKETS TO NET 22427 012106 4 ERA MINE 22430 100040 4 SZE /INTER- OR INTRA-NODE? 22431 005562 4 LDA (HTPPTN+0-HTPPTL) 22432 015266 4 ADD NTRT2 22433 001001 4 INH I2H 22434 021505 4 3 JST HTPIRS RET H2I 22435 103426 4 JMP HTPPT I /R1==>FH - DON'T GET LENGTH 22436 172677 4 LDX HIXX I 22437 044111 4 LDA BUFE X 22440 016000 4 SUB 0 22441 140100 4 SSP 0"A"TWOQ 22442 017563 4 SUB (DATA) /GOT PACKET LENGTH, NOT COUNTING LE 22443 072675 4 LDX HIP 22444 115564 4 ADD (HTPWTI 0 X) I 22445 100400 4 SPL 22446 004112 4 LDA SIGN /MARK OFLO 22447 111564 4 STA (HTPWTI 0 X) I 22450 103426 4 JMP HTPPT I LEV I2H 22451 000000 3 HTPMF: 0 /COUNT MESSAGES FROM NET 22452 012106 3 ERA MINE 22453 007565 3 ANA (SRCEI) 22454 100040 3 SZE /INTER- OR INTRA-NODE? 22455 005562 3 LDA (HTPMFN+0-HTPMFL) 22456 015265 3 ADD NTRT3 22457 021505 3 JST HTPIRS 22460 101000 3 NOP 22461 103451 3 JMP HTPMF I *** THIS DOCUMENT MAY CONTAIN BBN PROPRIETARY INFORMATION. *** *** FURNISHED FOR U. S. GOVERNMENT END USE ONLY. *** PAGE 189 IMP,3050,IMP 7:20 PM 9/16/1973 22462 000000 3 HTPPF: 0 /COUNT PACKETS FROM NET 22463 012106 3 ERA MINE 22464 007565 3 ANA (SRCEI) 22465 100040 3 SZE /INTER- OR INTRA-NODE? 22466 005562 3 LDA (HTPPFN+0-HTPPFL) 22467 015267 3 ADD NTRT4 22470 021505 3 JST HTPIRS 22471 103462 3 JMP HTPPF I /R1==>FH 22472 172700 3 LDX IHXX I 22473 044111 3 LDA BUFE X 22474 016000 3 SUB 0 22475 140100 3 SSP 0"A"TWOQ 22476 017563 3 SUB (DATA) /GOT PKT LENGTH 22477 072676 3 LDX IHP 22500 115566 3 ADD (HTPWFI 0 X) I 22501 100400 3 SPL 22502 004112 3 LDA SIGN /MARKING OVERFLOW 22503 111566 3 STA (HTPWFI 0 X) I 22504 103462 3 JMP HTPPF I /HOST THROOGHPUT TABLES AND COUNT ROUTINE 22505 000000 3 HTPIRS: 0 /TBL IN A, HOST NUM IN X 22506 016130 3 SUB PLNH 22507 011523 3 STA HTPIR1 22510 004000 3 LDA 0 22511 016130 3 SUB PLNH 22512 101400 3 SMI /FAKE HOST? 22513 003521 3 JMP HTPIR2 /YES, DO NOT COUNT TRAFFIC TO OR FR 22514 105523 3 LDA HTPIR1 I 22515 101400 3 SMI /OVERFLOWED--LEAVE AT 100000 22516 141206 3 AOA /ADD ONE TO COUNTER 22517 111523 3 STA HTPIR1 I 22520 025505 3 IRS HTPIRS /R2==>REAL (NOT FAKE) HOST 22521 000401 3 HTPIR2: ENB I2H 22522 103505 3 JMP HTPIRS I LEV VAR 22523 V HTPIR1: BSS 1 /PNTR INTO HTPTBL *** THIS DOCUMENT MAY CONTAIN BBN PROPRIETARY INFORMATION. *** *** FURNISHED FOR U. S. GOVERNMENT END USE ONLY. *** PAGE 190 IMP,3050,IMP 7:20 PM 9/16/1973 22524 000301 C LEV CON CONSTANTS 22525 030403 C 22526 177774 C 22527 003560 C 22530 001005 C 22531 040000 C 22532 021660 C 22533 021431 C 22534 060464 C 22535 000377 C 22536 000200 C 22537 052625 C 22540 077777 C 22541 030165 C 22542 100003 C 22543 030456 C 22544 030450 C 22545 000302 C 22546 050625 C 22547 050620 C 22550 177766 C 22551 122260 C 22552 004000 C 22553 030464 C 22554 000746 C 22555 053170 C 22556 001777 C 22557 070440 C 22560 041246 C 22561 030210 C 22562 177760 C 22563 000011 C 22564 073617 C 22565 000077 C 22566 073623 C 02431 175607 C PAGEND 22,UNCON,4 *** THIS DOCUMENT MAY CONTAIN BBN PROPRIETARY INFORMATION. *** *** FURNISHED FOR U. S. GOVERNMENT END USE ONLY. *** PAGE 191 IMP,3050,IMP 7:20 PM 9/16/1973 /DDT CONTROL LANGUAGE INFORMATION / /************CURRENTLY IMPLEMENTED COMMANDS*****************, / /SHIFT-CONTROL-P (OR THE BREAK KEY) HAS THE FOLLOWING EFFE( : /1- ANY DDT OUTPUT IS STOPPED /2- THE CURRENTLY OPENED REGISTER IS CLOSED WITH NO NEW CONT1 /3- DDT FORGETS WHATEVER NUMBER WAS BEING TYPED IN /4- DDT TYPES A CARRAIGE RETURN-LINE FEED /5- DDT IS UN-CROSSPATCHED - THAT IS YOU ARE NOW TYPING / TO THE LOCAL DDT IF YOU WERE CROSSPATCHED BEFORE / / HAS THE FOLLOWING EFFECTS: /1- DDT FORGETS WHATEVER NUMBER WAS BEING TYPED IN /2- DDT TYPES "= " / /. HAS THE VALUE OF THE CURRENT REGISTER'S ADDRESS (14-BITI / / HAS THE VALUE OF THE LAST THING TYPED BY DDT / /* HAS THE VALUE OF THE CONTENTS OF THE REGISTER ADDRESSED B /HAS BEEN ASSEMBLED AS THE CURRENT SYLLABLE. IT ALWAYS USES /THE CURRENT SYLLABLE AS A 14 BIT ADDRESS AND CAN BE APPLI[ /ITSELF OR TO ANY SYLLABLE / /T HAS THE VALUE OF THE IMP NUMBER OF THE LAST FOREIGN IMP /TO SEND A TTY MESSAGE TO THIS IMP. USED IN T= OR TC. / /, SEPARATES ARGUMENTS TO MULTIPLE ARGUMENT COMMANDS / /A1/ OPENS REGISTER AT LOCATION A1 (14-BIT ADDRESS) / /A1 OPEN REGISTER AT LOCATION A1 (USED AS /A 9 BIT RELATIVE ADDRESS TO THE PAGE . IS ON. / /A1 CLOSES THE CURRENTLY OPEN REGISTER (IF ANY) /INSERTS A1 AS ITS NEW CONTENTS (IF SUPPLIED) / /A1- CLOSES THE CURRENTLY OPEN REGISTER (AS LINEFEED) AND /THE PREVIOUS REGISTER /A1 CLOSES THE CURRENTLY OPEN REGISTER (AS LINEFEE /OPENS THE NEXT REGISTER / / AND + BOTH MEAN ADDITION / /- MEANS SUBTRACTION / /D MEANS THE NUMBER FOLLOWING IS DECIMAL / /" MEANS THAT THE TWO CHARACTERS FOLLOWING ARE TO BE TAKEN /AS LITERAL ASCII VALUES AND PACKED INTO A WORD LEFT HALF, R / *** THIS DOCUMENT MAY CONTAIN BBN PROPRIETARY INFORMATION. *** *** FURNISHED FOR U. S. GOVERNMENT END USE ONLY. *** PAGE 192 IMP,3050,IMP 7:20 PM 9/16/1973 /= TYPES OUT THE OCTAL VALUE OF THE LAST INPUT /EG: 3=3, 3+6=11, D11=13, "AB=40502, "AB+D10=40514, .=3033 / /> TYPES OUT THE ASCII VALUE OF THE LAST OUTPUT (IE AB / / /A1.A2,A3Z CLEARS ["ZEROES"] CORE BETWEEN LIMITS - A1 IS T1 /CONSTANT CORE WILL BE CLEARED TO. A2 AND A3 ARE THE (INCLL' /LOWER AND UPPER LIMITS, REPECTIVELY. / /A1,A2W DUMPS OUT ["WRITES"] CORE BETWEEN LIMITS - A1 AN( /ARE THE (INCLUSIVE) LOWER AND UPPER LIMITS. RESPECTIVELY. / /A1,A2,A3S STARTS UP A PROGRAM (I.E. CAUSE A TRANSFER TO /LOCATION). A3 IS THE (14 BIT) ADDRESS AT WHICH THE PROGRAM /IS TO BE STARTED. A2 SPECIFIES THE CONTENTS OF THE A REGIST1 /WHEN THE PROGRAM IS STARTED UP. A1 SPECIFIES THE /X REGISTER WHEN THE PROGRAM IS STARTED UP. / /A1C CROSSPATCHES DDT TO IMP A1. /MESSAGES ARE THEN TRANSMITTED TO IMP A1 /FOR EVERY CHARACTER THAT IS TYPED IN / /A1,A2H SETS UP THE HEADER FOR MESSAGE /TRANSMISSION - MESSAGES ARE TRANSMITTED BY /TYPING A SEMICOLON, THEN ALL THE CHARACTERS UP TO THE /NEXT SEMICOLON ARE SENT OFF AS A MESSAGE TO /DESTINATION AS DETERMINED BY THIS HEADER. /A1 GIVES LEADER WORD 1 (DESTINATION) /A2 GIVES LEADER WORD 2 (LINK =). / /A1$ SENDS AN IMP GOING DOWN MESSAGE TO ALL THE HOSTS /AT THE SITE TO WHICH DDT IS CROSSPATCHED. /A1 IS THE LINK DR SUB-CODE WORD AND MUST BE SUPPLIED / /Q TURNS DDT OUTPUT OFF AND ON - REVERSES THE CURRENT STAT /IF DDT TYPES NOTHING BACK IT IS OFF ["QUIET"] /OTHERWISE DDT WILL TYPE A CARRIAGE RETURN-LINE FEED / /I PRODUCES AN INTERRUPT PRINT /A DUMP OF SOME INTERESTING INTERRUPT LOCATIONS / /1 PRODUCES A QUEUE PRINT /A DUMP DF SOME INTERESTING QUEUE AND TABLE LOCATIONS / /A1,A2,A3,A4[E N] WORD SEARCHES: UNDER A MASK OF A1, DOT /SEARCH FOR WORDS EQUAL (NOTEQUAL) TO A2 BETWEEN THE /LIMITS A3 TO A4. / *** THIS DOCUMENT MAY CONTAIN BBN PROPRIETARY INFORMATION. *** *** FURNISHED FOR U. S. GOVERNMENT END USE ONLY. *** PAGE 193 IMP,3050,IMP 7:20 PM 9/16/1973 / /*****************SENSE SWITCH FOUR********************* / / HAVING SENSE SWITCH 4 DOWN INHIBITS ALL OF /DDT'S COMMANDS WHICH COULD DESTROY THE PROGRAM BEING /LSOKED AT. IF YOU ATTEMPT TO CHANGE CORE WITH SS4 DOWN, ( ' /WILL TYPE "= " AT YOU AND COMPLETELY IGNORE THE COMMAND. /THE COMMANDS AFFECTED ARE: S, Q, Z,S, AND LINEFEED, UPARRO' /CARRIAGE RETURN IF TRYING TO SUPPLY NEW CONTENTS. /*****************NULL ARGUMENT CONVENTIONS*****************, / /FOR =,CR,LF,-, AND IF /THE ARGUMENT A1 IS LEFT OUT, THE LAST NUMBER TYPED BY DDT W /BE USED AS THE ARGUMENT. / /FOR E, N, Z AND W, IF EITHER (OR BOTH) OF THE LIMITS ARE LET /DDT WILL USE THE LAST LIMITS SPECIFIED FOR EITHER A Z OR : 1 /OR AN E OR AN N. /IF THE VALUE IS LEFT OUT IN AN E, N OR Z COMMAND, THE LAST /SPECIFIED IN ANY E, N, OR Z COMMAND WILL BE USED. IF THE /IS LEFT OUT OF AN E OR N COMMAND IT WILL BE SUPPLIED FROM /THE LAST E OR N DONE. OR -1 IF NO MASK HAS EVER /BEEN SPECIFIED. / /FOR S, ANY ARGUMENTS LEFT OUT WILL BE SUPPLIED FROM THE LAS /THOSE ARGUMENTS WERE SPECIFIED. / /*********************************************************** *** THIS DOCUMENT MAY CONTAIN BBN PROPRIETARY INFORMATION. *** *** FURNISHED FOR U. S. GOVERNMENT END USE ONLY. *** PAGE 194 IMP,3050,IMP 7:20 PM 9/16/1973 LEV BCK /DDT - STAND ALONE AND BACKGROUND /THE SAME PROGRAM IS USED FOR STAND ALONE USE /AND AS A BACKGROUND PROGRAM RUNNING WITH THE IMP SYSTEM /THE ONLY DIFFERENCE IS IN THE INPUT AND OUTPUT PORTS /CALLS TO INPUT A CHARACTER AND TO OUTPUT A CHARACTER /ARE MADE INDIRECT THROUGH LDIN AND LDOT RESPECTIVELY /STAND ALONE THESE POINT TO SIMPLE TTY I/O HANDLERS /UNDER IMPSYS THESE POINT TO COMPLEX COROUTINES IN BACKGRO1 ] 23033 005633 7 DDSA: LDA (DDA3) /ENTRY TO STAND ALONE DDT 23034 011163 7 STA LDIN /SET UP STAND ALONE INPUT 23035 005634 7 LDA (DDA4) 23036 011164 7 STA LDOT /SET UP STAND ALONE OUTPUT 23037 005635 7 LDA (QNUL) 23040 011632 7 STA QPTR /TURN OFF QUIET MODE 23041 011162 7 STA BBNF /SET DEST TO NON-BBN 23042 140040 7 CRA 23043 010473 7 STA OVRDF /TURN OFF SOFTWARE SS4 23044 000013 7 EXA 23045 003076 7 JMP DCLR /GO TO RESTART ENTRY 23046 000000 7 DDA3: 0 /STAND ALONE DDT INPUT 23047 131004 7 TTINAC /GET INPUT CHAR 23050 003047 7 JMP .-1 23051 007636 7 ANA (177) 23052 013637 7 ERA (200) /ALWAYS PUT IN PARITY BIT 23053 103046 7 JMP DDA3 I 23054 000000 7 DDA4: 0 /STAND ALONE DDT OUTPUT 23055 070104 7 TTSNBZ 23056 003075 7 JMP DDA5 /BUSY, SO GET THE INPUT CHAR 23057 030104 7 TTSOM /GO INTO OUTPUT MODE 23060 170004 7 TTOTA /DO OUTPUT 23061 003060 7 JMP .-1 23062 070004 7 TTSRDY 23063 003062 7 JMP .-1 23064 030004 7 TTSIM /GO BACK TO INPUT MODE 23065 103054 7 JMP DDA4 I /START BACKGROUND DDT OUTPUT 23066 005640 7 DOTI: LDA (DOUT) 23067 011164 7 STA LDOT 23070 005641 7 LDA (DIN) 23071 011163 7 STA LDIN 23072 005635 7 LDA (QNUL) 23073 011632 7 STA QPTR 23074 103642 7 JMP (DOTI1) I *** THIS DOCUMENT MAY CONTAIN BBN PROPRIETARY INFORMATION. *** *** FURNISHED FOR U. S. GOVERNMENT END USE ONLY. *** PAGE 195 IMP,3050,IMP 7:20 PM 9/16/1973 /DDT /NOTE THAT DDT RUNS WITH INTERRUPTS LOCKED - PI OFF /IT ALSO RUNS WITH EXTENDED ADDRESSING ENABLED - EA ON /MAIN LISTEN LOOP 23075 021046 7 DDA5: JST DDA3 LCK ALL 23076 021165 7 0 DCLR: JST CRLF /RESTART ENTRY 23077 140040 7 0 CRA 23100 011145 7 0 STA PRS 23101 021261 7 0 LF: JST CLS 23102 005643 7 0 LDA (215) /TYPE A CR 23103 121164 7 0 JST LDOT I 23104 021215 7 0 CLSE: JST CSL 23105 140040 7 0 CRA 23106 011145 7 0 STA PRS 23107 011144 7 0 STA PAR1 23110 121163 7 0 LSE: JST LDIN I 23111 006752 7 0 ANA C77 23112 011161 7 0 STA CHARIN 23113 015644 7 0 ADD (DTAB) /DISPATCH TABLE 23114 010000 7 0 STA 0 23115 044000 7 0 LDA 0 X 23116 100400 7 0 SPL 23117 003122 7 0 JMP DDTDIS /SIGN BIT MEANS ALWAYS DO IT 23120 005162 7 0 LDA BBNF /ELSE ONLY IF OVERRIDDEN OR BBN 23121 021126 7 0 JST SS4ON 23122 044000 7 0 DDTDIS: LDA 0 X 23123 010000 7 0 STA 0 23124 005161 7 0 LDA CHARIN 23125 042000 7 0 JMP 0 X *** THIS DOCUMENT MAY CONTAIN BBN PROPRIETARY INFORMATION. *** *** FURNISHED FOR U. S. GOVERNMENT END USE ONLY. *** PAGE 196 IMP,3050,IMP 7:20 PM 9/16/1973 23126 000000 7 0 SS4ON: 0 23127 101040 7 0 SNZ /A IS 0 IF OK (E.G. BBNF) 23130 103126 7 0 JMP SS4ON I 23131 004473 7 0 LDA OVRDF /ELSE REQUIRE OVERRIDE ON 23132 101040 7 0 SNZ 23133 100002 7 0 SR4 /OR SS4 ON 23134 103126 7 0 JMP SS4ON I /ELSE FALL INTO RUB 23135 005645 7 0 RUB: LDA (243) /TYPE A # 23136 121164 7 0 RUB1: JST LDOT I 23137 021173 7 0 RUB2: JST TAB /AND THREE SPACES 23140 003104 7 0 JMP CLSE LEV VAR 23141 V BSS 1 /PARAMETERS STORAGE BLOCK 23142 V BSS 1 23143 V BSS 1 23144 V PAR1: BSS 1 23145 V PRS: BSS 1 /PARAMETER SUPPLIED - 1=> YES (R I' 23146 V SYL: BSS 1 /LAST SYLLABLE TYPED IN 23147 000000 V LAST: 0 /LAST WORD TYPED (CURRENT VALUE OF 23150 000000 V PT: 0 /CURRENT VALUE OF . 23151 000000 V OPEN: 0 /ADDRESS OF OPEN REG (<0 IF NONE) 23152 000000 V DLO: 0 /LOW LIMIT 23153 000000 V DHI: 0 /HI LIMIT 23154 000000 V VAL: 0 /VALUE FOR CLEAR AND SEARCHES 23155 000000 V CNT: 0 /COUNT FOR LOOPING 23156 177777 V SMSK: -1 /MASK FOR SEARCHES 23157 000000 V SP: 0 /LAST DDT START ADDRESS 23160 000000 V SX: 0 /LAST DDT START X REG 23161 V CHARIN: BSS 1 /TEMP INPUT CHARACTER 23162 V BBNF: BSS 1 /0 IF DDT MESS FROM BBN LEV CON 23163 024052 C LDIN: DIN /DDT INPUT CHAR ROUTINE 23164 024163 C LDOT: DOUT /DDT OUTPUT CHAR ROUTINE *** THIS DOCUMENT MAY CONTAIN BBN PROPRIETARY INFORMATION. *** *** FURNISHED FOR U. S. GOVERNMENT END USE ONLY. *** PAGE 197 IMP,3050,IMP 7:20 PM 9/16/1973 /UTILITY SUBROUTINES AND STUFF LEV BCK LCK ALL 23165 000000 7 0 CRLF: 0 23166 005643 7 0 LDA (215) /TYPE A CARRIAGE RETURN 23167 121164 7 0 JST LDOT I 23170 005646 7 0 LDA (212) /AND A LINE FEED 23171 121164 7 0 JST LDOT I 23172 103165 7 0 JMP CRLF I 23173 000000 7 0 TAB: 0 23174 005647 7 0 LDA (240) /TYPE THREE SPACES 23175 121164 7 0 JST LDOT I 23176 121164 7 0 JST LDOT I 23177 121164 7 0 JST LDOT I 23200 103173 7 0 JMP TAB I 23201 000000 7 0 GP: 0 /GET A PARAMETER 23202 007145 7 0 ANA PRS 23203 101040 7 0 DSNZ: SNZ /WAS PARAM SUPPLIED? 23204 025201 7 0 IRS GP /NO, SKIP 23205 045144 7 0 LDA PAR1 X /YES, RETURN VALUE 23206 103201 7 0 JMP GP I 23207 000000 7 0 GP1: 0 /GET PARAMETER 1 23210 072113 7 0 LDX ZERO 23211 004114 7 0 LDA ONE 23212 021201 7 0 JST GP 23213 025207 7 0 IRS GP1 /GOT VALUE, GIVE SKIP RETURN 23214 103207 7 0 JMP GP1 I 23215 000000 7 0 CSL: 0 /COMBINE IN A SYLLABLE 23216 140040 7 0 CRA 23217 027146 7 0 IMA SYL 23220 100000 7 0 CSLX: SKP /SKP (DEFAULT) MEANS DO ADDITION 23221 140407 7 0 TCA /ELSE DO SUBTRACTION 23222 015144 7 0 ADD PAR1 /COMBINE WITH PARAM 1 23223 011144 7 0 STA PAR1 /ACCUMULATE IN PARAM 1 23224 004112 7 0 LDA SIGN 23225 011220 7 0 STA CSLX /RESET +/- FLAG 23226 103215 7 0 JMP CSL I *** THIS DOCUMENT MAY CONTAIN BBN PROPRIETARY INFORMATION. *** *** FURNISHED FOR U. S. GOVERNMENT END USE ONLY. *** PAGE 198 IMP,3050,IMP 7:20 PM 9/16/1973 23227 000000 7 0 PAC: 0 /PRINT ADDRESS AND CONTENTS 23230 140100 7 0 SSP 23231 011244 7 0 STA OPN /SAVE ADDRESS OF REG TO BE PRINTE[ 23232 021165 7 0 JST CRLF /TYPE A CR - LF 23233 005244 7 0 LDA OPN 23234 021302 7 0 JST OPT /TYPE THE ADDRESS IN OCTAL 23235 005650 7 0 LDA (257) /TYPE A / 23236 121164 7 0 JST LDOT I 23237 021207 7 0 JST GP1 23240 025145 7 0 IRS PRS 23241 005244 7 0 LDA OPN 23242 021244 7 0 JST OPN /OPEN REG AND TYPE CONTENTS 23243 103227 7 0 JMP PAC I 23244 000000 7 0 OPN: 0 /OPEN A REGISTER AND TYPE ITS CONT 1 23245 140100 7 0 SSP 23246 011151 7 0 STA OPEN 23247 021207 7 0 JST GP1 23250 003253 7 0 JMP OPN1 /NO ARG, DON'T RESET . 23251 005151 7 0 LDA OPEN 23252 011150 7 0 STA PT 23253 021173 7 0 OPN1: JST TAB 23254 073151 7 0 LDX OPEN 23255 044000 7 0 LDA 0 X 23256 021302 7 0 JST OPT 23257 021173 7 0 JST TAB 23260 103244 7 0 JMP OPN I 23261 000000 7 0 CLS: 0 /CLOSE A REGISTER 23262 005651 7 0 LDA (JMP DIG1) 23263 011355 7 0 STA DIG 23264 021215 7 0 JST CSL 23265 005151 7 0 LDA OPEN 23266 101400 7 0 SMI 23267 021207 7 0 JST GP1 23270 003277 7 0 JMP CLS1 /NO NEW CONTENTS FOR THE REG 23271 011147 7 0 STA LAST 23272 004114 7 0 LDA ONE /REAL OVERRIDE NEEDED 23273 021126 7 0 JST SS4ON 23274 005147 7 0 LDA LAST 23275 073151 7 0 LDX OPEN 23276 050000 7 0 STA 0 X 23277 140500 7 0 CLS1: SSM 23300 011151 7 0 STA OPEN 23301 103261 7 0 JMP CLS I *** THIS DOCUMENT MAY CONTAIN BBN PROPRIETARY INFORMATION. *** *** FURNISHED FOR U. S. GOVERNMENT END USE ONLY. *** PAGE 199 IMP,3050,IMP 7:20 PM 9/16/1973 23302 000000 7 0 OPT: 0 23303 011147 7 0 STA LAST 23304 000201 7 0 IAB 23305 072125 7 0 LDX MINUS5 23306 004121 7 0 LDA MINUS1 23307 011333 7 0 STA OPTT 23310 005652 7 0 LDA (130) 23311 041077 7 0 LLL 1 23312 023653 7 0 OPT1: CAS (260) /ZERO? 23313 100000 7 0 SKP 23314 003326 7 0 JMP OPT4 /SEE IF WE SHOULD SUPRESS IT 23315 025333 7 0 IRS OPTT 23316 101000 7 0 DNOP: NOP 23317 121164 7 0 OPT3: JST LDOT I 23320 005654 7 0 OPT2: LDA (26) 23321 041075 7 0 LLL 3 23322 024000 7 0 IRS 0 23323 003312 7 0 JMP OPT1 23324 121164 7 0 JST LDOT I /ALWAYS PRINT LOWEST ORDER DIGIT 23325 103302 7 0 JMP OPT I 23326 025333 7 0 OPT4: IRS OPTT 23327 003317 7 0 JMP OPT3 23330 004121 7 0 LDA MINUS1 /SUPRESS A ZERO 23331 011333 7 0 STA OPTT 23332 003320 7 0 JMP OPT2 23333 7 0 OPTT: BSS 1 23334 021173 7 0 ASCOUT: JST TAB 23335 005147 7 0 LDA LAST 23336 141140 7 0 ICL 23337 121164 7 0 JST LDOT I 23340 005147 7 0 LDA LAST 23341 141050 7 0 CAL 23342 003136 7 0 JMP RUB1 23343 021215 7 0 COM: JST CSL /, DISPATCH 23344 140040 7 0 CRA 23345 027144 7 0 IMA PAR1 23346 027143 7 0 IMA PAR1-1 23347 027142 7 0 IMA PAR1-2 23350 027141 7 0 IMA PAR1-3 23351 005145 7 0 LDA PRS 23352 041477 7 0 LGL 1 23353 011145 7 0 STA PRS 23354 003110 7 0 JMP LSE *** THIS DOCUMENT MAY CONTAIN BBN PROPRIETARY INFORMATION. *** *** FURNISHED FOR U. S. GOVERNMENT END USE ONLY. *** PAGE 200 IMP,3050,IMP 7:20 PM 9/16/1973 /DISPATCHER ROUTINES 23355 7 0 DIG: BSS 1 /JMP DIG1 OR NOP 23356 015146 7 0 ADD SYL 23357 015146 7 0 ADD SYL 23360 040175 7 0 DIG1: LRS 3 /DIGITS DISPATCH 23361 015146 7 0 ADD SYL 23362 041175 7 0 LLS 3 23363 017655 7 0 SUB (60) 23364 011146 7 0 DIG2: STA SYL 23365 021207 7 0 JST GP1 23366 025145 7 0 IRS PRS 23367 003110 7 0 JMP LSE 23370 005316 7 0 DECIN: LDA DNOP 23371 011355 7 0 STA DIG 23372 003110 7 0 JMP LSE 23373 021215 7 0 EQS: JST CSL /EQUALS DISPATCH 23374 005144 7 0 LDA PAR1 23375 021302 7 0 JST OPT 23376 003137 7 0 JMP RUB2 23377 021215 7 0 PLUS: JST CSL /ADDITION DISPATCH 23400 003110 7 0 JMP LSE 23401 021215 7 0 MIN: JST CSL /MINUS DISPATCH 23402 005316 7 0 LDA DNOP 23403 011220 7 0 STA CSLX 23404 003110 7 0 JMP LSE 23405 005150 7 0 PTOP: LDA PT /. DISPATCH 23406 003364 7 0 JMP DIG2 23407 073146 7 0 STAR: LDX SYL /* DISPATCH 23410 044000 7 0 LDA 0 X 23411 003364 7 0 JMP DIG2 23412 005147 7 0 BARR: LDA LAST / DISPATCH 23413 003364 7 0 JMP DIG2 23414 005656 7 0 BOP: LDA (IHTT) /HOST OUTPUT TIMER 23415 003364 7 0 JMP DIG2 /FOR WBB - HOST INTERFACE DEBUG 23416 105657 7 0 TOP: LDA (WHOTTY) I /TTY OUTPUT SOURCE 23417 003364 7 0 JMP DIG2 /FOR NCC OPS- WHO IS TYPING ON TTY *** THIS DOCUMENT MAY CONTAIN BBN PROPRIETARY INFORMATION. *** *** FURNISHED FOR U. S. GOVERNMENT END USE ONLY. *** PAGE 201 IMP,3050,IMP 7:20 PM 9/16/1973 23420 021215 7 0 SLH: JST CSL // DISPATCH 23421 021207 7 0 JST GP1 23422 005147 7 0 LDA LAST 23423 021244 7 0 SLH2: JST OPN 23424 003104 7 0 JMP CLSE 23425 021215 7 0 BS: JST CSL /BACKSLASH DISPATCH 23426 021207 7 0 JST GP1 23427 005147 7 0 LDA LAST 23430 011147 7 0 STA LAST 23431 007660 7 0 ANA (1000) /GET PAGE BIT 23432 100040 7 0 SZE /PAGE 0? 23433 005150 7 0 LDA PT /NO, THIS PAGE 23434 013147 7 0 ERA LAST 23435 007661 7 0 ANA (77000) 23436 013147 7 0 ERA LAST 23437 003423 7 0 JMP SLH2 23440 021261 7 0 UA: JST CLS /- DISPATCH 23441 004121 7 0 LDA MINUS1 23442 003445 7 0 JMP CR1 23443 021261 7 0 CR: JST CLS /CARRIAGE RETURN DISPATCH 23444 004114 7 0 LDA ONE 23445 015150 7 0 CR1: ADD PT 23446 011150 7 0 STA PT 23447 021227 7 0 JST PAC 23450 003104 7 0 JMP CLSE 23451 121163 7 0 ASCIN: JST LDIN I 23452 141240 7 0 ICR 23453 011147 7 0 STA LAST 23454 121163 7 0 JST LDIN I 23455 013147 7 0 ERA LAST 23456 011147 7 0 STA LAST 23457 003364 7 0 JMP DIG2 23460 021215 7 0 S: JST CSL /S DISPATCH 23461 021207 7 0 JST GP1 23462 100000 7 0 SKP 23463 011157 7 0 STA SP 23464 004114 7 0 LDA ONE /REAL OVERRIDE, NOT JUST BBNF 23465 021126 7 0 JST SS4ON 23466 072122 7 0 LDX MINUS2 23467 004117 7 0 LDA FOUR 23470 021201 7 0 JST GP 23471 011160 7 0 STA SX 23472 072121 7 0 LDX MINUS1 23473 004115 7 0 LDA TWO 23474 021201 7 0 JST GP 23475 101000 7 0 NOP 23476 073160 7 0 LDX SX 23477 103157 7 0 JMP SP I *** THIS DOCUMENT MAY CONTAIN BBN PROPRIETARY INFORMATION. *** *** FURNISHED FOR U. S. GOVERNMENT END USE ONLY. *** PAGE 202 IMP,3050,IMP 7:20 PM 9/16/1973 23500 021126 7 0 Z: JST SS4ON /A NOT ZERO - REAL OVERRIDE 23501 005662 7 0 LDA (JMP Z1) 23502 003513 7 0 JMP SCH1 23503 005154 7 0 Z1: LDA VAL 23504 050000 7 0 STA 0 X 23505 003553 7 0 JMP SCH2 23506 005526 7 0 W: LDA DSKP 23507 003513 7 0 JMP SCH1 /W DISPATCH 23510 005570 7 0 EQ: LDA DSZE 23511 003513 7 0 JMP SCH1 /E DISPATCH 23512 005203 7 0 NEQ: LDA DSNZ /N DISPATCH 23513 011546 7 0 SCH1: STA SXEC /SET UP TEST 23514 072123 7 0 LDX MINUS3 23515 004751 7 0 LDA TEN 23516 021201 7 0 JST GP 23517 011156 7 0 STA SMSK /FIRST PARAM - MASK 23520 072122 7 0 LDX MINUS2 23521 004117 7 0 LDA FOUR 23522 021201 7 0 JST GP 23523 011154 7 0 STA VAL /SECOND PARAM - VALUE 23524 021215 7 0 JST CSL 23525 021207 7 0 JST GP1 23526 100000 7 0 DSKP: SKP 23527 011153 7 0 STA DHI /FOURTH PARAM - HI BOUND 23530 072121 7 0 LDX MINUS1 23531 004115 7 0 LDA TWO 23532 021201 7 0 JST GP 23533 011152 7 0 STA DLO /THIRD PARAM - LO BOUND 23534 005152 7 0 LDA DLO 23535 017153 7 0 SUB DHI 23536 016114 7 0 SUB ONE 23537 011155 7 0 STA CNT /LEAVE COUNT IN CNT 23540 101400 7 0 SMI 23541 003135 7 0 JMP RUB /INVERTED BLOCK 23542 073152 7 0 LDX DLO 23543 044000 7 0 SCH3: LDA 0 X 23544 013154 7 0 ERA VAL /COMPARE 23545 007156 7 0 ANA SMSK /MASK OFF BITS TO BE IGNORED 23546 7 0 SXEC: BSS 1 /TEST - SET UP BY CALLS 23547 003553 7 0 JMP SCH2 /FAILURE 23550 004000 7 0 LDA 0 23551 021227 7 0 JST PAC 23552 073151 7 0 LDX OPEN 23553 024000 7 0 SCH2: IRS 0 23554 025155 7 0 IRS CNT 23555 003543 7 0 JMP SCH3 23556 003076 7 0 JMP DCLR *** THIS DOCUMENT MAY CONTAIN BBN PROPRIETARY INFORMATION. *** *** FURNISHED FOR U. S. GOVERNMENT END USE ONLY. *** PAGE 203 IMP,3050,IMP 7:20 PM 9/16/1973 23557 021126 7 0 DOWNM: JST SS4ON /A NOT ZERO 23560 021215 7 0 JST CSL /S DISPATCH 23561 021207 7 0 JST GP1 23562 003135 7 0 JMP RUB /MUST HAVE SS4 ON AND GIVE A PARAM 23563 120672 7 0 JST DODXA I RET BCK 23564 121663 7 JST (IHDOWN) I /TELL ALL HOSTS IMP GOING DOWN 23565 000013 7 EXA 23566 003076 7 JMP DCLR LCK ALL 23567 004473 7 0 OVRD: LDA OVRDF /O DISPATCH 23570 100040 7 0 DSZE: SZE 23571 003575 7 0 JMP OVRD1 /LEAVING OVERRIDE MODE 23572 005162 7 0 LDA BBNF /FROM BBN 23573 021126 7 0 JST SS4ON 23574 140040 7 0 CRA /THEN YOU CAN ENTER OVERRIDE 23575 013664 7 0 OVRD1: ERA (20) 23576 010473 7 0 STA OVRDF 23577 040677 7 0 ARR 1 23600 013665 7 0 ERA (306) /MAKE AN N OR AN F 23601 121164 7 0 JST LDOT I /TYPE ON OR OFF 23602 003076 7 0 JMP DCLR 23603 021215 7 0 C: JST CSL 23604 021207 7 0 JST GP1 /CROSSPATCH 23605 003135 7 0 JMP RUB 23606 007666 7 0 ANA (0 0 177777"X"HICODE) 23607 013667 7 0 ERA (PRIBIT 0 FORIMP) 23610 111670 7 0 STA (HED0) I /SET "FOP IMP" BIT 23611 003076 7 0 JMP DCLR 23612 021215 7 0 H: JST CSL /SET UP A HEADER 23613 072121 7 0 LDX MINUS1 23614 004115 7 0 LDA TWO 23615 021201 7 0 JST GP 23616 111671 7 0 STA (MHD0) I 23617 021207 7 0 JST GP1 23620 100000 7 0 SKP 23621 111672 7 0 STA (MHD1) I 23622 003076 7 0 JMP DCLR 23623 021126 7 0 QDSP: JST SS4ON 23624 005632 7 0 LDA QPTR /QUIET MODE CONTROL 23625 027164 7 0 IMA LDOT 23626 011632 7 0 STA QPTR 23627 003076 7 0 JMP DCLR 23630 000000 7 0 QNUL: 0 /NULL SUBROUTINE 23631 103630 7 0 JMP .-1 I LEV VAR 23632 V QPTR: BSS 1 *** THIS DOCUMENT MAY CONTAIN BBN PROPRIETARY INFORMATION. *** *** FURNISHED FOR U. S. GOVERNMENT END USE ONLY. *** PAGE 204 IMP,3050,IMP 7:20 PM 9/16/1973 23633 023046 C LEV CON CONSTANTS 23634 023054 C 23635 023630 C 23636 000177 C 23637 000200 C 23640 024163 C 23641 024052 C 23642 024157 C 23643 000215 C 23644 024400 C 23645 000243 C 23646 000212 C 23647 000240 C 23650 000257 C 23651 003360 C 23652 000130 C 23653 000260 C 23654 000026 C 23655 000060 C 23656 016306 C 23657 025506 C 23660 001000 C 23661 077000 C 23662 003503 C 23663 003525 C 23664 000020 C 23665 000306 C 23666 170377 C 23667 140000 C 23670 025165 C 23671 025166 C 23672 025167 C 02432 176700 C PAGEND 23,UNCON,4 *** THIS DOCUMENT MAY CONTAIN BBN PROPRIETARY INFORMATION. *** *** FURNISHED FOR U. S. GOVERNMENT END USE ONLY. *** PAGE 205 IMP,3050,IMP 7:20 PM 9/16/1973 LEV BCK 24012 120666 7 DIN4: JST SUCK I 24013 140500 7 SSM 0"A"PRIBIT 24014 011050 7 STA DSRC 24015 007500 7 ANA (FRMIMP 0 SRCEHI) 24016 013501 7 ERA (FRMIMP 0 BBNIMP) 24017 100040 7 SZE /SET FLAG IF MESS FROM BBN IMP TTY 24020 013502 7 ERA (0 0 BBNIMP"X"BBNTIP) 24021 100040 7 SZE /SET FLAG IF MESS FROM BBN TIP TTY 24022 013503 7 ERA (FRMIMP 0 BBNTIP"X"PDP1D) 24023 111504 7 STA (BBNF) I /SET FLAG IF MESS FROM BBN IMP HOST 24024 120666 7 JST SUCK I 24025 011051 7 STA DSRC+1 24026 120666 7 DIN1: JST SUCK I 24027 003040 7 JMP DIN2 24030 011047 7 STA DINW 24031 141050 7 CAL 24032 101040 7 SNZ 24033 003036 7 JMP DIN3 /NOTHING AT ALL IN THIS WORD 24034 005047 7 LDA DINW 24035 021076 7 JST DINR 24036 025067 7 DIN3: IRS DEND /HAVE OUTPUT CLOSE OFF THEIR MESSAG1 24037 003012 7 JMP DIN4 /GO BACK FOR NEXT MESSAGE 24040 011047 7 DIN2: STA DINW /FEED DDT A WORD 24041 021076 7 JST DINR 24042 005047 7 LDA DINW 24043 141340 7 ICA 24044 021076 7 JST DINR 24045 003026 7 JMP DIN1 LEV VAR 24046 V DINC: BSS 1 24047 V DINW: BSS 1 24050 V DSRC: BSS 2 /DDT DEST/SOURCE *** THIS DOCUMENT MAY CONTAIN BBN PROPRIETARY INFORMATION. *** *** FURNISHED FOR U. S. GOVERNMENT END USE ONLY. *** PAGE 206 IMP,3050,IMP 7:20 PM 9/16/1973 LEV BCK 24052 000000 7 DIN: 0 /DDT CALLS HERE TO GET A CHARACTER 24053 072114 7 DIN7: LDX ONE 24054 001001 7 INH ALL 24055 120672 7 0 JST DODXA I RET BCK 24056 100000 7 SKP 24057 120665 7 DIN8: JST DOZE I 24060 140040 7 CRA 24061 027067 7 IMA DEND /TIME TO END A MESSAGE? 24062 101040 7 SNZ 24063 003070 7 JMP DIN9 /NO 24064 005505 7 LDA (DIN7) /CLOSE A MESSAGE 24065 011163 7 STA DOUT 24066 003116 7 JMP DOT2 24067 7 DEND: BSS 1 24070 027046 7 DIN9: IMA DINC /INPUT CHAR READY? 24071 101040 7 SNZ 24072 003057 7 JMP DIN8 24073 001001 7 INH ALL 24074 000013 7 0 EXA 24075 103052 7 0 JMP DIN I LEV BCK 24076 000000 7 DINR: 0 /ROUTINE CALLS HERE TO FEED A CHAR 24077 101400 7 SMI 24100 103076 7 JMP DINR I 24101 140100 7 SSP 24102 141140 7 ICL 24103 100040 7 SZE 24104 003110 7 JMP DINA 24105 010472 7 STA DDTI /WE ARE GIVING DDT A "BREAK" 24106 005335 7 LDA LRET 24107 011052 7 STA DIN 24110 011046 7 DINA: STA DINC 24111 120667 7 JST WAIT I /LET DDT GRAB THE CHAR 24112 005046 7 LDA DINC 24113 100040 7 SZE 24114 003111 7 JMP .-3 24115 103076 7 JMP DINR I *** THIS DOCUMENT MAY CONTAIN BBN PROPRIETARY INFORMATION. *** *** FURNISHED FOR U. S. GOVERNMENT END USE ONLY. *** PAGE 207 IMP,3050,IMP 7:20 PM 9/16/1973 24116 005207 7 DOT2: LDA DOTW /START HERE TO CLOSE OFF LAST MESSA[ 24117 073506 7 DOT5: LDX (100001) 24120 120664 7 JST JAM I 24121 004112 7 DOT6: LDA SIGN /START HERE WITH EMPTY WORLD 24122 021176 7 JST DOTR 24123 072114 7 LDX ONE 24124 005050 7 LDA DSRC /*SEND DEST HOST 24125 120664 7 JST JAM I /(=SOURCE OF LAST MESS RECVD) 24126 005051 7 LDA DSRC+1 /*SEND DEST LINK 24127 120664 7 JST JAM I /(=LINK OF LAST MESS RECVD) 24130 005507 7 LDA (-500.) /NUMBER OF WORDS PER MESSAGE 24131 011213 7 STA DCNT 24132 005210 7 LDA DOTA 24133 007510 7 ANA (177) 24134 000201 7 IAB 24135 041050 7 DOT3: LLL 24. 24136 013511 7 ERA (100200) 24137 021176 7 JST DOTR 24140 004472 7 LDA DDTI /DDT BEING INTERRUPTED? 24141 100040 7 SZE 24142 003152 7 JMP DOT4 /YES, SUPRESS OUTPUT 24143 000201 7 IAB 24144 072114 7 LDX ONE 24145 120664 7 JST JAM I /*SEND TWO CHARS PER WORD 24146 025213 7 IRS DCNT 24147 003154 7 JMP DOT7 24150 004112 7 LDA SIGN 24151 003117 7 JMP DOT5 24152 005512 7 DOT4: LDA (LSE) 24153 011163 7 STA DOUT 24154 004112 7 DOT7: LDA SIGN 24155 021176 7 JST DOTR 24156 003135 7 JMP DOT3 24157 005335 7 DOTI1: LDA LRET 24160 011163 7 STA DOUT 24161 011067 7 STA DEND 24162 003121 7 JMP DOT6 *** THIS DOCUMENT MAY CONTAIN BBN PROPRIETARY INFORMATION. *** *** FURNISHED FOR U. S. GOVERNMENT END USE ONLY. *** PAGE 208 IMP,3050,IMP 7:20 PM 9/16/1973 24163 000000 7 DOUT: 0 /DDT CALLS HERE WITH A CHAR TO TYPE 24164 011210 7 STA DOTA 24165 007510 7 ANA (177) 24166 013207 7 ERA DOTW 24167 000201 7 IAB 24170 011211 7 STA DOTB 24171 033212 7 STX DOTX 24172 001001 7 INH ALL 24173 120672 7 0 JST DODXA I RET BCK 24174 072114 7 LDX ONE 24175 103176 7 JMP DOTR I 24176 000000 7 DOTR: 0 /ROUTINES CALL HERE TO RETURN TO DD 24177 011207 7 STA DOTW 24200 005211 7 LDA DOTB 24201 000201 7 IAB 24202 005210 7 LDA DOTA 24203 073212 7 LDX DOTX 24204 001001 7 INH ALL 24205 000013 7 0 EXA 24206 103163 7 0 JMP DOUT I LEV VAR 24207 V DOTW: BSS 1 24210 V DOTA: BSS 1 24211 V DOTB: BSS 1 24212 V DOTX: BSS 1 24213 V DCNT: BSS 1 /NUMBER OF WORDS LEFT IN OUTPUT PAC *** THIS DOCUMENT MAY CONTAIN BBN PROPRIETARY INFORMATION. *** *** FURNISHED FOR U. S. GOVERNMENT END USE ONLY. *** PAGE 209 IMP,3050,IMP 7:20 PM 9/16/1973 LEV BCK LCK ALL 24214 005337 7 0 QP: LDA QPC1 /QUEUE PRINT 24215 011360 7 0 STA QT1 24216 005340 7 0 QPQ1: LDA QPC2 24217 015360 7 0 ADD QT1 24220 011361 7 0 STA QT2 24221 010000 7 0 STA 0 24222 044000 7 0 LDA 0 X 24223 101040 7 0 SNZ 24224 003244 7 0 JMP QPQ3 24225 121332 7 0 JST QPCR I 24226 004000 7 0 LDA 0 24227 121333 7 0 JST QPOP I 24230 121334 7 0 JST QPTB I 24231 005513 7 0 LDA (-10) 24232 011362 7 0 STA QT3 24233 073361 7 0 QPQ2: LDX QT2 24234 044000 7 0 LDA 0 X 24235 101040 7 0 SNZ 24236 003244 7 0 JMP QPQ3 24237 011361 7 0 STA QT2 24240 121333 7 0 JST QPOP I 24241 121334 7 0 JST QPTB I 24242 025362 7 0 IRS QT3 24243 003233 7 0 JMP QPQ2 24244 025360 7 0 QPQ3: IRS QT1 24245 003216 7 0 JMP QPQ1 24246 005357 7 0 LDA QTB3 24247 011360 7 0 STA QT1 *** THIS DOCUMENT MAY CONTAIN BBN PROPRIETARY INFORMATION. *** *** FURNISHED FOR U. S. GOVERNMENT END USE ONLY. *** PAGE 210 IMP,3050,IMP 7:20 PM 9/16/1973 24250 073360 7 0 QPB1: LDX QT1 24251 045350 7 0 LDA QTB1+QTBL X 24252 011361 7 0 STA QT2 24253 045357 7 0 LDA QTB2+QTBL X 24254 011362 7 0 STA QT3 24255 073362 7 0 QPB2: LDX QT3 24256 044000 7 0 LDA 0 X 24257 101040 7 0 SNZ 24260 003305 7 0 JMP QPB4 24261 011363 7 0 STA QT4 24262 005362 7 0 LDA QT3 24263 010000 7 0 STA 0 24264 101400 7 0 SMI 24265 003275 7 0 JMP QPB3 24266 025362 7 0 IRS QT3 24267 044001 7 0 LDA 1 X 24270 023506 7 0 CAS (100001) 24271 100000 7 0 SKP 24272 003305 7 0 JMP QPB4 24273 017514 7 0 SUB (BUFE 0 I) 24274 011363 7 0 STA QT4 24275 121332 7 0 QPB3: JST QPCR I 24276 005362 7 0 LDA QT3 24277 140100 7 0 SSP 24300 121333 7 0 JST QPOP I 24301 121334 7 0 JST QPTB I 24302 005363 7 0 LDA QT4 24303 121333 7 0 JST QPOP I 24304 121334 7 0 JST QPTB I 24305 025362 7 0 QPB4: IRS QT3 24306 025361 7 0 IRS QT2 24307 003255 7 0 JMP QPB2 24310 025360 7 0 IRS QT1 24311 003250 7 0 JMP QPB1 24312 103335 7 0 JMP QPND I 24313 073515 7 0 IP: LDX (-IPL) /INTERRUPT PRINT 24314 045400 7 0 IP1: LDA IPT+IPL X 24315 033360 7 0 STX QT1 24316 121336 7 0 JST QPAC I /PRINT SOME KEY PARAMETERS 24317 073360 7 0 LDX QT1 24320 024000 7 0 IRS 0 24321 003314 7 0 JMP IP1 24322 073516 7 0 LDX (STDIL-0-TASKIL) 24323 044104 7 0 IP2: LDA TASKIL+1 X 24324 033360 7 0 STX QT1 24325 121336 7 0 JST QPAC I /PRINT ALL INTERRUPT ENTRANCES 24326 073360 7 0 LDX QT1 24327 024000 7 0 IRS 0 24330 003323 7 0 JMP IP2 24331 103335 7 0 JMP QPND I *** THIS DOCUMENT MAY CONTAIN BBN PROPRIETARY INFORMATION. *** *** FURNISHED FOR U. S. GOVERNMENT END USE ONLY. *** PAGE 211 IMP,3050,IMP 7:20 PM 9/16/1973 24332 023165 7 0 QPCR: CRLF /QUEUE PRINT CONSTANTS AND VARIABLE: 24333 023302 7 0 QPOP: OPT 24334 023173 7 0 QPTB: TAB LRET: /SAME AS QPND 24335 023076 7 0 QPND: DCLR 24336 023227 7 0 QPAC: PAC 24337 177727 7 0 QPC1: -QUEUEL 24340 000343 7 0 QPC2: QUEUEB+QUEUEL 24341 177770 7 0 QTB1: -PPTL 24342 177770 7 0 -TH 24343 177770 7 0 -TH 24344 177730 7 0 -[CH"T"NACH] 24345 177774 7 0 -CH+0+1 24346 177730 7 0 0 0 -2"T"COUNTL 24347 177720 7 0 -PLTNUM 24350 033457 7 0 QTB2: PPT 24351 013333 7 0 HISP 24352 016155 7 0 IHSP 24353 032030 7 0 I2MB0 24354 100020 7 0 100020 24355 000517 7 0 COUNTA 24356 033477 7 0 PLT QTBL=QTB2-0-QTB1 24357 177771 7 0 QTB3: -QTBL LEV VAR 24360 V QT1: BSS 1 24361 V QT2: BSS 1 24362 V QT3: BSS 1 24363 V QT4: BSS 1 LEV CON 24364 000134 C IPT: PRIM /INTERRUPT PRINT LOCS 24365 000674 C MP 24366 012654 C OCHN 24367 012604 C I2MSB 24370 000675 C HIP 24371 013106 C HISB 24372 000676 C IHP 24373 016042 C IHSB 24374 020144 C TOK 24375 003412 C FAKENO 24376 004420 C BACKNO 24377 000111 C ADDRET IPL=.-0-IPT *** THIS DOCUMENT MAY CONTAIN BBN PROPRIETARY INFORMATION. *** *** FURNISHED FOR U. S. GOVERNMENT END USE ONLY. *** PAGE 212 IMP,3050,IMP 7:20 PM 9/16/1973 DDOK=100000 /SIGNBIT ON (DDOK) ==> NON-PRIVELEGED DISPATCH LEV CON 24400 123076 C DTAB: DCLR+0+DDOK /@ 24401 123110 C LSE+0+DDOK /A 24402 023414 C BOP /B 24403 123603 C C+0+DDOK /C 24404 023370 C DECIN /D 24405 023510 C EQ /E 24406 123110 C LSE+0+DDOK /F 24407 123110 C LSE+0+DDOK /G 24410 123612 C H+0+DDOK /H 24411 024313 C IP /I 24412 023101 C LF /J - 12 - LINEFEED 24413 123110 C LSE+0+DDOK /K 24414 123612 C H+0+DDOK /L 24415 023443 C CR /M - 15 - CR 24416 023512 C NEQ /N 24417 123567 C OVRD+0+DDOK /O 24420 123110 C LSE+0+DDOK /P 24421 023623 C QDSP /Q 24422 123110 C LSE+0+DDOK /R 24423 023460 C S /S 24424 123416 C TOP+0+DDOK /T 24425 123110 C LSE+0+DDOK /U 24426 123110 C LSE+0+DDOK /V 24427 023506 C W /W 24430 123110 C LSE+0+DDOK /X 24431 123110 C LSE+0+DDOK /Y 24432 023500 C Z /Z 24433 123110 C LSE+0+DDOK /[ 24434 023425 C BS / 24435 123110 C LSE+0+DDOK /] 24436 023440 C UA /~ 24437 023412 C BARR / *** THIS DOCUMENT MAY CONTAIN BBN PROPRIETARY INFORMATION. *** *** FURNISHED FOR U. S. GOVERNMENT END USE ONLY. *** PAGE 213 IMP,3050,IMP 7:20 PM 9/16/1973 24440 123377 C PLUS+0+DDOK / 24441 024214 C QP /! 24442 023451 C ASCIN /" 24443 123110 C LSE+0+DDOK /# 24444 023557 C DOWNM /$ 24445 123110 C LSE+0+DDOK /% 24446 123110 C LSE+0+DDOK /& 24447 123110 C LSE+0+DDOK /' 24450 123110 C LSE+0+DDOK /( 24451 123110 C LSE+0+DDOK /) 24452 023407 C STAR /* 24453 123377 C PLUS+0+DDOK /+ 24454 123343 C COM+0+DDOK /, 24455 123401 C MIN+0+DDOK /- 24456 023405 C PTOP /. 24457 023420 C SLH // 24460 123355 C DIG+0+DDOK /0 24461 123355 C DIG+0+DDOK /1 24462 123355 C DIG+0+DDOK /2 24463 123355 C DIG+0+DDOK /3 24464 123355 C DIG+0+DDOK /4 24465 123355 C DIG+0+DDOK /5 24466 123355 C DIG+0+DDOK /6 24467 123355 C DIG+0+DDOK /7 24470 123355 C DIG+0+DDOK /8 24471 123355 C DIG+0+DDOK /9 24472 123110 C LSE+0+DDOK /: 24473 123110 C LSE+0+DDOK /; 24474 123110 C LSE+0+DDOK /< 24475 123373 C EQS+0+DDOK /= 24476 023334 C ASCOUT /> 24477 023135 C RUB /? - 177 - RUBOUT *** THIS DOCUMENT MAY CONTAIN BBN PROPRIETARY INFORMATION. *** *** FURNISHED FOR U. S. GOVERNMENT END USE ONLY. *** PAGE 214 IMP,3050,IMP 7:20 PM 9/16/1973 24500 040377 C LEV CON CONSTANTS 24501 040005 C 24502 000033 C 24503 040333 C 24504 023162 C 24505 024053 C 24506 100001 C 24507 177014 C 24510 000177 C 24511 100200 C 24512 023110 C 24513 177770 C 24514 100111 C 24515 177764 C 24516 177760 C 02433 174523 C PAGEND 24,UNCON,4 *** THIS DOCUMENT MAY CONTAIN BBN PROPRIETARY INFORMATION. *** *** FURNISHED FOR U. S. GOVERNMENT END USE ONLY. *** PAGE 215 IMP,3050,IMP 7:20 PM 9/16/1973 TINT: LEV TTY /TTY INTERRUPT 00063 025061 0 STDIL/ TINT 25061 000000 0 TINT/ INT TTY 25062 011115 0 STA TINA /SAVE A REG 25063 070004 0 TTSRDY 25064 003077 0 JMP TTRT /NOT REALLY A TTY INTERRUPT 25065 140040 0 CRA 25066 022474 0 CAS TTFG /IS TTFG = -1,0,1? 25067 003112 0 JMP TIN1 /-1 WE JUST TYPED A BACKSLASH 25070 003104 0 JMP TIN2 / 0 NORMAL INTERRUPT 25071 030104 0 TTSOM / 1 WE MUST TYPE A BACKSLASH 25072 005511 0 LDA (334) 25073 170004 0 TTOTA 25074 003112 0 JMP TIN1 25075 004121 0 LDA MINUS1 /SET TTFG TO -1 25076 010474 0 TIN3: STA TTFG 25077 000043 0 TTRT: INK 25100 171020 0 OTK 25101 005115 0 LDA TINA /RESTORE A REG 25102 000401 0 ENB TTY 25103 103061 0 JMP TINT I 25104 005503 0 TIN2: LDA OTGO /CHECK HALF-DUPLEX FLAG 25105 100040 0 SZE /ARE WE IN INPUT MODE? 25106 003112 0 JMP TIN1 /NO, THIS IS AN OUTPUT INTERRUPT 25107 131004 0 TTINAC /YES, GET INPUT CHAR 25110 003107 0 JMP .-1 25111 011116 0 STA TTCR /SAVE IT 25112 030004 0 TIN1: TTSIM 25113 004114 0 LDA ONE /SET TTFG TO 1 25114 003076 0 JMP TIN3 LEV VAR 25115 V TINA: BSS 1 /TTY INT SAVED A REG 25116 V TTCR: BSS 1 /RAW TTY INPUT CHAR /OTGO IS THE STATE OF THE HALF-DUPLEX INTERFACE /0=EXPECTING INPUT, 1=HAVE DONE OUTPUT /TTFG IS THE COMMUNICATION FLAG BETWEEN /THE TTY INTERRUPT HANDLER AND THE BACKGROUND TTY PROCESSING /AT INTERRUPT TIME: /-1= LAST ACTION WAS TO TYPE A BACKSLASH, NOW 1=>TTFG / 0= NORMAL - BACKGROUND IS READY FOR TTY INT, NOW 1=>TTFG / 1= A SECOND TTY INT CAME IN BEFORE BACKGROUND CAUGHT UP / SO TYPE A BACKSLASH, NOW -1=>TTFG /AT BACKGROUND LEVEL: /USE A CRA, IMA TTFG SEQUENCE TO INTERROGATE TTY /0=>TTFG, USE CHAR IF TTFG WAS = 1 *** THIS DOCUMENT MAY CONTAIN BBN PROPRIETARY INFORMATION. *** *** FURNISHED FOR U. S. GOVERNMENT END USE ONLY. *** PAGE 216 IMP,3050,IMP 7:20 PM 9/16/1973 LEV BCK 25117 140040 7 TTYI: CRA /TELETYPE INPUT STARTS HERE 25120 011503 7 STA OTGO 25121 010673 7 STA HSFG 25122 011504 7 STA HSGO 25123 011163 7 STA TTCH 25124 111512 7 STA (DINC) I 25125 004106 7 LDA MINE 25126 013513 7 ERA (PRIBIT 0 FORIMP) 25127 111514 7 STA (DSRC) I 25130 012753 7 ERA C100 25131 011165 7 STA HED0 25132 005515 7 LDA (40) 25133 170020 7 SMK 20 /ENABLE TTY INTERRUPTS ONLY 25134 003174 7 JMP TTI3 /GO FIRE OFF A DUMMY MSG TO DDT 25135 005170 7 IND1: LDA TTI2 25136 011160 7 STA INDB 25137 000401 7 TTI1: ENB BCK 25140 072113 7 LDX ZERO 25141 120665 7 JST DOZE I /WAIT FOR NEXT INPUT CHAR 25142 005503 7 LDA OTGO /OUTPUT ACTIVE? 25143 100040 7 SZE 25144 003137 7 JMP TTI1 /YES 25145 001001 7 INH TTY 25146 026474 7 0 IMA TTFG /TTY HAVE SOMETHING FOR US?? 25147 101400 7 0 SMI /IF TTFG= -1, NO 25150 101040 7 0 SNZ /IF TTFG= 0, NO 25151 003137 7 0 JMP TTI1 /NO 25152 005116 7 0 LDA TTCR /IF TTFG= 1, YES 25153 007516 7 0 ANA (177) /PUT IN PARITY BIT 25154 013517 7 0 ERA (200) 25155 011163 7 0 STA TTCH 25156 000401 7 0 ENB BCK 25157 103160 7 JMP INDB I /GO PROCESS THE CHAR 25160 000000 7 INDB: 0 /COME HERE TO GET NEXT CHAR FROM TT 25161 011164 7 STA TTIW /SAVE THE INPUT WORD SO FAR 25162 003137 7 JMP TTI1 LEV VAR 25163 V TTCH: BSS 1 /RAW TTY INPUT CHAR+PARITY BIT 25164 V TTIW: BSS 1 25165 V HED0: BSS 1 /CROSSPATCH HEADER 25166 V MHD0: BSS 1 /MESSAGE HEADER 25167 V MHD1: BSS 1 *** THIS DOCUMENT MAY CONTAIN BBN PROPRIETARY INFORMATION. *** *** FURNISHED FOR U. S. GOVERNMENT END USE ONLY. *** PAGE 217 IMP,3050,IMP 7:20 PM 9/16/1973 MSGT=273 /SEMI NUMB=272 /COLON LEV BCK 25170 025171 7 TTI2: .+1 /PLACE TO START BUILDING NEW MESSAGI 25171 023520 7 CAS (MSGT) /IS IT A MESSAGE INITIATOR? 25172 100000 7 SKP 25173 003221 7 JMP MSG /YES /SEND A SINGLE CHAR MESSAGE 25174 005165 7 TTI3: LDA HED0 /*SEND CROSSPATCH HEADER 25175 120664 7 JST JAM I 25176 140040 7 CRA /*SEND ON LINK ZERO 25177 120664 7 JST JAM I 25200 005163 7 LDA TTCH 25201 013517 7 ERA (200) 25202 100040 7 SZE /IS THE CHAR TO SEND A BREAK? 25203 003207 7 JMP TTI5 /NO 25204 004106 7 LDA MINE /YES, RESET CROSSPATCH HEADER TO [ 1 25205 013521 7 ERA (PRIBIT 0 FORIMP 100) 25206 011165 7 STA HED0 /DDT AT SELF - PRIORITY 25207 005163 7 TTI5: LDA TTCH 25210 140500 7 SSM 25211 141340 7 ICA 25212 011164 7 STA TTIW 25213 140040 7 CRA 25214 011504 7 STA HSGO 25215 005164 7 MSG2: LDA TTIW /*SEND 1 CHAR MESSAGE 25216 072112 7 LDX SIGN /CLOSE OFF THE MESSAGE 25217 120664 7 JST JAM I 25220 003135 7 JMP IND1 /SEND A SEMICOLON MESSAGE - MULTI-CHARACTER 25221 004673 7 MSG: LDA HSFG /SEND A MESSAGE 25222 011504 7 STA HSGO 25223 005166 7 LDA MHD0 /*SEND MESSAGE HOST 25224 120664 7 JST JAM I 25225 005167 7 LDA MHD1 /*SEND MESSAGE LINK 25226 120664 7 JST JAM I 25227 004112 7 MSG0: LDA SIGN 25230 021277 7 JST MSG1 /GET ONE CHAR 25231 140500 7 SSM /PUT IN PARITY 25232 141340 7 ICA /SAVE 25233 021277 7 JST MSG1 /GET OTHER CHAR 25234 013517 7 ERA (200) /PUT IN PARITY 25235 013164 7 ERA TTIW 25236 120664 7 JST JAM I /*SEND NEXT TWO CHARS 25237 003227 7 JMP MSG0 /GO BACK FOR MORE *** THIS DOCUMENT MAY CONTAIN BBN PROPRIETARY INFORMATION. *** *** FURNISHED FOR U. S. GOVERNMENT END USE ONLY. *** PAGE 218 IMP,3050,IMP 7:20 PM 9/16/1973 25240 140040 7 MSG3: CRA /BUILD A NUMBER 25241 021277 7 MSG4: JST MSG1 /GET NEXT CHAR 25242 023522 7 CAS (215) /CR? 25243 100000 7 SKP /NO 25244 003253 7 JMP MSG5 /YES, END OF THE NUMBER 25245 001001 7 INH ALL /USING B REG - MUST LOCK INTS 25246 040075 7 0 LRL 3 25247 005164 7 0 LDA TTIW 25250 041075 7 0 LLL 3 25251 000401 7 0 ENB BCK 25252 003241 7 JMP MSG4 25253 070104 7 MSG5: TTSNBZ /ECHO CR WITH A LF 25254 003274 7 JMP MSG6 /FORGET IT 25255 030104 7 TTSOM 25256 005523 7 LDA (212) 25257 170004 7 TTOTA 25260 003257 7 JMP .-1 25261 025503 7 IRS OTGO 25262 120665 7 MSG7: JST DOZE I /WAIT FOR CHAR TO TYPE OUT 25263 140040 7 CRA 25264 026474 7 IMA TTFG 25265 101040 7 SNZ /HAS TTY INTERRUPTED? 25266 003262 7 JMP MSG7 /NOT YET, WAIT 25267 005503 7 LDA OTGO /NOW UNSTEP OUTPUT FLAG 25270 016114 7 SUB ONE 25271 100400 7 SPL 25272 140040 7 CRA 25273 011503 7 STA OTGO 25274 005164 7 MSG6: LDA TTIW /ADD NUMBER TO MESSAGE 25275 120664 7 JST JAM I 25276 003227 7 JMP MSG0 25277 000000 7 MSG1: 0 /SUBR TO GET NEXT CHAR FOR MESSAGE 25300 021160 7 JST INDB /GET THE CHAR 25301 023520 7 CAS (MSGT) /IS IT MESSAGE TERMINATOR? 25302 100000 7 SKP /NO 25303 003215 7 JMP MSG2 /YES, DONE - LEAP INTO INDB CODE 25304 023524 7 CAS (NUMB) /IS IT NUMBER INDICATOR? 25305 103277 7 JMP MSG1 I /NO, RETURN WITH CHAR 25306 003240 7 JMP MSG3 /YES, PUT AN OCTAL NUMBER IN THE ME 25307 103277 7 JMP MSG1 I /NO, RETURN WITH CHAR *** THIS DOCUMENT MAY CONTAIN BBN PROPRIETARY INFORMATION. *** *** FURNISHED FOR U. S. GOVERNMENT END USE ONLY. *** PAGE 219 IMP,3050,IMP 7:20 PM 9/16/1973 25310 072113 7 TTO0: LDX ZERO /TELETYPE OUTPUT ROUTINES 25311 033505 7 STX TTNM /CLEAR FLAG 25312 120666 7 JST SUCK I /WAIT FOR SOME OUTPUT TO HAPPEN 25313 025503 7 IRS OTGO /GRAB THE TTY 25314 011501 7 STA TTOW 25315 007525 7 ANA (SRCEHI) 25316 022106 7 CAS MINE /NOT IF FROM US 25317 022752 7 CAS C77 /NOT IF NON-TTY 25320 003323 7 JMP TTO01 25321 101000 7 NOP 25322 011506 7 STA WHOTTY /LAST FOREIGN IMP TTY TO SEND TO TT' 25323 120667 7 TTO01: JST WAIT I 25324 005501 7 LDA TTOW 25325 041475 7 LGL 3 0"A"FOROCT 25326 011502 7 STA OCTL 25327 101400 7 SMI 25330 005504 7 LDA HSGO /MAKE A SKP TO SEE ALL I2H MESSAGES - RFNMS FOR SINGLE CHA[ 25331 101040 7 SNZ 25332 003353 7 JMP TTO2 25333 005522 7 LDA (215) 25334 021450 7 JST SEND 25335 005523 7 LDA (212) 25336 021450 7 JST SEND 25337 005523 7 LDA (212) 25340 021450 7 JST SEND 25341 005501 7 LDA TTOW 25342 021412 7 JST OCTO 25343 120666 7 JST SUCK I 25344 100000 7 SKP 25345 003350 7 JMP TTO7 25346 021412 7 JST OCTO 25347 003356 7 JMP TTO3 25350 025505 7 TTO7: IRS TTNM /SET END FLAG 25351 021412 7 JST OCTO 25352 003370 7 JMP TTO5 25353 120666 7 TTO2: JST SUCK I /FROM DDT: SKIP OVER REST OF LEAD[ 25354 100000 7 SKP 25355 003437 7 JMP TTO8 25356 120666 7 TTO3: JST SUCK I 25357 003374 7 JMP TTO4 /MORE MESSAGE 25360 025505 7 IRS TTNM 25361 011501 7 STA TTOW /DONE 25362 141050 7 CAL 25363 101040 7 SNZ 25364 003370 7 JMP TTO5 25365 005501 7 LDA TTOW /GET LAST CHAR 25366 141140 7 ICL 25367 021450 7 JST SEND 25370 140040 7 TTO5: CRA 25371 011503 7 STA OTGO 25372 011502 7 STA OCTL 25373 003310 7 JMP TTO0 *** THIS DOCUMENT MAY CONTAIN BBN PROPRIETARY INFORMATION. *** *** FURNISHED FOR U. S. GOVERNMENT END USE ONLY. *** PAGE 220 IMP,3050,IMP 7:20 PM 9/16/1973 LEV BCK 25374 011501 7 TTO4: STA TTOW /SEND ANOTHER WORD OF THE MESSAGE 25375 005502 7 LDA OCTL 25376 100400 7 SPL 25377 003407 7 JMP TTO6 25400 005501 7 LDA TTOW 25401 141140 7 ICL 25402 021450 7 JST SEND 25403 005501 7 LDA TTOW 25404 141050 7 CAL 25405 021450 7 JST SEND 25406 003356 7 JMP TTO3 25407 005501 7 TTO6: LDA TTOW 25410 021412 7 JST OCTO 25411 003356 7 JMP TTO3 25412 000000 7 OCTO: 0 /OCTAL OUTPUT 25413 000201 7 IAB 25414 004126 7 LDA MINUS6 25415 011507 7 STA OCO1 25416 005526 7 LDA (130) 25417 041077 7 LLL 1 25420 000201 7 OCO2: IAB 25421 011510 7 STA OCO3 25422 000201 7 IAB 25423 021450 7 JST SEND 25424 005510 7 LDA OCO3 25425 000201 7 IAB 25426 005527 7 LDA (26) 25427 041075 7 LLL 3 25430 025507 7 IRS OCO1 25431 003420 7 JMP OCO2 25432 005522 7 LDA (215) 25433 021450 7 JST SEND 25434 005523 7 LDA (212) 25435 021450 7 JST SEND 25436 103412 7 JMP OCTO I 25437 025505 7 TTO8: IRS TTNM 25440 005501 7 LDA TTOW 25441 007530 7 ANA (IHCODE) 25442 013531 7 ERA (CINCTR) 25443 100040 7 SZE /BLOCKED OR LOST? 25444 003370 7 JMP TTO5 /NO 25445 005511 7 LDA (334) /YES, TYPE A BACKSLASH SINCE OUR ME 25446 021450 7 JST SEND 25447 003370 7 JMP TTO5 *** THIS DOCUMENT MAY CONTAIN BBN PROPRIETARY INFORMATION. *** *** FURNISHED FOR U. S. GOVERNMENT END USE ONLY. *** PAGE 221 IMP,3050,IMP 7:20 PM 9/16/1973 25450 000000 7 SEND: 0 /SUBR TO TYPE OUT A CHAR 25451 023517 7 CAS (200) /'200 BIT SET? 25452 101000 7 NOP 25453 100000 7 SKP 25454 103450 7 JMP SEND I /NO, IGNORE THE CALL 25455 072113 7 LDX ZERO 25456 070104 7 TTSNBZ 25457 003472 7 JMP SND2 /INTERRUPTING OUTPUT! 25460 030104 7 TTSOM 25461 170004 7 TTOTA 25462 003472 7 JMP SND2 25463 120667 7 SND3: JST WAIT I /WAIT FOR CHAR TO GO OUT 25464 140040 7 CRA 25465 026474 7 IMA TTFG 25466 101400 7 SMI 25467 101040 7 SNZ 25470 003463 7 JMP SND3 25471 103450 7 JMP SEND I 25472 005505 7 SND2: LDA TTNM /AT END OF MSG? 25473 100040 7 SZE 25474 003370 7 JMP TTO5 /YES, NO MSG TO SKIP 25475 120666 7 JST SUCK I /SKIP REST OF MESSAGE 25476 003472 7 JMP SND2 25477 010472 7 STA DDTI 25500 003370 7 JMP TTO5 /AND CONTINUE LOOKING FOR A NEW MES LEV VAR 25501 V TTOW: BSS 1 25502 V OCTL: BSS 1 25503 V OTGO: BSS 1 25504 V HSGO: BSS 1 25505 V TTNM: BSS 1 /END OF MSG IF NON ZERO 25506 000000 V WHOTTY: 0 /LAST FOREIGN TYPIST ON THIS TTY 25507 V OCO1: BSS 1 25510 V OCO3: BSS 1 *** THIS DOCUMENT MAY CONTAIN BBN PROPRIETARY INFORMATION. *** *** FURNISHED FOR U. S. GOVERNMENT END USE ONLY. *** PAGE 222 IMP,3050,IMP 7:20 PM 9/16/1973 25511 000334 C LEV CON CONSTANTS 25512 024046 C 25513 140000 C 25514 024050 C 25515 000040 C 25516 000177 C 25517 000200 C 25520 000273 C 25521 140100 C 25522 000215 C 25523 000212 C 25524 000272 C 25525 000377 C 25526 000130 C 25527 000026 C 25530 007400 C 25531 004400 C 02434 174532 C PAGEND 25,UNCON *** THIS DOCUMENT MAY CONTAIN BBN PROPRIETARY INFORMATION. *** *** FURNISHED FOR U. S. GOVERNMENT END USE ONLY. *** PAGE 223 IMP,3050,IMP 7:20 PM 9/16/1973 /NEW ROUTING /THESE ROUTINES BUILD TWO MAIN TABLES /RUT - ROUTE USE TABLE, THE BEST LINE DIRECTORY /RST - ROUTE SEND TABLE, THE HOPS/DELAY INFORMATION UPDATE M[ /THE NEW VALUE OF HOPS AND DELAY ON THE BEST LINES FOR EAC1 , /RSTN - THE RST NEW TABLE / THE IDENTITY OF THE BEST LINE FOR EACH IS KEPT IN /RUTW - THE RUT WORKING TABLE /A NAMING CONVENTION -- TAGS LIKE RST.N AND RST.W ARE INDIRET /POINTERS [FOR '.' READ "POINT"], POST-INDEXED BY NEGATIVE 1 /RST.N IS THUS THE RST POINTER TO THE NEW TABLE /BITS IN RUT RUTDED=100000 /THIS IMP IS DOWN,UNREACHABLE OR NO1 RUTGOD=60000 /GOING-DOWN DELAY CNTR - EVERY 4TH ] RUTGD1=20000 /LOW ORDER BIT OF RUTGOD RUTHPC=17400 /LINE # +1 OF SHORTEST HOP PATH RUTCMU=340 /COMING-UP DELAY COUNTER - EVERY 8T1 RUTCM1=40 /LOW ORDER BIT OF RUTCMU RUTDLC=37 /LINE # +1 OF BEST DELAY PATH RUTUS=0 /BITS IN RUTW RUTHPH=60000 /HOLD-DOWN TIMER FOR MIN HOP PATH RTHPH1=20000 /LOW ORDER BIT OF RUTHPH RUTDLH=140 /HOLD-DOWN TIMER FOR MIN DELAY PATH RTDLH1=40 /LOW ORDER BIT OF RUTDLH /BITS IN RST, RSTN HOPS=174000 /5 BITS OF HOP COUNT HOPS1=4000 /LOW ORDER BIT OF HOPS DELS=3777 /11 BITS OF DELAY COUNT /BITS IN ROUTING MSG /IN HEAD1 RMSN=177400 /RM SERIAL # RMSN1=400 /LOW-ORDER BIT IF SER # *** THIS DOCUMENT MAY CONTAIN BBN PROPRIETARY INFORMATION. *** *** FURNISHED FOR U. S. GOVERNMENT END USE ONLY. *** PAGE 224 IMP,3050,IMP 7:20 PM 9/16/1973 /RUTINI IS AN INITIALIZATION ROUTINE TO SET UP /THE ROUTING TABLES LEV BCK LCK INI 26070 000000 7 0 RUTINI: 0 26071 005645 7 0 LDA (RST 0 NIMP X) 26072 010660 7 0 STA RST.O 26073 005646 7 0 LDA (RST1 0 NIMP X) 26074 010661 7 0 STA RST.F 26075 005647 7 0 LDA (RST2 0 NIMP X) 26076 010662 7 0 STA RST.N 26077 073346 7 0 LDX NEGIMP /LOOP OVER ALL IMPS 26100 005637 7 0 RUTINL: LDA CDEAD /(100000) 26101 050265 7 0 STA RUT+NIMP X 0"A"RUTDED 26102 140040 7 0 CRA 26103 051500 7 0 STA RUTW+NIMP X 26104 005640 7 0 LDA CMAXHD /(177777) 26105 110660 7 0 STA RST.O I 26106 110661 7 0 STA RST.F I 26107 110662 7 0 STA RST.N I 26110 024000 7 0 IRS 0 26111 003100 7 0 JMP RUTINL 26112 072106 7 0 LDX MINE 26113 140040 7 0 CRA 0"A"RUTUS 26114 011644 7 0 STA RSTSN /START SER # AT 0 26115 050165 7 0 STA RUT X /CLEAR RUT 26116 111650 7 0 STA (RST2 0 X) I /AND RSTN 26117 103070 7 0 JMP RUTINI I *** THIS DOCUMENT MAY CONTAIN BBN PROPRIETARY INFORMATION. *** *** FURNISHED FOR U. S. GOVERNMENT END USE ONLY. *** PAGE 225 IMP,3050,IMP 7:20 PM 9/16/1973 /RSTINP IS A ROUTINE TO COPY A RECIEVED ROUTING MESSAGE INTO /RSTN, RSTW AND RUTW TABLES. CHK=0 LEV T.O 26120 000000 5 RSTINP: 0 26121 033365 5 RSTCK1: K STX LINEX /SAVE LINE# 26122 011372 5 K STA RST.I /SAVE AC FLAG 26123 073342 5 K LDX RSTCKX /(RSTCK1-0-RSTCK2-1) 26124 140040 5 K CRA /CALCULATE CHECKSUM FOR THIS CODE 26125 055365 5 K ADD RSTCK2+1 X 26126 024000 5 K IRS 0 26127 003125 5 K JMP .-2 26130 100040 5 K SZE /DIFFERENT? RELOAD [RUTINP CODE BROKEN] 26131 120061 5 K JST SWDTIL I /YES, RELOAD 26132 073365 5 K LDX LINEX /RESTORE LINE # IN X 26133 045500 5 K LDA CED X /PICK UP COMPUTED EFFECTIVE DELAY 26134 141206 5 K AOA 26135 011366 5 K STA DELOUR /AND SAVE IT 26136 004000 5 K LDA 0 26137 141206 5 K AOA 26140 011367 5 K STA CHANR /SAVE CHAN=+1 IN RT HALF 26141 141340 5 K ICA 26142 011370 5 K STA CHANL /ALSO IN LEFT HALF 26143 013367 5 K ERA CHANR 26144 011371 5 K STA CHANB /SAVE CHAN=+1 IN BOTH HALVES 26145 005372 5 K LDA RST.I /PICK UP FLAG 26146 101040 5 K SNZ /WERE WE CALLED BY TASK? 26147 003152 5 K JMP RSTI1 /YES, TRUE INPUT 26150 005344 5 K LDA DUMYIN /NO, MAKE UP DUMMY INPUT OF ALL 1: 26151 003167 5 K JMP RSTI2 26152 044433 5 RSTI1: K LDA LINE X 26153 100040 5 K SZE /IS LINE DOWN? 26154 103120 5 K JMP RSTINP I /YES, IGNORE ROUTING 26155 072514 5 K LDX THIS /GET PKT PTR 26156 044006 5 K LDA HEAD1 X /TO RM 26157 141044 5 K CAR 0"A"RMSN /EXTRACT SERIAL # 26160 073365 5 K LDX LINEX 26161 067505 5 K IMA RSTSNI X /SAVE AS LATEST INPUT # 26162 053505 5 K ERA RSTSNI X /COMPARE W/ PREV # 26163 101040 5 K SNZ /NEW? 26164 103120 5 K JMP RSTINP I /NO, WE SAW IT BEFORE***NOP ON REI' 26165 004514 5 K LDA THIS /BUILD POST INDEXED PTR TO PKT 26166 015343 5 K ADD RSTCP1 /(HEAD2 0 NIMP X) 26167 011372 5 RSTI2: K STA RST.I 26170 073346 5 K LDX NEGIMP /LOOP OVER ALL IMPS *** THIS DOCUMENT MAY CONTAIN BBN PROPRIETARY INFORMATION. *** *** FURNISHED FOR U. S. GOVERNMENT END USE ONLY. *** PAGE 226 IMP,3050,IMP 7:20 PM 9/16/1973 26171 105372 5 COPYL: K LDA RST.I I /GET ENTRY FROM RECEIVED ROUTING 26172 007347 5 K ANA HOPM /(174000) 26173 015353 5 K ADD HOPM1 /(4000) ADD IN OUR HOP 26174 101040 5 K SNZ /MAX VALUE? 26175 005347 5 K LDA HOPM /YES 26176 011373 5 K STA HOPIN /SAVE RECEIVED HOP COUNT 26177 141340 5 K ICA 26200 011374 5 K STA HOPINS 26201 105372 5 K LDA RST.I I /EXTRACT RECEIVED DELAY 26202 007350 5 K ANA DELM 26203 015366 5 K ADD DELOUR /ADD IN LOCAL DELAY 26204 023350 5 K CAS DELM /(3777) 26205 005350 5 K LDA DELM /TRUNCATE AT MAX DELAY 26206 101000 5 K NOP 26207 011375 5 K STA DELIN /SAVE TOTAL DELAY 26210 005371 5 K LDA CHANB /COMPARE THIS LINE # 26211 052265 5 K ERA RUT+NIMP X /...WITH PREVIOUS BEST FO1 26212 007363 5 K ANA CHANM /(17437)EXTRACT LINE FIELDS ONLY 26213 023352 5 K CAS BSTDEL /(37)THIS MIN HOP LINE? 26214 003262 5 K JMP COPY11 /NO, SEE IF IT HAS GOOD DATA 26215 101000 5 K NOP 26216 011376 5 K STA CHANS /SAVE /THIS LINE IS PREVIOUS BEST FOR HOPS 26217 104662 5 COPY1: K LDA RST.N I 26220 007350 5 K ANA DELM /EXTRACT OLD DELAY 26221 013373 5 K ERA HOPIN /PUT IN NEW HOPS 26222 126662 5 K IMA RST.N I /SAVE IN RSTN 26223 007347 5 K ANA HOPM 26224 141340 5 K ICA 26225 017374 5 K SUB HOPINS /COMPARE 26226 100400 5 K SPL /CHANGED? 26227 003252 5 K JMP HOLD1 /YES, IF HOPS WORSE DO HOLD-DOWN 26230 005376 5 COPY2: K LDA CHANS /LOOK AI OUR CHAN 26231 100040 5 K SZE /IS IT THE BEST DELAY? 26232 003320 5 K JMP COPY21 /NO /THIS LINE PREVIOUS BEST FOR DELAY 26233 104662 5 K LDA RST.N I /YES 26234 007347 5 K ANA HOPM /EXTRACT OLD HOPS 26235 013375 5 K ERA DELIN /PUT IN NEW DELAY 26236 126662 5 K IMA RST.N I /SAVE IN RSTN 26237 007350 5 K ANA DELM 26240 017375 5 K SUB DELIN /COMPARE 26241 015351 5 K ADD DELCLP /ALLOW FOR SMALL CHANGE W/O HLDDWN 26242 100400 5 K SPL /DELAY GET MUCH WORSE? 26243 003310 5 K JMP HOLD2 /Y, DO HOLD-DOWN 26244 024000 5 COPYI: K IRS 0 /LOOP OVFR ALL IMPS 26245 003171 5 K JMP COPYL 26246 025377 5 K IRS RSTINC /COUNT ANOTHER INPUT COPY COMPLETE 26247 101000 5 K NOP 26250 073365 5 K LDX LINEX /RESTORE X 26251 103120 5 K JMP RSTINP I /RETURN TO TASK *** THIS DOCUMENT MAY CONTAIN BBN PROPRIETARY INFORMATION. *** *** FURNISHED FOR U. S. GOVERNMENT END USE ONLY. *** PAGE 227 IMP,3050,IMP 7:20 PM 9/16/1973 /THIS LINE WAS PREVIOUS BEST FOR HOPS, HOPS CHANGED 26252 045500 5 HOLD1: K LDA RUTW+NIMP X /HOPS GOT WORSE 26253 007356 5 K ANA HLDH /GET HOLD-DOWN TIMER 26254 100040 5 K SZE /ON? 26255 003230 5 K JMP COPY2 /Y, GO ON TO DELAY 26256 005356 5 K LDA HLDH /N, TURN IT ON 26257 053500 5 K ERA RUTW+NIMP X /...AND SAVE IN RUTW 26260 051500 5 K STA RUTW+NIMP X 26261 003230 5 K JMP COPY2 /THIS LINE WAS NOT PREVIOUS BEST FOR HOPS 26262 007352 5 COPY11: K ANA BSTDEL /TURN OFF HOP CHAN BITS 26263 011376 5 K STA CHANS /SAVE IN CHANS 26264 045500 5 K LDA RUTW+NIMP X 26265 007356 5 K ANA HLDH /GET HOLD-DOWN TIMER FOR HOPS 26266 100040 5 K SZE 26267 003230 5 K JMP COPY2 /NOT 0, GO DO DELAY NEXT /NOT PREVIOUS BEST HOPS, NOT HOLDING 26270 104662 5 K LDA RST.N I 26271 007347 5 K ANA HOPM /EXTRACT CURRENT HOPS ON BEST 26272 141340 5 K ICA 26273 023374 5 K CAS HOPINS /COMPARE W/ RCVD HOPS 26274 003277 5 K JMP COPY13 /RCVD HOPS BETTER 26275 003230 5 K JMP COPY2 /NO BETTER, DO DELAY NEXT 26276 003230 5 K JMP COPY2 /DITTO /NOT PREVIOUS BEST HOPS, NOT HOLDING, BETTER THAN PREVIOUS 26277 141340 5 COPY13: K ICA 26300 112662 5 K ERA RST.N I /EXTRACT OLD BEST DELAY 26301 013373 5 K ERA HOPIN /PUT IN NEW HOPS 26302 110662 5 K STA RST.N I /SAVE IN RSTN 26303 044265 5 K LDA RUT+NIMP X 26304 007361 5 K ANA CHANML /(160377)EXTRACT CHAN OF MIN DELA1 26305 013370 5 K ERA CHANL /UPDATE CHAN OF MIN HOPS 26306 050265 5 K STA RUT+NIMP X /SAVE IN RUT 26307 003230 5 K JMP COPY2 *** THIS DOCUMENT MAY CONTAIN BBN PROPRIETARY INFORMATION. *** *** FURNISHED FOR U. S. GOVERNMENT END USE ONLY. *** PAGE 228 IMP,3050,IMP 7:20 PM 9/16/1973 /THIS LINE WAS PREVIOUS BEST FOR DELAY, DELAY GOT WORSE 26310 045500 5 HOLD2: K LDA RUTW+NIMP X /DELAY GOT WORSE 26311 007357 5 K ANA HLDD /GET DELAY HOLD-DOWN TIMER 26312 100040 5 K SZE /IS IT ON? 26313 003244 5 K JMP COPYI /YES, GO ON TO NEXT IMP 26314 005357 5 K LDA HLDD /NO, TURN IT ON 26315 053500 5 K ERA RUTW+NIMP X /SAVE IN RUTW 26316 051500 5 K STA RUTW+NIMP X 26317 003244 5 K JMP COPYI /THIS LINE WAS NOT PREVIOUS BEST FOR DELAY 26320 045500 5 COPY21: K LDA RUTW+NIMP X 26321 007357 5 K ANA HLDD /GET DELAY HOLD-DOWN TIMER 26322 100040 5 K SZE 26323 003244 5 K JMP COPYI /NOT 0, GO TO NEXT IMP /NOT PREVIOUS BEST DELAY, NOT HOLDING 26324 104662 5 K LDA RST.N I 26325 007350 5 K ANA DELM /EXTRACT CURRENT DELAY ON BEST 26326 023375 5 K CAS DELIN /COMP W/ RCVD DELAY 26327 003332 5 K JMP COPY23 /RCVD DELAY BETTER 26330 003244 5 K JMP COPYI /NO BETTER. GO ON TO NEXT IMP 26331 003244 5 K JMP COPYI /DITTO /NOT PREV BEST DELAY, NOT HOLDING, BETTER THAN PREVIOUS 26332 112662 5 COPY23: K ERA RST.N I /EXTRACT OLD BEST HOP COUNT 26333 013375 5 K ERA DELIN /PUT IN NEW DELAY 26334 110662 5 K STA RST.N I /SAVE IN RSTN 26335 044265 5 K LDA RUT+NIMP X 26336 007360 5 K ANA CHANMR /(177740)EXTRACT CHAN OF MIN HOP 26337 013367 5 K ERA CHANR /UPDATE CHAN OF BEST DELAY 26340 050265 5 K STA RUT+NIMP X /SAVE IN RUT 26341 003244 5 K JMP COPYI /GO ON TO NEXT IMP *** THIS DOCUMENT MAY CONTAIN BBN PROPRIETARY INFORMATION. *** *** FURNISHED FOR U. S. GOVERNMENT END USE ONLY. *** PAGE 229 IMP,3050,IMP 7:20 PM 9/16/1973 LEV CON 26342 177534 C RSTCKX: K RSTCK1-0-RSTCK2-1 26343 040107 C RSTCP1: K HEAD2 0 NIMP X 26344 026345 C DUMYIN: K .+1 /PTR TO DUMMY MAX INPUT 26345 177777 C K HOPS+0+DELS 26346 177700 C NEGIMP: K -NIMP 26347 174000 C HOPM: K HOPS 26350 003777 C DELM: K DELS 26351 000010 C DELCLP: K 10 /SMALL CHANGE TO DELAY IS OK 26352 000037 C BSTDEL: K RUTDLC 26353 004000 C HOPM1: K HOPS1 /4000 26354 020000 C HLDH1: K RTHPH1 /20000 26355 000040 C HLDD1: K RTDLH1 /40 26356 060000 C HLDH: K RUTHPH /60000 26357 000140 C HLDD: K RUTDLH /140 26360 177740 C CHANMR: K 0 0 177777"X"RUTDLC 26361 160377 C CHANML: K 0 0 177777"X"RUTHPC 26362 160340 C CHANMB: K 0 0 177777"X"RUTDLC"X"RUTHPC 26363 017437 C CHANM: K 0 0 RUTDLC"X"RUTHPC 26364 104676 C RSTCK2: -CHK LEV VAR 26365 V LINEX: BSS 1 /INPUT LINE= (0 TO CH-1) 26366 V DELOUR: BSS 1 /OUR LOCAL DELAY OUT OF THIS LINE 26367 V CHANR: BSS 1 /THIS LINE # +1, IN RIGHT HALF 26370 V CHANL: BSS 1 / LEFT 26371 V CHANB: BSS 1 / BOTH HALVES 26372 V RST.I: BSS 1 /RST POINTER TO INPUT MESSAGE 26373 V HOPIN: BSS 1 /RCVD HOP COUNT TO THIS IMP 26374 V HOPINS: BSS 1 /HOPIN WITH HALVES SWAPPED 26375 V DELIN: BSS 1 /RCVD DELAY TO THIS IMP PLUS LOCAL 26376 V CHANS: BSS 1 /TEMP = XOR(INPUT LINE, RUT ENTRY) 26377 V RSTINC: BSS 1 /COUNTER OF CALLS OF RSTIN FOR AL1 26400 V RUTW: BSS NIMP 26500 V CED: BSS CH /COMPUTED EFFECTIVE DELAY 26505 V RSTSNI: BSS CH /SERIAL # OF LAST RM INPUT *** THIS DOCUMENT MAY CONTAIN BBN PROPRIETARY INFORMATION. *** *** FURNISHED FOR U. S. GOVERNMENT END USE ONLY. *** PAGE 230 IMP,3050,IMP 7:20 PM 9/16/1973 CHK=0 LEV T.O 26512 000000 5 RUTOUT: 0 26513 073627 5 RUTCK1: K LDX RUTCKX /(RUTCK1-0-RUTCK2-1) 26514 140040 5 K CRA 26515 055642 5 K ADD RUTCK2+1 X 26516 024000 5 K IRS 0 /CHECKSUM THIS CODE 26517 003515 5 K JMP .-2 26520 100040 5 K SZE /DIFFERENT? RELOAD [RUTOUT CODE BROKEN] 26521 120061 5 K JST SWDTIL I /YES, RELOAD 26522 073630 5 K LDX CRSTC /(-NIMP-HEAD2-ACKH) 26523 033642 5 K STX RSTC /INIT CKSUM=-# OF WORDS 26524 110660 5 K STA RST.O I /INIT ACK HEADER AT ZERO 26525 024000 5 K IRS 0 26526 015642 5 K ADD RSTC /ADD INTO MSG CKSUM 26527 011642 5 K STA RSTC 26530 004106 5 K LDA MINE /THIS IMP # 26531 141340 5 K ICA 26532 141206 5 K AOA 0"A"LINETS /PUT IN ROUTING MSG BIT 26533 110660 5 K STA RST.O I /INIT HEADER 26534 024000 5 K IRS 0 26535 015642 5 K ADD RSTC /ADD INTO MSG CKSUM 26536 011642 5 K STA RSTC 26537 005644 5 K LDA RSTSN 26540 015631 5 K ADD CRMSN1 /INCREMENT SER # 26541 011644 5 K STA RSTSN 26542 110660 5 K STA RST.O I 26543 024000 5 K IRS 0 26544 015642 5 K ADD RSTC /ADD INTO MSG CKSUM 26545 011642 5 K STA RSTC *** THIS DOCUMENT MAY CONTAIN BBN PROPRIETARY INFORMATION. *** *** FURNISHED FOR U. S. GOVERNMENT END USE ONLY. *** PAGE 231 IMP,3050,IMP 7:20 PM 9/16/1973 26546 044265 5 COMPL: K LDA RUT+NIMP X 26547 100400 5 K SPL 0"A"RUTDED /THIS IMP DEAD? 26550 003602 5 K JMP RTDEAD /YES 26551 104662 5 K LDA RST.N I 26552 007347 5 K ANA HOPM /GET HOP COUNT 26553 141340 5 K ICA 26554 023633 5 K CAS CMAXH /COMPARE W/ MAX VALUE 26555 003614 5 K JMP RTDIED /TOO BIG, THIS IMP HAS DIED 26556 003614 5 K JMP RTDIED /DITTO 26557 044265 5 K LDA RUT+NIMP X 26560 007636 5 K ANA NOGODN /THIS IMP UP, CLEAR GOING DOWN 26561 050265 5 K STA RUT+NIMP X 26562 033643 5 K STX THDTMP /THIS IMP UP, SAVE AS HIGHEST # SO T 26563 104662 5 NWRST1: K LDA RST.N I 26564 110660 5 NEWRST: K STA RST.O I /SAVE IN RST 26565 015642 5 K ADD RSTC /ADD IN ROUTING MSG CKSUM 26566 011642 5 K STA RSTC /AND PUT IT BACK 26567 024000 5 K IRS 0 /LOOP OVER ALL IMPS 26570 003546 5 K JMP COMPL 26571 140407 5 K TCA /PICK UP FINAL CKSUM ANDCOMPLEMENT 26572 110660 5 K STA RST.O I /STORE AS LAST WRD OF MSG 26573 073643 5 K LDX THDTMP /PICK UP HIGHEST # IMP 26574 044265 5 K LDA RUT+NIMP X 26575 007632 5 K ANA HOPCHM /EXTRACT OUR MIN HOP PATH TO IT 26576 141340 5 K ICA 26577 016114 5 K SUB ONE 26600 010420 5 K STA THD /SAVE IN THD, FOR SYNC ACQUISITIO: 26601 103512 5 K JMP RUTOUT I /AND RETURN *** THIS DOCUMENT MAY CONTAIN BBN PROPRIETARY INFORMATION. *** *** FURNISHED FOR U. S. GOVERNMENT END USE ONLY. *** PAGE 232 IMP,3050,IMP 7:20 PM 9/16/1973 26602 104662 5 RTDEAD: K LDA RST.N I /THIS IMP WAS DEAD 26603 007347 5 K ANA HOPM /EXTRACT BEST HOPS THIS TIME 26604 141340 5 K ICA 26605 023633 5 K CAS CMAXH /COMPARE WITH MAX 26606 003624 5 K JMP RTDOWN /STILL TOO MANY. DEAD 26607 003624 5 K JMP RTDOWN /DITTO 26610 044265 5 RTNOTD: K LDA RUT+NIMP X /GET BEST LINES 26611 007363 5 K ANA CHANM 0"A"RUTDED /TURN OFF RUTDED BIT 26612 013634 5 K ERA COMUPM /PUT IN INITIAL COME-UP DELAY 26613 003622 5 K JMP NWRST2 /PUT IN RUT, THEN SET UF RST 26614 044265 5 RTDIED: K LDA RUT+NIMP X 26615 007635 5 K ANA GODWNM /IMP WAS UP 26616 100040 5 K SZE /IS IT MARKED AS GOING DOWN? 26617 003563 5 K JMP NWRST1 /YES 26620 005635 5 K LDA GODWNM /NO, MARK IT NOW 26621 052265 5 K ERA RUT+NIMP X 26622 050265 5 NWRST2: K STA RUT+NIMP X 26623 003563 5 K JMP NWRST1 26624 005640 5 RTDOWN: K LDA CMAXHD /REPORT AS DOWN TO NEIGHBORS 26625 110662 5 K STA RST.N I /AND KEEP MAX VAL FOR US 26626 003564 5 K JMP NEWRST /...BY SETTING RST TO MAX VALUE LEV CON 26627 177651 C RUTCKX: K RUTCK1-0-RUTCK2-1 26630 177675 C CRSTC: K -NIMP-HEAD2+ACKH 26631 000400 C CRMSN1: K RMSN1 /400 26632 017400 C HOPCHM: K RUTHPC /17400 26633 000260 C CMAXH: K 0 0 MAXH"T"8. /260 26634 000340 C COMUPM: K RUTCMU /340 26635 060000 C GODWNM: K RUTGOD /60000 26636 117777 C NOGODN: K 0 0 177777"X"RUTGOD /117777 26637 100000 C CDEAD: K RUTDED /100000 26640 177777 C CMAXHD: K 0 0 HOPS"X"DELS /177777 26641 125362 C RUTCK2: -CHK LEV VAR 26642 V RSTC: BSS 1 /ROUTING MESSAGE CHECKSUM 26643 V THDTMP: BSS 1 /TEMP FOR THD 26644 V RSTSN: BSS 1 /SERIAL # OF LAST RM COMPUTATION *** THIS DOCUMENT MAY CONTAIN BBN PROPRIETARY INFORMATION. *** *** FURNISHED FOR U. S. GOVERNMENT END USE ONLY. *** PAGE 233 IMP,3050,IMP 7:20 PM 9/16/1973 26645 073106 C LEV CON CONSTANTS 26646 073212 C 26647 073316 C 26650 073216 C 02435 175666 C PAGEND 26,UNCON,15 *** THIS DOCUMENT MAY CONTAIN BBN PROPRIETARY INFORMATION. *** *** FURNISHED FOR U. S. GOVERNMENT END USE ONLY. *** PAGE 234 IMP,3050,IMP 7:20 PM 9/16/1973 LEV T.O CHK=0 27112 000000 5 RUTCLK: 0 27113 073261 5 RTCLK1: K LDX RTCLKX 27114 140040 5 K CRA 27115 055263 5 K ADD RTCLK2+1 X 27116 024000 5 K IRS 0 27117 003115 5 K JMP .-2 27120 100040 5 K SZE RELOAD [RUTCLK CODE BROKEN] 27121 120061 5 K JST SWDTIL I 27122 073230 5 K LDX NIMPMI /LOOP OVER ALL IMPS FOR HOLD-DOWN 27123 105241 5 HLDC1: K LDA RUT.W I 27124 007243 5 K ANA HOLDH 27125 101040 5 K SNZ /ARE WE HOLDING DOWN MIN HOP PATH? 27126 003132 5 K JMP HLDC2 /NO 27127 105241 5 K LDA RUT.W I 27130 017251 5 K SUB HOLDH1 /DECREMENT TIMER 27131 111241 5 K STA RUT.W I 27132 105241 5 HLDC2: K LDA RUT.W I /NO 27133 007244 5 K ANA HOLDD 27134 101040 5 K SNZ /HOLDING DOWN MIN DELAY PATH? 27135 003141 5 K JMP HLDC3 /NC 27136 105241 5 K LDA RUT.W I 27137 017252 5 K SUB HOLDD1 /DECREMENT TIMER 27140 111241 5 K STA RUT.W I 27141 024000 5 HLDC3: K IRS 0 27142 003123 5 K JMP HLDC1 /NEXT 27143 025263 5 K IRS GODWNC /IS IT TIME TO DO GOING DOWN DELA' 27144 003170 5 K JMP CMUC0 /NO 27145 005237 5 K LDA GODWNK /YES, EVERY 4TH TICK 27146 011263 5 K STA GODWNC 27147 073230 5 K LDX NIMPMI /LOOP OVER ALL IMPS FOR GOING DOWNS 27150 044265 5 GODC1: K LDA RUT+NIMP X 27151 007245 5 K ANA MGODWN 27152 101040 5 K SNZ /THIS IMP GOING DOWN? 27153 003166 5 K JMP GODC2 /NO 27154 044265 5 K LDA RUT+NIMP X /YES 27155 017246 5 K SUB MGODW1 /DECREMENT TIMER 27156 050265 5 K STA RUT+NIMP X 27157 007245 5 K ANA MGODWN 27160 100040 5 K SZE /IS IT COMPLETELY DOWN? 27161 003166 5 K JMP GODC2 /NO 27162 005235 5 K LDA MAXRST /YES. HE IS REALLY DEAD 27163 111242 5 K STA RST.N2 I /SET UP RSTN 27164 005236 5 K LDA MAXRUT 27165 050265 5 K STA RUT+NIMP X /AND RUT 27166 024000 5 GODC2: K IRS 0 27167 003150 5 K JMP GODC1 *** THIS DOCUMENT MAY CONTAIN BBN PROPRIETARY INFORMATION. *** *** FURNISHED FOR U. S. GOVERNMENT END USE ONLY. *** PAGE 235 IMP,3050,IMP 7:20 PM 9/16/1973 27170 025264 5 CMUC0: K IRS COMUPC /IS IT TIME TO DO COMING-UP DELAYS 27171 003206 5 K JMP RMVFRQ /NO, DO VBL FRQ CMPTNS 27172 005240 5 K LDA COMUPK /YES, EVERY TENTH TICK 27173 011264 5 K STA COMUPC 27174 073230 5 K LDX NIMPMI /LOOP OVER ALL IMPS FOR COMING UP 27175 044265 5 CMUC1: K LDA RUT+NIMP X 27176 007247 5 K ANA MCOMUP 27177 101040 5 K SNZ /IS THIS IMP COMING UP? 27200 003204 5 K JMP CMUC2 /NO 27201 044265 5 K LDA RUT+NIMP X /YES 27202 017250 5 K SUB MCOMU1 /DECREMENT TIMER 27203 050265 5 K STA RUT+NIMP X /SAVE IN RUT(IF HE CAME [ 27204 024000 5 CMUC2: K IRS 0 27205 003175 5 K JMP CMUC1 27206 073231 5 RMVFRQ: K LDX RMMICH /-CH 27207 140040 5 RMVFRC: K CRA 27210 011266 5 K STA RMVT 27211 127232 5 K IMA CTIMK I /CLEAR CUMTIM AND COMPUTE EXTRAS 27212 017234 5 RMVFRA: K SUB MS132K 27213 100400 5 K SPL 27214 003217 5 K JMP RMVFRB 27215 025266 5 K IRS RMVT 27216 003212 5 K JMP RMVFRA 27217 005233 5 RMVFRB: K LDA RMFOUR 27220 017266 5 K SUB RMVT 27221 100400 5 K SPL 27222 140040 5 K CRA 27223 015260 5 K ADD CRMVTB 27224 051274 5 K STA RUTFRQ+CH X 27225 024000 5 K IRS 0 27226 003207 5 K JMP RMVFRC /LOOP OVER ALL LINES 27227 103112 5 K JMP RUTCLK I *** THIS DOCUMENT MAY CONTAIN BBN PROPRIETARY INFORMATION. *** *** FURNISHED FOR U. S. GOVERNMENT END USE ONLY. *** PAGE 236 IMP,3050,IMP 7:20 PM 9/16/1973 LEV CON 27230 177700 C NIMPMI: K -NIMP 27231 177773 C RMMICH: K -CH 27232 052632 C CTIMK: K CUMTIM CH X 27233 000004 C RMFOUR: K 4 27234 002450 C MS132K: K 2450 27235 177777 C MAXRST: K HOPS+0+DELS 27236 100000 C MAXRUT: K RUTDED 27237 177772 C GODWNK: K -6 27240 177767 C COMUPK: K -9. 27241 066500 C RUT.W: K RUTW+NIMP X 27242 073316 C RST.N2: K RST2+NIMP X 27243 060000 C HOLDH: K RUTHPH 27244 000140 C HOLDD: K RUTDLH 27245 060000 C MGODWN: K RUTGOD 27246 020000 C MGODW1: K RUTGD1 27247 000340 C MCOMUP: K RUTCMU 27250 000040 C MCOMU1: K RUTCM1 27251 020000 C HOLDH1: K RTHPH1 27252 000040 C HOLDD1: K RTDLH1 /RMVTAB USED BY RSTOUT 27253 000001 C RMVTAB: K 1 /1BIT IN 5 (# OF EXTRA +1 RM'S TO S1 27254 000005 C K 5 /2 IN 5 (I.E. 1 EXTRA) 27255 000015 C K 15 27256 000033 C K 33 27257 000037 C K 37 27260 027253 C CRMVTB: K RMVTAB 27261 177630 C RTCLKX: K RTCLK1-0-RTCLK2-1 27262 147750 C RTCLK2: -CHK LEV VAR 27263 V GODWNC: BSS 1 /COUNTER - EVERY 4TH TICK 27264 V COMUPC: BSS 1 /COUNTER - EVERY 10TH TICK 27265 V HOLDT: BSS 1 /TEMP 27266 V RMVT: BSS 1 /TEMP 27267 V RUTFRQ: BSS CH /# OF EXTRA RM'S PERMITTED AS PER LEV CON CONSTANTS 02436 172274 C PAGEND 27,UNCON *** THIS DOCUMENT MAY CONTAIN BBN PROPRIETARY INFORMATION. *** *** FURNISHED FOR U. S. GOVERNMENT END USE ONLY. *** PAGE 237 IMP,3050,IMP 7:20 PM 9/16/1973 LEV BCK /STATISTICS PROGRAMS /ALL CALLS TO DEFSTAT MUST PRECEDE THIS PAGE 30056 004114 7 STTI: LDA ONE 30057 011213 7 STA SOFO /BEGIN BY SAVING COPY OF SON 30060 005436 7 BKST: LDA SON /PICK UP 10-SEC STAT ON-OFF FLAG 30061 027213 7 IMA SOFO /KEEP A COPY 30062 023436 7 CAS SON /ANY CHANGE IN STATUS? 30063 100000 7 SKP /YES, MUST CHANGE STATISTICS LOCATI1 30064 003104 7 JMP SP2 /NO 30065 101040 7 SNZ /WAS 10-SEC STAT JUST TURNED ON? 30066 003075 7 JMP SP1 /YES 30067 073575 7 LDX (-NSTATS) /NO, JUST TURNED OFF 30070 105576 7 LDA (SC1+NSTATS 0 X) I /PICK UP STANDARD CONTE:'1 30071 111577 7 STA (SB1+NSTATS 0 XI) I /AND PLANT IN DESIGNATED ] 30072 024000 7 IRS 0 /THIS RESTORES PROGRAM TO ITS DEFAUT 30073 003070 7 JMP .-3 30074 003104 7 JMP SP2 30075 021256 7 SP1: JST CLST /CLEAR OUT 10-SEC STAT TABLES 30076 073575 7 LDX (-NSTATS) 30077 005600 7 LDA (JST SW1 I) /PLANT JST'S TO STATISTIC 30100 111577 7 STA (SB1+NSTATS 0 XI) I 30101 141206 7 AOA /THIS PUTS BREAKPOINT-LIKE CODE 30102 024000 7 IRS 0 /IN KEY PLACES THROUGHOUT THE PROGR 30103 003100 7 JMP .-3 30104 005601 7 SP2: LDA (50000+0+DIAGTT) 30105 011455 7 STA DIAGD 30106 005602 7 LDA (DIAGQ 0 I) 30107 011440 7 STA DIAGON /DIAG IS ALWAYS ON 30110 005603 7 LDA (TRON 0 I) 30111 011212 7 STA SP81 /INDIRECT POINTER FOR ON FLAGS 30112 072125 7 LDX MINUS5 /SO THAT NCC TRBL REPTS ALWAYS GO[ 30113 033441 7 STX TPON /TURN ON NCC TRBL REPTS 30114 033211 7 SP3: STX SP8 /LOOP HERE FOR EACH STAT PROGRAM 30115 105212 7 LDA SP81 I 30116 101040 7 SNZ /IS THIS STAT PROGRAM TURNED ON? 30117 003170 7 JMP SP91 /NO 30120 004417 7 LDA SYNC /PICK UP CURRENT TIME 30121 057211 7 SUB OLDS+5 X /COMPARE WITH THE LAST TIME THIS PR 30122 100400 7 SPL /CORRECT FOR TIMER OVERFLOW 30123 140407 7 TCA /EVERY 30 MINUTES 30124 057465 7 SUB STATF+5 X /LOOK AT INTERVAL BETWEEN PROGRAM R 30125 100400 7 SPL /IS IT TIME TO ACTIVATE THIS PROG? 30126 003170 7 JMP SP91 /NO 30127 140040 7 CRA /YES 30130 011214 7 STA SKEWT /INIT A TIME-SKEWING TEMP 30131 004000 7 LDA 0 30132 012124 7 ERA MINUS4 30133 100040 7 SZE /ARE WE DOING 10-SEC STAT? 30134 003153 7 JMP STAT6 /NO *** THIS DOCUMENT MAY CONTAIN BBN PROPRIETARY INFORMATION. *** *** FURNISHED FOR U. S. GOVERNMENT END USE ONLY. *** PAGE 238 IMP,3050,IMP 7:20 PM 9/16/1973 30135 045465 7 LDA STATF+5 X /YES, SKEW REPORTS BY IMP NUMBER 30136 040572 7 ARS 6 0"A"NIMP /DIV BY 100 = IMPNO 30137 101040 7 SNZ 30140 003153 7 JMP STAT6 /TOO SMALL AN INTERVAL TO SKEW 30141 140407 7 TCA 30142 011215 7 STA COUNT1 /BUILD MULTIPLY LOOP 30143 004106 7 STAT4: LDA MINE 30144 140407 7 TCA 30145 011216 7 STA COUNT2 30146 025214 7 STAT5: IRS SKEWT /COMPUTE SKEWT=(MINE/100)*STATF 30147 025216 7 IRS COUNT2 30150 003146 7 JMP STAT5 30151 025215 7 IRS COUNT1 30152 003143 7 JMP STAT4 30153 045465 7 STAT6: LDA STATF+5 X 30154 140407 7 TCA 30155 006417 7 ANA SYNC 30156 015214 7 ADD SKEWT 30157 051211 7 STA OLDS+5 X 30160 045457 7 LDA STATD+5 X /*SEND STAT DEST 30161 021403 7 JST GIVE 30162 045451 7 LDA STATL+5 X /*SEND STAT LINK 30163 021403 7 JST GIVE 30164 143204 7 JMP CAWL+5 XI /CALL STAT PROGRAM 30165 073604 7 GIVLST: LDX (100003) /TERMINATE STAT MESSAGE 30166 004112 7 LDA SIGN /*SEND PADDING 30167 120664 7 JST JAM I 30170 073211 7 SP91: LDX SP8 /LOOP BACK OVER EACH STAT PROG 30171 025212 7 IRS SP81 30172 024000 7 IRS 0 30173 003114 7 JMP SP3 30174 072116 7 LDX THREE 30175 120665 7 JST DOZE I 30176 003060 7 JMP BKST LEV CON 30177 030217 C CAWL: SNAP /SNAPSHOT STATISTICS PROGRAM 30200 030243 C SEST /CUMULATIVE STATISTICS PROGRAM 30201 030267 C GENM /MESSAGE GENERATOR 30202 030347 C DIAG /DIAGNOSTIC SENDER 30203 022057 C TRBL /NCC TROUBLE REPORT PROGRAM LEV VAR 30204 000000 V OLDS: 0 30205 000000 V 0 30206 000000 V 0 30207 000000 V 0 30210 000000 V TRBOLD: 0 30211 V SP8: BSS 1 /COUNTER FOR WHICH STAT PROG TO RUN 30212 V SP81: BSS 1 /STAT FLAGS INDIRECT PTR 30213 V SOFO: BSS 1 /SAVED COPY OF SON 30214 V SKEWT: BSS 1 /AMOUNT OF TIME TO SKEW STAT REPTS 30215 V COUNT1: BSS 1 30216 V COUNT2: BSS 1 *** THIS DOCUMENT MAY CONTAIN BBN PROPRIETARY INFORMATION. *** *** FURNISHED FOR U. S. GOVERNMENT END USE ONLY. *** PAGE 239 IMP,3050,IMP 7:20 PM 9/16/1973 /SEND SNAPSHOT STATISTICS LEV BCK 30217 005605 7 SNAP: LDA (5) /*SEND SNAPSHOT CODE 30220 021403 7 JST GIVE 30221 004415 7 LDA TIME /*SEND LOCAL TIME 30222 021403 7 JST GIVE 30223 073606 7 LDX (-COUNTL) 30224 001001 7 SNP2: INH ALL 30225 044543 7 0 LDA COUNTA+COUNTL X /*SEND QUEUE LENGTHS 30226 056567 7 0 SUB COUNTS+COUNTL X 30227 000401 7 0 ENB BCK 30230 021403 7 JST GIVE 30231 024000 7 IRS 0 30232 003224 7 JMP SNP2 30233 072132 7 LDX MINIMP 30234 044265 7 SNP3: LDA RUT+NIMP X /*SEND ROUTE USE TABLE 30235 021403 7 JST GIVE 30236 105607 7 LDA (RST+NIMP 0 X) I /*SEND ROUTE SEND TABLE 30237 021403 7 JST GIVE 30240 024000 7 IRS 0 30241 003234 7 JMP SNP3 30242 003165 7 JMP GIVLST /*SEND PADDING AND END MESSAGE /SEND 10 SECOND (CUMULATIVE) STATISTICS 30243 004115 7 SEST: LDA TWO /*SEND 10-SEC STAT CODE 30244 021403 7 JST GIVE 30245 004417 7 LDA SYNC /*SEND NETWORK-WIDE TIME 30246 021403 7 JST GIVE 30247 073610 7 LDX (-NST) 30250 105611 7 LDA (STTB+NST X) I /*SEND 10-SEC STAT TABLE 30251 021403 7 JST GIVE 30252 024000 7 IRS 0 30253 003250 7 JMP .-3 30254 021256 7 JST CLST /CLEAR THE 10-SEC STAT TABLES 30255 003165 7 JMP GIVLST /*SEND PADDING AND END MESSAGE LEV BCK /CLEAR ALL ENTRIES IN 10-SEC STAT TABLES 30256 000000 7 CLST: 0 30257 073610 7 LDX (-NST) 30260 140040 7 CRA 30261 001001 7 INH ALL 30262 111611 7 0 STA (STTB+NST X) I 30263 024000 7 0 IRS 0 30264 003262 7 0 JMP .-2 30265 000401 7 0 ENB BCK 30266 103256 7 JMP CLST I *** THIS DOCUMENT MAY CONTAIN BBN PROPRIETARY INFORMATION. *** *** FURNISHED FOR U. S. GOVERNMENT END USE ONLY. *** PAGE 240 IMP,3050,IMP 7:20 PM 9/16/1973 /MESSAGE GENERATOR 30267 072116 7 GENM: LDX THREE /FAKE HOST 3 - STATISTICS 30270 005465 7 LDA MGNL /PICK UP LENGTH OF MESSAGE 30271 007612 7 ANA (777) 30272 101040 7 SNZ 30273 003301 7 JMP GENM1 30274 140407 7 TCA /GIVES RIGHT NUMBER, EXCLUDING PADD 30275 011346 7 STA MGCNT 30276 120664 7 JST JAM I /*SEND MGNL WORDS 30277 025346 7 IRS MGCNT 30300 003276 7 JMP .-2 30301 131040 7 GENM1: RDCLOK 30302 003301 7 JMP .-1 /CRA FOR ALL REG, LDA ONE FOR ALL PRI, ANA ONE FOR RANDOM MI 30303 140040 7 CRA 30304 100040 7 SZE 30305 004112 7 LDA SIGN 30306 013454 7 ERA MGD 30307 011454 7 STA MGD 30310 005446 7 LDA MGLK 30311 101000 7 NOP /"SKP" TO RUN LINK CYCLER 30312 003165 7 JMP GIVLST /*SEND PADDING AND END MESSAGE 30313 101040 7 SNZ 30314 003333 7 JMP LC1 30315 015613 7 LC3: ADD (400) 30316 011446 7 STA MGLK 30317 100040 7 SZE 30320 003165 7 JMP GIVLST /*SEND PADDING AND END MESSAGE 30321 004415 7 LDA TIME 30322 017345 7 SUB OTIM 30323 111343 7 STA PLAC I 30324 025343 7 IRS PLAC 30325 005465 7 LDA MGNL 30326 015342 7 ADD IGTH 30327 011465 7 STA MGNL 30330 017344 7 SUB LIMT 30331 101400 7 SMI 30332 003337 7 JMP LC44 30333 004415 7 LC1: LDA TIME 30334 011345 7 STA OTIM 30335 005446 7 LDA MGLK 30336 003315 7 JMP LC3 30337 140040 7 LC44: CRA /WHEN DONE, SHUT MGEN OFF 30340 011437 7 STA MGON 30341 003165 7 JMP GIVLST /*SEND PADDING AND END MESSAGE LEV VAR 30342 000010 V IGTH: 10 /LENGTH INCREMENT 30343 030000 V PLAC: 30000 /CORE POINTER FOR TABLE BUILDING 30344 000760 V LIMT: 760 /LONGEST MESSAGE TO SEND 30345 V OTIM: BSS 1 /TEMP TO SAVE STARTING TIME OF BLOC 30346 V MGCNT: BSS 1 /TEMP COUNTER FOR MESS LENGTH *** THIS DOCUMENT MAY CONTAIN BBN PROPRIETARY INFORMATION. *** *** FURNISHED FOR U. S. GOVERNMENT END USE ONLY. *** PAGE 241 IMP,3050,IMP 7:20 PM 9/16/1973 LEV BCK 30347 001001 7 DIAG: INH ALL /SEND BROKEN PACKETS TO NCC FOR DIAT 30350 104342 7 0 LDA DIAGQ I 30351 026342 7 0 IMA DIAGQ /GET PKT OFF DIAG QUEUE 30352 000401 7 0 ENB BCK 30353 011401 7 STA DIAGP /SAVE PNTR 30354 004746 7 LDA HLTLOC /*SEND HLT PC 30355 021403 7 JST GIVE 30356 004747 7 LDA HLTA /*SEND HLT A REG 30357 021403 7 JST GIVE 30360 004750 7 LDA HLTX /*SEND HLT X REG 30361 021403 7 JST GIVE 30362 005401 7 LDA DIAGP /*SEND PKT PNTR 30363 010000 7 STA 0 30364 021403 7 JST GIVE 30365 005614 7 LDA (-BUFL) 30366 011402 7 STA DIAGC /SET UP SEND COUNTER 30367 044000 7 DIAG1: LDA 0 X /*SEND CONTENTS OF BAD PACKET 30370 021403 7 JST GIVE 30371 024000 7 IRS 0 30372 025402 7 IRS DIAGC 30373 003367 7 JMP DIAG1 30374 001001 7 INH ALL 30375 073401 7 0 LDX DIAGP 30376 120671 7 0 JST FLUSHI I 30377 000401 7 0 ENB BCK 30400 003165 7 JMP GIVLST LEV VAR 30401 V DIAGP: BSS 1 /PKT PNTR 30402 V DIAGC: BSS 1 /LOOP COUNTER LEV BCK 30403 000000 7 GIVE: 0 /STAT CALLS TO JAM 30404 033411 7 STX STT8 /SAVE X-REG 30405 072116 7 LDX THREE 30406 120664 7 JST JAM I 30407 073411 7 LDX STT8 30410 103403 7 JMP GIVE I LEV VAR 30411 V STT8: BSS 1 *** THIS DOCUMENT MAY CONTAIN BBN PROPRIETARY INFORMATION. *** *** FURNISHED FOR U. S. GOVERNMENT END USE ONLY. *** PAGE 242 IMP,3050,IMP 7:20 PM 9/16/1973 LEV BCK /FAKE IMP-TO-HOST 2 - PARAMETER CHANGE 30412 120666 7 BTR1: JST SUCK I /SKIP OVER REST OF MESSAGE 30413 003412 7 JMP BTR1 30414 120666 7 BEST: JST SUCK I /BEGIN TO ACCEPT MESSAGE HERE 30415 120666 7 JST SUCK I /IGNORE LEADER 30416 120666 7 BTR4: JST SUCK I /GET NUMBER OF PARAM TO CHANGE 30417 100000 7 SKP /END OF MESSAGE? 30420 003414 7 JMP BEST /YES, GO BACK 30421 100400 7 SPL /IS NO OF PARAM ROSTIVE? 30422 003412 7 JMP BTR1 /NO, IGNORE REST OF MESSAGE 30423 007615 7 ANA (37) /YES, MASK DOWN TO 5 BITS 30424 015616 7 ADD (PARAMT) /BUILD PNTR TO PARAM TABLE 30425 011433 7 STA BTR2 30426 120666 7 JST SUCK I /GET NEW VALUE FOR PARAMETER 30427 100000 7 SKP /END OF MESSAGE? 30430 003414 7 JMP BEST /YES, NO CHANGE TO THIS PARAM 30431 111433 7 STA BTR2 I /NO, PUT NEW VALUE IN PARAM 30432 003416 7 JMP BTR4 /AND GO BACK FOR MORE LEV VAR 30433 000000 V BTR2: 0 DEFPLC [PARAMETERS TABLE] PARAMT: PARAML=32. 30434 V TRON: BSS 1 /0-TRACE ON 30435 V SNON: BSS 1 /1-SNAP ON 30436 V SON: BSS 1 /2-10-SEC STAT ON 30437 V MGON: BSS 1 /3-MESS GEN ON 30440 V DIAGON: BSS 1 /4-DIAG ON 30441 V TPON: BSS 1 /5-TRBL REPT ON 30442 V BSS 1 /6 30443 V TLNK: BSS 1 /7-TRACE LINK 30444 V STATL: BSS 1 /10-SNAP LINK 30445 V BSS 1 /11-10-SEC LINK 30446 V MGLK: BSS 1 /12-MESS GEN LINK 30447 V BSS 1 /13-DIAG LINK 30450 V BSS 1 /14-TRBL REPT LINK 30451 V TDST: BSS 1 /15-TRACE DEST 30452 V STATD: BSS 1 /16-SNAP DEST 30453 V BSS 1 /17-10-SEC DEST 30454 V MGD: BSS 1 /20-MESS GEN DEST 30455 V DIAGD: BSS 1 /21-DIAG DEST 30456 V TRBD: BSS 1 /22-TRBL REPT DEST 30457 V TF: BSS 1 /23-AUTO TRACE FREQ 30460 V STATF: BSS 1 /24-SNAP FREQ 30461 V BSS 1 /25-10-SEC FREQ 30462 V BSS 1 /26-MESS GEN FREQ 30463 V BSS 1 /27-DIAG FREQ 30464 V TRBF: BSS 1 /30-TRBL REPT FREQ 30465 V MGNL: BSS 1 /31-MESS GEN LENGTH 30466 V BSS PARAMT+1+PARAML-. *** THIS DOCUMENT MAY CONTAIN BBN PROPRIETARY INFORMATION. *** *** FURNISHED FOR U. S. GOVERNMENT END USE ONLY. *** PAGE 243 IMP,3050,IMP 7:20 PM 9/16/1973 LEV BCK /FAKE IMP-TO-HOST 3 - DISCARD 30474 120666 7 STXY: JST SUCK I /GET EACH WORD AS IT IS READY 30475 003474 7 JMP .-1 /AND RETURN IMMEDIATELY FOR MORE 30476 003474 7 JMP .-2 /EVEN ON END OF MESSAGE /FAKE HOST-TO-IMP 2 - TRACE 30477 140500 7 BTRE: SSM /START HERE 30500 003515 7 JMP BTRF LCK TSK 30501 000401 7 6 BTD: ENB BCK 30502 005572 7 LDA T3BX 30503 101040 7 SNZ 30504 003527 7 JMP BTRD 30505 004112 7 LDA SIGN 30506 073617 7 LDX (100002) 30507 120664 7 JST JAM I 30510 120665 7 BTRC: JST DOZE I /WAIT ONE BACKGROUND LOOP 30511 004341 7 LDA STRQ /START HERE 30512 101040 7 SNZ /ANYTHING TO SEND? 30513 003510 7 JMP BTRC /QUIT IF TRACE QUEUE EMPTY 30514 140040 7 CRA 30515 011572 7 BTRF: STA T3BX 30516 005451 7 LDA TDST /*SEND TRACE DEST 30517 120664 7 JST JAM I 30520 005443 7 LDA TLNK /*SEND TRACE LINK 30521 120664 7 JST JAM I 30522 004114 7 LDA ONE /*SEND TRACE CODE 30523 120664 7 JST JAM I 30524 140040 7 CRA /RESET OVERFLOW FLAG 30525 026414 7 IMA TTO /*SEND STATE OF OVERFLOW FLAG 30526 120664 7 JST JAM I 30527 072115 7 BTRD: LDX TWO 30530 120665 7 JST DOZE I 30531 005621 7 BRL2: LDA ((STRQ)) 30532 011573 7 STA OLD2 30533 001001 7 INH TSK *** THIS DOCUMENT MAY CONTAIN BBN PROPRIETARY INFORMATION. *** *** FURNISHED FOR U. S. GOVERNMENT END USE ONLY. *** PAGE 244 IMP,3050,IMP 7:20 PM 9/16/1973 30534 105573 7 6 BTRL: LDA OLD2 I /SEARCH TRACE QUEUE 30535 011573 7 6 STA OLD2 30536 105573 7 6 LDA OLD2 I 30537 011574 7 6 STA OLD1 30540 101040 7 6 SNZ 30541 003501 7 6 JMP BTD /JUMP IF DONE WITH TRACE QUEUE 30542 010000 7 6 STA 0 30543 044012 7 6 LDA TDONE X 30544 101400 7 6 SMI /IS THIS TRACE BLOCK COMPLETE? 30545 003534 7 6 JMP BTRL /NO 30546 044000 7 6 LDA 0 X /YES, PICK UP ITS CHAIN PNTR 30547 111573 7 6 STA OLD2 I /REMOVE FROM TRACE QUEUE 30550 000401 7 6 ENB BCK 30551 025572 7 IRS T3BX 30552 005622 7 LDA (-TDONE) 30553 011571 7 STA T2BX 30554 072115 7 LDX TWO 30555 025574 7 IRS OLD1 30556 105574 7 LDA OLD1 I 30557 120664 7 JST JAM I /*SEND TRACE BLOCK 30560 025571 7 IRS T2BX 30561 003555 7 JMP .-4 30562 005574 7 LDA OLD1 30563 015622 7 ADD (-TDONE) 30564 001001 7 INH TSK 30565 026325 7 6 IMA TTF /PUT DN FREE TRACE QUEUE 30566 110325 7 6 STA TTF I 30567 000401 7 6 ENB BCK 30570 003531 7 JMP BRL2 /LOOP SEARCHING TRACE QUEUE LEV VAR 30571 V T2BX: BSS 1 /COPY LOOP COUNTER 30572 V T3BX: BSS 1 /COUNT OF NUMBER OF BLOCKS COPIED 30573 V OLD2: BSS 1 /QUEUE PNTR - USED IN SEARCH 30574 V OLD1: BSS 1 /PACKET PNTR - USED IN COPY *** THIS DOCUMENT MAY CONTAIN BBN PROPRIETARY INFORMATION. *** *** FURNISHED FOR U. S. GOVERNMENT END USE ONLY. *** PAGE 245 IMP,3050,IMP 7:20 PM 9/16/1973 30575 177760 C LEV CON CONSTANTS 30576 072030 C 30577 172010 C 30600 120574 C 30601 050057 C 30602 100342 C 30603 130434 C 30604 100003 C 30605 000005 C 30606 177754 C 30607 073106 C 30610 177423 C 30611 071716 C 30612 000777 C 30613 000400 C 30614 177666 C 30615 000037 C 30616 030434 C 30617 100002 C 30620 000341 C 30621 030620 C 30622 177766 C 02437 175631 C PAGEND 30,UNCON,3 *** THIS DOCUMENT MAY CONTAIN BBN PROPRIETARY INFORMATION. *** *** FURNISHED FOR U. S. GOVERNMENT END USE ONLY. *** PAGE 246 IMP,3050,IMP 7:20 PM 9/16/1973 LEV H2I /HOST TO IMP STATISTICS 31055 000000 4 HS0: 0 31056 005753 4 LDA (STTB) 31057 001001 4 INH [I2M,I2H] 31060 011121 4 2 STA WHER 31061 004675 4 2 LDA HIP 31062 021123 4 2 JST SUB1 31063 015356 4 2 ADD TOT1 31064 011356 4 2 STA TOT1 31065 000401 4 2 ENB H2I 31066 072675 4 LDX HIP 31067 172677 4 LDX HIXX I 31070 044007 4 LDA HEAD2 X 31071 103055 4 JMP HS0 I / HOST TO IMP ALL MESSAGES 31072 000000 4 HS2: 0 31073 065375 4 IRS CNT2 X 31074 101000 4 NOP 31075 103754 4 JMP (HIH0 0 XI) I LEV I2H / IMP TO HOST STATISTICS 31076 000000 3 HS1: 0 31077 005755 3 LDA (XGP) 31100 001001 3 INH I2M 31101 011121 3 2 STA WHER 31102 004676 3 2 LDA IHP 31103 172700 3 2 LDX IHXX I 31104 021123 3 2 JST SUB1 31105 015374 3 2 ADD TOT2 31106 011374 3 2 STA TOT2 31107 000401 3 2 ENB I2H 31110 072676 3 LDX IHP 31111 105756 3 LDA (IHED 0 X) I 31112 103076 3 JMP HS1 I / IMP TO HOST CONTROL MESSAGES 31113 000000 3 HS3: 0 31114 141206 3 AOA 31115 065405 3 IRS CNT3 X 31116 101000 3 NOP 31117 103113 3 JMP HS3 I *** THIS DOCUMENT MAY CONTAIN BBN PROPRIETARY INFORMATION. *** *** FURNISHED FOR U. S. GOVERNMENT END USE ONLY. *** PAGE 247 IMP,3050,IMP 7:20 PM 9/16/1973 LEV VAR 31120 V WHERL: BSS 1 31121 V WHER: BSS 1 31122 V SUBL: BSS 1 LEV I2M 31123 000000 2 SUB1: 0 31124 016130 2 SUB PLNH 31125 101400 2 SMI 31126 003156 2 JMP SP6 31127 044111 2 LDA BUFE X 31130 016000 2 SUB 0 31131 017757 2 SUB (DATA) 31132 140100 2 SSP 0"A"TWOQ 31133 011122 2 STA SUBL 31134 021717 2 JST LOG 31135 014120 2 ADD SEVEN /POINTS TO LAST-PACKET LENGTH COUNT] 31136 015121 2 ADD WHER /...IN CORRECT TABLE 31137 011120 2 STA WHERL 31140 125120 2 IRS WHERL I /AND GOOSE COUNTER 31141 101000 2 NOP 31142 044006 2 LDA HEAD1 X 31143 141340 2 ICA 0"A"PKTNO 31144 006120 2 ANA SEVEN 31145 101040 2 SNZ 31146 003154 2 JMP SP4 /NO SEPARATE COUNTER FOR 1PKT MSGS 31147 016114 2 SUB ONE /BACK OFF 1 31150 015121 2 ADD WHER 31151 011121 2 STA WHER 31152 125121 2 IRS WHER I 31153 101000 2 NOP 31154 005122 2 SP4: LDA SUBL 31155 103123 2 JMP SUB1 I 31156 073123 2 SP6: LDX SUB1 31157 042002 2 JMP 2 X *** THIS DOCUMENT MAY CONTAIN BBN PROPRIETARY INFORMATION. *** *** FURNISHED FOR U. S. GOVERNMENT END USE ONLY. *** PAGE 248 IMP,3050,IMP 7:20 PM 9/16/1973 / IMP TO MODEM MESSAGES 31160 000000 2 IM1: 0 31161 111760 2 STA (ACKWRD) I 31162 010000 2 STA 0 31163 044105 2 LDA BUFE-ACKH X 31164 016000 2 SUB 0 31165 016116 2 SUB THREE 0"A"[HEAD2-ACKH] 31166 140100 2 SSP 0"A"TWOQ 31167 011337 2 STA IMT1 31170 021717 2 JST LOG 31171 173761 2 LDX (OCHN) I 31172 055331 2 ADD TUB1 X 31173 011340 2 STA IMT2 31174 125340 2 IRS IMT2 I 31175 101000 2 NOP 31176 005337 2 LDA IMT1 31177 055622 2 ADD ANS4 X 31200 051622 2 STA ANS4 X 31201 103160 2 JMP IM1 I LEV M2I / MODEM TO INP DISCARD 31202 000000 0 MI1: 0 31203 025627 0 IRS MTOT 31204 070471 0 M1ERR 31205 103202 0 JMP MI1 I 31206 025634 0 IRS CKSM 31207 025202 0 IRS MI1 31210 101000 0 NOP 31211 103202 0 JMP MI1 I /TASK I HEARD YOU MESSAGES RECEIVED 31212 000000 0 TSKIH: 0 31213 064426 0 IRS LAC X 31214 065641 0 IRS TSKIHY X 31215 101000 0 NOP 31216 103212 0 JMP TSKIH I *** THIS DOCUMENT MAY CONTAIN BBN PROPRIETARY INFORMATION. *** *** FURNISHED FOR U. S. GOVERNMENT END USE ONLY. *** PAGE 249 IMP,3050,IMP 7:20 PM 9/16/1973 / MODEM TO IMP BUFFER TROUBLE 31217 000000 0 MI3: 0 31220 100040 0 SZE 31221 025217 0 IRS MI3 31222 101040 0 SNZ 31223 065646 0 IRS BUFT X 31224 101000 0 NOP 31225 103217 0 JMP MI3 I /MORE OF MODEM TO IMP DISCARD 31226 000000 0 MI1A: 0 31227 025630 0 IRS MTOT+1 31230 070472 0 M2ERR 31231 103226 0 JMP MI1A I 31232 025635 0 IRS CKSM+1 31233 025226 0 IRS MI1A 31234 101000 0 NOP 31235 103226 0 JMP MI1A I 31236 000000 0 MI1B: 0 31237 025631 0 IRS MTOT+2 31240 070473 0 M3ERR 31241 103236 0 JMP MI1B I 31242 025636 0 IRS CKSM+2 31243 025236 0 IRS MI1B 31244 101000 0 NOP 31245 103236 0 JMP MI1B I 31246 000000 0 MI1C: 0 31247 025632 0 IRS MTOT+3 31250 070474 0 M4ERR 31251 103246 0 JMP MI1C I 31252 025637 0 IRS CKSM+3 31253 025246 0 IRS MI1C 31254 101000 0 NOP 31255 103246 0 JMP MI1C I 31256 000000 0 MI1D: 0 31257 025633 0 IRS MTOT+4 31260 070475 0 M5ERR 31261 103256 0 JMP MI1D I 31262 025640 0 IRS CKSM+4 31263 025256 0 IRS MI1D 31264 101000 0 NOP 31265 103256 0 JMP MI1D I *** THIS DOCUMENT MAY CONTAIN BBN PROPRIETARY INFORMATION. *** *** FURNISHED FOR U. S. GOVERNMENT END USE ONLY. *** PAGE 250 IMP,3050,IMP 7:20 PM 9/16/1973 LEV H2I 31266 000000 4 HS4: 0 31267 050111 4 STA BUFE X 31270 173762 4 LDX (PPSLT) I 31271 131040 4 RDCLOK 31272 003271 4 JMP .-1 31273 050010 4 STA PPT1 X /SAVE SENT TIME FOR 1 PKT MESS 31274 173763 4 LDX (PPSLT 0 I) I 31275 103266 4 JMP HS4 I 31276 000000 4 HS5: 0 /SHOULD ONLY DO THIS ONCE, NEED A C+ 31277 050030 4 STA PLT2 X 31300 131040 4 RDCLOK 31301 003300 4 JMP .-1 31302 050044 4 STA PLT3 X /SAVE SENT TIME FOR 8 PKT MESS 31303 103276 4 JMP HS5 I LEV TSK LCK FRE 31304 000000 6 0 HS6: 0 31305 131040 6 0 RDCLOK 31306 003305 6 0 JMP .-1 31307 173764 6 0 LDX (PPTASK) I 31310 056010 6 0 SUB PPT1 X 31311 021322 6 0 JST HSTIME /GET ROUND-TRIP TIME FOR 1 PKT ME1 31312 103765 6 0 JMP (PPTFRE) I 31313 000000 6 0 HS7: 0 31314 131040 6 0 RDCLOK 31315 003314 6 0 JMP .-1 31316 173764 6 0 LDX (PPTASK) I 31317 056044 6 0 SUB PLT3 X 31320 021322 6 0 JST HSTIME /GET ROUND-TRIP TIME FOR 8 PKT MESS 31321 103766 6 0 JMP (GUDRP0) I 31322 000000 6 0 HSTIME: 0 31323 040475 6 0 LGR 3 31324 173767 6 0 LDX (SOURCE) I 31325 055415 6 0 ADD HS4R X 31326 051415 6 0 STA HS4R X 31327 065515 6 0 IRS HS4S X 31330 103322 6 0 JMP HSTIME I *** THIS DOCUMENT MAY CONTAIN BBN PROPRIETARY INFORMATION. *** *** FURNISHED FOR U. S. GOVERNMENT END USE ONLY. *** PAGE 251 IMP,3050,IMP 7:20 PM 9/16/1973 LEV CON 31331 031660 C TUB1: XGP1+0 31332 031666 C XGP1+6 31333 031674 C XGP1+12. 31334 031702 C XGP1+18. 31335 031710 C XGP1+24. 31336 031716 C XGP1+30. LEV VAR 31337 V IMT1: BSS 1 31340 V IMT2: BSS 1 /CUMULATIVE STATS SENT IN THIS ORDER /STATISTICS GATHERED BY H2I 31341 V STTB: BSS 13. /HISTOGRAM OF H2I MESS LENGTH - A1 31356 V TOT1: BSS 1 /TOTAL # OF H2I WORDS /STATISTICS GATHERED BY I2H 31357 V XGP: BSS 13. /HISTOGRAM OF I2H MESS LENGTH - A1 31374 V TOT2: BSS 1 /TOTAL # OF I2H WORDS /STATISTICS GATHERED BY H2I 31375 V CNT2: BSS TH /# OF H2I ALL MESSAGES PER HOST /STATISTICS GATHERED BY I2H 31405 V CNT3: BSS TH /# OF I2H CONTROL MESSAGES PER HOST /STATISTICS GATHERED BY TSK 31415 V HS4R: BSS NIMP /TOTAL ROUND TRIP TIME IN 800 MS PE1 31515 V HS4S: BSS NIMP /# OF ROUND TRIPS MEASURED ABOVE /STATISTICS GATHERED BY I2M 31615 V IMHS: BSS CH /# OF HELLOS SENT PER LINE 31622 V ANS4: BSS CH /# OF DATA WOSDS SENT PER LINE /STATISTICS GATHERED BY M2I 31627 V MTOT: BSS CH /# OF INPUTS RECVD PER LINE 31634 V CKSM: BSS CH /# OF CHECKSUM ERRORS PER LINE /STATISTICS GATHERED BY TSK 31641 V TSKIHY: BSS CH /# OF I HEARD YOUS RECVD PER LINE /STATISTICS GATHERED BY M2I 31646 V BUFT: BSS CH /# OF INPUTS LOST DUE TO LACK OF [ 31653 V SLOW: BSS CH /UNUSED /STATISTICS GATHERED BY I2M 31660 V XGP1: BSS CH+CH+CH+CH+CH+CH /HISTOGRAM OF I2M MESSA[ 31716 V EP20: BSS 1 /BEGINNING OF PATCH AREA NST=0+0+EP20-STTB *** THIS DOCUMENT MAY CONTAIN BBN PROPRIETARY INFORMATION. *** *** FURNISHED FOR U. S. GOVERNMENT END USE ONLY. *** PAGE 252 IMP,3050,IMP 7:20 PM 9/16/1973 LEV I2M / LOG SUBROUTINE 31717 000000 2 LOG: 0 31720 033742 2 STX LOGX 31721 022120 2 CAS SEVEN 31722 003731 2 JMP LOG1 31723 101000 2 NOP 31724 100400 2 SPL 31725 003733 2 JMP LOG3 31726 010000 2 STA 0 31727 045743 2 LDA LOGT X 31730 003740 2 JMP LOG2 31731 040575 2 LOG1: ARS 3 31732 022120 2 CAS SEVEN 31733 004120 2 LOG3: LDA SEVEN 31734 101000 2 NOP 31735 010000 2 STA 0 31736 045743 2 LDA LOGT X 31737 014116 2 ADD THREE 31740 073742 2 LOG2: LDX LOGX 31741 103717 2 JMP LOG I LEV VAR 31742 V LOGX: BSS 1 LEV CON 31743 000000 C LOGT: 0 31744 000000 C 0 31745 000001 C 1 31746 000001 C 1 31747 000002 C 2 31750 000002 C 2 31751 000002 C 2 31752 000002 C 2 *** THIS DOCUMENT MAY CONTAIN BBN PROPRIETARY INFORMATION. *** *** FURNISHED FOR U. S. GOVERNMENT END USE ONLY. *** PAGE 253 IMP,3050,IMP 7:20 PM 9/16/1973 31753 031341 C LEV CON CONSTANTS 31754 154137 C 31755 031357 C 31756 056124 C 31757 000011 C 31760 012655 C 31761 012654 C 31762 015156 C 31763 115156 C 31764 007131 C 31765 007213 C 31766 007215 C 31767 006673 C 31770 C SB1: BSS NSTATS /ADDRESSES FOR STAT INSTR 32010 C SC1: BSS NSTATS /NOMINAL CONTENTS 02440 177030 C PAGEND 31,SC1+NSTATS *** THIS DOCUMENT MAY CONTAIN BBN PROPRIETARY INFORMATION. *** *** FURNISHED FOR U. S. GOVERNMENT END USE ONLY. *** PAGE 254 IMP,3050,IMP 7:20 PM 9/16/1973 LEV VAR TABZB: /THIS ENTIRE PAGE IS ZEROED AT INIT /TABLES OF BUFFER PNTRS, NACH FOR EACH LINE 32030 V I2MB0: BSS NACH 32040 V I2MB1: BSS NACH 32050 V I2MB2: BSS NACH 32060 V I2MB3: BSS NACH 32070 V I2MB4: BSS NACH /NULL AREAS 32100 V NULS1: BSS HEAD3-ACKH+1 /ACKS GO HERE 32105 V NULS2: BSS HEAD3-ACKH+1 /ACKS GO HERE 32112 V NULS3: BSS HEAD3-ACKH+1 /ACKS GO HERE 32117 V NULS4: BSS HEAD3-ACKH+1 /ACKS GO HERE 32124 V NULS5: BSS HEAD3-ACKH+1 /ACKS GO HERE NTRCB=8 TRACEL=TDONE+1 32131 V TRACEQ: BSS NTRCB"T"TRACEL /TRACE STORE TALLYL=8. 32261 V TALLY: BSS TALLYL /STACK OF TRANSMIT ALLOCATES WE HAVT DEFPLC [TRANSMIT, RECEIVE, AND ALLOCATE MESSAGE TABLES] 32271 V TMESS: BSS NIMP 32371 V RMESS: BSS NIMP 32471 V AMESS: BSS NIMP DEFPLC [RALLY TABLE - ALLOCATES TO SEND] 32571 V RALLY: BSS NIMP LEV CON 02441 176671 C PAGEND 32,-0 LEV VAR /ROUTE SEND TABLES /SEND ROUTING MESSAGE FROM HERE 33003 V RSTX: BSS 1 /ACKS 33004 V BSS 1 /HEADER 33005 V BSS 1 /SERIAL NO. (LH) 33006 V RST: BSS NIMP /ROUTE SEND TABLE 33106 V RSTCKS: BSS 1 /CHECKSUM /END OF ROUTING MESSAGE /ALTERNATE ROUTING MESSAGE BUFFER 1 33107 V RSTX1: BSS 1 /ACKS 33110 V BSS 1 /HEADER 33111 V BSS 1 /SERAIL NO. (LH) 33112 V RST1: BSS NIMP /ROUTE SEND TABLE 33212 V BSS 1 /CHECKSUM /ALTERNATE ROUTING MESSAGE BUFFER 2 33213 V RSTX2: BSS 1 /ACKS 33214 V BSS 1 /HEADER 33215 V BSS 1 /SERIAL NO. (LH) 33216 V RST2: BSS NIMP /ROUTE SEND TABLE 33316 V BSS 1 /CHECKSUM *** THIS DOCUMENT MAY CONTAIN BBN PROPRIETARY INFORMATION. *** *** FURNISHED FOR U. S. GOVERNMENT END USE ONLY. *** PAGE 255 IMP,3050,IMP 7:20 PM 9/16/1973 LEV VAR NREAB=8 /8 - NEED MANY FOR <8 PKT MESSAGES REASL=RSF+1 33317 V REASQ: BSS NREAB"T"REASL /REASSEMBLY STORE PPTL=8. /NUMBER OF ENTRIES IN PPT PPTN=2 /NUMBER OF WORDS PER ENTRY IN PPT PPTNUM=PPTL"T"PPTN DEFPLC [PPT - PENDING PACKET TABLE] 33457 V PPT: BSS PPTNUM /TABLE OF PNTRS TO PENDING PACKET1 PLTL=12. /NUMBER OF ENTRIES IN PLT PLTN=4 /NUMBER OF WORDS PER ENTRY IN PLT PLTNUM=PLTL"T"PLTN DEFPLC [PLT - PENDING LEADER TABLE] 33477 V PLT: BSS PLTNUM /TABLE OF COPIED PENDING LEADERS HTPTBL: /TABLE OF HOST THROUGHPUTS 33557 V HTPMTN: BSS NH /MESSAGES FROM HOST TO NET 33563 V HTPMFN: BSS NH /MESSAGES TO HOST FROM NET 33567 V HTPPTN: BSS NH /PACKETS FROM HOST TO NET 33573 V HTPPFN: BSS NH /PACKETS TO HOST FROM NET 33577 V HTPMTL: BSS NH /MESSAGES FROM HOST TO LOCAL HOST 33603 V HTPMFL: BSS NH /MESSAGES TO HOST FROM LOCAL HO1 33607 V HTPPTL: BSS NH /PACKETS FROM HOST TO LOCAL HOST 33613 V HTPPFL: BSS NH /PACKETS TO HOST FROM LOCAL HOST 33617 V HTPWTI: BSS NH /WORDS FROM HOST TO IMP 33623 V HTPWFI: BSS NH /WORDS TO HOST FROM IMP TABZE: TABZL=TABZE+0-TABZB *** THIS DOCUMENT MAY CONTAIN BBN PROPRIETARY INFORMATION. *** *** FURNISHED FOR U. S. GOVERNMENT END USE ONLY. *** PAGE 256 IMP,3050,IMP 7:20 PM 9/16/1973 LEV CON IRP [PAGEN,,33,34,35,36] PAGEND PAGEN,-0 02442 175627 C ENDIRP 02443 170053 C 02444 170061 C 02445 170067 C P36FB=FB P36NB=NB 02446 170075 C PAGEND 37,-0 P37NB=NB-1 /ALLOW FOR SAT CODE P37FB=FB 100003/ -0 VDHSTART VDHEND .ASCII / VDH "Z"/ NMAXS=4"T"CH 100001/ NBUFS-2 .ASCII / TOTAL BUFFERS"Z"/ 100001/ P37NB .ASCII / FEWER BUFFERS IF VDH PRESENT"Z"/ 100001/ NMAXS .ASCII / STORE AND FORWARD LIMIT"Z"/ 100001/ 0 0 [0 0 [NBUFS-NMAXS+10]"Q"10]"T"10+2 .ASCII / REASSEMBLY LIMIT"Z"/ 100001/ NITB .ASCII / IMP-TIP CONVERSION REGISTERS"Z"/ 100001/ NSTATS .ASCII / STATISTICS GATHERING PLACES"Z"/ START *** THIS DOCUMENT MAY CONTAIN BBN PROPRIETARY INFORMATION. *** *** FURNISHED FOR U. S. GOVERNMENT END USE ONLY. *** PAGE 257 IMP,3050,IMP 7:20 PM 9/16/1973 /VERY DISTANT HOST 37000/ VDHSTART: ITBVP=0 /FILL IN THE VDH/IMP INITIALIZATION TABLE LEV CON 03366 C VDHD VDH2,JST VDH2. I,NOP 37717 121407 C 02346 101000 C 02361 003366 C 21126 C VDHD VDH3,JST VDH3. I,NOP 37720 121661 C 02347 101000 C 02362 021126 C /BUILD INSTRUCTIONS DEPENDENT ON M.N & H.N AND FINISH TABLE IRPC [L,,1234] REPEAT 1IF VZ L-1-H.N,[ VD.HOI=H'L'OTIL VD.HII=H'L'INIL VD.HIB=H'L'INBP VD.IHB=H'L'OTBP VDHD SKST H.N,NOP,H'L'RDY VDHD IHED H.N,IRS VD.OT,H'L'FOUT VDHD IHOT H.N,NOP,H'L'ROUT VDHD HER H.N,NOP,H'L'ERR VDHD HIN H.N,JMP HIFAKE,H'L'IN VDHD EMIT H.N,SKP,H'L'EOM VDHD HENABT H.N, IRS VD.RDY, H'L'ENAB ] *** THIS DOCUMENT MAY CONTAIN BBN PROPRIETARY INFORMATION. *** *** FURNISHED FOR U. S. GOVERNMENT END USE ONLY. *** PAGE 258 IMP,3050,IMP 7:20 PM 9/16/1973 /END THE REPEAT 21663 C ENDIRP 37721 101000 C 02350 070160 C 02363 021663 C 16125 C 37722 024475 C 02351 030260 C 02364 016125 C 17057 C 37723 101000 C 02352 030060 C 02365 017057 C 13171 C 37724 101000 C 02353 070060 C 02366 013171 C 13201 C 37725 003531 C 02354 030160 C 02367 013201 C 13304 C 37726 100000 C 02355 070260 C 02370 013304 C 16317 C 37727 024476 C 02356 030560 C 02371 016317 C /HOST34=0 V.1=74000 V.2=134000 V.3=154000 V.4=164000 V.5=170000 /HOST34>0 V..1=70000 V..2=130000 V..3=150000 V..4=160000 V..5=170000 /HOST34<0 V...1=60000 V...2=120000 V...3=140000 V...4=160000 V...5=160000 IRPC [L,,12345] REPEAT 1IF VZ L-1-M.N,[ VD.IIM=V.'L VD..IM=V..'L VD...M=V...'L VD.OIP=M'L'OTBP VDHD 64 M.N,VD.II,M2I'L VDHD 71 M.N,VD.OI,I2M'L ] /END OF REPEAT 00066 C ENDIRP 37730 037124 C 02357 010113 C 02372 000066 C 00073 C 37731 037331 C 02360 012117 C 02373 000073 C *** THIS DOCUMENT MAY CONTAIN BBN PROPRIETARY INFORMATION. *** *** FURNISHED FOR U. S. GOVERNMENT END USE ONLY. *** PAGE 259 IMP,3050,IMP 7:20 PM 9/16/1973 /PACKET CONTROL WORD FORMAT /BITS MEANINGS /1 LAST PACKET BIT /2 PACKET'S ODD/EVEN BIT /3-8 PACKET'S WORD COUNT / 0 = ACKS ALONE / 1-63 = NUMBER OF WORDS (INCLUDING LEADER) /9 HOST/IMP BIT -- ONE FROM HOST /10 UNUSED /11-12 UNUSED (CHANNEL 3 < CHANNEL 2 ACKS) /13 CHANNEL 1 ACK /14 CHANNEL 0 ACK /15 UNUSED (EXTENDED CHANNEL NUMBER) /16 CHANNEL NUMBER *** THIS DOCUMENT MAY CONTAIN BBN PROPRIETARY INFORMATION. *** *** FURNISHED FOR U. S. GOVERNMENT END USE ONLY. *** PAGE 260 IMP,3050,IMP 7:20 PM 9/16/1973 /VERY DISTANT HOST VARIABLES VDHNC=2 /NUMBER OF CHANNELS LEV VAR 37000 V VD.TB: BSS VDHNC /TRANSMIT BUFFER POINTERS /ZERO MEANS UNUSED 37002 V VD.RB: BSS VDHNC /RECEIVE BUFFER POINTERS /ZERO MEANS UNUSED VD.ZVB: /BEGINNING OF VARIABLES TO BE ZEROEI 37004 000000 V VD.TFP: 0 /TRANSMIT FILL POINTER -- MUST "SEQ1 37005 000000 V VD.TEP: 0 /TRANSMIT EMPTY POINTER 37006 000000 V VD.REP: 0 /RECEIVE EMPTY POINTER -- MUST "SEQ1 37007 V VD.TOE: BSS VDHNC /TRANSMIT ODD/EVEN BITS 37011 V VD.ROE: BSS VDHNC /RECEIVE ODD/EVEN BITS 37013 000000 V VD.T: 0 /COUNTS IF TOO LONG WITHOUT ACK /POSITIVE MEANS TOO LONG 37014 000000 V VD.R: 0 /COUNTS IF IT IS TIME TO SEND DUPL T /POSITIVE MEANS SEND ON 37015 000000 V VD.D: 0 /COUNTS IF LINE HAS BEEN HELD DEAD T /NEG MEANS NOT LONG ENOUGH 37016 V VD.TE: BSS VDHNC /TRANSMIT LAST PACKET BIT 37020 V VD.RE: BSS VDHNC /RECEIVE LAST PACKET BIT VD.ZVE: /END OF VARIABLES TO BE ZEROED 37022 000000 V VD.HOL: 0 /EXPECTING OUTPUT OF LEADER FLAG 37023 000000 V VD.RCN: 0 /RECEIVE CHANNEL NUMBER 37024 000000 V VD.EXP: 0 /200 IF EXPECTING PKTS FROM HOST /0 IF EXPECTING FROM SELF (LOOPED) 15SECS=30 5SECS=10 2.5SECS=4 *** THIS DOCUMENT MAY CONTAIN BBN PROPRIETARY INFORMATION. *** *** FURNISHED FOR U. S. GOVERNMENT END USE ONLY. *** PAGE 261 IMP,3050,IMP 7:20 PM 9/16/1973 /VERY DISTANT HOST INITIALIZATION LEV BCK 37025 000000 7 VD.I: 0 37026 005732 7 LDA (4000) 37027 026567 7 IMA VDHUPF /MARK VDH AS UP 37030 100040 7 SZE /WAS ALREADY UP? 37031 103025 7 JMP VD.I I /YES, JUST GO AWAY QUIETLY 37032 011000 7 STA VD.TB /ZERO RECEIVE AND TRANSMIT BUFFER ': 37033 011001 7 STA VD.TB 1 37034 011002 7 STA VD.RB 37035 011003 7 STA VD.RB 1 37036 005733 7 LDA (200) /BEGIN EXPECTING LINE UNLOOPED 37037 011024 7 STA VD.EXP 37040 001001 7 INH ALL 37041 121734 7 0 JST (GETFRE) I 37042 003112 7 0 JMP VD.I9 /NO BUFFERS FREE 37043 004000 7 0 LDA 0 37044 015735 7 0 ADD (100000+CNTL+1) 37045 010024 7 0 STA M1INBP+2"T"M.N 37046 015736 7 0 ADD (BUFE-CNTL-1) 37047 010025 7 0 STA M1INBP+2"T"M.N+1 37050 073737 7 0 LDX (-MAXVDH) 37051 045732 7 0 LDA ITBVDH+MAXVDH X /VDHDEFS 37052 111740 7 0 STA (ITBVDL+MAXVDH XI) I 37053 024000 7 0 IRS 0 37054 003051 7 0 JMP .-3 37055 030473 7 0 M1IN+M.N 37056 021060 7 0 JST VD.REI 37057 103025 7 0 JMP VD.I I LEV [VDI,T.O] LCK ALL 37060 000000 1 0 VD.REI: 0 /REINITIALIZE 37061 073741 1 0 LDX (VD.ZVB 0-VD.ZVE 37062 140040 1 0 CRA /ZERO VARIABLES WHICH NEED IT 37063 051022 1 0 STA VD.ZVE X 37064 024000 1 0 IRS 0 37065 003063 1 0 JMP .-2 37066 010036 1 0 STA VD.OIP /CLEAR OUTPUT INTERRUPT PENDING F1 37067 072124 1 0 LDX MINUS4 /FREE ANY BUFFERS 37070 033022 1 0 STX VD.HOL /INITIALIZE TO NON-ZERO 37071 032475 1 0 STX VD.OT /FIX OUTPUT TYPE FLAG *TEMP* 37072 140040 1 0 VD.REK: CRA 37073 067004 1 0 IMA VD.TB 4 X 37074 101040 1 0 SNZ 37075 003103 1 0 JMP VD.REJ 37076 033114 1 0 STX VD.REX 37077 140100 1 0 SSP 37100 010000 1 0 STA 0 37101 120671 1 0 JST FLUSHI I 37102 073114 1 0 LDX VD.REX 37103 024000 1 0 VD.REJ: IRS 0 37104 003072 1 0 JMP VD.REK 37105 005742 1 0 LDA (-15SECS 37106 011015 1 0 STA VD.D /MARK TO HOLD LINE DEAD 37107 005743 1 0 LDA (NOP /DROP READY LINE 37110 111744 1 0 STA (SKST H.N) I 37111 103060 1 0 JMP VD.REI I /DONE, SO RETURN 37112 024144 1 0 VD.I9: IRS VDHRSF /TRY AGAIN LATER 37113 003025 1 0 JMP VD.I LEV VAR 37114 000000 V VD.REX: 0 *** THIS DOCUMENT MAY CONTAIN BBN PROPRIETARY INFORMATION. *** *** FURNISHED FOR U. S. GOVERNMENT END USE ONLY. *** PAGE 262 IMP,3050,IMP 7:20 PM 9/16/1973 /VERY DISTANT HOST INPUT INTERRUPT ROUTINE LEV VAR 37115 000000 V VD.IK: 0 /SAVED KEYS 37116 000000 V VD.IIB: 0 /BUFFER POINTER 37117 000000 V VD.IA: 0 /SAVED A 37120 000000 V VD.IX: 0 /SAVED X 37121 000000 V VD.IM: 0 /SAVED MASK 37122 000000 V VD.RBL: 0 /RECEIVE BUFFER LENGTH 37123 000000 V VD.CWP: 0 /POINTER TO PACKET CONTROL WORD 37124 000000 1 0 VD.II: INT VDI 37125 011117 1 0 STA VD.IA /SAVE MASK AND REGISTERS 37126 033120 1 0 STX VD.IX 37127 105745 1 0 LDA (HOST34) I 37130 073746 1 0 LDX (VD.IIM) /HOST34=0 37131 100040 1 0 SZE 37132 073747 1 0 LDX (VD..IM) /HOST34>0 37133 100400 1 0 SPL 37134 073750 1 0 LDX (VD...M) /HOST34<0 37135 004000 1 0 LDA 0 37136 170120 1 0 SMK INTM 37137 026134 1 0 IMA PRIM 37140 011121 1 0 STA VD.IM 37141 000043 1 0 INK 37142 011115 1 0 STA VD.IK 37143 120672 1 0 JST DODXA I RET VDI 37144 004025 1 LDA M1INBP+1 2"T"M.N /GET BUFFER POINTER 37145 140100 1 SSP 37146 017751 1 SUB (BUFE /SAVE BUFFER POINTER 37147 011116 1 STA VD.IIB 37150 015752 1 ADD (CNTL 1 37151 011123 1 STA VD.CWP 37152 005015 1 LDA VD.D /IS LINE BEING HELD DEAD 37153 100400 1 SPL 37154 003171 1 JMP VD.II2 /YES 37155 070473 1 M1ERR M.N /ERROR? 37156 100000 1 SKP 37157 003171 1 JMP VD.II2 /YES 37160 105123 1 LDA VD.CWP I 37161 007733 1 ANA (200) 37162 013024 1 ERA VD.EXP /IS PACKET FROM WHOM EXPECTED? 37163 101040 1 SNZ 37164 003212 1 JMP VD.II1 /YES, GO PROCESS IT 37165 013024 1 ERA VD.EXP /NO, CHANGE STATE OF VD.EXP 37166 011024 1 STA VD.EXP 37167 001001 1 INH ALL DEFHLT [VDH LOOP STATE CHANGED] 37170 021317 1 0 JST VD.APH *** THIS DOCUMENT MAY CONTAIN BBN PROPRIETARY INFORMATION. *** *** FURNISHED FOR U. S. GOVERNMENT END USE ONLY. *** PAGE 263 IMP,3050,IMP 7:20 PM 9/16/1973 LEV VDI 37171 005116 1 VD.II2: LDA VD.IIB /DO INPUT 37172 015735 1 VD.II8: ADD (100000 CNTL 1 37173 010024 1 STA M1INBP 2"T"M.N 37174 015736 1 ADD (BUFE-CNTL-1 37175 010025 1 STA M1INBP+1 2"T"M.N 37176 030473 1 M1IN M.N 37177 073120 1 LDX VD.IX /RESTORE MASK AND REGISTERS 37200 001001 1 INH MSK 37201 005121 1 0 LDA VD.IM 37202 170120 1 0 SMK INTM 37203 010134 1 0 STA PRIM 37204 000013 1 0 EXA 37205 005115 1 0 LDA VD.IK 37206 171020 1 0 OTK 37207 005117 1 0 LDA VD.IA 37210 000401 1 0 ENB VDI 37211 103124 1 JMP VD.II I /RETURN *** THIS DOCUMENT MAY CONTAIN BBN PROPRIETARY INFORMATION. *** *** FURNISHED FOR U. S. GOVERNMENT END USE ONLY. *** PAGE 264 IMP,3050,IMP 7:20 PM 9/16/1973 37212 105123 1 VD.II1: LDA VD.CWP I /PROCESS ACKS 37213 072113 1 LDX ZERO /CHANNEL ZERO ACK 37214 040576 1 ARS 2 37215 021273 1 JST VD.AP 37216 072114 1 LDX ONE /CHANNEL ONE ACK 37217 105123 1 LDA VD.CWP I 37220 040575 1 ARS 3 37221 021273 1 JST VD.AP 37222 105123 1 LDA VD.CWP I /IS PACKET A DUPLICATE 37223 006114 1 ANA ONE 37224 011023 1 STA VD.RCN /SAVE CHANNEL # FOR LATER USE 37225 010000 1 STA 0 37226 105123 1 LDA VD.CWP I /GET PACKET O/E BIT 37227 041676 1 ALR 2 37230 053011 1 ERA VD.ROE X /MATCH AGAINST RECEIVE O/E BIT 37231 100100 1 SLZ 37232 003171 1 JMP VD.II2 /DUPLICATE 37233 105123 1 LDA VD.CWP I /IS THERE ANY DATA 37234 141340 1 ICA 37235 006752 1 ANA C77 37236 101040 1 SNZ 37237 003171 1 JMP VD.II2 /NO 37240 011122 1 STA VD.RBL 37241 073023 1 LDX VD.RCN /IS THERE ROOM FOR THIS BUFFER 37242 045002 1 LDA VD.RB X 37243 100040 1 SZE 37244 003171 1 JMP VD.II2 /NO 37245 105123 1 LDA VD.CWP I /SAVE LAST PACKET BIT FOR BACKGROUN 37246 006112 1 ANA SIGN 37247 051020 1 STA VD.RE X 37250 001001 1 INH FRE /IS THERE A FREE BUFFER 37251 104324 1 0 LDA FREE I 37252 101040 1 0 SNZ /POSITIVE NO IN A REG 37253 003171 1 0 JMP VD.II2 /NO 37254 011014 1 0 STA VD.R /MARK THAT THERE IS ACK TO SEND 37255 045011 1 0 LDA VD.ROE X /COMPLEMENT O/E BIT 37256 012114 1 0 ERA ONE 37257 051011 1 0 STA VD.ROE X 37260 005116 1 0 LDA VD.IIB /USE NEW BUFFER FOR INPUT 37261 051002 1 0 STA VD.RB X /PASS RECEIVED BUFFER TO BACKGROUND 37262 010000 1 0 STA 0 /GET BUFFER LENGTH 37263 005122 1 0 LDA VD.RBL /PUT COUNT IN BUFE 37264 050111 1 0 STA BUFE X LEV VDI 37265 001001 1 VD.II7: INH FRE 37266 024563 1 0 IRS NFS /GET A FREE BUFFER NFS 37267 104324 1 0 LDA FREE I 37270 026324 1 0 IMA FREE 37271 000401 1 0 ENB VDI 37272 003172 1 JMP VD.II8 *** THIS DOCUMENT MAY CONTAIN BBN PROPRIETARY INFORMATION. *** *** FURNISHED FOR U. S. GOVERNMENT END USE ONLY. *** PAGE 265 IMP,3050,IMP 7:20 PM 9/16/1973 /VERY DISTANT HOST ACKNOWLEDGE PROCESSOR /CALL WITH ACK BIT IN AC 37273 000000 1 VD.AP: 0 37274 053007 1 ERA VD.TOE X /IS THIS A DUPLICATE ACK 37275 101100 1 SLN 37276 003312 1 JMP VD.AP1 /YES 37277 045007 1 LDA VD.TOE X /COMPLEMENT TRANSMIT O/E BIT 37300 012114 1 ERA ONE 37301 051007 1 STA VD.TOE X 37302 045000 1 LDA VD.TB X 37303 001001 1 INH ALL 37304 100040 1 0 SZE /SPURIOUS ACK? 37305 003307 1 0 JMP VD.AP2 /NO DEFHLT [VDH SPURIOUS ACK] 37306 021317 1 0 JST VD.APH /YES 37307 000401 1 0 VD.AP2: ENB VDI 37310 140500 1 SSM /MARK CHANNEL UNUSED 37311 051000 1 STA VD.TB X 37312 005753 1 VD.AP1: LDA (-5SECS /RESET T 37313 011013 1 STA VD.T 37314 004112 1 LDA SIGN /BRING READY LINE UP 37315 111744 1 STA (SKST H.N) I 37316 103273 1 JMP VD.AP I LCK M2I 37317 000000 1 0 VD.APH: 0 37320 120745 1 0 JST HLTNCC I 37321 021060 1 0 JST VD.REI 37322 003171 1 0 JMP VD.II2 *** THIS DOCUMENT MAY CONTAIN BBN PROPRIETARY INFORMATION. *** *** FURNISHED FOR U. S. GOVERNMENT END USE ONLY. *** PAGE 266 IMP,3050,IMP 7:20 PM 9/16/1973 /VERY DISTANT HOST OUTPUT INTERRUPT LEV VAR 37323 000000 V VD.OK: 0 /SAVED KEYS 37324 000000 V VD.OA: 0 /SAVED A 37325 000000 V VD.OX: 0 /SAVED X 37326 000000 V VD.OM: 0 /SAVED MASK 37327 000000 V VD.OB: 0 /SAVED POINTER 37330 000000 V VD.CW: 0 /CONTROL WORD 37331 000000 2 0 VD.OI: INT VDO 37332 011324 2 0 STA VD.OA /SAVE MASK AND REGISTERS 37333 004502 2 0 LDA MOM 37334 170120 2 0 SMK INTM 37335 026134 2 0 IMA PRIM 37336 011326 2 0 STA VD.OM 37337 000043 2 0 INK 37340 011323 2 0 STA VD.OK 37341 120672 2 0 JST DODXA I RET VDO 37342 033325 2 STX VD.OX 37343 140040 2 CRA 37344 010036 2 STA VD.OIP /CLEAR OUTPUT INT PENDING FLAG *** THIS DOCUMENT MAY CONTAIN BBN PROPRIETARY INFORMATION. *** *** FURNISHED FOR U. S. GOVERNMENT END USE ONLY. *** PAGE 267 IMP,3050,IMP 7:20 PM 9/16/1973 37345 005015 2 LDA VD.D /LINE BEING HELD DEAD? 37346 100400 2 SPL 37347 003364 2 JMP VD.OI2 /YES 37350 021407 2 JST VD.OIS /SERVICE ONE CHANNEL 37351 021407 2 JST VD.OIS /SERVICE ANOTHER CHANNEL 37352 005014 2 LDA VD.R /ACK WAITING TO GO BACK? 37353 100400 2 SPL 37354 003364 2 JMP VD.OI2 /NO 37355 021377 2 JST VD.OIT 37356 005754 2 LDA (VD.CW /SETUP OUTPUT POINTER TO SEND CW 37357 010036 2 STA M1OTBP 2"T"M.N 37360 010037 2 VD.OI3: STA M1OTBP+1 2"T"M.N 37361 005755 2 LDA (-2.5SECS /RESET R 37362 011014 2 STA VD.R 37363 030073 2 M1OUT M.N /DO OUTPUT 37364 073325 2 VD.OI2: LDX VD.OX /RESTORE MASK AND REGISTERS 37365 001001 2 INH MSK 37366 005326 2 0 LDA VD.OM 37367 170120 2 0 SMK INTM 37370 010134 2 0 STA PRIM 37371 000013 2 0 EXA 37372 005323 2 0 LDA VD.OK 37373 171020 2 0 OTK 37374 005324 2 0 LDA VD.OA 37375 000401 2 0 ENB VDO 37376 103331 2 JMP VD.OI I /RETURN 37377 000000 2 VD.OIT: 0 /BUILD ACKS 37400 001001 2 INH VDI 37401 005012 2 1 LDA VD.ROE 1 37402 041577 2 1 ALS 1 37403 013011 2 1 ERA VD.ROE 37404 041576 2 1 ALS 2 37405 011330 2 1 STA VD.CW 37406 103377 2 1 JMP VD.OIT I *** THIS DOCUMENT MAY CONTAIN BBN PROPRIETARY INFORMATION. *** *** FURNISHED FOR U. S. GOVERNMENT END USE ONLY. *** PAGE 268 IMP,3050,IMP 7:20 PM 9/16/1973 RET VDO 37407 000000 2 VD.OIS: 0 37410 005005 2 LDA VD.TEP /TRY OTHER CHANNEL 37411 012114 2 ERA ONE 37412 011005 2 STA VD.TEP 37413 001001 2 INH VDI 37414 073005 2 1 LDX VD.TEP 37415 045000 2 1 LDA VD.TB X 37416 101040 2 1 SNZ 37417 103407 2 1 JMP VD.OIS I /NOTHING TO DO WITH CHANNEL 37420 100400 2 1 SPL 37421 003445 2 1 JMP VD.OI1 37422 011327 2 1 STA VD.OB 37423 021377 2 1 JST VD.OIT 37424 045007 2 1 LDA VD.TOE X /SET UP MORE OF CONTROL WORD 37425 040676 2 1 ARR 2 37426 013330 2 1 ERA VD.CW /O/E BIT 37427 013005 2 1 ERA VD.TEP /CHANNEL NUMBER 37430 053016 2 1 ERA VD.TE X /LAST PACKET BIT 37431 011330 2 1 STA VD.CW 37432 073327 2 1 LDX VD.OB /SET UP CONTROL WORD IN OUTPUT BUF*] 37433 044111 2 1 LDA BUFE X /PUT COUNT IN CW 37434 141240 2 1 ICR 37435 015330 2 1 ADD VD.CW 37436 050010 2 1 STA CNTL 1 X 37437 004000 2 1 LDA 0 /SET UP OUTPUT POINTERS 37440 015752 2 1 ADD (CNTL 1 37441 010036 2 1 STA M1OTBP 2"T"M.N 37442 054111 2 1 ADD BUFE X 37443 140100 2 1 SSP 0"A"TWOQ 37444 003360 2 1 JMP VD.OI3 37445 140040 2 1 VD.OI1: CRA 37446 067000 2 1 IMA VD.TB X 37447 140100 2 1 SSP /FREE BUFFER 37450 010000 2 1 STA 0 37451 001001 2 1 INH FRE 37452 120671 2 0 JST FLUSHI I 37453 103407 2 0 JMP VD.OIS I *** THIS DOCUMENT MAY CONTAIN BBN PROPRIETARY INFORMATION. *** *** FURNISHED FOR U. S. GOVERNMENT END USE ONLY. *** PAGE 269 IMP,3050,IMP 7:20 PM 9/16/1973 /VERY DISTANT HOST TIMEOUT ROUTINE LEV T.O 37454 000000 5 VD.TO: 0 37455 140040 5 CRA 37456 026476 5 IMA VD.RDY /DID IH FLAP READY LINE? 37457 100040 5 SZE 37460 003476 5 JMP VD.TO3 /YES 37461 005015 5 LDA VD.D /IS D COUNTING 37462 101400 5 SMI 37463 003471 5 JMP VD.TO1 /NO 37464 025015 5 IRS VD.D /WAITED LONG ENOUGH ? 37465 103454 5 JMP VD.TO I /NO 37466 005755 5 LDA (-2.5SECS /RESET R 37467 011014 5 STA VD.R 37470 103454 5 JMP VD.TO I 37471 005013 5 VD.TO1: LDA VD.T 37472 101400 5 SMI 37473 103454 5 JMP VD.TO I 37474 025013 5 IRS VD.T /HAS LINE GONE DEAD 37475 003501 5 JMP VD.TO2 /NO 37476 001001 5 VD.TO3: INH VDI 37477 021060 5 1 JST VD.REI /REINITIALIZE 37500 103454 5 1 JMP VD.TO I 37501 025014 5 1 VD.TO2: IRS VD.R /TIME TO SEND HELLO? 37502 101000 5 1 NOP 37503 103454 5 1 JMP VD.TO I *** THIS DOCUMENT MAY CONTAIN BBN PROPRIETARY INFORMATION. *** *** FURNISHED FOR U. S. GOVERNMENT END USE ONLY. *** PAGE 270 IMP,3050,IMP 7:20 PM 9/16/1973 /VERY DISTANT HOST BACKGROUND ROUTINE LEV VAR 37504 000000 V VD.BM: 0 /SAVED MASK 37505 000000 V VD.IB: 0 37506 000000 V VD.BB: 0 37507 000000 V VD.BBT: 0 37510 000000 V VD.BBF: 0 LEV VDB 37511 000000 3 VD.B: 0 37512 001001 3 INH MSK 37513 004500 3 0 LDA IHM 37514 170120 3 0 SMK INTM 37515 026134 3 0 IMA PRIM 37516 011504 3 0 STA VD.BM 37517 000401 3 0 ENB VDB 37520 105756 3 LDA (HITT H.N) I /IS HOST WAITING FOR INPU 37521 022121 3 CAS MINUS1 37522 100000 3 SKP 37523 003612 3 JMP VD.B1 /ND 37524 005743 3 LDA (NOP 37525 111757 3 STA (EMFH H.N) I 37526 073006 3 LDX VD.REP /HAS THE NEXT SEQUENTIAL PACKET ARR 37527 045002 3 LDA VD.RB X 37530 101040 3 SNZ 37531 003612 3 JMP VD.B1 /NO 37532 011505 3 STA VD.IB /SAVE BUFFER POINTER FOR LATER USF 37533 004454 3 LDA HILO H.N 37534 013760 3 ERA (HIFRST /INITIAL INPUT EXPECTED BY HI 37535 101040 3 SNZ 37536 003605 3 JMP VD.B4 /YES 37537 013761 3 ERA (0 0 HIFRST"X"VD.1P /HI EXPECTING LEADER 37540 100040 3 SZE 37541 003560 3 JMP VD.B3 /NO 37542 073505 3 LDX VD.IB /SAVE LEADER IN HOST BUFFER 37543 044011 3 LDA DATA X 37544 110052 3 STA VD.HIB I 37545 044012 3 LDA DATA 1 X 37546 024052 3 IRS VD.HIB 37547 110052 3 STA VD.HIB I 37550 073006 3 LDX VD.REP /LAST PACKET IN MESSAGE 37551 045020 3 LDA VD.RE X 37552 100400 3 SPL 37553 003605 3 JMP VD.B4 /YES 37554 001001 3 VD.B53: INH FRE /FLUSH THE BUFFER THE LEADER CAME ' 37555 073505 3 0 LDX VD.IB 37556 120671 3 0 JST FLUSHI I 37557 003577 3 0 JMP VD.B13 *** THIS DOCUMENT MAY CONTAIN BBN PROPRIETARY INFORMATION. *** *** FURNISHED FOR U. S. GOVERNMENT END USE ONLY. *** PAGE 271 IMP,3050,IMP 7:20 PM 9/16/1973 LEV VDB 37560 005505 3 VD.B3: LDA VD.IB /SWAP RECEIVED BUFFER WITH HOST BUF[ 37561 127762 3 IMA (HISP H.N) I 37562 010000 3 STA 0 37563 050111 3 STA BUFE X 37564 001001 3 INH FRE /RETURN HOST BUFFER TO FREE LIST 37565 120671 3 0 JST FLUSHI I 37566 073505 3 0 LDX VD.IB /SET UP HARDWARE BUFFER POINTER 37567 044111 3 0 LDA BUFE X 37570 015505 3 0 ADD VD.IB 37571 015763 3 0 ADD (DATA 37572 010052 3 0 STA VD.HIB 37573 073006 3 0 LDX VD.REP 37574 045020 3 0 LDA VD.RE X 37575 100400 3 0 SPL 37576 111757 3 0 STA (EMFH H.N) I 37577 073006 3 0 VD.B13: LDX VD.REP 37600 140040 3 0 CRA 37601 051002 3 0 STA VD.RB X /CLEAR CHANNEL 37602 005006 3 0 LDA VD.REP /SEQUENCE REP 37603 012114 3 0 ERA ONE 37604 011006 3 0 STA VD.REP LEV VDB 37605 001001 3 VD.B4: INH SIN 37606 000013 3 0 EXA 37607 120101 3 0 JST VD.HII I RET VDB 37610 001001 3 INH ALL 37611 120672 3 0 JST DODXA I RET VDB *** THIS DOCUMENT MAY CONTAIN BBN PROPRIETARY INFORMATION. *** *** FURNISHED FOR U. S. GOVERNMENT END USE ONLY. *** PAGE 272 IMP,3050,IMP 7:20 PM 9/16/1973 37612 073004 3 VD.B1: LDX VD.TFP /IS NEXT SEQUENTIAL OUTPUT CHANNEL , 37613 045000 3 LDA VD.TB X 37614 100040 3 SZE 37615 003704 3 JMP VD.B2 /NO 37616 051016 3 STA VD.TE X /CLEAR LAST PACKET INDICATOR 37617 004046 3 LDA VD.IHB /IS THERE SOMETHING TO SEND FROM F'1 37620 101040 3 SNZ 37621 003704 3 JMP VD.B2 /NO 37622 121734 3 JST (GETFRE) I LCK FRE /CAN WE HAVE A FREE BUFF T 37623 003704 3 0 JMP VD.B2 /NO 37624 000401 3 0 ENB VDB 37625 033506 3 STX VD.BB /PUT BUFFER IN OUTPUT CHANNEL 37626 027022 3 IMA VD.HOL /LEADER? 37627 100040 3 SZE 37630 003646 3 JMP VD.B6 /YES 37631 004047 3 LDA VD.IHB+1 /SAVE LENGTH 37632 016046 3 SUB VD.IHB 37633 141206 3 AOA 37634 050111 3 STA BUFE X 37635 104046 3 VD.B6N: LDA VD.IHB I /COPY A WORD 37636 050011 3 STA DATA X 37637 024000 3 IRS 0 37640 024046 3 IRS VD.IHB 37641 004047 3 LDA VD.IHB+1 /DONE? 37642 016046 3 SUB VD.IHB 37643 101400 3 SMI 37644 003635 3 JMP VD.B6N /NO 37645 003662 3 JMP VD.B6D *** THIS DOCUMENT MAY CONTAIN BBN PROPRIETARY INFORMATION. *** *** FURNISHED FOR U. S. GOVERNMENT END USE ONLY. *** PAGE 273 IMP,3050,IMP 7:20 PM 9/16/1973 37646 104046 3 VD.B6: LDA VD.IHB I /COPY LEADER 37647 050011 3 STA DATA X 37650 024046 3 IRS VD.IHB 37651 104046 3 LDA VD.IHB I 37652 050012 3 STA DATA 1 X 37653 004115 3 LDA TWO /SET UP WORD COUNT 37654 050111 3 STA BUFE X 37655 004046 3 LDA VD.IHB 37656 024046 3 IRS VD.IHB 37657 016047 3 SUB VD.IHB 1 /ONLY LEADER IN MESSAGE? 37660 100040 3 SZE 37661 003676 3 JMP VD.B6K /NO 37662 140040 3 VD.B6D: CRA 37663 026475 3 IMA VD.OT /CLEAR FINAL OUT FLAG 37664 011022 3 STA VD.HOL /SET EXPECTING LEADER OR NOT 37665 100040 3 SZE 37666 004112 3 LDA SIGN /PASS LAST PACKET BIT TO OUTPUT 37667 073004 3 LDX VD.TFP 37670 051016 3 STA VD.TE X 37671 001001 3 INH SIN 37672 000013 3 0 EXA 37673 120077 3 0 JST VD.HOI I RET VDB /FAKE HOST INTERRUPT 37674 001001 3 INH SIN 37675 120672 3 0 JST DODXA I RET VDB 37676 073004 3 VD.B6K: LDX VD.TFP /FILL OUTPUT CHANNEL 37677 005506 3 LDA VD.BB 37700 051000 3 STA VD.TB X 37701 005004 3 LDA VD.TFP /SEQUENCE TFP 37702 012114 3 ERA ONE 37703 011004 3 STA VD.TFP 37704 004036 3 VD.B2: LDA VD.OIP /OUTPUT INTERRUPT PENDING? 37705 001001 3 INH SIN 37706 000013 3 0 EXA 37707 101040 3 0 SNZ 37710 021331 3 0 JST VD.OI RET VDB /NO -- WAKE UP OUTPUT IT* 37711 001001 3 INH MSK 37712 005504 3 0 LDA VD.BM 37713 170120 3 0 SMK INTM 37714 010134 3 0 STA PRIM 37715 120672 3 0 JST DODXA I RET VDB 37716 103511 3 JMP VD.B I *** THIS DOCUMENT MAY CONTAIN BBN PROPRIETARY INFORMATION. *** *** FURNISHED FOR U. S. GOVERNMENT END USE ONLY. *** PAGE 274 IMP,3050,IMP 7:20 PM 9/16/1973 LEV CON 37717 C ITBVDH: BSS MAXVDH 37732 004000 C CONSTANTS 37733 000200 C 37734 004372 C 37735 100010 C 37736 000101 C 37737 177765 C 37740 142374 C 37741 177762 C 37742 177750 C 37743 101000 C 37744 021663 C 37745 001005 C 37746 154000 C 37747 150000 C 37750 140000 C 37751 000111 C 37752 000010 C 37753 177770 C 37754 037330 C 37755 177774 C 37756 013140 C 37757 013314 C 37760 013400 C 37761 007453 C 37762 013334 C 37763 000011 C VDHEND=37777 START