     000       JOB  ENTER PLOT POINTS FROM 1407
               CTL  4411
     *
     * This is a revision of a routine by Jack Bresenham
     * <bresenham@exchange.winthrop.edu> or <j.bresenham@computer.org>
     * by Van Snyder <vsnyder@math.jpl.nasa.gov>.  The changes to Jack's
     * routine are in lower case.
     *
               ORG  501
     *
     *                          TRAVEL SUBROUTINE
     *
     TRAVEL    SBR  LEAVE&3
               ZA   ZEROA,ALPHA
               ZA   XTRGT,DELX
               ZA                  YTRGT,DELY
               S    XPR,DELX
               S                   YPR,DELY
               MCW  XTRGT,XPR
               MCW                 YTRGT,YPR
               ZA   DELX,DELA
               ZA                  DELY,DELB
               MZ   *&8,DELA                 NEED MAGNITUDE SO  A B BITS
               MZ   *&1,DELB
     *                          DETERMINE OCTANT
               C    DELA,DELB
               BM   DELXN,DELX
               BM   DELYN,DELY
               MN   PXPY,D45
               BH   D00PY
     D00PX     MN   PX,D00
     SETDEL    ZS   DELA,DEL
               A    DELA           DELA NOW DOUBLED-SEE DRIVING LOOP
               A                   DELB NOW DOUBLED-SEE DRIVING LOOP
               B    TALPHA
     DELXN     BM   DELXYN,DELY
               MN   NXPY,D45
               BH   D00PY
     D00NX     MN   NX,D00
               B    SETDEL
     DELYN     MN   PXNY,D45
               BL   D00PX
     D00NY     MN   NY,D00
               B    DELAY
     D00PY     MN   PY,D00
     DELAY     MN   DELY,DELA                DELA S/B DELY  SAVE PLUS
               MCW
               MN   DELX,DELB                DELB S/B DELX
               MCW
               B    SETDEL
     DELXYN    MN   NXNY,D45
               BL   D00NX
               B    D00NY
     *                          PLOTTER DRIVING LOOP
     D00GO     MCW  %T0,D00,S                MOVE RELATIVE ZERO DEGREES
     TALPHA    C    ALPHA,DELA
     leave     be   *                        * dummy
               A    TWOA,ALPHA        NOTE   DELA HAS BEEN DOUBLED
               A    DELB,DEL          NOTE   DELB PREVIOUSLY DOUBLED
               BM   D00GO,DEL
               MCW  %T0,D45,S
               S    DELA,DEL          NOTE   DELA PREVIOUSLY DOUBLED
               B    TALPHA
     *                          CONSTANTS
     ALPHA     DCW  #6
     YTRGT     DCW  #6                  DESIRED Y COORDINATE
     XTRGT     DCW  #6                  DESIRED X COORDINATE
     DELY      DCW  #6                  Y2 MINUS Y1
     DELX      DCW  #6                  X2 MINUS X1
     YPR       DCW  #6                  PRESENT Y COORDINATE
     XPR       DCW  #6                  PRESENT X COORDINATE
     DELB      DCW  #6                  DEPENDENT VARIABLE DIFF
     DELA      DCW  #6                  INDEPENDENT VARIABLE DIFF
     DEL       DCW  #6                  DECISION DIFFERENCE
     D00       DA   1X1,G               RELATIVE 0 DEGREE MOVE
     D45       DA   1X1,G               RELATIVE 45 DEGREE MOVE
     PX        DCW  @3@                   0  DEGREE CODE
     PXPY      DCW  @2@                  45  DEGREE CODE
     PY        DCW  @1@                  90  DEGREE CODE
     NXPY      DCW  @8@                 135  DEGREE CODE
     NX        DCW  @7@                 180  DEGREE CODE
     NXNY      DCW  @6@                 225  DEGREE CODE
     NY        DCW  @5@                 270  DEGREE CODE
     PXNY      DCW  @4@                 315  DEGREE CODE
     ZEROA     DCW  &0
     TWOA      DCW  &2
     *      
     *                          END OF TRAVEL SUBROUTINE
     *      
     *                                  --CALLING SEQUENCE--
     *                               1.   ZA   DESIRED X COORDINATE, XTRGT
     *                               2.   ZA   DESIRED Y COORDINATE, YTRGT
     *                               3.   B    TRAVEL
     *      
     *                          XPR,YPR ARE UPDATED
     *                          TRAVEL EXECUTED
     *                          CONTROL RETURNED TO INSTR AFTER *B TRAVEL*
     x3        equ  99
     BEGINX    LCA  MXGX,47
               SW   27,MSGX-1
               MCE  XPR,33
               sbr  place&6,xtrgt
     type      lca  gmwm,48
               MCW  %T0,21,W
               CS   8
               lca  gmwm,8
     wait      bin  vin,q
               b    wait
     VIN       MCW  %T0,1,R
               sbr  x3
               BIN  TYPE,*
               bce  noplac,1,}
               BM   VMINUS,1
               mcw  za,place
               BWZ  VPLUS,1,B
               SW   1
     place     za   15998&x3,*
     noplac    bw   beginy,msgx-1
               B    TRAVEL
               B    BEGINX
     vminus    mcw  zs,place
     VPLUS     SW   2
               B    PLACE
     beginy    lca  msgx,47
               mn   y,47
               mn   y,21           convert msgx to msgy
               SW   27
               CW   MXGX-1
               MCE  YPR,33
               sbr  place&6,ytrgt
               B    TYPE
     *                          CONSTANTS
     gmwm      dcw  @}@                 group mark with word mark
     MSGX      DCW  @X NOW     0 -, ENTER NEXT X@
     y         dcw  @y@
     za        za
     zs        zs
               END  BEGINX

