Directory of image this file is from
This file as a plain text file
/ 6 PLOTTER SUBROUTINES FUER XY8EC - INTERFACE / / V 001.A / / FEB-MAR 1976 W. HOUBEN / / AUFRUFE : / / CALL PLOTX ( ARG1 , ARG2 , ARG3 ) / / CALL WHERE ( ARG1 , ARG2 , ARG3 ) / / CALL XYPLT ( ARG1 , ARG2 ) / / CALL PENUP / / CALL PENDN / / ARG1 : X - KOORDINATE [ 0 - 1023 ] / / ARG2 : Y - KOORDINATE [ 0 - 1023 ] / / ARG3 : PEN STATUS ( 0=PEN DOWN , 1=PEN UP ) / SKPDF XYSF 6053 OPDEF XYCF 6056 OPDEF XYPU 6052 OPDEF XYPD 6051 OPDEF XYLX 6054 OPDEF XYLY 6055 ENTRY PLOTX ENTRY WHERE ENTRY XYPLT ENTRY PENUP ENTRY PENDN DUMMY ARG1 DUMMY ARG2 DUMMY ARG3 OPDEF JMPI 5400 OPDEF CDI 6203 ARG1, BLOCK 2 ARG2, BLOCK 2 ARG3, BLOCK 2 XPNT, ARG1 PNTR, 0 CNTR, 0 PLOTX, BLOCK 2 TAD XPNT DCA PNTR TAD (-6 DCA CNTR A1, TAD I PLOTX INC PLOTX# DCA I PNTR INC PNTR ISZ CNTR JMP A1 TAD I ARG3 / NEW PEN STATUS SPA / MOVE THE PEN ? JMP PLOTA / NO: CONTINUE SNA CLA / = 0 ? (PEN UP) JMP PL1 / <> 0 ! (PEN DOWN) TAD PLOTPN SNA CLA JMP PLOT1 CALL 0,PENUP JMP PLOT1 PL1, TAD PLOTPN SZA CLA JMP PLOT1 CALL 0,PENDN JMP PLOT1 PLOTA, CLA XYPU / RAISE THE PEN JMS PLOTWT DCA PLOTPN DCA PLOTNX / 0 TO X - CO-ORDINATE DCA PLOTNY / 0 TO Y - CO-ORDINATE DCA OLDX DCA OLDY XYLX XYLY XYPU / INITIALIZE JMS PLOTWT PLTRTN, RETRN PLOTX PLOT1, TAD PLOTNX / FETCH PREVIOUSE X CO-ORDINATE CIA CLL TAD I ARG1 / FORM NX-NPX SNL / L=0: NX<NPX CIA / ABSOLUTE VALUE OF DIFFERENCE DCA PLOTDX RAL DCA PLOTMV / SAVE SIGN BIT TAD I ARG1 / SET NEW DCA PLOTNX / PREVIOUS X TAD PLOTNY / FETCH PREVIOUS Y CO-ORDINATE CIA CLL TAD I ARG2 / FORM NY-NPY SNL / L=0: NY<NPY CIA / ABSOLUTE VALUE OF DIFFERENCE DCA PLOTDY TAD PLOTMV / SAVE SIGN BIT RAL / BIT 10 (1) DRUM DOWN (POSITIVE) DCA PLOTMV / BIT 11 (1) PEN LEFT (POSITIVE) TAD I ARG2 DCA PLOTNY / PREVIOUS Y TAD PLOTDX CIA CLL TAD PLOTDY SNL CLA / L=0: DELTA Y < DELTA X JMP PLOT2 TAD PLOTDX / REVERSE NUMBERS DCA PLOTNA TAD PLOTDY DCA PLOTDX TAD PLOTNA DCA PLOTDY IAC / SET MAJOR MOTION AND PLOTMV / INSTRUCTION TAD PLOTT1 JMP PL3 PLOT2, TAD PLOTMV CLL RAR TAD PLOTT2 PL3, DCA PLOTNA TAD I PLOTNA DCA PLOT4 TAD PLOTMV / SET COMBINED MOTION TAD PLOTT3 DCA PLOTMV TAD I PLOTMV DCA PLOTDB TAD PLOTDX CLL RAR DCA PLOTNA TAD PLOTDX CMA DCA PLOTMV PLOT3, ISZ PLOTMV SKP / ALL DONE ? JMP PLTRTN TAD PLOTNA TAD PLOTDY DCA PLOTNA TAD PLOTNA CMA CLL TAD PLOTDX SZL CLA / SINGLE MOTION JMP PLOT4 / COMBINED MOTION PLOTDB, HLT TAD PLOTDX CIA TAD PLOTNA DCA PLOTNA PL4, JMS PLOTWT JMP PLOT3 PLOT4, HLT JMP PL4 PLOTT1, PLOTT1# JMS PL JMS PR PLOTT2, PLOTT2# JMS DD JMS DU PLOTT3, PLOTT3# JMS DDPL JMS DDPR JMS DUPL JMS DUPR PLOTPN, 0 PLOTNX, 0 PLOTNY, 0 PLOTDX, 0 PLOTDY, 0 PLOTNA, 0 PLOTMV, 0 PLOTWT, 0 PL5, XYSF / WAIT FOR DONE FLAG JMP PL5 / NOT YET XYCF / CLEAR FLAG KSF JMPI PLOTWT / EXIT 6036 AND (177 TAD (-3 SZA CLA JMPI PLOTWT / EXIT CDI JMPI X7600 X7600, 7600 OLDX, 0 OLDY, 0 / / / PR, 0 ISZ OLDX JMS MOVE JMPI PR PL, 0 CMA TAD OLDX DCA OLDX JMS MOVE JMPI PL DU, 0 ISZ OLDY JMS MOVE JMPI DU DD, 0 CMA TAD OLDY DCA OLDY JMS MOVE JMPI DD DUPR, 0 ISZ OLDX JMS DU JMPI DUPR DUPL, 0 ISZ OLDY JMS PL JMPI DUPL DDPR, 0 CMA TAD OLDY DCA OLDY JMS PR JMPI DDPR DDPL, 0 CMA TAD OLDY DCA OLDY JMS PL JMPI DDPL MOVE, 0 TAD OLDX XYLX TAD OLDY XYLY JMPI MOVE / / GET CURRENT POSITION / WHERE, BLOCK 2 TAD XPNT DCA PNTR TAD (-6 DCA CNTR A2, TAD I WHERE INC WHERE# DCA I PNTR INC PNTR ISZ CNTR JMP A2 TAD OLDX DCA I ARG1 TAD OLDY DCA I ARG2 TAD PLOTPN DCA I ARG3 RETRN WHERE / / POINT PLOT ROUTINE / XYPLT, BLOCK 2 TAD XPNT DCA PNTR TAD (-4 DCA CNTR A3, TAD I XYPLT INC XYPLT# DCA I PNTR INC PNTR ISZ CNTR JMP A3 TAD I ARG1 DCA OLDX TAD OLDX XYLX JMS PLOTWT TAD I ARG2 DCA OLDY TAD OLDY XYLY JMS PLOTWT RETRN XYPLT / / PEN CONTROL ROUTINES / PENUP, BLOCK 2 XYPU JMS PLOTWT DCA PLOTPN RETRN PENUP PENDN, BLOCK 2 XYPD JMS PLOTWT IAC DCA PLOTPN RETRN PENDN END
*F