*COMDECK  COMCMAC 
          CTEXT  COMCMAC - CENTRAL PROGRAM SYSTEM COMMUNICATION MACROS. 
*         COMMENT COPYRIGHT CONTROL DATA CORP. 1971.
 COMCMAC  SPACE  4
***       COMCMAC - CENTRAL PROGRAM SYSTEM COMMUNICATION MACROS.
*         G. R. MANSFIELD.  70/09/21. 
*         R. S. HORECK.     71/05/28. 
*         R. H. GOODELL.    71/10/10. (FROM SCOPE 3 *ACTCOM*) 
 COMCMAC  SPACE  4
***              THE SYSTEM MACROS PROVIDE THE USER WITH PREDEFINED 
*         CALLS FOR COMMONLY USED SYSTEM REQUESTS.
*         WHERE A PARAMETER REFERS TO AN ADDRESS EXPRESSION, THE
*         PARAMETER MAY BE A REGISTER NAME, A RELOCATABLE ADDRESS,
*         AN EXTERNAL SYMBOL NAME, OR AN ABSOLUTE ADDRESS.
*         WHERE A RECALL OPTION IS SPECIFIED, THE PRESENCE OF THE 
*         OPTION CAUSES RECALL OPERATION TO TAKE PLACE. 
 SYSCOM   EJECT  4
***       SYSCOM - DEFINE SYSTEMS COMMUNICATION SYMBOLS.
* 
* 
*         SYSCOM B1 
*         IF *B1* IS PRESENT, USER DEFINES (B1) = 1.
  
  
          PURGMAC SYSCOM
 SYSCOM   MACRO  N
  IFC EQ,$N$B1$,1 
  B1=1
****      PROGRAM CONTROL AREA
  
*                            FIRST ARGUMENT 
ARGR = 2
*                            ARGUMENT COUNT (BITS 0 - 17) 
ACTR = 64B
*                            *LDR* COMPLETION (BIT 29)
LDRR = 67B
*                            CONTROL CARD (8 LOCATIONS) 
CCDR = 70B
*                            LINES/PRINTER PAGE 
LINP = 60D
  ENDM
 MOVE     SPACE  4
***       MOVE - MOVE DATA BLOCK. 
* 
* 
*         MOVE   COUNT,FROM,TO
*         ENTRY  *COUNT* = WORD COUNT OF BLOCK TO BE MOVED. 
*                *FROM* = ADDRESS OF FIRST WORD OF BLOCK. 
*                *TO* = ADDRESS OF FIRST WORD OF DESTINATION. 
*         CALLS  MVE=  (COMCMVE). 
  
  
          PURGMAC MOVE
 MOVE     MACRO  C,F,T
  R= X1,C 
  R= X2,F 
  R= X3,T 
  RJ =XMVE= 
  ENDM
 READCB   SPACE  4
***       READCB - READ FILE NON-STOP WITH CONTROL BYTES. 
* 
* 
*         READCB FILE,RECALL
*         CALLS  CIO=.
  
  
          PURGMAC READCB
 READCB   MACRO  F,L
  '?CIO#M1 F,L,200B 
  ENDM
 WRITECB  SPACE  4
***       WRITECB - WRITE DATA FROM CIO BUFFER WITH CONTROL BYTES.
* 
* 
*         WRITECB FILE,RECALL 
*         CALLS  CIO=.
  
  
          PURGMAC WRITECB 
 WRITECB  MACRO  F,L
  '?CIO#M1 F,L,204B 
  ENDM
  
          PURGMAC COPY
 COPY     MACRO  I,L,W,N,C
  R= X6,C 
  R= A5,I 
  R= A0,L 
  R= X0,W 
  R= X5,N 
  RJ =XCPY= 
  ENDM
  
          ENDX
