*COMDECK  COMCWTO            WRITE ONE WORD.                             COMCWTO
 WTO      CTEXT  COMCWTO - WRITE ONE WORD.                               COMCWTO
 WTO      SPACE  4,10                                                    COMCWTO
          IF     -DEF,QUAL$,1                                            COMCWTO
          QUAL   COMCWTO                                                 COMCWTO
          BASE   D                                                       COMCWTO
*         COMMENT COPYRIGHT CONTROL DATA CORPORATION. 1970, 1978.        COMCWTO
 WTO      SPACE  4,10                                                    COMCWTO
***       WTO - WRITE ONE WORD.                                          COMCWTO
*                                                                        COMCWTO
*         D. A. CAHALANDER.  70/10/09.                                   COMCWTO
*         C. J. CONRAD.      81/08/06.
* 
*         ******************************************************* 
*         * THIS COMMON DECK IS PART OF THE COMMON COMMON DECKS * 
*         * RESIDING ON THE COMPASS PROGRAM LIBRARY, AND BEING  * 
*         * MAINTAINED BY THE COMPASS PROJECT.  ANY CHANGES     * 
*         * REQUIRED SHOULD BE DIRECTED TO THE COMPASS PROJECT  * 
*         * THROUGH THE PROPER PROCEDURE.                       * 
*         ******************************************************* 
* 
*                                                                        COMCWTO
*         WTO WRITES ONE WORD TO A FILE FROM X6.                         COMCWTO
 WTO      SPACE  4,10                                                    COMCWTO
***       WTO WRITES ONE WORD TO A CIO BUFFER FROM X6.                   COMCWTO
*         IF THE BUFFER BECOMES SUFFICIENTLY FULL TO REQUIRE WRITING,    COMCWTO
*         WTO WILL PERFORM A *WRITE* FUNCTION UNLESS THE SYMBOL *WRIF$*  COMCWTO
*         IS DEFINED. IN THIS CASE, THE CIO FUNCTION THAT IS IN THE FET  COMCWTO
*         WILL BE RE-ISSUED.                                             COMCWTO
*                                                                        COMCWTO
*         ENTRY  (A1) = ADDRESS OF IN POINTER.                           COMCWTO
*                (X1) = IN.                                              COMCWTO
*                (X6) = WORD TO WRITE.                                   COMCWTO
*                                                                        COMCWTO
*         EXIT   (X2) = ADDRESS OF FET OF FILE.                          COMCWTO
*                (B1) = 1.                                               COMCWTO
*                                                                        COMCWTO
*         USES   X - 1, 2, 3, 4, 6, 7.                                   COMCWTO
*                B - 1.                                                  COMCWTO
*                A - 1, 2, 3, 4, 6, 7.                                   COMCWTO
*                                                                        COMCWTO
*         MACROS RECALL, WRITE. 
                                                                         COMCWTO
                                                                         COMCWTO
 WTO1     SA6    X1          STORE WORD                                  COMCWTO
          SX2    A1-2                                                    COMCWTO
          SA7    A1          UPDATE IN                                   COMCWTO
                                                                         COMCWTO
 WTO=     SUBR               ENTRY/EXIT                                  COMCWTO
 WTO2     BSS    0                                                       COMCWTO
          IF     -DEF,B1=1,1                                             COMCWTO
          SB1    1                                                       COMCWTO
          SA2    A1-2        READ FET+0 
          SA3    A1+B1       READ OUT                                    COMCWTO
          SX7    X1+B1       IN+1                                        COMCWTO
          IX4    X7-X3       IN+1 - OUT                                  COMCWTO
          NG     X4,WTO1     IF NO WRAP AROUND                           COMCWTO
          SA3    A3+B1       READ LIMIT                                  COMCWTO
          ZR     X4,WTO3     IF BUFFER FULL                              COMCWTO
          SX3    X3 
          IX4    X7-X3       IN+1 - LIMIT 
          SA3    A1-B1       READ FIRST 
          NZ     X4,WTO1     IF IN+1 .NE. LIMIT 
          SX7    X3          IN+1 = FIRST 
          SA3    A1+B1       READ OUT 
          IX4    X7-X3
          NZ     X4,WTO1     IF IN+1 .NE. OUT 
                                                                         COMCWTO
*         DUMP CIRCULAR BUFFER.                                          COMCWTO
                                                                         COMCWTO
 WTO3     BX1    X2 
          BX4    X6          SAVE WORD
          LX1    59-0 
          SX2    A2 
          NG     X1,WTO5     IF NOT BUSY                                 COMCWTO
          ZR     X1,WTO5     IF BLANK FET 
          RECALL X2                                                      COMCWTO
 WTO4     SA1    X2+2        READ IN                                     COMCWTO
          BX6    X4                                                      COMCWTO
          EQ     WTO2        CONTINUE WRITE                              COMCWTO
 WRIF$    IF     DEF,WRIF$                                               COMCWTO
 WTO5     SA1    X2          RE-ISSUE CURRENT WRITE FUNCTION             COMCWTO
          SX6    774B                                                    COMCWTO
          BX7    X6*X1                                                   COMCWTO
          RJ     =XCIO=                                                  COMCWTO
 WRIF$    ELSE   1                                                       COMCWTO
 WTO5     WRITE  X2                                                      COMCWTO
          EQ     WTO4        CONTINUE WRITE                              COMCWTO
 WTO      SPACE  4,10                                                    COMCWTO
          BASE   *                                                       COMCWTO
 QUAL$    IF     -DEF,QUAL$                                              COMCWTO
          QUAL   *                                                       COMCWTO
 WTO=     EQU    /COMCWTO/WTO=                                           COMCWTO
 QUAL$    ENDIF                                                          COMCWTO
 WTO      ENDX                                                           COMCWTO
