DXCRB  P 5·V ¾¢ï¾ÈÚe@D ****************************************************************D@*  COMUNICATIONS REQUEST BLOCK (CRB) 12/09/80 DX10 V3.4 @D ****************************************************************D2MAPPED EQU1 INDICATE USE OF MAPPED SYSTEM 2*CRB $MACRO À  OP,TC *OP= OPCODE !*TC= TCB ADDRESSCRB  $MACRO OP,TC  DATA 0  CRB QUEUE LINKAGE  $ DATA 0  REQUESTING TABLE ADDR $& BYTE :OP:,0 OPCODE - ERROR CODE &  BYTE 0,0 SYSFLG - USERFLG  DATA 0 CRB OWNER   DATA 0 € DSR MAP FILE ADDRESS  DATA 0  FIRST TCB MAP FILE " DATA :TC: FIRST TCB ADDRESS "0 DATA 0 TEMP A - FIRST EXTENDED FLAGS WORD0 DATA 0 TEMP 1 - SLAVE 1 DATA 0 TEMP 2 - SLAVE 2 DATA 0 TEMP 3 - SLAVE 3 $END CRB * '@  DORG -4! (CCFLAG DATA 0  LEFT BYTE = PDTDSF (* RIGHT BYTE = PDTDTF CCFTIL EQU>0040  TILINE  &CCFPSU EQU>0002  PSEUDO TILINE&.CCIRBP DATA 0  POINTER TO ASSOCIATED IRB.  DORG 0 ! "CCLNK DATA 0  QUEUE LINKAGE"CCRTA À$ DATA 0  REQUESTING TABLE ADDR$(CCOPCD BYTE 0  COMM SYSTEM OPCODE ( CCERCD BYTE 0  ERROR CODE  &CCSYSF BYTE 0  SYSTEM FLAG BYTE &* BIT 0  BUSY FLAG* 1  ERROR FLAG "* 2  END OF FILE DETECTED "CCUSRF BYTE 0  USER ÀFLAG BYTE * BIT 0  INITIATE I/O * 1  REPLY* 2  RESERVED  * 3  ACCESS PRIVILEDGES * 4  ACCESS PRIVILEDGES ,CCUFPM EQU>45  DIRECT ISR REQUEST , * 6  EXTENDED CALL BLOCK * 7  BLANK ADJUSTMENÀT 0CCSTBA DATA 0  TABLE ADDRESS OF CRB OWNER 0*CCSMAP DATA 0  PDT MAP FILE ADDRESS *6 CCTCBM DATA CCTCBX MAP FILE FOR 1ST TCB IN CHAIN 60CCTCBL DATA 0  ADDRESS OF 1ST TCB IN CHAIN0.CCTMPA DATA 0  FIRST EXTENDED FLAGS WORD.CCTMP1 DATA €0  SAVED WOSW1 CCTMP2 DATA 0  SAVED WOSW2 CCTMP3 DATA 0  SAVED WOSW3 CCRBLN EQU$  CRB LENGTH  >CRBOFF EQU@-$-2 OFFSET TO FIND STRT OF CRB (DX10 ONLY) ><CCTCBX DATA 0,0,0,0,0,0 SAVED MAP FILE FOR SYS REQUEST <CCRBSZ EQU$ !@D ****************************************************************D&*  TRANSFER CONTROL BLOCK (TCB) &F!***************************************************************** F*TCB $MACRO TC,TM*TC= NEXT TCB ADDRESS *TM= TIMEOUT VALUETCB À $MACRO TC,TM& DATA 0  NEXT TCB MAPFILE ADDRESS &2 DATA :TC:NEXT TCB ADDRESS (REL TO MAPFILE) 26 DATA 0,0,0 REQUEST LENGTH,CHAR CNT,DATA OFFSET 6 BYTE :TM:TIMEOUT , BYTE 0 MOST SIG 8 BITS BUFFER ADDRESS , DATA 0  LEAST SIG 16 BITS ÀBUFFER ADDRESS  $END TCB * '  DORG 0 ! .TCLNKM DATA 0  NEXT TCB MAPFILE ADDRESS .6TCLNKA DATA 0  NEXT TCB ADDRESS (REL TO MAPFILE) 6:TCREQL DATA 0  DATA REQ LENGTH (BIT 0=1 IF LAST TCB) :.TCACTL DATA 0  ACTUAL DATA BYTE COUNT ON C.ÀOMPLETION 4TCOFFS DATA 0  DATA OFFSET FROM TCACTL(+ OR -) 4TCTIM0 BYTE 0  TIMEOUT6TCRADM BYTE 0  NEXT TCB ADDRESS (MOST SIG BITS) 66TCRADL DATA 0  NEXT TCB ADDRESS (LEAST SIG BITS) 6&TCBLEN EQU$  NORMAL TCB LENGTH&  RORG "  P€AGE "4TCOFFS DATA 0  DATA OFFSET FROM TCACTL(+ OR -) 4TCTIM0 BYTE 0  TIMEOUT6TCRADM BYTE 0  NEXT TCB ADDRESS (MOST SIG BITS) 66TCRADL DATA 0  NEXT TCB ADDRESS (LEAST SIG BITS) 6&TCBLEN EQU$  NORMAL TCB LENGTH&  RORG "  P