3 / HP 7475 PLOTTER SUBROUTINES
5 / MUST ASSEMBLED WITH USER PROGRAMM AND TXIO32
6 / WITH /F OPTION. START AT 4000
7 / MAY START AT 4200 IF EXTMAC IS DEFINED.
9 / DRAWA4 INIT PLOTTER, PAPER SIZE A4
10 / DRAWA3 INIT PLOTTER, PAPER SIZE A3
11 / DRAW COPY TEXT TO PLOTTER DEV 33/34
16 / 22-MAY-85 REV 0.0 KJ.S.
17 / 11-JUN-85 REV 0.1 KJ.S. PEN NO. AS MACRO ARG.
18 / 12-JUN-85 REV 0.2 KJ.S. OP-AMP'S ADDED
19 / 12-JUN-85 REV 0.3 KJ.S. IC PATTERN ADDED
20 / 24-APR-86 REV 0.4 KJ.S. ERROR MESSAGES ADDED
21 / 28-APR-86 REV 0.5 KJ.S. CHANGE PAPER ADDED
22 / 29-APR-86 REV 0.6 KJ.S. SUBROUTINE DRAW
23 / 06-MAY-86 REV 0.7 KJ.S. BASIC DRAW WITHOUT MACRO
24 / 16-JUN-86 REV 0.8 KJ.S. BUFFER IN DIFFERENT FIELD
25 / 05-JUL-86 REV 0.9 KJ.S. DELAY IN DRAWCP
34 / TRANSFER PAL8 TEXT-STRING TO HP7475 PLOTTER
35 / OUTPUT DEVICE IS 33/34.
36 / IF THE PLOTTER IS NOT INITALIZED BY 'DRAWA3' OR 'DRAWA4',
37 / THE DEFAULT INITIALISATION IS FOR DIN A4 PAPER SIZE.
38 / BEFORE START, THE CHANGE PAPER ROUTINE 'DRAWCP'
39 / IS CALLED AND A MESSAGE IS DISPLAYED ONLY ON TTY
40 / IF THE PLOTTER IS READY. THE PAPER SIZE LED
41 / IS BLINKING UNDER ALL CONDITIONS: LOAD PAPER AND
42 / IF THE LED IS STILL BLINKING OR IF NO NEW PAPER
43 / IS NEEDED, PRESS 'ENTER'.
44 / BEFORE EXIT THE ERROR STATUS OF THE PLOTTER
45 / IS DISPLAYED WITH FULL EXPLANATION ON TTY.
47 / ENTRY: AC = POINTER TO TEXT
48 / ARG1: BUFFER FIELD XXNX
53 DCA DRWSTO / SAVE TEXT POINTER
54 TAD I DRAW / GET FIELD
60 SZA CLA / PLOTTER INITIALIZED ?
61 JMS DRAWA4 / NO: A4 DEFAULT AND CHANGE PAPER
63 DCA TTOFLD / SET FIELD INSTRUCTION
67 DCA TTOFLD / RESET FIELD INSTRUCTION
68 JMS DRAWER / READ ERROR STATUS
74 / SUBROUTINE DRAWA3 AND DRAWA4
76 / INITIALISATION OF THE PLOTTER FOR DIFFERENT
77 / PAPER SIZE. 'DRAWCP' FOR CHANGE PAPER IS CALLED.
89 DCA DRWIFL / CLEAR FLAG
99 DCA DRWIFL / CLEAR FLAG
103 DRWIFL, -1 / FLAG CLEARED AFTER INITIALISATION
107 / ENABLE OPERATOR TO CHANGE PAPER
108 / THERE ARE THREE SEQUENCES TO INTERRUPT THE
109 / PLOT TO ENABLE THE OPERATOR TO CHANGE PAPER
111 / 1. SET PAPER SIZE LED BLINKING AND WAIT FOR PLOTTER
113 / IF THE PAPER LEVER IS UP, THE ROUTINE WAITS
114 / UNTIL THE PAPER LEVER IS DOWN AGAIN.
115 / 2. TYPE MESSAGE ON TTY AND WAIT UNTIL THE PAPER
116 / LEVER IS HIGH (PAPER CHANGE) OR THE 'ENTER'
117 / IS PRESSED. THE LED IS STILL BLINKING.
118 / 3. WAIT FOR PLOTTER READY (STATUS=8) SO PLOTTING
119 / CONTINUES AFTER LEVER LOW OR 'ENTER'.
120 / THE PAPER SIZE LED BLINKING IS STOPPED.
129 SZA CLA / PLOTTER INITIALIZED ?
130 JMS DRAWA4 / NO: A4 DEFAULT
131 TAD (330 / SET INPUT DEV FOR ERROR CODE
133 TAD (7200 / DISABLE TTI ECHO
135 DRWCP1, TAD (DRWCPM / SEND STATUS COMMAND
140 TAD DRWCPB / CHECK STATUS
141 TAD (-7000 / MUST BE "8
142 SZA CLA / PLOTTER OUTPUT = 8D ?
143 JMP DRWCP1 / NO: ASK AGAIN
144 TAD (40 / YES: SEND OPERATOR MESSAGE
145 JMS TODC / CHANGE DEVICE CODE
150 DRWCP2, TAD (DRWCPM / SEND STATUS COMMAND
155 TAD DRWCPB / CHECK STATUS
157 SNA CLA / STATUS.NE.8D ?
159 DRWCP3, TAD (DRWCPN / YES: SEND STATUS COMMAND
164 TAD DRWCPB / CHECK STATUS
166 SZA CLA / STATUS = 8D ?
176 JMP I DRAWCP / YES: DONE
182 DRWCPB, ZBLOCK 4 / INPUT BUFFER
188 / UNLOAD PEN AND EXIT TO OS/8
194 DRAWEX, NOP / JMP OR JMS WORKS
197 SZA CLA / PLOTTER INITIALIZED ?
198 JMS DRAWA4 / NO: A4 DEFAULT
205 / READ PLOTTER ERROR STATUS AND TYPE
206 / ERROR WITH FULL EXPLANATION ON TTY
215 SZA CLA / PLOTTER INITIALIZED ?
216 JMS DRAWA4 / NO: A4 DEFAULT
218 JMS TTO / SEND MESSAGE
219 JMS DRWERM / READ ERROR CODE
220 TAD (DRWERC / EXTENDED ERROR CODE
226 DRWERM, 0 / READ ERROR CODE AND TYPE
227 CLA / ERROR MESSAGE ON TTY
228 TAD (330 / SET INPUT DEV FOR ERROR CODE
230 TAD (7200 / DISABLE TTI ECHO
235 TAD DRWINB / CHECK ERROR CODE
238 SNA / ERROR CODE = 0 ?
241 DCA DRWESC / NO: ERROR
242 TAD DRWINB / CHECK SECOND CHARACTER
245 JMP DRWERN / YES: ONE DIGIT ONLY
246 TAD (-60 / NO: ERROR CODE 10 - 16
252 SNA CLA / ERROR CODE 1<16 ?
254 TAD (10 / NO: UNDEFINED ERROR
258 TAD (DRWEMS / ADD TABLE START
262 TAD (DRWEMH / MESSAGE HEADER
270 DRWESC, 0 / ERROR CODE
272 DRWEMH, TEXT />DRAW ERROR /
294 DRWIIN, TEXT /&34$[$.N;19:$[$.H32;;17:IN;SP0;PU;&04>DRAW DIN /;0
295 DRWIA4, TEXT /A4$JM$&00PS4;IP603,521,10603,7721;SC0,250,0,180;IW;/;0
296 DRWIA3, TEXT /A3$JM$&00PS3;IP170,602,15370,10602;SC0,380,0,250;IW;/;0
299 DRWCPM, TEXT /DP;$[$.O/;0
300 DRWCPN, TEXT /DC;$[$.O/;0
301 DRWCPO, TEXT /&04$JM$>DRAW CHANGE PAPER !!&00/;0
302 DRWCPX, TEXT /&04$JM$&00/;0
305 DRWEXM, TEXT /&04>DRAW EXIT$JM$&00PU;PA0,0;SP0;/;0
309 DRWERC, TEXT /$[$.E;/;0
310 DRWE01, TEXT /$I$INSTRUCTION NOT RECOGNIZED !!$JM$/;0
311 DRWE02, TEXT /$I$WRONG NUMBER OF PARAMETER !!$JM$/;0
312 DRWE03, TEXT /$I$OUT-OF-RANGE PARAMETER !!$JM$/;0
313 DRWE04, TEXT /$I$?$JM$/;0
314 DRWE05, TEXT /$I$UNKNOWN CHARACTER SET !!$JM$/;0
315 DRWE06, TEXT /$I$POSITION OVERFLOW !!$JM$/;0
316 DRWE08, TEXT /$I$VECTOR RECEIVED WHILE PINCH WHEELS RAISED !!$JM$/;0
317 DRWE10, TEXT /$I$OUTPUT INSTRUCTION RECEIVED IS IGNORED !!$JM$/;0
318 DRWE11, TEXT /$I$INVALID BYTE RECEIVED !!$JM$/;0
319 DRWE12, TEXT /$I$INVALID BYTE RECEIVED !!$JM$/;0
320 DRWE14, TEXT /$I$TOO MANY PARAMETER RECEIVED !!$JM$/;0
321 DRWE15, TEXT /$I$TRANSMISSION ERROR !!$JM$/;0
322 DRWE16, TEXT /$I$INPUT BUFFER OVERFLOW !!$JM$/;0
327 / TXIO32 FOLLOWS HERE AT 5400