BCMIST `P5SÖ,¾¢‹¾ÈÚV@* '* ' * IST MACRO DEFINITION"*BCMIST $MACRO UN,CR,NH,PR,AC "*UN= BASE UNIT NUMBER *CR= CRU BASE ADDRESS **NH= NEXT HIGHER LEVEL TABLE ADDRESS*$*PR= PROTOCOL SELECTION PARMS $0*AC= ACU CRU ADDRESS (DECIMAL EQUIVALENT) 0* ' UNL#"BCMIST $MACRO UN,CR,NH,PR,AC "* $VAR XX VARIABLES FOR INTERNAL USE * $ASG 'LT' TO XX.S4 $ASG UN.V TO NH.SV  ELIMINATE UNDEFINED LABEL 4 $IF XX.S#=NH.S  REF:NH:CM:UN:. DEFLTCM:UN: LINE TABLE ADDRESS IF NONE .LTCM:UN: EQU $!  $ENDIF ! ( CIST:UN: DATA >FFFF  NI BUSY FLAG (  DATA 0,0  NI ENTRY QUEUE  $ DATA CN:UN:,0NI ENTRY VECTOR $& DATA 0  CURRENT CONNECTED STATE &, BYTE 3,>B0  TABLE TYPE, FCNS SUPPORTED , DEFIT:CR:IT:CR: DATA À*CI:UN:,0 31 INTERRUPT WORKSSPACE, PC *6 DATA :NH:CM:UN:,0NEXT HIGHER,LOWER TABLE ADDRES6FCN:UN: DATA 0,BCRB:UN:,0,BCXB:UN:,CIST:UN:,0,0,0 NI WORKSPACE F DATA 0,0,0,0,>:CR:,0,0,0 . DEFWPCM:UN: DEF FOR INTERRUPT DECODER .WPCM:UN: EQU$ >CI:UN: DATA 0,BCRB:UN:,0,BCXB:UN:,CIST:UN:,0,0,0 I WS > DATA 0,0,0,0,>:CR:,0,0,0 8 DATA 0,0,0 PENDING REQUEST QUEUE AND ERROR COUNT 8" DATA :PR: PROTOCOL SELECTION" DATA 0 SEQUENCE COUNT DATA 0 BOARD STATUS$ DATA 0  STATUS COUNT REMAINING$BCXB:UN: EQU$ , DATA 0,0,0,0,0,0,0  TRANSMIT CTL BLK ,BCRB:UN: EQU$ , DATA 0,0,0,0,0,0,0  RECEIVECTL BLK ,BCEB:UN: EQU$ ( DATA 0,0,0,0,0,0,0  OTHER CTL BLK(0 DATA 0 FILLER/STATUS OP (LEAVE THIS ODD) 0 DATA À"0,0  NEXT 4 BYTES OF STATUS " BYTE 0  COMPLETION CODE DATA 0 LOST CRB COUNT  DATA 0  ACTIVE COMMAND PTR ( DATA BCEB:UN: PTR TO OTHER CTL BLK( DATA 0 COMMAND INHIBIT   DATA :AC:ACU CRU ADDRESS   DATA 0  BOARD DATA ADDRESS  $END BCMIST  LIST "  ASMIF DEFINE=1 * ' * ISR TABLE DEFINITION* COMMON PREFIX * DORG 0 IST BEGINNING,BASE ADDRESS=0 *,IST  EQU$  START OF IST (ISR TABLE) ,0 NIBUSY DATA >FFFF  NON INTERRUPT BUSY FLAG 00NIQUE DATA 0,0  NON INTERRUPT ENTRY QUEUE 0$* NEWEST/OLDEST ENTRY POINTERS $6NIWSP DATA NIR0 GEN NON INTERRUPT ENTRY POINT 6* NIADD DATA BCMEXT GENNI CODE BASE*4 DATA 0  GENBASE UNIT NUMBER (N,N+1,N+2,N+3) 40TBLTYP BYTE 2  GEN DEVICE (IST) TABLE TYPE 0À .DEVFCN BYTE >0A  GEN IST FCNS SUPPORTED.6IWSP DATA IR0  GENNI INTERRUPT ENTRY POINT 60IADD DATA BCMINT GEN 10/26/81 ADD LABEL0:NHLTAD DATA 0  GEN11NEXT HIGHER LEVEL TABLE ADDRESS :8NLLTAD DATA 0  GEN11NEXT LOWER LEVEL TABLE ADDRESS 8 * ISR TABLE DEFINITION * NON-INTERRUPT WORKSPACE 0NIR0 EQU$ START OF NON-INT WORKSPACE 0 DATA 0  R0 TEMP DATA RCVBLK R1 TEMP DATA 0  R2 TEMP DATA XMTBLK R3 TEMP4NITAB DATA IST  R4GENPOINTER TO IST BEGINNING 40 DATA 0  R5 CONTROL BLOCK ADDRESS (TEMP) 0 DATA 0  R6 TEMPORARY  DATA 0  R7 TEMP& DATA 0  R8  ENTRY CRB ADDRESS &" DATA 0,0,0 REGISTERS R9-R11"  DATA 0  R12GNCRU ADDRESS   DATA 0  R13CALLING WP DATA 0  R€14CALLING PC$NIST DATA 0  R15CALLING ST$ * END OF NI WORKSPACE * ' * ISR TABLE DEFINITION * INTERRUPT WORKSPACE IR0  EQU$ ! DATA 0  R0 TEMP DATA RCVBLK R1 TEMP DATA 0  R2 TEMP DATA XMTBLK R3 TEMP2ITAB DATA IST  R4  POINT TO START OF IST 2 DATA 0  R5 TEMP DATA 0  R6 TEMP DATA 0  R7 TEMP. DATA 0  R8  TEMP REGISTER I WORKSPCAE .*ERRREG DATA 0  R9 ERROR INDICATOR *( DATA 0  R10 TEMP REGISTER I WSP (" DATA 0  R11TEMP REGISTER "&REG12 DATA 0  R12GNCRU ADDRESS &" DATA 0  R13INTERRUPTED WP"" DATA 0  R14INTERRUPTED PC"" DATA 0  R15INTERRUPTED ST"* '* ' * ISR TABLE DEFINITION * CONTROLLER INFORMATION R @* ',PENDQ DATA 0,0  PENDING REQUEST QUEUE ,(DERRCT DATA 0  ERROR REQUEST COUNT (&PROSEL DATA 0  PROTOCOL SELECTION&.SEQCT DATA 0  READ/WRITE SEQUENCE COUNT . BDSTAT DATA 0 BOARD STATUS *STATCT DATA 0  STATUS COUNT REMAINING** '* CONTROL BLOCKS* '* '*  TO BCAIM * 'XMTBLK EQU$ !BCRB EQU$-XMTBLKCRB   DATA 0 ! &BMAP EQU$-XMTBLKMAP ADDRESS &  DATA 0 ! (BBAD EQU$-XMTBLKBUFFER ADDRESS(  DATA 0 ! (BACTL EQU$-XMTBLKREQUEST LENGTH(  DATA 0 ! &BTCB EQU$-XMTBLKTCB ADDRESS &  DATA 0 ! 0BQUEN EQU$-XMTBLK AWAITING QUEUE NEWEST 0  DATA 0 ! BQUEO EQU$-XMTBLKOLDEST  DATA 0 ! * '* '*  TO HOST* '* 'RCVB€LK EQU$ !HCRB EQU$-RCVBLKCRB   DATA 0 ! &HMAP EQU$-RCVBLKMAP ADDRESS &  DATA 0 ! (HBAD EQU$-RCVBLKBUFFER ADDRESS(  DATA 0 ! (HACTL EQU$-RCVBLKREQUEST LENGTH(  DATA 0 ! &HTCB EQU$-RCVBLKTCB ADDRESS &  DATA 0 ! 0HQUEN EQU$-RCVBLK AWAITING QUEUE NEWEST 0  DATA 0 ! HQUEO EQU$-RCVBLKOLDEST  DATA 0 ! * '* '* '*  OTHER * 'OTHBLK EQU$ !OCRB EQU$-OTHBLKCRB   DATA 0 ! &OMAP EQU$-OTHBLKMAP ADDRESS &  DATA 0 ! (OBAD EQU$-OTHBLKBUFFER ADDRESS(  DATA 0 ! (OACTL EQU$-OTHBLKREQUEST LENGTH(  DATA 0 ! &OTCB EQU$-OTHBLKTCB ADDRESS &  DATA 0 ! 0OTHQUE EQU$-OTHBLK AWAITING QUEUE NEWEST 0  DATA 0 ! VB OTHQUO EQU$-OTHBLKOLDEST  DATA 0 ! * '* '<* THE FOLLOWING BLOCK IS ORDER AND CONTIGOUS DEPENDENT <* ',ODDFIL BYTE 0  THIS MAKES OP STATUS ODD ,"STATUS BYTE 0 LAST STATUS OP" DATA 0  STATUS STACTL DATA 0  STATUS $STATCC BYTE 0  COMPLETION CODE$* '* '*  END OF DEPENDENCY * '"LOSTB DATA 0 LOST CRB COUNT"* '* '"CMDACT DATA 0 ACTIVE COMMAND"* '* '* OTHPTR DATA OTHBLK CTL BLOCK POINTER *$INHCMD DATA 0 INHIBIT COMMAND $ ACUCRU DATA 0 ACU ADDRESS  (BDATAD DATA 0  BOARD DATA TEMP ADDR(  EVEN " (ISTLEN EQU$  LENGTH OF ISR TABLE ( * END OF IST DEFINITION   RORG "  ASMEND !  PAGE " HBLK AWAITING QUEUE NEWEST 0  DATA 0 ! VB