Previous File   Multiple Pages   Next File

* 0520-001-H002 (O16-DPT9) DRAWING NO. 41285751-001-02 PAGE 1

0001 * 0520-001-H002 (O16-DPT9) DRAWING NO. 41285751-001-02 0002 * 0003 * 0004 * 0005 * COMPUTER: H316, DDP-516 0006 * 0007 * 0008 * PROGRAM CATEGORY: VERIFICATION AND TEST 0009 * 0010 * 0011 * PROGRAM TITLE: O16-DPT9 0012 * TEST THE DIGITAL INCREMENTAL PLOTTER OPTION 0013 * 316/516-211X 0014 * 0015 * 0016 * 0017 * 0018 * 0019 * 0020 * 0021 * 0022 * 0023 * 0024 * APPROVAL DATE 0025 * 0026 * 0027 * 0028 * PROG---------------------- ------------ 0029 * 0030 * 0031 * SUPR---------------------- ------------ 0032 * 0033 * 0034 * QUAL---------------------- ------------ 0035 * 0036 * 0037 * NO. OF PAGES ------------ 0038 * 0039 * 0040 * REVISIONS 0041 * 0042 * REV. B ECO 26-FEB-2017 0043 * REV. A 02-MAR-1970 0044 * 0045 * 0046 * AUTHOR 0047 * 0048 * HONEYWELL - COMPUTER CONTROL DIVISION (EUROPE) 0049 * 0050 *
* 0520-001-H002 (O16-DPT9) DRAWING NO. 41285751-001-02 PAGE 2

0051 * PURPOSE 0052 * 0053 * TO TEST THE DIGITAL INCREMENTAL PLOTTER, OPTION 316/516-2111/2112/ 0054 * 2113/2114, IN I/O BUS MODE 0055 * 0056 * 0057 * RESTRICTIONS 0058 * 0059 * THE PROGRAM WILL OPERATE ON A CONFIGURATION WITH AN H316 OR 0060 * DDP-516 COMPUTER. WITH A DIGITAL INCREMENTAL PLOTTER, AND 0061 * WITH EITHER AN ASR-33 OR AN ASR-35 0062 * 0063 * 0064 * STORAGE 0065 * 0066 * 3466 (OCTAL) 0067 * 1846 (DECIMAL) 0068 * 0069 * 0070 * USE 0071 * 0072 * COMPUTER OPERATION 0073 * 0074 * 1 LOAD THE SELF-LOADING SYSTEM TAPE OF O16-DPT9 0075 * 0076 * 2 CHECK THAT P='7632 0077 * 0078 * 3 MASTER CLEAR. P = '1000, START, IF H316 BEING USED, 0079 * SET SENSE SWITCH 1 0080 * 0081 * 4 TYPE IN THE APPROPRIATE ANSWERS TO THE PARAMETER 0082 * QUESTIONS 0083 * 0084 * AFTER THE LAST QUESTION IS ANSWERED THE PROGRAM GOES THROUGH 0085 * THE INITIALISATION ROUTINE AND THEN THE QUESTION 'TEST NO?' 0086 * IS ASKED 0087 * 0088 * 5 TYPE IN THE REQUIRED ANSWER (IF THE ANSWER IS NUMBER 2 0089 * OR LETTER A, SEE 6 BELOW) 0090 * 0091 * WHEN THE REQUIRED TEST NUMBER IS TYPED IN. THE PROGRAM 0092 * ATTEMPTS TO PLOT THE TEST PATTERN/PATTERNS AND THE 0093 * APPROPRIATE CONDITIONS ARE TESTED EITHER SUCCESSFULLY OR AN 0094 * ERROR CONDITION FOUND 0095 * 0096 * 6 IF THE ANSWER TO QUESTION 'TEST NO?' IS NUMBER 2 OR 0097 * LETTER A. SENSE SWITCH 4 MUST BE RESET BEFORE PATTERN 0098 * 2 IS COMPLETED IF OPTIONAL SPEED PRINTDUT IS REQUIRED. 0099 * OR SET IF NOT REQUIRED 0100 *
* 0520-001-H002 (O16-DPT9) DRAWING NO. 41285751-001-02 PAGE 3

0101 * 7 THE TEST PROCEDURE MAY BE REPEATED FOR THE SAME OR 0102 * ANOTHER PLOTTER AS REQUIRED 0103 * 0104 * 8 TYPE IN THE ANSWER E (TO THE QUESTION 'TEST NO?') WHEN 0105 * IT IS DESIRED TO END THE SERIES OF TESTS 0106 * 0107 * 0108 * PARAMETER QUESTIONS 0109 * 0110 * ANSWERS TO ALL THE QUESTIONS MUST BE TERMINATED BY A CARRIAGE 0111 * RETURN CHARACTER. IN CASE THE LAST OR THE MOST PROBABLE 0112 * ANSWER (SHOWN ADJACENT TO THE QUESTION) SUFFICES, THE ANSWER 0113 * SHOULD ONLY BE A CARRIAGE RETURN CHARACTER. IF AN ILLEGAL 0114 * ANSWER IS TYPED IN, THE QUESTION CONCERNED WILL OE REPEATED. 0115 * A DOLLAR SIGN CHARACTER WITHIN ANY ANSWER WILL MAKE THE 0116 * PARAMETER QUESTIONS REPEAT FROM THE VERY FIRST ONE. 0117 * 0118 * QUESTION 1 OPTION NO 1X/ 0119 * ANSWER 11, 12, 13 OR 14 (THE TWO LEAST SIGNIFICANT 0120 * DIGITS OF THE OPTION NUMBER 211X) 0121 * NO PROBABLE ANSWER 0122 * 0123 * QUESTION 2 DEV ADDR 27/ 0124 * ANSWER TWO-DIGIT OCTAL DEVICE CODE IN THE RANGE 0125 * 00-77 0126 * THE PROBABLE ANSWER IS 27 0127 * 0128 * QUESTION 3 STAND INTRPT Y / 0129 * ANSWER Y (YES) OR N (NO) 0130 * THE PROBABLE ANSWER IS Y 0131 * 0132 * IF THE ANSWER TO Q3 IS Y, Q4 IS ASKED (Q5 0133 * IS NOT POSED; BUT IF THE ANSWER IS N, Q5 0134 * IS ASKED (Q4 IS NOT POSED) 0135 * 0136 * QUESTION 4 MASK BIT 13/ 0137 * ANSWER TWO-DIGIT DECIMAL NUMBER (OTB BIT NUMBER 0138 * ASSIGNED TO THE PLOTTER) IN THE RANGE 01-16 0139 * THE PROBABLE ANSWER IS 13 0140 * 0141 * QUESTION 5 PRTY INTRPT LINE 01/ 0142 * ANSWER TWO-DIGIT DECIMAL INTERRUPT LINE NUMBER IN 0143 * THE RANGE 01-48 0144 * THE PROBABLE ANSWER IS 01 0145 * 0146 * WHEN Q4/Q5 IS ANSWERED THE PROGRAM GOES THROUGH 0147 * INITIALISATION ROUTINE AND THE FOLLOWING QUESTION IS ASKED: 0148 * 0149 * QUESTION 6 TEST NO? 0150 * ANSWER I, 1, 2, 3, 4, A OR E
* 0520-001-H002 (O16-DPT9) DRAWING NO. 41285751-001-02 PAGE 4

0151 * NO PROBABLE ANSWER 0152 * 0153 * IF THE ANSWER TO Q6 IS LETTER I, INITIALISATION IS REPEATED. 0154 * IF THE ANSWER IS NUMBER 1, 2, 3 OR 4, THE APPROPRIATE TEST 0155 * ONLY IS PERFORMED. IF THE ANSWER IS LETTER A, ALL FOUR 0156 * TESTS ARE PERFORMED SEQUENTIALLY. BUT IF THE ANSWER IS 0157 * LETTER E, AN END MESSAGE IS TYPED OUT AND THE PROGRAM COMES 0158 * TO A HALT. 0159 * 0160 * 0161 * ERRORS 0162 * 0163 * DETECTION OF AN ERROR IS INDICATED BY A MESSAGE ON THE ASR. THE 0164 * TABLE BELOW EXPLAINS THE ERROR MESSAGES THAT MAY BE PRINTED OUT. 0165 * 0166 * LMTL - LIMIT LATE - NOT OCCURED BEFORE FIVE PERCENT ABOVE 0167 * SPECIFIED VALUE 0168 * LMTE - LIMIT EARLY - OCCURED LESS THAN FIVE PERCENT BELOW 0169 * SPECIFIED VALUE 0170 * BSMC - PLOTTER BUSY AFTER MASTER CLEAR 0171 * ITMC - PLOTTER INTERRUPTING AFTER MASTER CLEAR 0172 * ITMP - PLOTTER INTERRUPTING WHEN MASK RESET 0173 * NIMS - PLOTTER NOT INTERRUPTING WHEN MASK SET 0174 * NBXX - PLOTTER NOT BUSY IMMEDIATELY AFTER MOVING XX 0175 * BSXX - PLOTTER REMAINING BUSY 4(4.2 OPTION 2112)MILLI-SECONDS 0176 * AFTER MOVING XX 0177 * WHERE XX MAY BE 0178 * NT-NORTH - PAPER UP 0179 * ST-SOUTH - PAPER DOWN 0180 * ET-EAST - PEN RIGHT 0181 * WT-WEST - PEN LEFT 0182 * NE-NORTHEAST - PAPER UP, PEN RIGHT 0183 * NW-NORTHWEST - PAPER UP, PEN LEFT 0184 * SE-SOUTHEAST - PAPER DOWN, PEN RIGHT 0185 * SW-SOUTHWEST - PAPER DOWN, PEN LEFT 0186 * UP - PEN UP 0187 * DN - PEN DOWN 0188 * NIND - NO INTERRUPT WITHIN 4(4.2 OPTION 2112)MILLI-SECONDS 0189 * (DIRECTIONAL) 0190 * IVCD - INTERRUPT NOT CAUSED BY PLOTTER (DIRECTIONAL) 0191 * BAID - PLOTTER REMAINING BUSY AFTER INTERRUPT (DIRECTIONAL) 0192 * NINZ - NO INTERRUPT WITHIN 25 MILLI-SECONDS (Z-AXIS) 0193 * IVCZ - INTERRUPT NOT CAUSED BY PLOTTER (Z-AXIS) 0194 * BAIZ - PLOTTER REMAINING BUSY AFTER INTERRUPT (Z-AXIS) 0195 * WHERE Z-AXIS IS VERTICAL LINE OF TRAVEL OF THE PEN 0196 * 0197 * NB ALL TIMINGS AND DELAYS ARE CALCULATED USING A MACHINE 0198 * CYCLE TIME OF 0.86 MICRO-SECONDS FOR DDP-516 0199 * AND 1.6 MICRO-SECONDS FOR H316 0200 *
* 0520-001-H002 (O16-DPT9) DRAWING NO. 41285751-001-02 PAGE 5

0201 * AFTER AN ERROR MESSAGE IS OUTPUT, THE PEN IS MOVED NORTH TWENTY 0202 * UNIT LENGTHS AND Q6 (TEST NO?) IS ASKED 0203 * 0204 * 0205 * METHOD 0206 * 0207 * BEFORE A TEST IS RUN ON A PLOTTER, THE RELEVANT PARAMETERS ARE SET 0208 * UP BY TYPING IN APPROPRIATE ANSWERS TO THE PARAMETER QUESTIONS AS 0209 * DESCRIBED ABOVE. AFTER THE FIRST OUESTION IS ANSWERED UNIT, LMAX 0210 * AND LMIN ARE SET UP AS DESCRIBED BELOW: 0211 * 0212 * OPTN UNIT (NUMBER OF STEPS IN ONE UNIT LENGTH) 0213 * ---- ---- ------------------------------------ 0214 * 2111 20 = 20*0.005 IN = 0.1 IN 0215 * 2112 10 = 10*0.010 IN = 0.1 IN 0216 * 2113 20 = 20*0.100 MM = 2.0 MM 0217 * 2114 10 = 10*0.200 MM = 2.0 MM 0218 * 0219 * OPTN LMAX (NUMBER OF STEPS IN MAXIMUM RANGE OF EAST-WEST LIMIT) 0220 * ---- ---- ----------------------------------------------------- 0221 * 2111 2730 = (13/0.005)*(21/20) 0222 * 2112 1365 = (13/0.010)*(21/20) 0223 * 2113 3465 = (330/0.10)*(21/20) 0224 * 2114 1733 = (330/0.20)*(21/20) 0225 * 0226 * OPTN LMIN (NUMBER OF STEPS IN MINIMUM RANGE OF EAST-WEST LIMIT) 0227 * ---- ---- ----------------------------------------------------- 0228 * 2111 2470 = (13/0.005)*(19/20) 0229 * 2112 1235 = (13/0.010)*(19/20) 0230 * 2113 3135 = (330/0.10)*(19/20) 0231 * 2114 1567 = (330/0.20)*(19/20) 0232 * 0233 * WHEN THE LAST PARAMETER QUESTION IS ANSWERED, THE PROGRAM GOES 0234 * THROUGH INITIALISATION ROUTINE, CHECKING BUSY AND INTERRUPT FLIP- 0235 * FLOPS. THE LIMIT IS ALSO CHECKED TO ENSURE THAT IT DOES NOT OCCUR 0236 * IN LESS THAN FIVE PERCENT OF THE SPECIFIED VALUE AND DOES OCCUR 0237 * WITHIN MORE THAN FIVE PERCENT OF THE SPECIFIED VALUE. AFTER THAT 0238 * THE QUESTION 'TEST N0?' IS ASKED. IF IT IS DESIRED TO REPEAT THE 0239 * INITIALISATION THE ANSWER SHOULD BE LETTER I, OTHERWISE IT SHOULD 0240 * BE 1, 2, 3, 4 OR A (ALL TESTS SEDUENTIALLY).THE APPROPRIATE 0241 * TEST/TESTS WILL THEN BE PERFORMED. ANY OR ALL TESTS MAY NOW BE 0242 * REPEATED BY RETYPING THE ANSWER. WHEN IT IS DESIRED TO END THE 0243 * SERIES OF TESTS, THE ANSWER SHOULD BE LETTER E. IF AN ERROR 0244 * CONDITION IS FOUND, THE PEN IS MOVED UP; THE APPROPRIATE ERROR 0245 * MESSAGE IS TYPED OUT; THE PEN IS MOVED NORTH TWENTY UNIT LENGTHS 0246 * AND CONTROL IS RETURNED TO THE ASR BY ASKING 'TEST NO?'. 0247 * 0248 * 0249 * TEST PATTERNS 0250 *
* 0520-001-H002 (O16-DPT9) DRAWING NO. 41285751-001-02 PAGE 6

0251 * ALL PATTERNS ARE PLOTTED FROM THE LEFT HAND SIDE AND A GAP OF 0252 * THIRTY UNIT LENGTHS IS KEPT IN BETWEEN THE PATTERNS 0253 * 0254 * 1 PEN MOVEMENT TEST - DOTTED LINE 0255 * ------------------------------- 0256 * THIS TEST CONSISTS OF A DOTTED LINE DRAWN FROM WEST TO 0257 * EAST FOR A DISTANCE OF ONE HUNDRED AND TWENTY UNITS. 0258 * SUCH THAT THE DOTS AND SPACES ARE EACH ONE UNIT LENGTH. 0259 * THIS IS REPEATED IN ALTERNATE DIRECTIONS WITH 0260 * ALTERNATING DOTS AND SPACES ON EACH LINE. THE LINE 0261 * SEPARATION IS ONE UNIT. 0262 * 0263 * EIGHT EINES ARE PLOTTED WITHOUT INTERRUPT CONTROL. 0264 * 0265 * 2 INCREMENT AND SPEED TEST - SQUARE SPIRAL 0266 * ---------------------------------------- 0267 * THIS TEST CONSISTS OF A DIVERGENT SQUARE SPIRAL DRAWN 0268 * IN AN ANTI-CLOCKWISE DIRECTION, COMMENCING AT ONE UNIT 0269 * LENGTH NORTH TO SOUTH AND ENDING AT TWENTY UNIT LENGTHS 0270 * EAST TO WEST, THE INCREMENT EMPLOYED BEING ONE UNIT. 0271 * THE FIGURE IS TIMED AND THE SPEED (NUMBER OF MEMORY 0272 * CYCLES PER INCREMENT) IS TYPED OUT FOR EACH FIGURE 0273 * IF SENSE SWITCH 4 IS OFF. 0274 * 0275 * FOUR FIGURES ARE PLOTTED IN A ROW SEPARATED BY TEN 0276 * UNITS. TWO ROWS ARE DRAWN (ROW SEPARATION BEING TEN 0277 * UNITS), AND INTERRUPT CONTROL IS USED ONLY WHILE 0278 * PLOTTING THE SPIRALS. 0279 * 0280 * 3 FULL DIRECTIONAL TEST - SIXTEEN POINTED STAR 0281 * -------------------------------------------- 0282 * THIS TEST CONSISTS OF A SIXTEEN POINTED SYMMETRICAL 0283 * STAR OCCUPYING A CIRCULAR AREA OF TWENTY UNIT DIAMETER. 0284 * ALL EIGHT HARDWARE DIRECTIONS ARE EMPLOYED. AND EIGHT 0285 * SOFTWARE-COMPUTED DIRECTIONS. THE TEST CHECKS FOR 0286 * EQUAL PRECISION IN THE MAJOR AND MINOR PLOTTING 0287 * DIRECTIONS. AND A NON-COINCIDENCE OF THE CENTRE 0288 * OF THE FIGURE 0289 * 0290 * THREE FIGURES ARE PLOTTED IN A ROW SEPARATED RY TWENTY 0291 * UNITS, THREE ROWS ARE DRAWN (ROW SEPARATION BEING TEN 0292 * UNITS), AND INTERRUPT CONTROL IS USED THROUGHOUT. 0293 * 0294 * 4 ALIGNMENT TEST - DIAMOND MESH 0295 * ----------------------------- 0296 * THIS TEST DRAWS A COMPLEX FIGURE CONSISTING OF SIX 0297 * DIAMONDS DRAWN BETWEEN HORIZONTAL PARALLEL LINES. THE 0298 * DIAMOND DIAGONALS ARE ALSO DRAWN. THE PATTERN IS 0299 * CONTINUOUS AND THE HEIGHT AND WIDTH OF EACH DIAMOND IS 0300 * TWENTY UNITS. THE TEST DEMONSTRATES THE HORIZONTAL
* 0520-001-H002 (O16-DPT9) DRAWING NO. 41285751-001-02 PAGE 7

0301 * AND VERTICAL ALIGNMENT OF THE PLOTTER. THE HORIZONTAL 0302 * LINES SHOULD INTERSECT EACH DIAMOND APEX, AND THE 0303 * VERTICAL DIAGONALS OF THE ENTIRE FIGURE SHOULD 0304 * INTERSECT THE DIAMOND APICES AND EACH SHOULD FORM A 0305 * CONTINUOUS STRAIGHT LINE OVER THE WHOLE FIGURE. 0306 * 0307 * SIX ROWS ARE DRAWN WITHOUT INTERRUPT CONTROL AND WITH 0308 * NO INTERVENING SPACES, I.E. THE RESULTANT PATTERN IS 0309 * CONTINUOUS. 0310 * 0311 * 0312 * ABBREVIATIONS 0313 * 0314 * REGA - REGISTER A 0315 * REGB - REGISTER B 0316 * REGAB - REGISTERS A AND B 0317 * CR - CARRIAGE RETURN 0318 * LF - LINE FEED 0319 * 0320 * 0321 ************************************************************************ 0322 * 0323 * 0324 CF5 H316, DDP-516 0325 ABS ABSOLUTE 0326 ORG '1000 ORIGIN 0327 * 0328 * 0329 * ASR 33/35 DEVICE CODES 0330 * 0331 * OCP 0332 000004 ASRN EQU 4 ENABLE ASR IN INPUT MODE 0333 000104 ASRT EQU ASRN+'100 ENABLE ASR IN OUTPUT MODE 0334 * 0335 * SKS 0336 000104 ASRB EQU ASRN+'100 SKIP IF ASR NOT BUSY 0337 * 0338 * INA 0339 000004 ASRI EQU ASRN INPUT A CHARACTER FROM ASR IF READY 0340 * 0341 * OTA 0342 000004 ASRO EQU ASRN OUTPUT A CHARACTER FROM ASR IF READY 0343 * 0344 * 0345 * DIGITAL INCREMENTAL PLOTTER DEVICE CODES 0346 * 0347 000027 ADIP EQU '27 DEVICE ADDR OF DIGITAL INCREMENTAL PLOTTER 0348 * 0349 * OCP 0350 000127 PLET EQU ADIP+'0100 EAST - PEN RIGHT
* 0520-001-H002 (O16-DPT9) DRAWING NO. 41285751-001-02 PAGE 8

0351 000227 PLWT EQU ADIP+'0200 WEST - PEN LEFT 0352 000427 PLNT EQU ADIP+'0400 NORTH - PAPER UP 0353 000527 PLNE EQU ADIP+'0500 NORTHEAST - PAPER UP. PEN RIGHT 0354 000627 PLNW EQU ADIP+'0600 NORTHWEST - PAPER UP. PEN LEFT 0355 001027 PLST EQU ADIP+'1000 SOUTH - PAPER DOWN 0356 001127 PLSE EQU ADIP+'1100 SOUTHEAST - PAPER DOWN, PEN RIGHT 0357 001227 PLSW EQU ADIP+'1200 SOUTHWEST - PAPER DOWN, PEN LEFT 0358 001427 PEND EQU ADIP+'1400 PEN DOWN 0359 001627 PENU EQU ADIP+'1600 PEN UP 0360 * 0361 * SKS 0362 000127 PLNB EQU ADIP+'0100 SKIP IF PLOTTER NOT BUSY 0363 000227 PLLR EQU ADIP+'0200 SKIP UNLESS LIMIT REACHED 0364 000427 PLNI EQU ADIP+'0400 SKIP IF PLOTTER NOT INTERRUPTING 0365 * 0366 * 0367 * MAIN PROGRAM 0368 * 0369 * OUTPUT START HEADING MESSAGE TO ASR 0370 01000 0 02 04513 STRT LDA =-34 NUMBER OF WORDS TO BE OUTPUT 0371 01001 0 10 04056 JST OASR OUTPUT TO ASR 0372 01002 106612 OCT 106612,105212 CR/LF/LF/IF 01003 105212 0373 01004 151724 BCI 15,START O16-DPT9 41285751-001-02 01005 140722 01006 152240 01007 147661 01010 133255 01011 142320 01012 152271 01013 120264 01014 130662 01015 134265 01016 133665 01017 130655 01020 130260 01021 130655 01022 130262 0374 01023 106612 OCT 106612 CARRIAGE RETURN/LINE FEED 0375 01024 106612 OCT 106612 CARRIAGE RETURN/LINE FEED 0376 01025 144706 BCI 15,IF H316 SET SENSE SWITCH 1 NOW 01026 120310 01027 131661 01030 133240 01031 151705 01032 152240 01033 151705 01034 147323 01035 142640 01036 151727
* 0520-001-H002 (O16-DPT9) DRAWING NO. 41285751-001-02 PAGE 9

01037 144724 01040 141710 01041 120261 01042 120316 01043 147727 0377 01044 0 02 04512 CHNG LDA =-1 NUMBER OF WORDS TO BE OUTPUT 0378 01045 0 10 04056 JST OASR 0379 01046 106612 OCT 106612 CR/LF 0380 * 0381 * 0382 * PARAMETER QUESTIONS 0383 * 0384 * QUESTION 1 - OPTION NUMBER (11, 12, 13 OR 14) 0385 01047 0 02 04511 QST1 LDA =-9 NUMBER OF WORDS TO BE OUTPUT 0386 01050 0 10 04056 JST OASR OUTPUT TO ASR 0387 01051 106612 OCT 106612 CR/LF 0388 01052 147720 BCI 6,OPTION NO 01053 152311 01054 147716 01055 120316 01056 147640 01057 120240 0389 01060 130730 OPTN BCI 1,1X LAST ANSWER 0390 01061 127640 BCI 1,/ 0391 * 0392 01062 0 02 04510 LDA =-3 NUMBER OF CHARACTERS TO BE INPUT 0393 01063 0 10 04076 JST IASR INPUT FROM ASR 0394 01064 0 001060 DAC OPTN ADDRESS OF LAST ANSWER 0395 01065 0 01 01047 JMP QST1 CR NOT TYPED, REPEAT THE QUESTION 0396 * * NORMAL RETURN 0397 01066 0 02 04343 LDA CHR1 FIRST INPUT CHARACTER 0398 01067 0 05 04507 ERA ='261 '261 = CHARACTER ONE 0399 01070 100040 SZE TEST FOR CHARACTER ONE 0400 01071 0 01 01047 JMP QST1 INVALID CHARACTER, REPEAT THE QUESTION 0401 * * FIRST INPUT CHARACTER IS ONE 0402 01072 0 02 04344 LDA CHR2 SECOND INPUT CHARACTER 0403 01073 0 11 04507 CAS ='261 '261 = CHARACTER ONE 0404 01074 0 01 01122 JMP Q102 INPUT CHARACTER OTHER THAN ONE 0405 01075 100000 SKP SECOND INPUT CHARACTER IS ONE 0406 01076 0 01 01047 JMP QST1 INVALID CHARACTER, REPEAT THE QUESTION 0407 * 0408 * OPTION NUMBER 11 0409 01077 0 02 04506 LDA =20 20*0.005 = 0.1 INCH 0410 01100 0 04 04374 STA UNIT NUMBER OF STEPS IN ONE UNIT LENGTH 0411 01101 0 02 04505 LDA =2730 2730 = (13/0-005)*(21/20) 0412 01102 0 04 04361 STA LMAX 0413 01103 0 02 04504 LDA =2470 2470 = (13/0.005)*(19/20) 0414 01104 0 04 04362 STA LMIN 0415 01105 101020 SS1 TEST FOR SENSE SWITCH 1 SET 0416 01106 0 01 01111 JMP D51 NOT SET, DDP-516 BEING USED
* 0520-001-H002 (O16-DPT9) DRAWING NO. 41285751-001-02 PAGE 10

0417 * SET. H316 BEING USED 0418 01107 0 02 04503 LDA =-417 417 = (4*1000)/(6*1.6) 0419 01110 100000 SKP 0420 * 0421 01111 0 02 04502 D51 LDA =-776 776 = (4*1000)/(6*0.86) 0422 01112 0 04 04355 STA DRTR DIRECTIONAL TIMER 0423 01113 101020 SS1 TEST FOR SENSE SWITCH 1 SET 0424 01114 0 01 01117 JMP D54 NOT SET, DDP-516 BEING USED 0425 * SET, H316 BEING USED 0426 01115 0 02 04501 LDA =-179 179 = (4*1000)/(14*1.6) 0427 01116 100000 SKP 0428 * 0429 01117 0 02 04500 D54 LDA =-333 333 = (4*1000)/(14*0.86) 0430 01120 0 04 04360 STA INTR INTERRUPT TIMER 0431 01121 0 01 01220 JMP Q105 FORM MULTIPLES OF UNIT 0432 * 0433 01122 0 11 04477 Q102 CAS ='262 '262 = CHARACTER TWO 0434 01123 0 01 01147 JMP Q103 INPUT CHARACTER OTHER THAN TWO 0435 * 0436 * OPTION NUMBER 12 0437 01124 0 02 04476 LDA =10 10*0.01 = 0.1 INCH 0438 01125 0 04 04374 STA UNIT NUMBER OF STEPS IN ONE UNIT LENGTH 0439 01126 0 02 04475 LDA =1365 1365 = (13/0.01)*(21/20) 0440 01127 0 04 04361 STA LMAX 0441 01130 0 02 04474 LDA =1235 1235 = (13/0.01)*(19/20) 0442 01131 0 04 04362 STA LMIN 0443 01132 101020 SS1 TEST FOR SENSE SWITCH 1 SET 0444 01133 0 01 01136 JMP D57 NOT SET, DDP-516 BEING USED 0445 * SET, H316 BEING USED 0446 01134 0 02 04473 LDA =-438 438 = (4.2*1000)/(6*1.6) 0447 01135 100000 SKP 0448 * 0449 01136 0 02 04472 D57 LDA =-814 814 = (4.2*1000)/(6*0.86) 0450 01137 0 04 04355 STA DRTR DIRECTIONAL TIMER 0451 01140 101020 SS1 TEST FOR SENSE SWITCH 1 SET 0452 01141 0 01 01144 JMP D58 NOT SET, DDP-516 BEING USED 0453 * SET, H316 BEING USED 0454 01142 0 02 04471 LDA =-188 188 = (4.2*1000)/(14*1.6) 0455 01143 100000 SKP 0456 * 0457 01144 0 02 04470 D58 LDA =-349 349 = (4.2*1000)/(14*0.86) 0458 01145 0 04 04360 STA INTR INTERRUPT TIMER 0459 01146 0 01 01220 JMP Q105 FORM MULTIPLES OF UNIT 0460 * 0461 01147 0 11 04467 Q103 CAS ='263 '263 = CHARACTER THREE 0462 01150 0 01 01174 JMP Q104 INPUT CHARACTER OTHER THAN THREE 0463 * 0464 * OPTION NUMBER 13 0465 01151 0 02 04506 LDA =20 20*0.1 = 2MM 0466 01152 0 04 04374 STA UNIT NUMBER OF STEPS IN ONE UNIT LENGTH
* 0520-001-H002 (O16-DPT9) DRAWING NO. 41285751-001-02 PAGE 11

0467 01153 0 02 04466 LDA =3465 3465 = (330/0.1)*(21/20) 0468 01154 0 04 04361 STA LMAX 0469 01155 0 02 04465 LDA =3135 3135 = (330/0.1)*(19/20) 0470 01156 0 04 04362 STA LMIN 0471 01157 101020 SS1 TEST FOR SENSE SWITCH 1 SET 0472 01160 0 01 01163 JMP D52 NOT SET, DDP-516 BEING USED 0473 * SET, H316 BEING USED 0474 01161 0 02 04503 LDA =-417 417 = (4*1000)/(6*1.6) 0475 01162 100000 SKP 0476 * 0477 01163 0 02 04502 D52 LDA =-776 776 = (4*1000)/(6*0.86) 0478 01164 0 04 04355 STA DRTR DIRECTIONAL TIMER 0479 01165 101020 SS1 TEST FOR SENSE SWITCH 1 SET 0480 01166 0 01 01171 JMP D55 NOT SET, DDP-516 BEING USED 0481 * SET, H316 BEING USED 0482 01167 0 02 04501 LDA =-179 179 = (4*1000)/(14*1.6) 0483 01170 100000 SKP 0484 * 0485 01171 0 02 04500 D55 LDA =-333 333 = (4*1000)/(14*0.86) 0486 01172 0 04 04360 STA INTR INTERRUPT TIMER 0487 01173 0 01 01220 JMP Q105 FORM MULTIPLES OF UNIT 0488 * 0489 01174 0 11 04464 Q104 CAS ='264 '264 = CHARACTER FOUR 0490 01175 0 01 01047 JMP QST1 INVALID CHARACTER, REPEAT THE QUESTION 0491 * 0492 * OPTION NUMBER 14 0493 01176 0 02 04476 LDA =10 10*0.2 = 2MM 0494 01177 0 04 04374 STA UNIT NUMBER OF STEPS IN ONE UNIT LENGTH 0495 01200 0 02 04463 LDA =1733 1733 = (330/0.2)*(21/20) 0496 01201 0 04 04361 STA LMAX 0497 01202 0 02 04462 LDA =1567 1567 = (330/0.2)*(19/20) 0498 01203 0 04 04362 STA LMIN 0499 01204 101020 SS1 TEST FOR SENSE SWITCH 1 SET 0500 01205 0 01 01210 JMP D53 NOT SET, DDP-516 BEING USED 0501 * SET, H316 BEING USED 0502 01206 0 02 04503 LDA =-417 417 = (4*1000)/(6*1.6) 0503 01207 100000 SKP 0504 * 0505 01210 0 02 04502 D53 LDA =-776 776 = (4*1000)/(6*0.86) 0506 01211 0 04 04355 STA DRTR DIRECTIONAL TIMER 0507 01212 101020 SS1 TEST FOR SENSE SWITCH 1 SET 0508 01213 0 01 01216 JMP D56 NOT SET, DDP-516 BEING USED 0509 * SET, H316 BEING USED 0510 01214 0 02 04501 LDA =-179 179 = (4*1000)/(14*1.6) 0511 01215 100000 SKP 0512 * 0513 01216 0 02 04500 D56 LDA =-333 333 = (4*1000)/(14*0.86) 0514 01217 0 04 04360 STA INTR INTERRUPT TIMER 0515 * 0516 * FORM MULTIPLES 0F UNIT
* 0520-001-H002 (O16-DPT9) DRAWING NO. 41285751-001-02 PAGE 12

0517 01220 0 02 04374 Q105 LDA UNIT 0518 01221 140407 TCA NEGATE UNIT 0519 01222 0 04 04366 STA NUNT 0520 01223 140407 TCA REGA = UNIT (U) 0521 01224 0414 76 LGL 2 REGA = 4U 0522 01225 0 06 04374 ADD UNIT REGA = 5U 0523 01226 0 04 04346 STA CNTA COUNT A = 5*UNIT 0524 01227 0414 77 LGL 1 REGA = 10U 0525 01230 0 04 04347 STA CNTB COUNT B = 10*UNIT 0526 01231 140407 TCA NEGATE 10U 0527 01232 0 04 04375 STA 10NU 0528 01233 140407 TCA REGA = 10U 0529 01234 0414 77 LGL 1 REGA = 20U 0530 01235 140407 TCA NEGATE 20U 0531 01236 0 04 04376 STA 20NU 0532 01237 140407 TCA REGA = 20U 0533 01240 0 06 04347 ADD CNTB REGA = 30U 0534 01241 140407 TCA NEGATE 30U 0535 01242 0 04 04377 STA 30NU 0536 01243 140407 TCA REGA = 30U 0537 01244 0 06 04347 ADD CNTB REGA = 40U 0538 01245 140407 TCA NEGATE 40U 0539 01246 0 04 04400 STA 40NU 0540 01247 140407 TCA REGA = 40U 0541 01250 0 06 04346 ADD CNTA REGA = 45U 0542 01251 140407 TCA NEGATE 45U 0543 01252 0 04 04401 STA 45NU 0544 01253 140407 TCA REGA = 45U 0545 01254 0 06 04346 ADD CNTA REGA = 50U 0546 01255 140407 TCA NEGATE 50U 0547 01256 0 04 04402 STA 50NU 0548 01257 140407 TCA REGA = 50U 0549 01260 0 06 04347 ADD CNTB REGA = 60U 0550 01261 140407 TCA NEGATE 60U 0551 01262 0 04 04403 STA 60NU 0552 01263 140407 TCA REGA = 60U 0553 01264 0 06 04347 ADD CNTB REGA = 70U 0554 01265 140407 TCA NEGATE 70U 0555 01266 0 04 04404 STA 70NU 0556 01267 140407 TCA REGA = 70U 0557 01270 0 06 04347 ADD CNTB REGA = 80U 0558 01271 140407 TCA NEGATE 80U 0559 01272 0 04 04405 STA 80NU 0560 * 0561 * QUESTION 2 - DEVICE ADDRESS (2 DIGIT OCTAL NUMBER) 0562 01273 0 02 04461 QST2 LDA =-8 NUMBER OF WORDS TO BE OUTPUT 0563 01274 0 10 04056 JST OASR OUTPUT TO ASR 0564 01275 106612 OCT 106612 CR/LF 0565 01276 142305 BCI 5,DEV ADDR 01277 153240
* 0520-001-H002 (O16-DPT9) DRAWING NO. 41285751-001-02 PAGE 13

01300 140704 01301 142322 01302 120240 0566 01303 131267 DADD BCI 1,27 LAST ANSWER (PROBABLE ANSHER IS 27) 0567 01304 127640 BCI 1,/ 0568 * 0569 01305 0 02 04510 LDA =-3 NUMBER OF CHARACTERS TO BE INPUT 0570 01306 0 10 04076 JST IASR INPUT FROM ASR 0571 01307 0 001303 DAC DADD ADDRESS OF LAST ANSWER 0572 01310 0 01 01273 JMP QST2 CR NOT TYPED, REPEAT THE QUESTION 0573 * * NORMAL RETURN 0574 01311 0 02 04460 LDA =-2 NUMBER OF CHARACTERS TO BE TESTED 0575 01312 0 04 04352 STA CNTR CHARACTER COUNTER 0576 01313 0 02 04341 LDA CHRL CHARACTER LOCATION 0577 01314 0 04 04373 STA TMPB 0578 01315 -0 02 04373 TNC1 LDA* TMPB CHARACTER 0579 01316 0 12 04373 IRS TMPB NEXT CHARACTER 0580 01317 0 05 04457 ERA ='260 '260 = CHARACTER ZERO 0581 01320 100400 SPL TEST FOR VALIDITY OF CHARACTER 0582 01321 0 01 01273 JMP QST2 INVALID CHARACTER, REPEAT THE DDESTIDN 0583 01322 0 07 04456 SUB ='10 0584 01323 101400 SMI TEST FOR VALIDITY OF CHARACTER 0585 01324 0 01 01273 JMP QST2 INVALID CHARACTER, REPEAT THE OUESTIDN 0586 01325 0 12 04352 IRS CNTR INCREMENT CHARACTER COUNTER 0587 01326 0 01 01315 JMP TNC1 TEST NEXT CHARACTER 0588 01327 0 02 04343 LDA CHR1 MS DIGIT OF PLOTTER DEVICE ADDRESS 0589 01330 0 03 04455 ANA ='007 REMOVE '260 0590 01331 0414 75 LGL 3 0591 01332 0 06 04344 ADD CHR2 LS DIGIT OF PLOTTER DEVICE ADDRESS 0592 01333 0 07 04457 SUB ='260 REMOVE '260 0593 01334 0 04 04354 STA DPDA 0594 * 0595 * INSERT DEVICE ADDRESS IN PLOTTER INSTRUCTIONS 0596 01335 0 02 04342 LDA IATB INDIRECT ADDRESS OF TABLE 0597 01336 0 04 04373 STA TMPB 0598 01337 -0 02 04373 IDAI LDA* TMPB PLOTTER INSTRUCTION 0599 01340 101040 SNZ TEST FOR COMPLETION OF DEV ADDR INSERTION 0600 01341 0 01 01347 JMP DAII DEV ADDR INSERTED IN ALL PLOTTER INSTRCTNS 0601 01342 0 03 04454 ANA ='177700 CLEAR LS 6 BITS 0602 01343 0 05 04354 ERA DPDA 0603 01344 -0 04 04373 STA* TMPB PLOTTER INSTRUCTION 0604 01345 0 12 04373 IRS TMPB ADDRESS OF NEXT INSTRUCTION 0605 01346 0 01 01337 JMP IDAI INSERT DEV ADDR IN NEXT PLOTTER INSTRUCTION 0606 * 0607 01347 0 02 04343 DAII LDA CHR1 FIRST INPUT CHARACTER 0608 01350 0414 70 LGL 8 0609 01351 0 05 04344 ERA CHR2 REGA = INPUT NUMBER (DEV ADDR) 0610 01352 0 04 01303 STA DADD REPLACE LAST ANSNER BY THE PRESENT ONE 0611 * 0612 * QUESTION 3 - STANDARD INTERRUPT (Y 0R N)
* 0520-001-H002 (O16-DPT9) DRAWING NO. 41285751-001-02 PAGE 14

0613 01353 0 02 04453 QST3 LDA =-10 NUMBER OF WORDS TO BE OUTPUT 0614 01354 0 10 04056 JST OASR OUTPUT TO ASR 0615 01355 106612 OCT 106612 CR/LF 0616 01356 151724 BCI 7,STAND INTRPT 01357 140716 01360 142240 01361 144716 01362 152322 01363 150324 01364 120240 0617 01365 154640 SINT BCI 1,Y LAST ANSWER (PROBABLE ANSNER IS Y) 0618 01366 127640 BCI 1,/ 0619 * 0620 01367 0 02 04460 LDA =-2 NUMBER OF CHARACTERS TO BE INPUT 0621 01370 0 10 04076 JST IASR INPUT FROM ASR 0622 01371 0 001365 DAC SINT ADDRESS OF LAST ANSWER 0623 01372 0 01 01353 JMP QST3 CR NOT TYPED, REPEAT THE OUESTION 0624 * NORMAL RETURN 0625 01373 0 02 04343 LDA CHR1 FIRST INPUT CHARACTER 0626 01374 0 11 04452 CAS ='331 '331 = CHARACTER Y 0627 01375 0 01 01353 JMP QST3 INVALID CHARACTER. REPEAT THE QUESTION 0628 01376 0 01 01403 JMP YES3 FIRST INPUT CHARACTER IS Y 0629 01377 0 05 04451 ERA ='316 '316 = CHARACTER N 0630 01400 100040 SZE TEST FOR CHARACTER N 0631 01401 0 01 01353 JMP QST3 INVALID CHARACTER, REPEAT THE OUESTION 0632 01402 0 01 01410 JMP NO03 FIRST INPUT CHARACTER IS N 0633 * 0634 01403 0 02 04343 YES3 LDA CHR1 FIRST INPUT CHARACTER 0635 01404 0414 70 LGL 8 CHARACTER IN MS HALF OF REGA 0636 01405 0 05 04450 ERA ='240 INSERT SPACE IN LS HALF 0637 01406 0 04 01365 STA SINT REPLACE LAST ANSWER BY THE PRESENT ONE 0638 01407 0 01 01415 JMP QST4 ASK QUESTION 4 (Q5 IS NOT POSED) 0639 * 0640 01410 0 02 04343 NO03 LDA CHR1 FIRST INPUT CHARACTER 0641 01411 0414 70 LGL 8 CHARACTER IN MS HALF OF REGA 0642 01412 0 05 04450 ERA ='240 INSERT SPACE IN LS HALF 0643 01413 0 04 01365 STA SINT REPLACE LAST ANSNER BY THE PRESENT ONE 0644 01414 0 01 01460 JMP QST5 ASK QUESTION 5 (04 IS NOT POSED) 0645 * 0646 * QUESTION 4 - MASK BIT (2 DIGIT DECIMAL NUMBER) 0647 01415 0 02 04461 QST4 LDA =-8 NUMBER OF WORDS TO BE OUTPUT 0648 01416 0 10 04056 JST OASR OUTPUT TO ASR 0649 01417 106612 OCT 106612 CR/LF 0650 01420 146701 BCI 5,MASK BIT 01421 151713 01422 120302 01423 144724 01424 120240 0651 01425 130663 MBIT BCI 1,13 LAST ANSWER (PROBABLE ANSWER IS 13) 0652 01426 127640 BCI 1,/
* 0520-001-H002 (O16-DPT9) DRAWING NO. 41285751-001-02 PAGE 15

0653 * 0654 01427 0 02 04510 LDA =-3 NUMBER OF CHARACTERS TO BE INPUT 0655 01430 0 10 04076 JST IASR INPUT FROM ASR 0656 01431 0 001425 DAC MBIT ADDRESS OF LAST ANSWER 0657 01432 0 01 01415 JMP QST4 CR NOT TYPED, REPEAT THE OUESTION 0658 * *NORMAL RETURN 0659 01433 0 10 04145 JST DCML TEST INPUT DECIMAL 00-99 0660 01434 0 01 01415 JMP QST4 INVALID CHARACTER, REPEAT THE QUESTION 0661 * *NORMAL RETURN 0662 01435 101040 SNZ TEST FOR ZERO 0663 01436 0 01 01415 JMP QST4 INPUT NUMBER = 0, REPEAT THE OUESTION 0664 01437 0 07 04447 SUB =17 0665 01440 101400 SMI TEST FOR NUMBER MORE THAN SIXTEEN 0666 01441 0 01 01415 JMP QST4 INPUT NUMBER > 16, REPEAT THE OUESTION 0667 01442 0 04 04352 STA CNTR BIT COUNTER 0668 01443 0 02 04446 LDA =1 SET BIT 16 0669 01444 100000 SKP 0670 01445 0414 77 LGL 1 0671 01446 0 12 04352 IRS CNTR INCREMENT BIT COUNTER 0672 01447 0 01 01445 JMP *-2 PROPER BIT YET TO BE SET 0673 01450 0 04 04365 STA MSKB MASK BIT FOR INTERRUPT 0674 01451 0 02 04445 LDA ='63 '63 = STANDARD INTERRUPT LOCATION 0675 01452 0 04 04357 STA INTL INTERRUPT LOCATION 0676 01453 0 02 04343 LDA CHR1 FIRST INPUT CHARACTER 0677 01454 0414 70 LGL 8 0678 01455 0 05 04344 ERA CHR2 REGA = INPUT NUMBER (MASK BIT) 0679 01456 0 04 01425 STA MBIT REPLACE LAST ANSWER BY THE PRESENT ONE 0680 01457 0 01 01537 JMP DPT0 START INITIALISATION (05 NOT POSED) 0681 * 0682 * QUESTION 5 - PRIORITY INTERRUPT LINE (2 DIGIT DECIMAL NUMBER) 0683 01460 0 02 04444 QST5 LDA =-12 NUMBER OF WORDS TO BE OUTPUT 0684 01461 0 10 04056 JST OASR OUTPUT TO ASR 0685 01462 106612 OCT 106612 CR/LF 0686 01463 150322 BCI 9,PRTY INTRPT LINE 01464 152331 01465 120311 01466 147324 01467 151320 01470 152240 01471 146311 01472 147305 01473 120240 0687 01474 130261 PINT BCI 1,01 LAST ANSNER (PROBABLE ANSWER IS 01) 0688 01475 127640 BCI 1,/ 0689 * 0690 01476 0 02 04510 LDA =-3 NUMBER OF CHARACTERS TO BE INPUT 0691 01477 0 10 04076 JST IASR INPUT FROM ASR 0692 01500 0 001474 DAC PINT ADDRESS OF LAST ANSWER 0693 01501 0 01 01460 JMP QST5 CR NOT TYPED, REPEAT THE QUESTION 0694 * * NORMAL RETURN
* 0520-001-H002 (O16-DPT9) DRAWING NO. 41285751-001-02 PAGE 16

0695 01502 0 10 04145 JST DCML TEST INPUT DECIMAL 00-99 0696 01503 0 01 01460 JMP QST5 INVALID CHARACTER, REPEAT THE QUESTION 0697 * * NORMAL RETURN 0698 01504 101040 SNZ TEST FOR ZERO 0699 01505 0 01 01460 JMP QST5 INPUT NUMBER = O, REPEAT THE QUESTION 0700 01506 0 07 04443 SUB =49 0701 01507 101400 SMI TEST FOR NUMBER MORE THAN FORTY EIGHT 0702 01510 0 01 01460 JMP QST5 INPUT NUMBER > 48, REPEAT THE QUESTION 0703 01511 0 06 04443 ADD =49 RESTORE INPUT NUMBER 0704 01512 0 06 04445 ADD ='63 '63 = STANDARD INTERRUPT LOCATION 0705 01513 0 04 04357 STA INTL INTERRUPT LOCATION 0706 01514 0 07 04445 SUB ='63 REGA = PRIORITY INTERRUPT LINE 0707 01515 0 07 04447 SUB =17 0708 01516 100400 SPL DETERMINE PRIORITY INT MASK ASSIGNMENTS 0709 01517 0 01 01524 JMP Q501 PI LINE 01-16 0710 01520 0 07 04442 SUB =16 0711 01521 100400 SPL 0712 01522 100000 SKP PI LINE 17-32 0713 01523 0 07 04442 SUB =16 PI LINE 33-48 0714 01524 0 04 04352 Q501 STA CNTR BIT COUNTER 0715 01525 0 02 04446 LDA =1 SET BIT 16 0716 01526 100000 SKP 0717 01527 0414 77 LGL 1 0718 01530 0 12 04352 IRS CNTR INCREMENT BIT COUNTER 0719 01531 0 01 01527 JMP *-2 PROPER BIT YET TO BE SET 0720 01532 0 04 04365 STA MSKB MASK BIT FOR INTERRUPT 0721 01533 0 02 04343 LDA CHR1 FIRST INPUT CHARACTER 0722 01534 0414 70 LGL 8 0723 01535 0 05 04344 ERA CHR2 REGA = INPUT NUMBER (PRTY INTRPT LINE) 0724 01536 0 04 01474 STA PINT REPLACE LAST ANSWER BY THE PRESENT ONE 0725 * 0726 * 0727 * INITIALISATION 0728 * 0729 01537 140040 DPT0 CRA 0730 01540 0 04 04373 STA TMPB 0731 01541 0 02 04357 LDA INTL 0732 01542 0 07 04445 SUB ='63 REGA = INTERRUPT LINE 0733 01543 100040 SZE 0734 01544 0 12 04373 IRS TMPB PI LINE 01-16 0735 01545 0 07 04447 SUB =17 0736 01546 101400 SMI 0737 01547 0 12 04373 IRS TMPB PI LINE 17-32 0738 01550 0 07 04442 SUB =16 0739 01551 101400 SMI 0740 01552 0 12 04373 IRS TMPB PI LINE 33-48 0741 01553 0 02 04373 LDA TMPB 0742 01554 0414 72 LGL 6 0743 01555 0 05 04441 ERA ='170020 '170020 = SMK '0020 INSTRUCTION 0744 01556 0 04 01560 STA SMKI SMK '0X20 INSTRUCTION
* 0520-001-H002 (O16-DPT9) DRAWING NO. 41285751-001-02 PAGE 17

0745 01557 140040 CRA 0746 01560 0 00 00000 SMKI *** ** PERFORM SMK '0X20 0747 * 0748 * TEST PLOTTER BUSY AND INTERRUPT FLIP-FLOPS 0749 01561 34 0127 DP01 SKS PLNB SKIP IF PLOTTER NOT BUSY 0750 01562 0 10 04176 JST ERRR 0751 01563 0 01 01566 JMP *+3 PLOTTER NOT BUSY, OK 0752 01564 141323 BCI 2,BSMC PLOTTER BUSY AFTER MASTER CLEAR 01565 146703 0753 01566 34 0427 DP02 SKS PLNI SKIP IF PLOTTER NOT INTERRUPTING 0754 01567 0 10 04176 JST ERRR 0755 01570 0 01 01573 JMP *+3 PLOTTER NOT INTERRUPTING, OK 0756 01571 144724 BCI 2,ITMR PLOTTER INTERRUPTING WHEN MASK RESET 01572 146722 0757 01573 0 02 01560 LDA SMKI SMK '0X20 INSTRUCTION 0758 01574 0 04 01576 STA *+2 0759 01575 0 02 04365 LDA MSKB 0760 01576 0 00 00000 *** ** PERFORM SMK '0X20 0761 01577 34 0427 DP03 SKS PLNI 0762 01600 0 01 01605 JMP DPT9 PLOTTER INTERRUPTING OK 0763 01601 0 10 04176 JST ERRR 0764 01602 101000 NOP 0765 01603 147311 BCI 2,NIMS PLOTTER NOT INTERRUPTING WHEN MASK SET 01604 146723 0766 * 0767 * TEST EAST LIMIT LATE 0768 01605 0 10 03473 DPT9 JST MPUP 0769 01606 0 02 04361 LDA LMAX 0770 01607 140407 TCA 0771 01610 0 04 00000 STA 0 STEP COUNTER 0772 01611 0 10 03225 DPT1 JST MPET 0773 01612 34 0227 DP04 SKS PLLR SKIP UNLESS LIMIT REACHED 0774 01613 0 01 01622 JMP DPT2 EAST LIMIT REACHED WITHIN MAX RANGE, OK 0775 01614 0 12 00000 IRS 0 INCREMENT STEP COUNTER 0776 01615 0 01 01611 JMP DPT1 MOVE PLOTTER NEXT STEP 0777 01616 0 10 04176 JST ERRR 0778 01617 101000 NOP 0779 01620 146315 BCI 2,LMTL LIMIT LATE - NOT OCCURED WITHIN MAX RANGE 01621 152314 0780 * 0781 * TEST WEST LIMIT EARLY AND LATE 0782 01622 0 35 04375 DPT2 LDX 10NU STEP COUNTER 0783 01623 0 10 03247 JST MPWT 0784 01624 0 12 00000 IRS 0 INCREMENT STEP COUNTER 0785 01625 0 01 01623 JMP *-2 MOVE PLOTTER NEXT STEP 0786 01626 0 02 04362 LDA LMIN 0787 01627 0 06 04375 ADD 10NU 0788 01630 140407 TCA 0789 01631 0 04 00000 STA 0 STEP COUNTER 0790 01632 0 10 03247 DPT3 JST MPWT
* 0520-001-H002 (O16-DPT9) DRAWING NO. 41285751-001-02 PAGE 18

0791 01633 34 0227 DP05 SKS PLLR 0792 01634 0 10 04176 JST ERRR 0793 01635 0 01 01640 JMP *+3 LIMIT NOT YET REACHED, OK 0794 01636 146315 BCI 2,LMTE LIMIT EARLY - OCCURED BEFORE MIN RANGE 01637 152305 0795 01640 0 12 00000 IRS 0 INCREMENT STEP COUNTER 0796 01641 0 01 01632 JMP DPT3 MOVE PLOTTER NEXT STEP 0797 01642 0 02 04362 LDA LMIN 0798 01643 0 07 04361 SUB LMAX 0799 01644 0 04 00000 STA 0 STEP COUNTER 0800 01645 0 10 03247 DPT4 JST MPWT 0801 01646 34 0227 DP06 SKS PLLR 0802 01647 0 01 01656 JMP DPT5 WEST LIMIT REACHED WITHIN MAX RANGE, OK 0803 01650 0 12 00000 IRS 0 INCREMENT STEP COUNTER 0804 01651 0 01 01645 JMP DPT4 MOVE PLOTTER NEXT STEP 0805 01652 0 10 04176 JST ERRR 0806 01653 101000 NOP 0807 01654 146315 BCI 2,LMTL LIMIT LATE - NOT OCCURED WITHIN MAX RANGE 01655 152314 0808 * 0809 * TEST EAST LIMIT EARLY AND LATE 0810 01656 0 35 04375 DPT5 LDX 10NU STEP COUNTER 0811 01657 0 10 03225 JST MPET 0812 01660 0 12 00000 IRS 0 INCREMENT STEP COUNTER 0813 01661 0 01 01657 JMP *-2 MOVE PLOTTER NEXT STEP 0814 01662 0 02 04362 LDA LMIN 0815 01663 0 06 04375 ADD 10NU 0816 01664 140407 TCA 0817 01665 0 04 00000 STA 0 STEP COUNTER 0818 01666 0 10 03225 DPT6 JST MPET 0819 01667 34 0227 DP07 SKS PLLR 0820 01670 0 10 04176 JST ERRR 0821 01671 0 01 01674 JMP *+3 LIMIT NOT YET REACHED, OK 0822 01672 146315 BCI 2,LMTE LIMIT EARLY - OCCURED BEFORE MIN RANGE 01673 152305 0823 01674 0 12 00000 IRS 0 INCREMENT STEP COUNTER 0824 01675 0 01 01666 JMP DPT6 MOVE PLOTTER NEXT STEP 0825 01676 0 02 04362 LDA LMIN 0826 01677 0 07 04361 SUB LMAX 0827 01700 0 04 00000 STA 0 STEP COUNTER 0828 01701 0 10 03225 DPT7 JST MPET 0829 01702 34 0227 DP08 SKS PLLR 0830 01703 0 01 01712 JMP DPT8 EAST LIMIT REACHED WITHIN MAX RANGE, OK 0831 01704 0 12 00000 IRS 0 INCREMENT STEP COUNTER 0832 01705 0 01 01701 JMP DPT7 MOVE PLOTTER NEXT STEP 0833 01706 0 10 04176 JST ERRR 0834 01707 101000 NOP 0835 01710 146315 BCI 2,LMTL LIMIT LATE - NOT OCCURED WITHIN MAX RANGE 01711 152314 0836 *
* 0520-001-H002 (O16-DPT9) DRAWING NO. 41285751-001-02 PAGE 19

0837 * FORM MEASURED LIMIT 0838 01712 0 02 00000 DPT8 LDA 0 REMAINING NUMBER OF STEPS IN X-RECISIER 0839 01713 141206 AOA 0840 01714 0 06 04361 ADD LMAX 0841 01715 0 04 04363 STA LMIT 0842 * 0843 * MOVE PEN TWENTY UNITS NORTH 0844 01716 0 35 04376 LDX 20NU STEP COUNTER (NO OF STEPS IN 20 UNITS) 0845 01717 0 10 03271 JST MPNT 0846 01720 0 12 00000 IRS 0 INCREMENT STEP COUNTER 0847 01721 0 01 01717 JMP *-2 MOVE PLOTTER NEXT STEP 0848 * 0849 01722 0 02 04512 AQTN LDA =-1 NUMBER OF WORDS TO BE OUTPUT 0850 01723 0 10 04056 JST OASR OUTPUT TO ASR 0851 01724 106612 OCT 106612 CR/LF 0852 * 0853 * QUESTION 6 - TEST NO? (I, 1, 2, 3, 4, A OR E) 0854 01725 0 02 04440 QST6 LDA =-6 NUMBER OF WORDS TO BE OUTPUT 0855 01726 0 10 04056 JST OASR 0856 01727 106612 OCT 106612 CR/LF 0857 01730 152305 BCI 5,TEST NO? 01731 151724 01732 120316 01733 147677 01734 120240 0858 * 0859 01735 0 02 04460 LDA =-2 NUMBER OF CHARACTERS TO BE INPUT 0860 01736 0 10 04076 JST IASR 0861 01737 0 004415 DAC =0 0862 01740 0 01 01725 JMP QST6 CR NOT TYPED, REPEAT THE QUESTION 0863 * * NORMAL RETURN 0864 01741 0 02 04343 LDA CHR1 FIRST INPUT CHARACTER 0865 01742 0 11 04437 CAS ='311 '311 = CHARACTER I 0866 01743 100000 SKP INPUT CHARACTER OTHER THAN I 0867 01744 0 01 01537 JMP DPT0 REPEAT INITIALISATION (INPUT CHAR = I) 0868 01745 0 05 04436 ERA ='301 '301 = CHARACTER A 0869 01746 0 04 04367 STA PALL PALL IS ZERO 0870 01747 101040 SNZ TEST FOR REQUIREMENT OF PLOTTING ALL PATRNS 0871 01750 0 01 01756 JMP PAT1 PLOT PATTERN ONE 0872 01751 0 02 04343 LDA CHR1 FIRST INPUT CHARACTER 0873 01752 0 11 04507 CAS ='261 '261 = CHARACTER ONE 0874 01753 0 01 02041 JMP P002 INPUT CHARACTER OTHER THAN ONE 0875 01754 100000 SKP PLOT PATTERN ONE (INPUT CHAR : 1) 0876 01755 0 01 01725 JMP QST6 INVALID CHAR, REPEAT THE QUESTION 0877 * 0878 * 0879 * PATTERN ONE (PEN MOVEMENT TEST - DOTTED LINE) 0880 * 0881 01756 0 35 04375 PAT1 LDX 10NU STEP COUNTER (NO OF STEPS IN 10 UNITS) 0882 01757 0 10 03271 JST MPNT
* 0520-001-H002 (O16-DPT9) DRAWING NO. 41285751-001-02 PAGE 20

0883 01760 0 12 00000 IRS 0 INCREMENT STEP COUNTER 0884 01761 0 01 01757 JMP *-2 MOVE PLOTTER NEXT STEP 0885 01762 0 10 03210 JST MPCT 0886 01763 0 35 04403 LDX 60NU STEP COUNTER (NO OF STEPS IN 60 UNITS) 0887 01764 0 10 03247 JST MPWT 0888 01765 0 12 00000 IRS 0 INCREMENT STEP COUNTER 0889 01766 0 01 01764 JMP *-2 MOVE PLOTTER NEXT STEP 0890 01767 0 02 04461 LDA =-8 NUMBER OF ROWS IN THE PATTERN 0891 01770 0 04 04372 STA ROWC 0892 01771 0 02 04435 P1NR LDA =-60 NUMBER OF PAIRS OF UNITS TO BE MOVED 0893 01772 0 04 04352 STA CNTR UNIT-PAIR COUNTER 0894 * 0895 01773 0 10 03445 P101 JST MPDN 0896 01774 0 35 04366 LDX NUNT STEP COUNTER (NO OF STEPS IN 1 UNIT) 0897 01775 0 02 04372 P102 LDA ROWC 0898 01776 100100 SLZ SKIP IF BIT 16 RESET (TEST FOR ODD/EVEN ROW) 0899 01777 0 01 02002 JMP *+3 BIT 16 SET (EVEN NUMBERED ROW) 0900 02000 0 10 03225 JST MPET 0901 02001 100000 SKP 0902 02002 0 10 03247 JST MPWT 0903 02003 0 12 00000 IRS 0 INCREMENT STEP COUNTER 0904 02004 0 01 01775 JMP P102 PLOT NEXT STEP 0905 02005 0 10 03473 JST MPUP 0906 02006 0 35 04366 LDX NUNT STEP COUNTER (NO OF STEPS IN 1 UNIT) 0907 02007 0 02 04372 P103 LDA ROWC 0908 02010 100100 SLZ SKIP IF BIT 16 RESET (TEST FOR ODD/EVEN ROW) 0909 02011 0 01 02014 JMP *+3 BIT 16 SET (EVEN NUMBERED RON) 0910 02012 0 10 03225 JST MPET 0911 02013 100000 SKP 0912 02014 0 10 03247 JST MPWT 0913 02015 0 12 00000 IRS 0 INCREMENT STEP COUNTER 0914 02016 0 01 02007 JMP P103 MOVE PLOTTER NEXT STEP 0915 02017 0 12 04352 IRS CNTR INCREMENT UNIT-PAIR COUNTER 0916 02020 0 01 01773 JMP P101 MOVE PLOTTER NEXT PAIR OF UNITS LENGTH 0917 * 0918 02021 0 12 04372 IRS ROWC INCREMENT ROW COUNTER 0919 02022 100000 SKP MOVE PLOTTER NORTH TO PLOT NEXT ROW 0920 02023 0 01 02031 JMP P104 ALL ROWS PLOTTED IN THE PATTERN 0921 02024 0 35 04366 LDX NUNT STEP COUNTER (NO OF STEPS IN 1 UNIT) 0922 02025 0 10 03271 JST MPNT 0923 02026 0 12 00000 IRS 0 INCREMENT STEP COUNTER 0924 02027 0 01 02025 JMP *-2 MOVE PLOTTER NEXT STEP 0925 02030 0 01 01771 JMP P1NR PLOT NEXT ROW 0926 * 0927 02031 0 35 04376 P104 LDX 20NU STEP COUNTER (NO OF STEPS IN 20 UNITS) 0928 02032 0 10 03271 JST MPNT 0929 02033 0 12 00000 IRS 0 INCREMENT STEP COUNTER 0930 02034 0 01 02032 JMP *-2 MOVE PLOTTER NEXT STEP 0931 * 0932 02035 0 02 04367 LDA PALL
* 0520-001-H002 (O16-DPT9) DRAWING NO. 41285751-001-02 PAGE 21

0933 02036 101040 SNZ TEST FOR REQUIREMENT 0F PLUTTING ALL PATRNS 0934 02037 0 01 02043 JMP PAT2 PLOT PATTERN TWO 0935 02040 0 01 01722 JMP AQTN ASK QUESTION: TEST NO? 0936 * 0937 02041 0 11 04477 P002 CAS ='262 '262 = CHARACTER TWO 0938 02042 0 01 02341 JMP P003 INPUT CHARACTER OTHER THAN TWO 0939 * * PLOT PATTERN TWO (INPUT CHAR = 2) 0940 * 0941 * PATTERN TWO (INCREMENT AND SPEED TEST - SQUARE SPIRAL) 0942 * 0943 02043 0 35 04376 PAT2 LDX 20NU STEP COUNTER (NO OF STEPS IN 20 UNITS) 0944 02044 0 10 03271 JST MPNT 0945 02045 0 12 00000 IRS 0 INCREMENT STEP COUNTER 0946 02046 0 01 02044 JMP *-2 MOVE PLOTTER NEXT STEP 0947 02047 0 10 03210 JST MPCT 0948 02050 0 35 04401 LDX 45NU STEP COUNTER (NO OF STEPS IN 45 UNITS) 0949 02051 0 10 03247 JST MPWT 0950 02052 0 12 00000 IRS 0 INCREMENT STEP COUNTER 0951 02053 0 01 02051 JMP *-2 MOVE PLOTTER NEXT STEP 0952 * 0953 02054 0 02 04460 LDA =-2 NUMBER OF ROWS IN THE PATTERN 0954 02055 0 04 04372 STA ROWC 0955 02056 0 02 04434 P2NR LDA =-4 UMBER OF FIGURES IN A ROW 0956 02057 0 04 04356 STA FGRC 0957 02060 0 02 04340 LDA AMSG START ADDRESS OF MESSAGE 0958 02061 0 06 04433 ADD =6 0959 02062 0 04 04370 STA PNTR POINTER (ADDRESS FOR INSERTION OF SPEED) 0960 02063 140040 P2NF CRA 0961 02064 0 04 04364 STA MRKR MARKER 0962 02065 0 04 04346 STA CNTA COUNTER A 0963 02066 0 04 04347 STA CNTB COUNTER B 0964 02067 0 04 04350 STA CNTC COUNTER C 0965 02070 0 10 03445 JST MPDN MOVE PEN DOWN 0966 * 0967 02071 0 02 04364 P201 LDA MRKR MARKER 0968 02072 0 07 04374 SUB UNIT UNIT 0969 02073 0 04 04364 STA MRKR MRKR = MRKR - UNIT 0970 02074 0 35 04364 LDX MRKR STEP COUNTER 0971 02075 0 10 03571 JST MIST 0972 02076 0 12 00000 IRS 0 INCREMENT STEP COUNTER 0973 02077 0 01 02075 JMP *-2 PLOT NEXT STEP 0974 02100 0 35 04364 LDX MRKR STEP COUNTER 0975 02101 0 10 03521 JST MIET 0976 02102 0 12 00000 IRS 0 INCREMENT STEP COUNTER 0977 02103 0 01 02101 JMP *-2 PLOT NEXT STEP 0978 02104 0 02 04364 LDA MRKR 0979 02105 0 07 04374 SUB UNIT 0980 02106 0 04 04364 STA MRKR MRKR = MRKR - UNIT 0981 02107 0 35 04364 LDX MRKR STEP COUNTER 0982 02110 0 10 03541 JST MINT
* 0520-001-H002 (O16-DPT9) DRAWING NO. 41285751-001-02 PAGE 22

0983 02111 0 12 00000 IRS 0 INCREMENT STEP COUNTER 0984 02112 0 01 02110 JMP *-2 PLOT NEXT STEP 0985 02113 0 35 04364 LDX MRKR STEP COUNTER 0986 02114 0 10 03531 JST MIWT 0987 02115 0 12 00000 IRS 0 INCREMENT STEP COUNTER 0988 02116 0 01 02114 JMP *-2 PLOT NEXT STEP 0989 02117 0 02 04364 LDA MRKR LENGTH OF PRESENT ARM 0990 02120 0 11 04376 CAS 20NU 20NU = LENGTH OF OUTERMOST ARM 0991 02121 0 01 02071 JMP P201 PLOT NEXT SOUARE OF SPIRAL 0992 * * SQUARE SPIRAL HAS BEEN PLOTTEO 0993 02122 0 10 03473 JST MPUP 0994 02123 0 02 04346 LDA CNTA COUNT A 0995 02124 000201 IAB 0996 02125 0 02 04347 LDA CNTB COUNT B 0997 02126 0410 77 LLL 1 REGA = 2B+MSB A 0998 02127 0 04 04347 STA CNTB COUNT B 0999 02130 000201 IAB 1000 02131 0404 77 LGR 1 REGA = A-MSB A 1001 02132 0 04 04346 STA CNTA COUNT A 1002 02133 000201 IAB REGA,REGB = COUNT 1003 02134 0401 77 LRS 1 TEMPORARY COUNT TC = 0.5 COUNT 1004 02135 0 10 03756 JST HADD HALF ADD COUNT, TC = 1.25 COUNT 1005 02136 0 10 03756 JST HADD TC = 1.625 COUNT 1006 02137 0 10 03756 JST HADD TC = 1.8125 COUNT 1007 02140 0401 76 LRS 2 TC = 0.4531 COUNT 1008 02141 0 10 03756 JST HADD TC = 1.2266 COUNT 1009 02142 0401 77 LRS 1 TC = 0.6133 COUNT 1010 02143 0 10 03756 JST HADD TC = 1.3067 COUNT 1011 02144 0 10 03756 JST HADD TC = 1.6534 COUNT 1012 02145 0401 77 LRS 1 TC = 0.8267 COUNT 1013 02146 0 10 03756 JST HADD TC = 1.4134 COUNT 1014 02147 0 10 03756 JST HADD TC = 1.7067 COUNT 1015 02150 0411 71 LLS 7 REGA = (1.7067 COUNT) * (2**-8) 1016 02151 0 04 04373 STA TMPB TEMPORARY BUFFER 1017 * 1018 02152 0 02 04374 LDA UNIT 1019 02153 0 05 04506 ERA =20 1020 02154 100040 SZE TEST FOR EOM OPTION 2111/2113 1021 02155 0 01 02161 JMP *+4 EOM OPTION 2112/2114 (10 STEPS/UNIT) 1022 02156 0 02 04373 LDA TMPB TEMPORARY BUFFER 1023 02157 0404 77 LGR 1 REGA =(1.7067 COUNT) * (2**-9) 1024 02160 100000 SKP 1025 02161 0 02 04373 LDA TMPB TEMPORARY BUFFER 1026 02162 141206 AOA ADD ONE TO A FOR ROUNDING UP VALUE 1027 02163 0404 77 LGR 1 REGA = NO OF MEMORY CYCLES/INCREMENT 1028 02164 0 04 04373 STA TMPB 1029 * 1030 02165 0 02 04457 LDA ='260 '260 = CHARACTER ZERO 1031 02166 0 04 04346 STA CNTA 1032 02167 0 04 04347 STA CNTB
* 0520-001-H002 (O16-DPT9) DRAWING NO. 41285751-001-02 PAGE 23

1033 02170 0 04 04350 STA CNTC 1034 02171 0 04 04351 STA CNTD 1035 02172 0 02 04373 LDA TMPB NO OF MEMORY CYCLES/INCREMENT 1036 02173 0 07 04432 P202 SUB =1000 1037 02174 100400 SPL TEST FOR THOUSANDS DIGIT 1038 02175 0 01 02200 JMP *+3 NO MORE THOUSANDS DIGIT 1039 02176 0 12 04346 IRS CNTA CNTA = THOUSANDS DIGIT (ISO-CODE CHAR) 1040 02177 0 01 02173 JMP P202 1041 02200 0 06 04432 ADD =1000 RESTORE HUNDREDS+TENS+UNITS DIGITS 1042 02201 0 07 04431 P203 SUB =100 1043 02202 100400 SPL TEST FOR HUNDREDS DIGIT 1044 02203 0 01 02206 JMP *+3 NO MORE HUNDREDS DIGIT 1045 02204 0 12 04347 IRS CNTB CNTB = HUNDREDS DIGIT (ISO-CODE CHAR) 1046 02205 0 01 02201 JMP P203 1047 02206 0 06 04431 ADD =100 RESTORE TENS + UNITS DIGITS 1048 02207 0 07 04476 P204 SUB =10 1049 02210 100400 SPL TEST FOR TENS DIGIT 1050 02211 0 01 02214 JMP *+3 NO MORE TENS DIGIT 1051 02212 0 12 04350 IRS CNTC CNTC = TENS DIGIT (ISO-CODE CHAR) 1052 02213 0 01 02207 JMP P204 1053 02214 0 06 04476 ADD =10 RESTORE UNITS DIGIT 1054 02215 0 06 04351 ADD CNTD 1055 02216 0 04 04351 STA CNTD CNTD = UNITS DIGIT (ISO-CODE CHAR) 1056 * 1057 02217 0 02 04346 LDA CNTA THOUSANDS DIGIT 1058 02220 0414 70 LGL 8 THOUSANDS DIGIT IN NS HALF OF REGA 1059 02221 0 05 04347 ERA CNTB REGA = THOUSANDS DIGIT, HUNDREDS DIGIT 1060 02222 -0 04 04370 STA* PNTR STORE IN MESSAGE (REPLACE WX) 1061 02223 0 12 04370 IRS PNTR INCREMENT ADDRESS OF MESSAGE 1062 02224 0 02 04350 LDA CNTC TENS DIGIT 1063 02225 0414 70 LGL 8 TENS DIGIT IN MS HALF OF REGA 1064 02226 0 05 04351 ERA CNTD REGA = TENS DIGIT, UNITS DIGIT 1065 02227 -0 04 04370 STA* PNTR STORE IN MESSAGE (REPLACE YZ) 1066 02230 0 02 04370 LDA PNTR 1067 02231 0 06 04456 ADD =8 1068 02232 0 04 04370 STA PNTR 1069 02233 0 12 04356 IRS FGRC INCREMENT FIGURE COUNTER 1070 02234 100000 SKP MOVE PLOTTER IN POSITION TO PLOT NEXT FIGURE 1071 02235 0 01 02247 JMP P207 ALL FIGURES PLOTTED IN THE ROW 1072 * 1073 02236 0 35 04375 LDX 10NU STEP COUNTER (NO OF STEPS IN 10 UNITS) 1074 02237 0 10 03357 JST MPST 1075 02240 0 12 00000 IRS 0 INCREMENT STEP COUNTER 1076 02241 0 01 02237 JMP *-2 MOVE PLOTTER NEXT STEP 1077 02242 0 35 04400 LDX 40NU STEP COUNTER (NO OF STEPS IN 40 UNITS) 1078 02243 0 10 03225 JST MPET 1079 02244 0 12 00000 IRS 0 INCREMENT STEP COUNTER 1080 02245 0 01 02243 JMP *-2 MOVE PLOTTER NEXT STEP 1081 02246 0 01 02063 JMP P2NF PLOT NEXT FIGURE 1082 *
* 0520-001-H002 (O16-DPT9) DRAWING NO. 41285751-001-02 PAGE 24

1083 * TEST FOR REQUIREMENT OF SPEED OUTPUT 1084 02247 100002 P207 SR4 TEST FOR REQUIREMENT OF SPEED OUTPUT 1085 02250 0 01 02321 JMP P208 SPEED MESSAGE NOT REQUIRED 1086 * 1087 * OUTPUT SPEED MESSAGE 1088 02251 0 02 04430 LDA =-38 NUMBER OF WORDS TO BE OUTPUT 1089 02252 0 10 04056 JST OASR OUTPUT SPEED MESSAGE 1090 02253 106612 OCT 106612,105212 CR/LF/LF/LF 02254 105212 1091 02255 143307 MSSG BCI 9,FGR1 MC/IN WXYZ 02256 151261 02257 120240 02260 146703 02261 127711 02262 147240 02263 153730 02264 154732 02265 120240 1092 02266 143307 BCI 9,FGR2 MC/IN WXYZ 02267 151262 02270 120240 02271 146703 02272 127711 02273 147240 02274 153730 02275 154732 02276 120240 1093 02277 143307 BCI 9,FGR3 MC/IN WXYZ 02300 151263 02301 120240 02302 146703 02303 127711 02304 147240 02305 153730 02306 154732 02307 120240 1094 02310 143307 BCI 9,FGR4 MC/IN WXYZ 02311 151264 02312 120240 02313 146703 02314 127711 02315 147240 02316 153730 02317 154732 02320 120240 1095 02321 0 35 04376 P208 LDX 20NU STEP COUNTER (NO OF STEPS IN 20 UNITS) 1096 02322 0 10 03271 JST MPNT 1097 02323 0 12 00000 IRS 0 INCREMENT STEP COUNTER 1098 02324 0 01 02322 JMP *-2 MOVE PLOTTER NEXT STEP 1099 02325 0 12 04372 IRS ROWC INCREMENT ROW COUNTER
* 0520-001-H002 (O16-DPT9) DRAWING NO. 41285751-001-02 PAGE 25

1100 02326 100000 SKP MOVE PLOTTER WEST TO PLOT NEXT ROW 1101 02327 0 01 02335 JMP P210 ALL ROWS PLOTTED. END OF PATTERN 2 1102 * 1103 02330 0 35 04405 LDX 80NU STEP COUNTER (NO OF STEPS IN 80 UNITS) 1104 02331 0 10 03247 JST MPWT 1105 02332 0 12 00000 IRS 0 INCREMENT STEP COUNTER 1106 02333 0 01 02331 JMP *-2 MOVE PLOTTER NEXT STEP 1107 02334 0 01 02056 JMP P2NR PLOT NEXT RON OF FIGURES 1108 * 1109 02335 0 02 04367 P210 LDA PALL 1110 02336 101040 SNZ TEST FOR REQUIREMENT OF PLOTTING ALL PATRNS 1111 02337 0 01 02343 JMP PAT3 PLOT PATTERN THREE 1112 02340 0 01 01722 JMP AQTN ASK QUESTION: TEST NO? 1113 * 1114 02341 0 11 04467 P003 CAS ='263 '263 = CHARACTER THREE 1115 02342 0 01 03014 JMP P004 INPUT CHARACTER OTHER THAN THREE 1116 * * PLOT PATTERN THREE (INPUT CHAR = 3) 1117 * 1118 * PATTERN THREE (FULL DIRECTIONAL TEST - SIXTEEN POINTED STAR) 1119 * 1120 02343 0 02 04374 PAT3 LDA UNIT NUMBER OF STEPS IN ONE UNIT LENGTH (U) 1121 02344 0414 76 LGL 2 REGA = 4U 1122 02345 0 06 04374 ADD UNIT REGA = 5U 1123 02346 0414 77 LGL 1 REGA = 10U 1124 02347 0 04 04371 STA RDUS 1125 02350 0414 77 LGL 1 REGA = 20U 1126 02351 0 04 04353 STA DMTR 1127 * 1128 02352 0414 77 LGL 1 REGA = 4R 1129 02353 0 06 04371 ADD RDUS REGA = 5R 1130 02354 0414 77 LGL 1 REGA = 10R 1131 02355 0 06 04371 ADD RDUS REGA = 11R 1132 02356 0414 76 LGL 2 REGA = 44R 1133 02357 0 06 04371 ADD RDUS REGA = 45R . 1134 02360 0414 76 LGL 2 REGA = 180R 1135 02361 0 06 04371 ADD RDUS REGA = 181R 1136 02362 0404 70 LGR 8 REGA = 181R/256 = 0.707R 1137 02363 0 04 04407 STA 707R 1138 02364 0414 77 LGL 1 REGA = 2*(O.707R) 3 0.707D 1139 02365 0 04 04406 STA 707D 1140 * 1141 02366 0 02 04371 LDA RDUS 1142 02367 0414 77 LGL 1 REGA = 2R 1143 02370 0 06 04371 ADD RDUS REGA = 3R 1144 02371 0414 77 LGL 1 REGA = 6R 1145 02372 0 06 04371 ADD RDUS REGA = 7R 1146 02373 0414 76 LGL 2 REGA = 28R 1147 02374 0 06 04371 ADD RDUS REGA = 29R 1148 02375 0414 77 LGL 1 REGA = 58R 1149 02376 0 06 04371 ADD RDUS REGA = 59R
* 0520-001-H002 (O16-DPT9) DRAWING NO. 41285751-001-02 PAGE 26

1150 02377 0404 72 LGR 6 REGA = 59R/64 = 0.92R 1151 02400 0 04 04411 STA 92RD 1152 02401 0414 77 LGL 1 REGA = 2*(O.92R) = 0.92D 1153 02402 0 04 04410 STA 92DM 1154 * 1155 02403 0 35 04376 LDX 20NU STEP COUNTER (NO OF STEPS IN 20 UNITS) 1156 02404 0 10 03541 JST MINT 1157 02405 0 12 00000 IRS 0 INCREMENT STEP COUNTER 1158 02406 0 01 02404 JMP *-2 MOVE PLOTTER NEXT STEP 1159 * 1160 02407 0 10 03521 JST MIET 1161 02410 34 0227 DP09 SKS PLLR 1162 02411 100000 SKP EAST LIMIT REACHED 1163 02412 0 01 02407 JMP *-3 LIMIT NOT YET REACHED, MOVE EAST 1164 02413 0 02 04363 LDA LMIT 1165 02414 0404 77 LGR 1 1166 02415 140407 TCA 1167 02416 0 04 00000 STA 0 STEP COUNTER 1168 02417 0 10 03531 JST MIWT 1169 02420 0 12 00000 IRS 0 INCREMENT STEP COUNTER 1170 02421 0 01 02417 JMP *-2 MOVE PLOTTER NEXT STEP 1171 * 1172 02422 0 35 04377 LDX 30NU STEP COUNTER (NO OF STEPS IN 30 UNITS) 1173 02423 0 10 03531 JST MIWT 1174 02424 0 12 00000 IRS 0 INCREMENT STEP COUNTER 1175 02425 0 01 02423 JMP *-2 MOVE PLOTTER NEXT STEP 1176 * 1177 02426 0 02 04510 LDA =-3 NUMBER OF ROWS IN THE PATTERN 1178 02427 0 04 04372 STA ROWC 1179 02430 0 02 04510 P3NR LDA =-3 NUMBER OF FIGURES IN A ROW 1180 02431 0 04 04356 STA FGRC 1181 02432 140040 CRA 1182 02433 0 04 04346 STA CNTA 1183 02434 0 04 04347 STA CNTB 1184 02435 0 04 04350 STA CNTC 1185 * 1186 02436 0 10 03621 P3NF JST MIDN 1187 02437 0 02 04353 LDA DMTR 1188 02440 140407 TCA 1189 02441 0 04 00000 STA 0 STEP COUNTER 1190 02442 0 10 03531 JST MIWT 1191 02443 0 12 00000 IRS 0 INCREMENT STEP COUNTER 1192 02444 0 01 02442 JMP *-2 PLOT NEXT STEP 1193 * 1194 02445 0 10 03631 JST MIUP 1195 02446 0 10 03776 JST ICLC 1196 02447 0 10 04004 P302 JST CALC 1197 02450 0 11 04427 CAS ='10000 '10000 = 0.5*(2**13) 1198 02451 0 10 03561 JST MINW 1199 02452 0 01 02454 JMP *+2
* 0520-001-H002 (O16-DPT9) DRAWING NO. 41285751-001-02 PAGE 27

1200 02453 0 10 03531 JST MIWT 1201 02454 0 12 04364 IRS MRKR INCREMENT MARKER 1202 02455 0 02 04411 LDA 92RD 1203 02456 0 11 04364 CAS MRKR TEST FOR COMPLETION OF W-NW MOVEMENT 1204 02457 0 01 02447 JMP P302 MOVE PLOTTER NEXT STEP 1205 02460 101000 NOP N-NW MOVEMENT OF RADIUS LENGTH COMPLETE 1206 * 1207 02461 0 02 04371 LDA RDUS 1208 02462 140407 TCA 1209 02463 0 04 00000 STA 0 STEP COUNTER 1210 02464 0 10 03521 JST MIET 1211 02465 0 12 00000 IRS 0 INCREMENT STEP COUNTER 1212 02466 0 01 02464 JMP *-2 MOVE PLOTTER NEXT STEP 1213 * 1214 02467 0 10 03621 JST MIDN 1215 02470 0 10 03776 JST ICLC 1216 02471 0 10 04004 P304 JST CALC 1217 02472 0 11 04427 CAS ='10000 '10000 = 0.5*(2**13) 1218 02473 0 10 03601 JST MISE 1219 02474 0 01 02476 JMP *+2 1220 02475 0 10 03521 JST MIET 1221 02476 0 12 04364 IRS MRKR INCREMENT MARKER 1222 02477 0 02 04410 LDA 92DM 1223 02500 0 11 04364 CAS MRKR TEST FOR COMPLETION OF E-SE MOVEMENT 1224 02501 0 01 02471 JMP P304 PLOT NEXT STEP 1225 02502 101000 NOP E-SE MOVEMENT OF DIAMETER LENGTH COMPLETE 1226 * 1227 02503 0 10 03631 JST MIUP 1228 02504 0 02 04407 LDA 707R 1229 02505 140407 TCA 1230 02506 0 04 00000 STA 0 STEP COUNTER 1231 02507 0 10 03601 JST MISE 1232 02510 0 12 00000 IRS 0 INCREMENT STEP COUNTER 1233 02511 0 01 02507 JMP *-2 MOVE PLOTTER NEXT STEP 1234 * 1235 02512 0 10 03776 JST ICLC 1236 02513 0 10 04004 P306 JST CALC 1237 02514 0 11 04427 CAS ='10000 '10000 = 0.5*(2**13) 1238 02515 0 10 03561 JST MINW 1239 02516 0 01 02520 JMP *+2 1240 02517 0 10 03531 JST MIWT 1241 02520 0 12 04364 IRS MRKR INCREMENT MARKER 1242 02521 0 02 04411 LDA 92RD 1243 02522 0 11 04364 CAS MRKR TEST FOR COMPLETION OF N-NW MOVEMENT 1244 02523 0 01 02513 JMP P306 MOVE PLOTTER NEXT STEP 1245 02524 101000 NOP N-NW MOVEMENT OF RADIUS LENGTH COMPLETE 1246 * 1247 02525 0 10 03621 JST MIDN 1248 02526 0 02 04406 LDA 707D 1249 02527 140407 TCA
* 0520-001-H002 (O16-DPT9) DRAWING NO. 41285751-001-02 PAGE 28

1250 02530 0 04 00000 STA 0 STEP COUNTER 1251 02531 0 10 03561 JST MINW 1252 02532 0 12 00000 IRS 0 INCREMENT STEP COUNTEP 1253 02533 0 01 02531 JMP *-2 PLOT NEXT STEP 1254 * 1255 02534 0 10 03631 JST MIUP 1256 02535 0 10 03776 JST ICLC 1257 02536 0 10 04004 P308 JST CALC 1258 02537 0 11 04427 CAS ='10000 '10000 = 0.5*(2**13) 1259 02540 0 10 03561 JST MINW 1260 02541 0 01 02543 JMP *+2 1261 02542 0 10 03541 JST MINT 1262 02543 0 12 04364 IRS MRKR INCREMENT MARKER 1263 02544 0 02 04411 LDA 92RD 1264 02545 0 11 04364 CAS MRKR TEST FOR COMPLETION OF N-NW MOVEMENT 1265 02546 0 01 02536 JMP P308 MOVE PLOTTER NEXT STEP 1266 02547 101000 NOP N-NW MOVEMENT 0F RADIUS LENGTH COMPLETE 1267 * 1268 02550 0 02 04407 LDA 707R 1269 02551 140407 TCA 1270 02552 0 04 00000 STA 0 STEP COUNTER 1271 02553 0 10 03601 JST MISE 1272 02554 0 12 00000 IRS 0 INCREMENT STEP COUNTER 1273 02555 0 01 02553 JMP *-2 MOVE PLOTTER NEXT STEP 1274 * 1275 02556 0 10 03621 JST MIDN 1276 02557 0 10 03776 JST ICLC 1277 02560 0 10 04004 P310 JST CALC 1278 02561 0 11 04427 CAS ='10000 '10000 = 0.5*(2**13) 1279 02562 0 10 03601 JST MISE 1280 02563 0 01 02565 JMP *+2 1281 02564 0 10 03571 JST MIST 1282 02565 0 12 04364 IRS MRKR INCREMENT MARKER 1283 02566 0 02 04410 LDA 92DM 1284 02567 0 11 04364 CAS MRKR TEST FOR COMPLETION OF S-SE MOVEMENT 1285 02570 0 01 02560 JMP P310 PLOT NEXT STEP 1286 02571 101000 NOP S-SE MOVEMENT OF DIAMETER LENGTH COMPLETE 1287 * 1288 02572 0 10 03631 JST MIUP 1289 02573 0 02 04371 LDA RDUS 1290 02574 140407 TCA 1291 02575 0 04 00000 STA 0 STEP COUNTER 1292 02576 0 10 03571 JST MIST 1293 02577 0 12 00000 IRS 0 INCREMENT STEP COUNTER 1294 02600 0 01 02576 JMP *-2 MOVE PLOTTER NEXT STEP 1295 * 1296 02601 0 10 03776 JST ICLC 1297 02602 0 10 04004 P312 JST CALC 1298 02603 0 11 04427 CAS ='10000 '10000 = 0.5*(2**13) 1299 02604 0 10 03561 JST MINW
* 0520-001-H002 (O16-DPT9) DRAWING NO. 41285751-001-02 PAGE 29

1300 02605 0 01 02607 JMP *+2 1301 02606 0 10 03541 JST MINT 1302 02607 0 12 04364 IRS MRKR INCREMENT MARKER 1303 02610 0 02 04411 LDA 92RD 1304 02611 0 11 04364 CAS MRKR TEST FOR COMPLETION OF N-NW MOVEMENT 1305 02612 0 01 02602 JMP P312 MOVE PLOTTER NEXT STEP 1306 02613 101000 NOP N-NW MOVEMENT OF DIAMETER LENGTH COMPLETE 1307 * 1308 02614 0 10 03621 JST MIDN 1309 02615 0 02 04353 LDA DMTR 1310 02616 140407 TCA 1311 02617 0 04 00000 STA 0 STEP COUNTER 1312 02620 0 10 03541 JST MINT 1313 02621 0 12 00000 IRS 0 INCREMENT STEP COUNTER 1314 02622 0 01 02620 JMP *-2 PLOT NEXT STEP 1315 * 1316 02623 0 10 03631 JST MIUP 1317 02624 0 10 03776 JST ICLC 1318 02625 0 10 04004 P314 JST CALC 1319 02626 0 11 04427 CAS ='10000 '10000 = 0.5*(2**13) 1320 02627 0 10 03551 JST MINE 1321 02630 0 01 02632 JMP *+2 1322 02631 0 10 03541 JST MINT 1323 02632 0 12 04364 IRS MRKR INCREMENT MARKER 1324 02633 0 02 04411 LDA 92RD 1325 02634 0 11 04364 CAS MRKR TEST FOR COMPLETION OF N-NE MOVEMENT 1326 02635 0 01 02625 JMP P314 MOVE PLOTTER NEXT STEP 1327 02636 101000 NOP N-NE MOVEMENT OF RADIUS LENGTH COMPLETE 1328 * 1329 02637 0 02 04371 LDA RDUS 1330 02640 140407 TCA 1331 02641 0 04 00000 STA 0 STEP COUNTER 1332 02642 0 10 03571 JST MIST 1333 02643 0 12 00000 IRS 0 INCREMENT STEP COUNTER 1334 02644 0 01 02642 JMP *-2 MOVE PLOTTER NEXT STEP 1335 * 1336 02645 0 10 03621 JST MIDN 1337 02646 0 10 03776 JST ICLC 1338 02647 0 10 04004 P316 JST CALC 1339 02650 0 11 04427 CAS ='10000 '10000 = 0.5*(2**13) 1340 02651 0 10 03611 JST MISW 1341 02652 0 01 02654 JMP *+2 1342 02653 0 10 03571 JST MIST 1343 02654 0 12 04364 IRS MRKR INCREMENT MARKER 1344 02655 0 02 04410 LDA 92DM 1345 02656 0 11 04364 CAS MRKR TEST FOR COMPLETION OF S-SW MOVEMENT 1346 02657 0 01 02647 JMP P316 PLOT NEXT STEP 1347 02660 101000 NOP S-SW MOVEMENT OF DIAMETER LENGTH COMPLETE 1348 * 1349 02661 0 10 03631 JST MIUP
* 0520-001-H002 (O16-DPT9) DRAWING NO. 41285751-001-02 PAGE 30

1350 02662 0 02 04407 LDA 707R 1351 02663 140407 TCA 1352 02664 0 04 00000 STA 0 STEP COUNTER 1353 02665 0 10 03611 JST MISW 1354 02666 0 12 00000 IRS 0 INCREMENT STEP COUNTER 1355 02667 0 01 02665 JMP *-2 MOVE PLOTTER NEXT STEP 1356 * 1357 02670 0 10 03776 JST ICLC 1358 02671 0 10 04004 P318 JST CALC 1359 02672 0 11 04427 CAS ='10000 '10000 = 0.5*(2**13) 1360 02673 0 10 03551 JST MINE 1361 02674 0 01 02676 JMP *+2 1362 02675 0 10 03541 JST MINT 1363 02676 0 12 04364 IRS MRKR INCREMENT MARKER 1364 02677 0 02 04411 LDA 92RD 1365 02700 0 11 04364 CAS MRKR TEST FOR COMPLETION OF N-NE MOVEMENT 1366 02701 0 01 02671 JMP P318 MOVE PLOTTER NEXT STEP 1367 02702 101000 NOP N-NE MOVEMENT OE RADIUS LENGTH COMPLETE 1368 * 1369 02703 0 10 03621 JST MIDN 1370 02704 0 02 04406 LDA 707D 1371 02705 140407 TCA 1372 02706 0 04 00000 STA 0 STEP COUNTER 1373 02707 0 10 03551 JST MINE 1374 02710 0 12 00000 IRS 0 INCREMENT STEP COUNTER 1375 02711 0 01 02707 JMP *-2 MOVE PLOTTER NEXT STEP 1376 * 1377 02712 0 10 03631 JST MIUP 1378 02713 0 10 03776 JST ICLC 1379 02714 0 10 04004 P320 JST CALC 1380 02715 0 11 04427 CAS ='10000 '10000 = 0.5*(2**13) 1381 02716 0 10 03551 JST MINE 1382 02717 0 01 02721 JMP *+2 1383 02720 0 10 03521 JST MIET 1384 02721 0 12 04364 IRS MRKR INCREMENT MARKER 1385 02722 0 02 04411 LDA 92RD 1386 02723 0 11 04364 CAS MRKR TEST FOR COMPLETION OF E-NE MOVEMENT 1387 02724 0 01 02714 JMP P320 MOVE PLOTTER NEXT STEP 1388 02725 101000 NOP E-NE MOVEMENT OF RADIUS LENGTH COMPLETE 1389 * 1390 02726 0 02 04407 LDA 707R 1391 02727 140407 TCA 1392 02730 0 04 00000 STA 0 STEP COUNTER 1393 02731 0 10 03611 JST MISW 1394 02732 0 12 00000 IRS 0 INCREMENT STEP COUNTER 1395 02733 0 01 02731 JMP *-2 MOVE PLOTTER NEXT STEP 1396 * 1397 02734 0 10 03621 JST MIDN 1398 02735 0 10 03776 JST ICLC 1399 02736 0 10 04004 P322 JST CALC
* 0520-001-H002 (O16-DPT9) DRAWING NO. 41285751-001-02 PAGE 31

1400 02737 0 11 04427 CAS ='10000 '10000 = 0.5*(2**13) 1401 02740 0 10 03611 JST MISW 1402 02741 0 01 02743 JMP *+2 1403 02742 0 10 03531 JST MIWT 1404 02743 0 12 04364 IRS MRKR INCREMENT MARKER 1405 02744 0 02 04410 LDA 92DM 1406 02745 0 11 04364 CAS MRKR TEST FOR COMPLETION OF W-SW MOVEMENT 1407 02746 0 01 02736 JMP P322 PLOT NEXT STEP 1408 02747 101000 NOP W-SW MOVEMENT OF DIAMETER LENGTH COMPLETE 1409 * 1410 02750 0 10 03631 JST MIUP 1411 02751 0 10 03776 JST ICLC 1412 02752 0 10 04004 P330 JST CALC 1413 02753 0 11 04427 CAS ='10000 '10000 = 0.5*(2**13) 1414 02754 0 10 03551 JST MINE 1415 02755 0 01 02757 JMP *+2 1416 02756 0 10 03521 JST MIET 1417 02757 0 12 04364 IRS MRKR INCREMENT MARKER 1418 02760 0 02 04411 LDA 92RD 1419 02761 0 11 04364 CAS MRKR TEST FOR COMPLETION OF E-NE MOVEMENT 1420 02762 0 01 02752 JMP P330 MOVE PLOTTER NEXT STEP 1421 02763 101000 NOP E-NE MOVEMENT OF RADIUS LENGTH COMPLETE 1422 * 1423 02764 0 12 04356 IRS FGRC INCREMENT FIGURE COUNTER 1424 02765 100000 SKP MOVE PLOTTER EAST TO PLOT NEXT FIGURE 1425 02766 0 01 02774 JMP P350 ALL FIGURES PLOTTED IN THE ROW 1426 02767 0 35 04402 LDX 50NU STEP COUNTER (NO OF STEPS IN 50 UNITS) 1427 02770 0 10 03521 JST MIET 1428 02771 0 12 00000 IRS 0 INCREMENT STEP COUNTER 1429 02772 0 01 02770 JMP *-2 MOVE PLOTTER NEXT STEP 1430 02773 0 01 02436 JMP P3NF PLOT NEXT FIGURE 1431 * 1432 02774 0 35 04377 P350 LDX 30NU STEP COUNTER (NO OF STEPS IN 30 UNITS) 1433 02775 0 10 03541 JST MINT 1434 02776 0 12 00000 IRS 0 INCREMENT STEP COUNTER 1435 02777 0 01 02775 JMP *-2 MOVE PLOTTER NEXT STEP 1436 * 1437 03000 0 12 04372 IRS ROWC INCREMENT ROW COUNTER 1438 03001 100000 SKP MOVE PLOTTER WEST TO PLOT NEXT ROW 1439 03002 0 01 03010 JMP P370 ALL ROWS PLOTTED, END OF PATTERN 3 1440 * 1441 03003 0 35 04404 LDX 70NU STEP COUNTER (NO OF STEPS IN 70 UNITS) 1442 03004 0 10 03531 JST MIWT 1443 03005 0 12 00000 IRS 0 INCREMENT STEP COUNTER 1444 03006 0 01 03004 JMP *-2 MOVE PLOTTER NEXT STEP 1445 03007 0 01 02430 JMP P3NR PLOT NEXT ROW OF FIGURES 1446 * 1447 03010 0 02 04367 P370 LDA PALL 1448 03011 101040 SNZ TEST FOR REQUIREMENT OF PLOTTING ALL PATRNS 1449 03012 0 01 03016 JMP PAT4 PLOT PATTERN FOUR
* 0520-001-H002 (O16-DPT9) DRAWING NO. 41285751-001-02 PAGE 32

1450 03013 0 01 01722 JMP AQTN ASK QUESTION: TEST NO? 1451 * 1452 03014 0 11 04464 P004 CAS '=264 '264 = CHARACTER FOUR 1453 03015 0 01 03171 JMP P00E INPUT CHARACTER OTHER THAN FOUR 1454 * * PLOT PATTERN FOUR (INPUT CHAR = 4) 1455 * 1456 * PATTERN FOUR (ALIGNMENT TEST - DIAMOND MESH) 1457 * 1458 03016 0 35 04375 PAT4 LDX 10NU STEP COUNTER (NO OF STEPS IN 10 UNITS) 1459 03017 0 10 03271 JST MPNT 1460 03020 0 12 00000 IRS 0 INCREMENT STEP COUNTER 1461 03021 0 01 03017 JMP *-2 MOVE PLOTTER NEXT STEP 1462 03022 0 10 03210 JST MPCT 1463 03023 0 35 04403 LDX 60NU STEP COUNTER (NO OF STEPS IN 60 UNITS) 1464 03024 0 10 03247 JST MPWT 1465 03025 0 12 00000 IRS 0 INCREMENT STEP COUNTER 1466 03026 0 01 03024 JMP *-2 MOVE PLOTTER NEXT STEP 1467 * 1468 03027 0 02 04440 LDA =-6 NUMBER OF ROWS IN THE PATTERN 1469 03030 0 04 04372 STA ROWC 1470 03031 0 02 04440 P4NR LDA =-6 NUMBER OF FIGURES IN A ROW 1471 03032 0 04 04356 STA FGRC 1472 03033 0 10 03445 JST MPDN 1473 * 1474 03034 0 35 04375 P4NF LDX 10NU STEP COUNTER (NO OF STEPS IN 10 UNITS) 1475 03035 0 10 03225 JST MPET 1476 03036 0 12 00000 IRS 0 INCREMENT STEP COUNTER 1477 03037 0 01 03035 JMP *-2 PLOT NEXT STEP 1478 03040 0 35 04375 LDX 10NU STEP COUNTER (NO OF STEPS IN 10 UNITS) 1479 03041 0 10 03313 JST MPNE 1480 03042 0 12 00000 IRS 0 INCREMENT STEP COUNTER 1481 03043 0 01 03041 JMP *-2 PLOT NEXT STEP 1482 03044 0 35 04375 LDX 10NU STEP COUNTER (NO OF STEPS IN 10 UNITS) 1483 03045 0 10 03335 JST MPNW 1484 03046 0 12 00000 IRS 0 INCREMENT STEP COUNTER 1485 03047 0 01 03045 JMP *-2 PLOT NEXT STEP 1486 03050 0 35 04375 LDX 10NU STEP COUNTER (NO OF STEPS IN 10 UNITS) 1487 03051 0 10 03423 JST MPSW 1488 03052 0 12 00000 IRS 0 INCREMENT STEP COUNTER 1489 03053 0 01 03051 JMP *-2 PLOT NEXT STEP 1490 03054 0 35 04375 LDX 10NU STEP COUNTER (NO OF STEPS IN 10 UNITS) 1491 03055 0 10 03401 JST MPSE 1492 03056 0 12 00000 IRS 0 INCREMENT STEP COUNTER 1493 03057 0 01 03055 JMP *-2 PLOT NEXT STEP 1494 03060 0 35 04375 LDX 10NU STEP COUNTER (NO OF STEPS IN 10 UNITS) 1495 03061 0 10 03225 JST MPET 1496 03062 0 12 00000 IRS 0 INCREMENT STEP COUNTER 1497 03063 0 01 03061 JMP *-2 PLOT NEXT STEP 1498 03064 0 12 04356 IRS FGRC INCREMENT FIGURE COUNTER 1499 03065 0 01 03034 JMP P4NF PLOT NEXT FIGURE
* 0520-001-H002 (O16-DPT9) DRAWING NO. 41285751-001-02 PAGE 33

1500 * 1501 03066 0 10 03473 JST MPUP 1502 03067 0 02 04510 LDA =-3 NUMBER OF PAIRS OF LINES TO BE DRAWN 1503 03070 0 04 04352 STA CNTR LINE-PAIR COUNTER 1504 03071 0 35 04375 P401 LDX 10NU STEP COUNTER (NO OF STEPS IN 10 UNITS) 1505 03072 0 10 03247 JST MPWT 1506 03073 0 12 00000 IRS 0 INCREMENT STEP COUNTER 1507 03074 0 01 03072 JMP *-2 MOVE PLOTTER NEXT STEP 1508 03075 0 10 03445 JST MPDN 1509 03076 0 35 04376 LDX 20NU STEP COUNTER (NO OF STEPS IN 20 UNITS) 1510 03077 0 10 03271 JST MPNT 1511 03100 0 12 00000 IRS 0 INCREMENT STEP COUNTER 1512 03101 0 01 03077 JMP *-2 PLOT NEXT STEP 1513 03102 0 10 03473 JST MPUP 1514 03103 0 35 04376 LDX 20NU STEP COUNTER (NO OF STEPS IN 20 UNITS) 1515 03104 0 10 03247 JST MPWT 1516 03105 0 12 00000 IRS 0 INCREMENT STEP COUNTER 1517 03106 0 01 03104 JMP *-2 MOVE PLOTTER NEXT STEP 1518 03107 0 10 03445 JST MPDN 1519 03110 0 35 04376 LDX 20NU STEP COUNTER (NO OF STEPS IN 20 UNITS) 1520 03111 0 10 03357 JST MPST 1521 03112 0 12 00000 IRS 0 INCREMENT STEP COUNTER 1522 03113 0 01 03111 JMP *-2 PLOT NEXT STEP 1523 03114 0 10 03473 JST MPUP 1524 03115 0 35 04375 LDX 10NU STEP COUNTER (NO OF STEPS IN 10 UNITS) 1525 03116 0 10 03247 JST MPWT 1526 03117 0 12 00000 IRS 0 INCREMENT STEP COUNTER 1527 03120 0 01 03116 JMP *-2 MOVE PLOTTER NEXT STEP 1528 03121 0 12 04352 IRS CNTR INCREMENT LINE-PAIR COUNTER 1529 03122 0 01 03071 JMP P401 PLOT NEXT PAIR OF LINES 1530 * 1531 03123 0 35 04375 LDX 10NU STEP COUNTER (NO OF STEPS IN 10 UNITS) 1532 03124 0 10 03271 JST MPNT 1533 03125 0 12 00000 IRS 0 INCREMENT STEP COUNTER 1534 03126 0 01 03124 JMP *-2 MOVE PLOTTER NEXT STEP 1535 03127 0 10 03445 JST MPDN 1536 03130 0 02 04426 LDA =-120 NO OF UNIT LENGTHS TO BE PLOTTED 1537 03131 0 04 04352 STA CNTR UNIT COUNTER 1538 03132 0 35 04366 P402 LDX NUNT STEP COUNTER (NO OF STEPS IN 1 UNIT) 1539 03133 0 10 03225 JST MPET 1540 03134 0 12 00000 IRS 0 INCREMENT STEP COUNTER 1541 03135 0 01 03133 JMP *-2 PLOT NEXT STEP 1542 03136 0 12 04352 IRS CNTR INCREMENT UNIT COUNTER 1543 03137 0 01 03132 JMP P402 PLOT NEXT UNIT LENGTH 1544 03140 0 10 03473 JST MPUP 1545 03141 0 35 04375 LDX 10NU STEP COUNTER (NO OF STEPS IN 10 UNITS) 1546 03142 0 10 03271 JST MPNT 1547 03143 0 12 00000 IRS 0 INCREMENT STEP COUNTER 1548 03144 0 01 03142 JMP *-2 MOVE PLOTTER NEXT STEP 1549 03145 0 02 04372 LDA ROWC
* 0520-001-H002 (O16-DPT9) DRAWING NO. 41285751-001-02 PAGE 34

1550 03146 0 05 04512 ERA =-1 1551 03147 101040 SNZ TEST FOR LAST ROW 1552 03150 0 10 03445 JST MPDN 1553 03151 0 02 04426 LDA =-120 NO OF UNIT LENGTHS TO BE MOVED 1554 03152 0 04 04352 STA CNTR UNIT COUNTER 1555 03153 0 35 04366 P403 LDX NUNT STEP COUNTER (NO OF STEPS IN ONE UNIT) 1556 03154 0 10 03247 JST MPWT 1557 03155 0 12 00000 IRS 0 INCREMENT STEP COUNTER 1558 03156 0 01 03154 JMP *-2 MOVE PLOTTER NEXT STEP 1559 03157 0 12 04352 IRS CNTR INCREMENT UNIT COUNTER 1560 03160 0 01 03153 JMP P403 MOVE PLOTTER NEXT UNIT LENGTH 1561 03161 0 12 04372 IRS ROWC INCREMENT ROW COUNTER 1562 03162 0 01 03031 JMP P4NR PLOT NEXT ROW OF FIGURES 1563 03163 0 10 03473 JST MPUP 1564 03164 0 35 04376 LDX 20NU STEP COUNTER (NO OF STEPS IN 20 UNITS) 1565 03165 0 10 03271 JST MPNT 1566 03166 0 12 00000 IRS 0 INCREMENT STEP COUNTER 1567 03167 0 01 03165 JMP *-2 MOVE PLOTTER NEXT STEP 1568 * 1569 03170 0 01 01722 JMP AQTN ASK QUESTION: TEST NO? 1570 * 1571 03171 0 05 04425 P00E ERA ='305 '305 = CHARACTER E 1572 03172 100040 SZE TEST FOR CHARACTER E 1573 03173 0 01 01725 JMP QST6 INVALID CHARACTER, REPEAT THE QUESTION 1574 * * CHAR E (END OF TEST) 1575 * 1576 * OUTPUT END HEADING MESSAGE TO ASR 1577 * 1578 03174 0 02 04461 LDA =-8 NUMBER OF WORDS TO BE OUTPUT 1579 03175 0 10 04056 JST OASR 1580 03176 105212 OCT 105212 LF/LF 1581 03177 142716 BCI 6,END O16-DPT9 03200 142240 03201 147661 03202 133255 03203 142320 03204 152271 1582 03205 105212 OCT 105212 LF/LF 1583 * 1584 03206 000000 HLT 1585 03207 0 01 01000 JMP STRT RESTART 1586 * 1587 * 1588 * SUBROUIINES 1589 * 1590 * MOVE PLOTTER TO CENTRE (WITHOUT INTERRUPT) 1591 03210 0 000000 MPCT DAC ** MOVE PLOTTEP TO CENTRE (WITHOUT INT) 1592 03211 0 10 03225 JST MPET 1593 03212 34 0227 DP10 SKS PLLR 1594 03213 100000 SKP EAST LIMIT REACHED
* 0520-001-H002 (O16-DPT9) DRAWING NO. 41285751-001-02 PAGE 35

1595 03214 0 01 03211 JMP *-3 LIMIT NOT YET REACHED, MOVE EAST 1596 03215 0 02 04363 LDA LMIT 1597 03216 0404 77 LGR 1 1598 03217 140407 TCA 1599 03220 0 04 00000 STA 0 STEP COUNTER 1600 03221 0 10 03247 JST MPWT 1601 03222 0 12 00000 IRS 0 INCREMENT STEP COUNTER 1602 03223 0 01 03221 JMP *-2 MOVE PLOTTER NEXT STEP 1603 03224 -0 01 03210 JMP* MPCT EXIT FROM SUBROUTINE 1604 * 1605 * MOVE PLOTTER EAST ONE STEP (WITHOUT INTERRUPT) 1606 03225 0 000000 MPET DAC ** MOVE PLOTTER EAST (WITHOUT INT) 1607 03226 14 0127 DP11 OCP PLET EAST - CARRIAGE RIGHT 1608 03227 34 0127 DP12 SKS PLNB SKIP IF PLOTTER NOT BUSY 1609 03230 0 01 03235 JMP PET1 PLOTTER BUSY, OK 1610 03231 0 10 04176 JST ERRR ERROR ROUTINE 1611 03232 101000 NOP 1612 03233 147302 BCI 2,NBET P NOT BUSY IMMEDIATELY AFTER MOVING EAST 03234 142724 1613 03235 0 02 04355 PET1 LDA DRTR DIRECTIONAL TIMER 4(4.2) MS 1614 03236 34 0127 PET0 SKS PLNB SKIP IF PLOTTER NOT BUSY 1615 03237 100000 SKP PLOTTER BUSY, DELAY LOOP 1616 03240 -0 01 03225 JMP* MPET EXIT FROM SUBROUTINE 1617 03241 141206 AOA 1618 03242 101040 SNZ TEST FOR COMPLETION OF 4(4.2) MS 1619 03243 0 10 04176 JST ERRR ERROR ROUTINE 1620 03244 0 01 03236 JMP PET0 DELAY LOOP 0F 4(4.2) MILLI-SECONDS 1621 03245 141323 BCI 2,BSET PLOTTER BUSY 4(4.2) MS AFTER MOVING EAST 03246 142724 1622 * 1623 * MOVE PLOTTER WEST ONE STEP (WITHOUT INTERRUPT) 1624 03247 0 000000 MPWT DAC ** MOVE PLOTTER WEST (WITHOUT INT) 1625 03250 14 0227 DP14 OCP PLWT WEST-CARRIAGE LEFT 1626 03251 34 0127 DP15 SKS PLNB SKIP IF PLOTTER NOT BUSY 1627 03252 0 01 03257 JMP PWT1 PLOTTER BUSY, OK 1628 03253 0 10 04176 JST ERRR ERROR ROUTINE 1629 03254 101000 NOP 1630 03255 147302 BCI 2,NBWT P NOT BUSY IMMEDIATELY AFTER MOVING WEST 03256 153724 1631 03257 0 02 04355 PWT1 LDA DRTR DIRECTIONAL TIMER 4(4.2) MS 1632 03260 34 0127 PWT0 SKS PLNB SKIP IF PLOTTER NOT BUSY 1633 03261 100000 SKP PLOTTER BUSY, DELAY LOOP 1634 03262 -0 01 03247 JMP* MPWT EXIT FROM SUBROUTINE 1635 03263 141206 AOA 1636 03264 101040 SNZ TEST FOR COMPLETION OF 4(4.2) MS 1637 03265 0 10 04176 JST ERRR ERROR ROUTINE 1638 03266 0 01 03260 JMP PWT0 DELAY LOOP OF 4(4.2) MILLI-SECONDS 1639 03267 141323 BCI 2,BSWT PLOTTER BUSY 4(4.2) MS AFTER MOVING WEST 03270 153724 1640 *
* 0520-001-H002 (O16-DPT9) DRAWING NO. 41285751-001-02 PAGE 36

1641 * MOVE PLOTTER NORTH ONE STEP (WITHOUT INTERRUPT) 1642 03271 0 000000 MPNT DAC ** MOVE PLOTTER NORTH (WITHOUT INT) 1643 03272 14 0427 DP17 OCP PLNT NORTH - DRUM UP 1644 03273 34 0127 DP18 SKS PLNB SKIP IF PLOTTER NOT BUSY 1645 03274 0 01 03301 JMP PNT1 PLOTTER BUSY, OK 1646 03275 0 10 04176 JST ERRR ERROR ROUTINE 1647 03276 101000 NOP 1648 03277 147302 BCI 2,NBNT P NOT BUSY IMMEDIATELY AFTER MOVING NORTH 03300 147324 1649 03301 0 02 04355 PNT1 LDA DRTR DIRECTIONAL TIMER 4(4.2) MS 1650 03302 34 0127 PNT0 SKS PLNB SKIP IF PLOTTER NOT BUSY 1651 03303 100000 SKP PLOTTER BUSY, DELAY LOOP 1652 03304 -0 01 03271 JMP* MPNT EXIT FROM SUBROUTINE 1653 03305 141206 AOA 1654 03306 101040 SNZ TEST FOR COMPLETION OF 4(4.2) MS 1655 03307 0 10 04176 JST ERRR ERROR ROUTINE 1656 03310 0 01 03302 JMP PNT0 DELAY LOOP OF 4(4.2) MILLI-SECONDS 1657 03311 141323 BCI 2,BSNT PLOTTER BUSY 4(4.2) MS AFTER MOVING NORTH 03312 147324 1658 * 1659 * MOVE PLOTTER NORTH-EAST ONE STEP (WITHOUT INTERRUPT) 1660 03313 0 000000 MPNE DAC ** MOVE PLOTTER NORTH-EAST (WITHOUT INT) 1661 03314 14 0527 DP20 OCP PLNE NORTH EAST-DRUM UP, CARRIAGE RIGHT 1662 03315 34 0127 DP21 SKS PLNB SKIP IF PLOTTER NOT BUSY 1663 03316 0 01 03323 JMP PNE1 PLOTTER BUSY, OK 1664 03317 0 10 04176 JST ERRR ERROR ROUTINE 1665 03320 101000 NOP 1666 03321 147302 BCI 2,NBNE P NOT BUSY IMMEDIATELY AFTER MOVING N-LAST 03322 147305 1667 03323 0 02 04355 PNE1 LDA DRTR DIRECTIONAL TIMER 4(4.2) MS 1668 03324 34 0127 PNE0 SKS PLNB SKIP IF PLOTTER NOT BUSY 1669 03325 100000 SKP PLOTTER BUSY, DELAY LOOP 1670 03326 -0 01 03313 JMP* MPNE EXIT FROM SUBROUTINF 1671 03327 141206 AOA 1672 03330 101040 SNZ TEST FOR COMPLETION OF 4(4.2) MS 1673 03331 0 10 04176 JST ERRR ERROR ROUTINE 1674 03332 0 01 03324 JMP PNE0 DELAY LOOP OF 4(4.2) MILLI-SECONDS 1675 03333 141323 BCI 2,BSNE PLOTTER BUSY 4(4.2) MS AFTER MOVING N-EAST 03334 147305 1676 * 1677 * MOVE PLOTTER NORTH-WEST ONE STEP (WITHOUT INTERRUPT) 1678 03335 0 000000 MPNW DAC ** MOVE PLOTTER NORTH-WEST (WITHOUT INT) 1679 03336 14 0627 DP23 OCP PLNW NORTH WEST - DRUM UP, CARRIAGE LEFT 1680 03337 34 0127 DP24 SKS PLNB SKIP IF PLOTTER NOT BUSY 1681 03340 0 01 03345 JMP PNW1 PLOTTER BUSY, OK 1682 03341 0 10 04176 JST ERRR ERROR ROUTINE 1683 03342 101000 NOP 1684 03343 147302 BCI 2,NBNW P NOT BUSY IMMEDIATELY AFTER MOVING N-WEST 03344 147327 1685 03345 0 02 04355 PNW1 LDA DRTR DIRECTIONAL TIMER 4(4.2) MS
* 0520-001-H002 (O16-DPT9) DRAWING NO. 41285751-001-02 PAGE 37

1686 03346 34 0127 PNW0 SKS PLNB SKIP IF PLOTTER NOT BUSY 1687 03347 100000 SKP PLOTTER BUSY, DELAY LOOP 1688 03350 -0 01 03335 JMP* MPNW EXIT FROM SUBROUTINE 1689 03351 141206 AOA 1690 03352 101040 SNZ TEST FOR COMPLETION OF 4(4.2) MS 1691 03353 0 10 04176 JST ERRR ERROR ROUTINE 1692 03354 0 01 03346 JMP PNW0 DELAY LOOP OF 4(4.2) MILLI-SECONDS 1693 03355 141323 BCI 2,BSNW PLOTTER BUSY 4(4.2) MS AFTER MOVING N-WEST 03356 147327 1694 * 1695 * MOVE PLOTTER SOUTH ONE STEP (WITHOUT INTERRUPT) 1696 03357 0 000000 MPST DAC ** MOVE PLOTTER SOUTH (WITHOUT INT) 1697 03360 14 1027 DP26 OCP PLST SOUTH - DRUM DOWN 1698 03361 34 0127 DP27 SKS PLNB SKIP IF PLOTTER NOT BUSY 1699 03362 0 01 03367 JMP PST1 PLOTTER BUSY, OK 1700 03363 0 10 04176 JST ERRR ERROR ROUTINE 1701 03364 101000 NOP 1702 03365 147302 BCI 2,NBST P NOT BUSY IMMEDIATELY AFTER MOVING SOUTH 03366 151724 1703 03367 0 02 04355 PST1 LDA DRTR DIRECTIONAL TIMER 4(4.2) MS 1704 03370 34 0127 PST0 SKS PLNB SKIP IF PLOTTER NOT BUSY 1705 03371 100000 SKP PLOTTER BUSY, DELAY LOOP 1706 03372 -0 01 03357 JMP* MPST EXIT FROM SUBROUTINE 1707 03373 141206 AOA 1708 03374 101040 SNZ TEST FOR COMPLETION OF 4(4.2) MS 1709 03375 0 10 04176 JST ERRR ERROR ROUTINE 1710 03376 0 01 03370 JMP PST0 DELAY LOOP OF 4(4.2) MILLI-SECONDS 1711 03377 141323 BCI 2,BSST PLOTTER BUSY 4(4.2) MS AFTER MOVING SOUTH 03400 151724 1712 * 1713 * MOVE PLOTTER SOUTH-EAST ONE STEP (WITHOUT INTERRUPT) 1714 03401 0 000000 MPSE DAC ** MOVE PLOTTER SOUTH-EAST (WITHOUT INT) 1715 03402 14 1127 DP29 OCP PLSE SOUTH EAST - DRUM DOWN, CARRIAGE RIGHT 1716 03403 34 0127 DP30 SKS PLNB SKIP IF PLOTTER NOT BUSY 1717 03404 0 01 03411 JMP PSE1 PLOTTER BUSY, OK 1718 03405 0 10 04176 JST ERRR ERROR ROUTINE 1719 03406 101000 NOP 1720 03407 147302 BCI 2,NBSE P NOT BUSY IMMEDIATELY AFTER MOVING S-EAST 03410 151705 1721 03411 0 02 04355 PSE1 LDA DRTR DIRECTIONAL TIMER 4(4.2) MS 1722 03412 34 0127 PSE0 SKS PLNB SKIP IF PLOTTER NOT BUSY 1723 03413 100000 SKP PLOTTER BUSY, DELAY LOOP 1724 03414 -0 01 03401 JMP* MPSE EXIT FROM SUBROUTINE 1725 03415 141206 AOA 1726 03416 101040 SNZ TEST FOR COMPLETION OF 4(4.2) MS 1727 03417 0 10 04176 JST ERRR ERROR ROUTINE 1728 03420 0 01 03412 JMP PSE0 DELAY LOOP OF 4(4.2) MILLI-SECUNDS 1729 03421 141323 BCI 2,BSSE PLOTTER BUSY 4(4.2) MS AFTER MOVING S-EAST 03422 151705 1730 *
* 0520-001-H002 (O16-DPT9) DRAWING NO. 41285751-001-02 PAGE 38

1731 * MOVE PLOTTER SOUTH-WEST ONE STEP (WITHOUT INTERRUPT) 1732 03423 0 000000 MPSW DAC ** MOVE PLOTTER SOUTH-WEST (WITHOUT INT) 1733 03424 14 1227 DP32 OCP PLSW SOUTH WEST - DRUM DOWN, CARRIAGE LEFT 1734 03425 34 0127 DP33 SKS PLNB 1735 03426 0 01 03433 JMP PSW1 PLOTTER BUSY, OK 1736 03427 0 10 04176 JST ERRR ERROR ROUTINE 1737 03430 101000 NOP 1738 03431 147302 BCI 2,NBSW P NOT BUSY IMMEDIATELY AFTER MOVING S-WEST 03432 151727 1739 03433 0 02 04355 PSW1 LDA DRTR DIRECTIONAL TIMER 4(4.2) MS 1740 03434 34 0127 PSW0 SKS PLNB SKIP IF PLOTTER NOT BUSY 1741 03435 100000 SKP PLOTTER BUSY, DELAY LOOP 1742 03436 -0 01 03423 JMP* MPSW EXIT FROM SUBROUTINE 1743 03437 141206 AOA 1744 03440 101040 SNZ TEST FOR COMPLETION OF 4(4.2) MS 1745 03441 0 10 04176 JST ERRR ERROR ROUTINE 1746 03442 0 01 03434 JMP PSW0 DELAY LOOP OF 4(4.2) MILLI-SECONDS 1747 03443 141323 BCI 2,BSSW PLOTTER BUSY 4(4.2) MS AFTER MOVING S-WEST 03444 151727 1748 * 1749 * MOVE PEN DOWN (WITHOUT INTERRUPT) 1750 03445 0 000000 MPDN DAC ** MOVE PEN DOWN (WITHOUT INT) 1751 03446 14 1427 DP35 OCP PEND PEN DOWN 1752 03447 34 0127 DP36 SKS PLNB SKIP IF PLOTTER NOT BUSY 1753 03450 0 01 03455 JMP PDN1 PLOTTER BUSY, OK 1754 03451 0 10 04176 JST ERRR ERROR ROUTINE 1755 03452 101000 NOP 1756 03453 147302 BCI 2,NBDN PEN NOT BUSY IMMEDIATELY AFTER MOVING DOWN 03454 142316 1757 03455 101020 PDN1 SS1 TEST FOR SENSE SWITCH 1 SET 1758 03456 0 01 03461 JMP D59 NOT SET, DDP-516 BEING USED 1759 * SET, H316 BEING USED 1760 03457 0 02 04424 LDA =-2604 2604 = (25*1000)/(6*1.6) 1761 03460 100000 SKP 1762 * 1763 03461 0 02 04423 D59 LDA =-4845 4845 = (25*1000)/(6*0.86) 1764 03462 34 0127 PDN0 SKS PLNB SKIP IF PLOTTER NOT BUSY 1765 03463 100000 SKP PLOTTER BUSY. DELAY LOOP 1766 03464 -0 01 03445 JMP* MPDN EXIT FROM SUBROUTINE 1767 03465 141206 AOA 1768 03466 101040 SNZ TEST FOR COMPLETION OF 25 MS DELAY LOOP 1769 03467 0 10 04176 JST ERRR ERROR ROUTINE 1770 03470 0 01 03462 JMP PDN0 DELAY LOOP 0F 25 MILLI-SECONDS 1771 03471 141323 BCI 2,BSDN PEN BUSY 25 MS AFTER MOVING DOWN 03472 142316 1772 * 1773 * MOVE PEN UP (WITHOUT INTERRUPT) 1774 03473 0 000000 MPUP DAC ** MOVE PEN UP (WITHOUT INT) 1775 03474 14 1627 DP38 OCP PENU PEN UP 1776 03475 34 0127 DP39 SKS PLNB SKIP IF PLOTTER NOT BUSY
* 0520-001-H002 (O16-DPT9) DRAWING NO. 41285751-001-02 PAGE 39

1777 03476 0 01 03503 JMP PUP1 PLOTTER BUSY, OK 1778 03477 0 10 04176 JST ERRR ERROR ROUTINE 1779 03500 101000 NOP 1780 03501 147302 BCI 2,NBUP PEN NOT BUSY IMMEDIATELY AFTER MOVING UP 03502 152720 1781 03503 101020 PUP1 SS1 TEST FOR SENSE SWITCH 1 SET 1782 03504 0 01 03507 JMP D510 NOT SET, DDP-516 BEING USED 1783 * SET, H316 BEING USED 1784 03505 0 02 04424 LDA =-2604 2604 = (25*1000)/(6*1.6) 1785 03506 100000 SKP 1786 * 1787 03507 0 02 04423 D510 LDA =-4845 4845 = (25*1000)/(6*0.86) 1788 03510 34 0127 PUP0 SKS PLNB SKIP IF PLOTTER NOT BUSY 1789 03511 100000 SKP PLOTTER BUSY, DELAY LOOP 1790 03512 -0 01 03473 JMP* MPUP EXIT FROM SUBROUTINE 1791 03513 141206 AOA 1792 03514 101040 SNZ TEST FOR COMPLETION OF 25 MS DELAY LOOP 1793 03515 0 10 04176 JST ERRR ERROR ROUTINE 1794 03516 0 01 03510 JMP PUP0 DELAY LOOP OF 25 MILLI-SECONDS 1795 03517 141323 BCI 2,BSUP PEN BUSY 25 MS AFTER MOVING UP 03520 152720 1796 * 1797 * MOVE PLOTTER EAST ONE STEP (WITH INTERRUPT) 1798 03521 0 000000 MIET DAC ** MOVE PLOTTER EAST (WITH INT) 1799 03522 14 0127 DP41 OCP PLET EAST - CARRIAGE RIGHT 1800 03523 34 0127 DP42 SKS PLNB SKIP IF PLOTTER NOT BUSY 1801 03524 0 10 03641 JST INTD 1802 03525 0 10 04176 JST ERRR ERROR ROUTINE 1803 03526 -0 01 03521 JMP* MIET EXIT FROM SUBROUTINE 1804 03527 147302 BCI 2,NBET P NOT BUSY IMMEDIATELY AFTER MOVING EAST 03530 142724 1805 * 1806 * MOVE PLOTTER WEST ONE STEP (WITH INTERRUPT) 1807 03531 0 000000 MIWT DAC ** MOVE PLOTTER WEST (WITH INT) 1808 03532 14 0227 DP43 OCP PLWT WEST - CARRIAGE LEFT 1809 03533 34 0127 DP44 SKS PLNB SKIP IF PLOTTER NOT BUSY 1810 03534 0 10 03641 JST INTD 1811 03535 0 10 04176 JST ERRR ERROR ROUTINE 1812 03536 -0 01 03531 JMP* MIWT EXIT FROM SUBROUTINE 1813 03537 147302 BCI 2,NBWT P NOT BUSY IMMEDIATELY AFTER MOVING WEST 03540 153724 1814 * 1815 * MOVE PLOTTER NORTH ONE STEP (WITH INTERRUPT) 1816 03541 0 000000 MINT DAC ** MOVE PLOTTER NORTH (WITH INT) 1817 03542 14 0427 DP45 OCP PLNT NORTH - DRUM UP 1818 03543 34 0127 DP46 SKS PLNB SKIP IF PLOTTER NOT BUSY 1819 03544 0 10 03641 JST INTD 1820 03545 0 10 04176 JST ERRR ERROR ROUTINE 1821 03546 -0 01 03541 JMP* MINT EXIT FROM SUBROUTINE 1822 03547 147302 BCI 2,NBNT P NOT BUSY IMMEDIATELY AFTER MOVING NORTH
* 0520-001-H002 (O16-DPT9) DRAWING NO. 41285751-001-02 PAGE 40

03550 147324 1823 * 1824 * MOVE PLOTTER NORTH-EAST ONE STEP (WITH INTERRUPT) 1825 03551 0 000000 MINE DAC ** MOVE PLOTTER NORTH-EAST (WITH INT) 1826 03552 14 0527 DP47 OCP PLNE NORTH EAST - DRUM UP, CARRIAGE RIGHT 1827 03553 34 0127 DP48 SKS PLNB SKIP IF PLOTTER NOT BUSY 1828 03554 0 10 03641 JST INTD 1829 03555 0 10 04176 JST ERRR ERROR ROUTINE 1830 03556 -0 01 03551 JMP* MINE EXIT FROM SUBROUTINE 1831 03557 147302 BCI 2,NBNE P NOT BUSY IMMEDIATELY AFTER MOVING N-EAST 03560 147305 1832 * 1833 * MOVE PLOTTER NORTH-WEST ONE STEP (WITH INTERRUPT) 1834 03561 0 000000 MINW DAC ** MOVE PLOTTER NORTH-WEST (WITH INT) 1835 03562 14 0627 DP49 OCP PLNW NORTH WEST - DRUM UP, CARRIAGE LEFT 1836 03563 34 0127 DP50 SKS PLNB SKIP IF PLOTTER NOT BUSY 1837 03564 0 10 03641 JST INTD 1838 03565 0 10 04176 JST ERRR ERROR ROUTINE 1839 03566 -0 01 03561 JMP* MINW EXIT FROM SUBROUTINE 1840 03567 147302 BCI 2,NBNW P NOT BUSY IMMEDIATELY AFTER MOVING N-WEST 03570 147327 1841 * 1842 * MOVE PLOTTER SOUTH ONE STEP (WITH INTERRUPT) 1843 03571 0 000000 MIST DAC ** MOVE PLOTTER SOUTH (WITH INT) 1844 03572 14 1027 DP51 OCP PLST SOUTH - DRUM DOWN 1845 03573 34 0127 DP52 SKS PLNB SKIP IF PLOTTER NOT BUSY 1846 03574 0 10 03641 JST INTD 1847 03575 0 10 04176 JST ERRR ERROR ROUTINE 1848 03576 -0 01 03571 JMP* MIST EXIT FROM SUBROUTINE 1849 03577 147302 BCI 2,NBST P NOT BUSY IMMEDIATELY AFTER MOVING SOUTH 03600 151724 1850 * 1851 * MOVE PLOTTER SOUTH-EAST ONE STEP (WITH INTERRUPT) 1852 03601 0 000000 MISE DAC ** MOVE PLOTTER SOUTH-EAST (WITH INT) 1853 03602 14 1127 DP53 OCP PLSE SOUTH EAST - DRUM DOWN, CARRIAGE RIGHT 1854 03603 34 0127 DP54 SKS PLNB SKIP IF PLOTTER NOT BUSY 1855 03604 0 10 03641 JST INTD 1856 03605 0 10 04176 JST ERRR ERROR ROUTINE 1857 03606 -0 01 03601 JMP* MISE EXIT FROM SUBROUTINE 1858 03607 147302 BCI 2,NBSE P NOT BUSY IMMEDIATELY AFTER MOVING S-EAST 03610 151705 1859 * 1860 * MOVE PLOTTER SOUTH-WEST ONE STEP (WITH INTERRUPT) 1861 03611 0 000000 MISW DAC ** MOVE PLOTTER SOUTH-WEST (WITH INT) 1862 03612 14 1227 DP55 OCP PLSW SOUTH WEST - DRUM DOWN, CARRIAGE LEFT 1863 03613 34 0127 DP56 SKS PLNB SKIP IF PLOTTER NOT BUSY 1864 03614 0 10 03641 JST INTD 1865 03615 0 10 04176 JST ERRR ERROR ROUTINE 1866 03616 -0 01 03611 JMP* MISW EXIT FROM SUBROUTINE 1867 03617 147302 BCI 2,NBSW P NOT BUSY IMMEDIATELY AFTER MOVING S-WEST
* 0520-001-H002 (O16-DPT9) DRAWING NO. 41285751-001-02 PAGE 41

03620 151727 1868 * 1869 * MOVE PEN DOWN (WITH INTERRUPT) 1870 03621 0 000000 MIDN DAC ** MOVE PEN DOWN (WITH INT) 1871 03622 14 1427 DP57 OCP PEND PEN DOWN 1872 03623 34 0127 DP58 SKS PLNB SKIP IF PLOTTER NOT BUSY 1873 03624 0 10 03714 JST INTZ 1874 03625 0 10 04176 JST ERRR ERROR ROUTINE 1875 03626 -0 01 03621 JMP* MIDN EXIT FROM SUBROUTINE 1876 03627 147302 BCI 2,NBDN PEN NOT BUSY IMMEDIATELY AFTER MOVING DOWN 03630 142316 1877 * 1878 * MOVE PEN UP (WITH INTERRUPT) 1879 03631 0 000000 MIUP DAC ** MOVE PEN UP (WITH INT) 1880 03632 14 1627 DP59 OCP PENU PEN UP 1881 03633 34 0127 DP60 SKS PLNB SKIP IF PLOTTER NOT BUSY 1882 03634 0 10 03714 JST INTZ 1883 03635 0 10 04176 JST ERRR ERROR ROUTINE 1884 03636 -0 01 03631 JMP* MIUP EXIT FROM SUBROUTINE 1885 03637 147302 BCI 2,NBUP PEN NOT BUSY IMMEDIATELY AFTER MOVING UP 03640 152720 1886 * 1887 * WAIT FOR INTERRUPT (DIRECTIONAL) 1888 03641 0 000000 INTD DAC ** WAIT FOR INTERRUPT (DIRECTIONAL) 1889 03642 0 02 04336 LDA AIED ADDRESS OF INTERRUPT ENTRY POINT 1890 03643 -0 04 04357 STA* INTL INTERRUPT LOCATION 1891 03644 0 02 01560 LDA SMKI SMK '0X20 INSTRUCTION 1892 03645 0 04 03647 STA *+2 1893 03646 0 02 04365 LDA MSKB MASK BIT FOR INTERRUPT 1894 03647 0 00 00000 *** ** PERFORM SMK '0X20 INSTRUCTION 1895 03650 000401 ENB ENABLE INTERRUPT 1896 03651 0 02 04360 LDA INTR INTERRUPT TIMER 4(4.2) MILLI-SECONDS 1897 03652 0 12 04346 DIN1 IRS CNTA INCREMENT COUNT A 1898 03653 0 01 03660 JMP DIN2 1899 03654 0 12 04347 IRS CNTB INCREMENT COUNT B [CNTB = CNTA*(2**16)] 1900 03655 0 01 03663 JMP DIN3 1901 03656 0 12 04350 IRS CNTC INCREMENT COUNT C [CNTC = CNTB*(2**16)] 1902 03657 0 01 03666 JMP DIN4 1903 03660 101000 DIN2 NOP OBEYS WHEN CNTA IS NON-ZERO 1904 03661 101000 NOP 1905 03662 101000 NOP 1906 03663 101000 DIN3 NOP OBEYS WHEN CNTB IS NON-ZERO, BUT CNTA ZERO 1907 03664 101000 NOP 1908 03665 101000 NOP 1909 03666 101000 DIN4 NOP OBEYS WHEN BOTH CNTA AND CNTB ARE ZERO 1910 03667 141206 AOA ADD ONE TO A-REGISTER 1911 03670 100040 SZE TEST FOR COMPLETION OF 4(4.2) MS 1912 03671 0 01 03652 JMP DIN1 DELAY LOOP 0F 4(4.2) MS 1913 03672 001001 INH INHIBIT INTERRUPT 1914 03673 0 10 04176 JST ERRR ERROR ROUTINE
* 0520-001-H002 (O16-DPT9) DRAWING NO. 41285751-001-02 PAGE 42

1915 03674 101000 NOP 1916 03675 147311 BCI 2,NIND NO INTERRUPT WITHIN 4(4.2) MS 03676 147304 1917 * 1918 03677 0 000000 IEPD DAC ** INTERRUPT ENTRY POINT (DIRECTIONAL) 1919 03700 34 0427 DP61 SKS PLNI SKIP IF PLOTTER NOT INTERRUPTING 1920 03701 0 01 03706 JMP DIN5 PLOTTER INTERRUPTING, OK 1921 03702 0 10 04176 JST ERRR ERROR ROUTINE 1922 03703 101000 NOP 1923 03704 144716 BCI 2,INCD INTERRUPT NOT CAUSED BY PLOTTER (DIRECTIONAL) 03705 141704 1924 03706 0 12 03641 DIN5 IRS INTD UPDATE RETURN ADDRESS 1925 03707 34 0127 DP62 SKS PLNB SKIP IF PLOTTER NOT BUSY 1926 03710 0 10 04176 JST ERRR ERROR ROUTINE 1927 03711 -0 01 03641 JMP* INTD EXIT FROM SUBROUTINE 1928 03712 141301 BCI 2,BAID P REMAINING BUSY AFTER INT (DIRECTIONAL) 03713 144704 1929 * 1930 * WAIT FOR INTERRUPT (Z-AXIS) 1931 03714 0 000000 INTZ DAC ** WAIT FOR INTERRUPT (Z-AXIS) 1932 03715 0 02 04337 LDA AIEZ ADDRESS OF INTERRUPT ENTRY PUINT 1933 03716 -0 04 04357 STA* INTL INTERRUPT LOCATION 1934 03717 0 02 01560 LDA SMKI SMK '0X20 INSTRUCTION 1935 03720 0 04 03722 STA *+2 1936 03721 0 02 04365 LDA MSKB MASK BIT FOR INTERRUPT 1937 03722 0 00 00000 *** ** PERFORM SMK '0X20 1938 03723 000401 ENB ENABLE INTERRUPT 1939 03724 101020 SS1 TEST FOR SENSE SWITCH 1 SET 1940 03725 0 01 03730 JMP D511 NOT SET, DDP-516 BEING USED 1941 * SET, H316 BEING USED 1942 03726 0 02 04422 LDA =-5208 5208 = (25*1000)/(3*1.6) 1943 03727 100000 SKP 1944 * 1945 03730 0 02 04421 D511 LDA =-9690 9690 = (25*1000)/(3*0.86) 1946 03731 141206 AOA 1947 03732 100040 SZE TEST FOR COMPLETION OF 25 MS DELAY LOOP 1948 03733 0 01 03731 JMP *-2 DELAY LOOP OF 25 MILLI-SECONDS 1949 03734 001001 INH INHIBIT INTERRUPT 1950 03735 0 10 04176 JST ERRR ERROR ROUTINE 1951 03736 101000 NOP 1952 03737 147311 BCI 2,NINZ NO INTERRUPT WITHIN 25 MILLI-SECONDS 03740 147332 1953 * 1954 03741 0 000000 IEPZ DAC ** INTERRUPT ENTRY POINT (Z-AXIS) 1955 03742 34 0427 DP63 SKS PLNI SKIP IF PLOTTER NOT INTERRUPTING 1956 03743 0 01 03750 JMP ZIN0 PLOTTER INTERRUPTING, OK 1957 03744 0 10 04176 JST ERRR ERROR ROUTINE 1958 03745 101000 NOP 1959 03746 144716 BCI 2,INCZ INTERRUPT NOT CAUSED BY PLOTTER (Z-AXIS) 03747 141732
* 0520-001-H002 (O16-DPT9) DRAWING NO. 41285751-001-02 PAGE 43

1960 03750 0 12 03714 ZIN0 IRS INTZ UPDATE RETURN ADDRESS 1961 03751 34 0127 DP64 SKS PLNB SKIP IF PLOTTER NOT BUSY 1962 03752 0 10 04176 JST ERRR ERROR ROUTINE 1963 03753 -0 01 03714 JMP* INTZ EXIT FROM SUBROUTINE 1964 03754 141301 BCI 2,BAIZ P REMAINING BUSY AFTER INT (Z-AXIS) 03755 144732 1965 * 1966 * HALF REGAB AND ADD DOUBLE LENGTH COUNTER 1967 03756 0 000000 HADD DAC ** 1968 03757 000201 IAB INTERCHANGE REGS A AND B 1969 03760 140200 RCB ZERO C BIT 1970 03761 141206 AOA ADD ONE 1971 03762 140100 SSP ZERO MS BIT OF REG A 1972 03763 000201 IAB INTERCHANGE REGS A AND B 1973 03764 141216 ACA ADD CARRY BIT 1974 03765 0401 77 LRS 1 REGAB = ROUNDED VALUE 1975 03766 0 06 04347 ADD CNTB ADD MS HALF OF COUNTER 1976 03767 000201 IAB INTERCHANGE REGS A AND B 1977 03770 140200 RCB ZERO C BIT 1978 03771 0 06 04346 ADD CNTA ADD LS HALF OF COUNTER 1979 03772 140100 SSP ZERO MS BIT OF REGA 1980 03773 000201 IAB INTERCHANGE REGS A AND B 1981 03774 141216 ACA ADD CARRY BIT 1982 03775 -0 01 03756 JMP* HADD EXIT FROM SUBROUTINE 1983 * 1984 * INITIALIZE FOR CALC 1985 03776 0 000000 ICLC DAC ** 1986 03777 140040 CRA 1987 04000 0 04 04412 STA SSTP SSTP = NO. OF SIDE-STEPS 1988 04001 141206 AOA 1989 04002 0 04 04364 STA MRKR MRKR = COUNT OF STEPS 1990 04003 -0 01 03776 JMP* ICLC 1991 * 1992 * CALCULATE [(0.4142*M) - SSTP]*(2**13) 1993 04004 0 000000 CALC DAC ** CALCULATE [(0.4142*M) - SSTP]*(2**13) 1994 04005 0 02 04412 LDA SSTP SIDE-STEPS 1995 04006 000201 IAB TO LOWER BITS 1996 04007 140040 CRA CLEAR UPPER BITS 1997 04010 0411 63 LLS 13 MULTIPLY BY (2**13) 1998 04011 0 04 04413 STA SSHI 1999 04012 000201 IAB 2000 04013 0 04 04414 STA SSLO 2001 * 2002 04014 0 02 04364 LDA MRKR MARKER (M) 2003 04015 0414 77 LGL 1 REGA = 2M 2004 04016 0 06 04364 ADD MRKR REGA = 3M 2005 04017 0414 76 LGL 2 REGA = 12M 2006 04020 0 06 04364 ADD MRKR REGA = 13M 2007 04021 0414 76 LGL 2 REGA = 52M 2008 04022 0 06 04364 ADD MRKR REGA = 53M
* 0520-001-H002 (O16-DPT9) DRAWING NO. 41285751-001-02 PAGE 44

2009 04023 000201 IAB REGA = JUNK + REGB = 53M 2010 04024 140040 CRA REGAB = 53M 2011 04025 0411 72 LLS 6 REGAB = 3392M 2012 04026 000201 IAB REGA = LS HALF OF 3392M 2013 04027 0 06 04364 ADD MRKR REGA = LS HALF OF 3393M 2014 04030 140320 CSA CARRY TO C 2015 04031 000201 IAB REGA = MS HALF OF 3392M 2016 04032 141216 ACA REGA = MS HALF OF 3393M 2017 04033 000201 IAB REGA = LS HALF OF 3393M 2018 * 2019 04034 0 07 04414 SUB SSLO REGA = LS HALF OF [(0.4142*M) - SSTP]*(2**13) 2020 04035 140320 CSA BORROW TO C 2021 04036 000201 IAB REGA = MS HALF OF 3393M 2022 04037 100001 SRC BORROW? 2023 04040 0 07 04446 SUB =1 YES 2024 04041 0 07 04413 SUB SSHI REGA = MS HALF OF [(0.4142*M) - SSTP]*(2**13) 2025 * 2026 04042 100400 SPL POSITIVE ? 2027 04043 0 01 04051 JMP CAL0 NO, RETURN ZERO 2028 04044 000201 IAB RECOVER LS HALF 2029 04045 0 11 04427 CAS ='10000 '10000 = 0.5*(2**13) 2030 04046 0 01 04054 JMP CAL2 >0.5 2031 04047 0 01 04053 JMP CAL1 =0.5 2032 04050 -0 01 04004 JMP* CALC EXIT FROM SUBROUTINE 2033 * 2034 04051 140040 CAL0 CRA RETURN ZERO 2035 04052 -0 01 04004 JMP* CALC EXIT FROM SUBROUTINE 2036 * 2037 04053 141206 CAL1 AOA NEVER RETURN EXACTLY 0.5 2038 04054 0 12 04412 CAL2 IRS SSTP STEP COUNT OF SIDE-STEPS 2039 04055 -0 01 04004 JMP* CALC EXIT FROM SUBROUTINE 2040 * 2041 * OUTPUT TO AUTOMATIC SEND-RECEIVE SET 2042 04056 0 000000 OASR DAC ** OUTPUT TO ASR 2043 04057 0 04 04352 STA CNTR WORD COUNTER 2044 04060 14 0104 OCP ASRT ENABLE ASR IN OUTPUT MODE 2045 04061 -0 02 04056 O001 LDA* OASR FETCH NEXT WORD TO OUTPUT 2046 04062 141340 ICA 2047 04063 74 0004 OTA ASRO OUTPUT MS CHARACTER TO ASR 2048 04064 0 01 04063 JMP *-1 DELAY IF ASR NOT READY 2049 04065 141140 ICL 2050 04066 74 0004 OTA ASRO OUTPUT LS CHARACTER T0 ASR 2051 04067 0 01 04066 JMP *-1 DELAY IF ASR NOT READY 2052 04070 0 12 04056 IRS OASR UPDATE RETURN ADDRESS 2053 04071 0 12 04352 IRS CNTR INCREMENT WORD COUNTER 2054 04072 0 01 04061 JMP O001 OUTPUT NEXT WORD TO ASR 2055 04073 34 0104 SKS ASRB SKIP IF ASR NOT BUSY 2056 04074 0 01 04073 JMP *-1 DELAY UNTIL NOT BUSY 2057 04075 -0 01 04056 JMP* OASR EXIT FROM SUBROUTINE 2058 *
* 0520-001-H002 (O16-DPT9) DRAWING NO. 41285751-001-02 PAGE 45

2059 * INPUT FROM AUTOMATIC SEND-RECEIVE SET 2060 04076 0 000000 IASR DAC ** INPUT FROM ASR 2061 04077 0 04 04352 STA CNTR CHARACTER COUNTER 2062 04100 0 02 04341 LDA CHRL 2063 04101 0 04 04373 STA TMPB START ADDRESS FOR INPUT 2064 04102 140040 CRA 2065 04103 0 04 04343 STA CHR1 2066 04104 0 04 04344 STA CHR2 2067 04105 14 0004 OCP ASRN 2068 04106 0 02 04420 I001 LDA ='200 ENSURE BIT 8 OF CHARACTER IS SET 2069 04107 54 0004 INA ASRI 2070 04110 0 01 04107 JMP *-1 DELAY IF ASR NOT READY 2071 04111 -0 04 04373 STA* TMPB STORE INPUT CHARACTER 2072 04112 0 12 04373 IRS TMPB UPDATE TO ADDR OF NEXT CHARACTER 2073 04113 0 11 04417 CAS ='215 '215 = CARRIAGE RETURN CHARACTER 2074 04114 100000 SKP INPUT CHAR OTHER THAN CR 2075 04115 0 01 04125 JMP I002 INPUT CHARACTER IS CARRIAGE RETURN 2076 04116 0 11 04416 CAS ='244 '244 = DOLLAR SIGN CHARACTER 2077 04117 100000 SKP INPUT CHAR OTHER THAN $ 2078 04120 0 01 01044 JMP CHNG INPUT CHAR IS $, REPEAT FROM THE FIRST QSTN 2079 04121 0 12 04352 IRS CNTR INCREMENT CHARACTER COUNTER 2080 04122 0 01 04106 JMP I001 INPUT NEXT CHARACTER FROM ASR 2081 04123 0 12 04076 IRS IASR UPDATE RETURN ADDRESS 2082 04124 -0 01 04076 JMP* IASR EXIT 1 - CR NOT TYPED, REPEAT THE QUESTION 2083 * 2084 04125 0 02 04343 I002 LDA CHR1 FIRST INPUT CHARACTER 2085 04126 0 11 04417 CAS ='215 '215 = CR CHARACTER 2086 04127 0 01 04142 JMP I003 FIRST INPUT CHAR OTHER THAN CR 2087 04130 100000 SKP FIRST INPUT CHARACTER IS CARRIAGE RETURN 2088 04131 0 01 04142 JMP I003 FIRST INPUT CHAR OTHER THAN CR 2089 04132 -0 02 04076 LDA* IASR ADDRESS OF LAST ANSWER 2090 04133 0 04 04373 STA TMPB 2091 04134 -0 02 04373 LDA* TMPB LAST ANSWER 2092 04135 141140 ICL MS HALF OF LAST ANSWER 2093 04136 0 04 04343 STA CHR1 2094 04137 -0 02 04373 LDA* TMPB LAST ANSWER 2095 04140 141050 CAL LS HALF OF LAST ANSWER 2096 04141 0 04 04344 STA CHR2 2097 04142 0 12 04076 I003 IRS IASR UPDATE RETURN ADDRESS 2098 04143 0 12 04076 IRS IASR UPDATE RETURN ADDRESS 2099 04144 -0 01 04076 JMP* IASR EXIT FROM SUBROUTINE 2100 * 2101 * TEST INPUT DECIMAL 00-99 2102 04145 0 000000 DCML DAC ** TEST INPUT DECIMAL 00-99 2103 04146 0 02 04460 LDA =-2 NUMBER OF CHARACTERS TO BE TESTED 2104 04147 0 04 04352 STA CNTR CHARACTER COUNTER 2105 04150 0 02 04341 LDA CHRL 2106 04151 0 04 04373 STA TMPB 2107 04152 -0 02 04373 TNC2 LDA* TMPB CHARACTER 2108 04153 0 12 04373 IRS TMPB NEXT CHARACTER
* 0520-001-H002 (O16-DPT9) DRAWING NO. 41285751-001-02 PAGE 46

2109 04154 0 07 04457 SUB ='260 '260 = CHARACTER ZERO 2110 04155 100400 SPL TEST FOR VALIDITY OF CHARACTER 2111 04156 -0 01 04145 JMP* DCML EXIT 1 - INVALID CHAR, REPEAT THE QUESTION 2112 04157 0 07 04476 SUB =10 2113 04160 101400 SMI TEST FOR VALIDITY OF CHARACTER 2114 04161 -0 01 04145 JMP* DCML EXIT 1 - INVALID CHAR, REPEAT THE QUESTION 2115 04162 0 12 04352 IRS CNTR INCREMENT CHARACTER COUNTER 2116 04163 0 01 04152 JMP TNC2 TEST NEXT CHARACTER 2117 04164 0 02 04343 LDA CHR1 FIRST INPUT CHARACTER (TENS DIGIT) 2118 04165 0 05 04457 ERA ='260 2119 04166 0414 76 LGL 2 REGA = 4*(TENS DIGIT) 2120 04167 0 06 04343 ADD CHR1 REGA = 5*(TENS DIGIT) 2121 04170 0 07 04457 SUB ='260 2122 04171 0414 77 LGL 1 REGA = 10*(TENS DIGIT) 2123 04172 0 06 04344 ADD CHR2 REGA = 10*(TENS DIGIT) + UNITS DIGIT 2124 04173 0 07 04457 SUB ='260 2125 04174 0 12 04145 IRS DCML UPDATE RETURN ADDRESS 2126 04175 -0 01 04145 JMP* DCML EXIT 2 - CHARACTERS OK 2127 * 2128 * ERROR ROUTINE 2129 04176 0 000000 ERRR DAC ** ERROR ROUTINE 2130 04177 34 0127 DP65 SKS PLNB 2131 04200 0 01 04177 JMP *-1 DELAY UNTIL NOT BUSY 2132 04201 14 1627 DP68 OCP PENU 2133 04202 0 12 04176 IRS ERRR UPDATE TO ADDRESS OF ERROR MESSAGE 2134 04203 -0 02 04176 LDA* ERRR MS HALF OF ERROR MESSAGE 2135 04204 0 04 04216 STA EMSG 2136 04205 0 12 04176 IRS ERRR UPDATE TO ADDRESS OF ERROR MESSAGE + 1 2137 04206 -0 02 04176 LDA* ERRR LS HALF OF ERROR MESSAGE 2138 04207 0 04 04217 STA EMSG+1 2139 04210 0 02 04461 LDA =-8 NUMBER OF WORDS TO BE OUTPUT 2140 04211 0 10 04056 JST OASR 2141 04212 105212 OCT 105212 LF/LF 2142 04213 142722 BCI 3,ERROR 04214 151317 04215 151240 2143 04216 EMSG BSS 2 ERROR MESSAGE 2144 04220 103607 OCT 103607,103607 BELL/BELL/BELL/BELL 04221 103607 2145 04222 0 35 04376 LDX 20NU STEP COUNTER 2146 04223 34 0127 DP66 SKS PLNB 2147 04224 0 01 04223 JMP *-1 DELAY UNTIL NOT BUSY 2148 04225 14 0427 DP67 OCP PLNI 2149 04226 0 12 00000 IRS 0 INCREMENT STEP COUNTER 2150 04227 0 01 04223 JMP *-4 MOVE PLOTTER NEXT STEP 2151 04230 0 01 01722 JMP AQTN ASK QUESTION: TEST NO? 2152 * 2153 * 2154 * CONSTANTS 2155 *
* 0520-001-H002 (O16-DPT9) DRAWING NO. 41285751-001-02 PAGE 47

2156 * TABLE FOR DIGITAL INCREMENTAL PLOTTER INSTRUCTION ADDRESSES 2157 04231 0 001561 TBLE DAC DP01 2158 04232 0 001566 DAC DP02 2159 04233 0 001577 DAC DP03 2160 04234 0 001612 DAC DP04 2161 04235 0 001633 DAC DP05 2162 04236 0 001646 DAC DP06 2163 04237 0 001667 DAC DP07 2164 04240 0 001702 DAC DP08 2165 04241 0 002410 DAC DP09 2166 04242 0 003212 DAC DP10 2167 04243 0 003226 DAC DP11 2168 04244 0 003227 DAC DP12 2169 04245 0 003236 DAC PET0 2170 04246 0 003250 DAC DP14 2171 04247 0 003251 DAC DP15 2172 04250 0 003260 DAC PWT0 2173 04251 0 003272 DAC DP17 2174 04252 0 003273 DAC DP18 2175 04253 0 003302 DAC PNT0 2176 04254 0 003314 DAC DP20 2177 04255 0 003315 DAC DP21 2178 04256 0 003324 DAC PNE0 2179 04257 0 003336 DAC DP23 2180 04260 0 003337 DAC DP24 2181 04261 0 003346 DAC PNW0 2182 04262 0 003360 DAC DP26 2183 04263 0 003361 DAC DP27 2184 04264 0 003370 DAC PST0 2185 04265 0 003402 DAC DP29 2186 04266 0 003403 DAC DP30 2187 04267 0 003412 DAC PSE0 2188 04270 0 003424 DAC DP32 2189 04271 0 003425 DAC DP33 2190 04272 0 003434 DAC PSW0 2191 04273 0 003446 DAC DP35 2192 04274 0 003447 DAC DP36 2193 04275 0 003462 DAC PDN0 2194 04276 0 003474 DAC DP38 2195 04277 0 003475 DAC DP39 2196 04300 0 003510 DAC PUP0 2197 04301 0 003522 DAC DP41 2198 04302 0 003523 DAC DP42 2199 04303 0 003532 DAC DP43 2200 04304 0 003533 DAC DP44 2201 04305 0 003542 DAC DP45 2202 04306 0 003543 DAC DP46 2203 04307 0 003552 DAC DP47 2204 04310 0 003553 DAC DP48 2205 04311 0 003562 DAC DP49
* 0520-001-H002 (O16-DPT9) DRAWING NO. 41285751-001-02 PAGE 48

2206 04312 0 003563 DAC DP50 2207 04313 0 003572 DAC DP51 2208 04314 0 003573 DAC DP52 2209 04315 0 003602 DAC DP53 2210 04316 0 003603 DAC DP54 2211 04317 0 003612 DAC DP55 2212 04320 0 003613 DAC DP56 2213 04321 0 003622 DAC DP57 2214 04322 0 003623 DAC DP58 2215 04323 0 003632 DAC DP59 2216 04324 0 003633 DAC DP60 2217 04325 0 003700 DAC DP61 2218 04326 0 003707 DAC DP62 2219 04327 0 003742 DAC DP63 2220 04330 0 003751 DAC DP64 2221 04331 0 004177 DAC DP65 2222 04332 0 004223 DAC DP66 2223 04333 0 004225 DAC DP67 2224 04334 0 004201 DAC DP68 2225 04335 0 004415 DAC =0 2226 * 2227 04336 0 003677 AIED DAC IEPD ADDR OF INTERRUPT ENTRY POINT (DIRECTIONAL) 2228 04337 0 003741 AIEZ DAC IEPZ ADDR OF INTERRUPT ENTRY POINT (Z-AXIS) 2229 04340 0 002255 AMSG DAC MSSG START ADDRESS OF SPEED MESSAGE 2230 04341 0 004343 CHRL DAC CHR1 CHARACTER LOCATION 2231 * 2232 04342 -0 004231 IATB DAC* TBLE INDIRECT ADDRESS OF TABLE 2233 * 2234 * 2235 * VARIABLES 2236 * 2237 04343 000000 CHR1 BSZ 1 CHARACTER - ONE 2238 04344 000000 CHR2 BSZ 1 CHARACTER - TWO 2239 04345 000000 BSZ 1 CHARACTER - THREE 2240 04346 000000 CNTA BSZ 1 COUNT A 2241 04347 000000 CNTB BSZ 1 COUNT B 2242 04350 000000 CNTC BSZ 1 COUNT C 2243 04351 000000 CNTD BSZ 1 COUNT D 2244 04352 000000 CNTR BSZ 1 COUNTER 2245 04353 000000 DMTR BSZ 1 DIAMETER OF THE CIRCULAR FIGURE 2246 04354 000000 DPDA BSZ 1 DIGITAL PLOTTER DEVICE ADDR (2 DIGIT OCT) 2247 04355 000000 DRTR BSZ 1 DIRECTIONAL TIMER 2248 04356 000000 FGRC BSZ 1 FIGURE COUNTER 2249 04357 000000 INTL BSZ 1 INTERRUPT LOCATION 2250 04360 000000 INTR BSZ 1 INTERRUPT TIMER 2251 04361 000000 LMAX BSZ 1 MAXIMUM RANGE OF EAST-WEST LIMIT 2252 04362 000000 LMIN BSZ 1 MINIMUM RANGE OF EAST-WEST LIMIT 2253 04363 000000 LMIT BSZ 1 NUMBER OF STEPS IN EAST-WEST LIMIT 2254 04364 000000 MRKR BSZ 1 MARKER (M) 2255 04365 000000 MSKB BSZ 1 MASK BIT FOR INTERRUPT (2 DIGIT DEC)
* 0520-001-H002 (O16-DPT9) DRAWING NO. 41285751-001-02 PAGE 49

2256 04366 000000 NUNT BSZ 1 TWO'S COMPLEMENT OF NO OF STEPS IN ONE UNIT 2257 04367 000000 PALL BSZ 1 MARKER FOR PLOTTING ALL PATTERNS 2258 04370 000000 PNTR BSZ 1 POINTER (ADDRESS FOR INSERTION OF SPEED) 2259 04371 000000 RDUS BSZ 1 RADIUS OF THE CIRCULAR FIGURE 2260 04372 000000 ROWC BSZ 1 ROW COUNTER 2261 04373 000000 TMPB BSZ 1 TEMPORARY BUFFER 2262 04374 000000 UNIT BSZ 1 NUMBER OF STEPS IN ONE UNIT LENGTH 2263 04375 000000 10NU BSZ 1 TWO'S COMPLEMENT OF NO OF STEPS IN 10 UNITS 2264 04376 000000 20NU BSZ 1 TWO'S COMPLEMENT OF NO OF STEPS IN 20 UNITS 2265 04377 000000 30NU BSZ 1 TWO'S COMPLEMENT OF NO OF STEPS IN 30 UNITS 2266 04400 000000 40NU BSZ 1 TWO'S COMPLEMFNT OF NO OF STEPS IN 40 UNITS 2267 04401 000000 45NU BSZ 1 TWO'S COMPLEMENT OF NO OF STEPS IN 45 UNITS 2268 04402 000000 50NU BSZ 1 TWO'S COMPLEMENT OF NO OF STEPS IN 50 UNITS 2269 04403 000000 60NU BSZ 1 TWO'S COMPLFMFNT OF NO OF STEPS IN 50 UNITS 2270 04404 000000 70NU BSZ 1 TWO'S COMPLEMENT OF NO OF STEPS IN 70 UNITS 2271 04405 000000 80NU BSZ 1 TWO'S COMPLEMENT OF NO OF STEPS TN 80 UNITS 2272 04406 000000 707D BSZ 1 0.707*(DIAMETER OF SIXTEEN POINTED STAR) 2273 04407 000000 707R BSZ 1 0.707*(RADIUS OF SIXTEEN POINTED STAR) 2274 04410 000000 92DM BSZ 1 0.92*(DIAMETER OF SIXTEEN POINTED STAR) 2275 04411 000000 92RD BSZ 1 0.92*(RADIUS OF SIXTEEN POINTED STAR) 2276 04412 000000 SSTP BSZ 1 COUNT OF SIDE-STEPS, S/W ANGLES IN STAR 2277 04413 000000 SSHI BSZ 1 (SSTP*2**13) - UPPER HALF 2278 04414 000000 SSLO BSZ 1 (SSTP*2**13) - LOWER HALF 2279 * 2280 * 2281 * LITERALS 2282 04415 000000 FIN LITERALS 04416 000244 04417 000215 04420 000200 04421 155046 04422 165650 04423 166423 04424 172724 04425 000305 04426 177610 04427 010000 04430 177732 04431 000144 04432 001750 04433 000006 04434 177774 04435 177704 04436 000301 04437 000311 04440 177772 04441 170020 04442 000020 04443 000061 04444 177764
* 0520-001-H002 (O16-DPT9) DRAWING NO. 41285751-001-02 PAGE 50

04445 000063 04446 000001 04447 000021 04450 000240 04451 000316 04452 000331 04453 177766 04454 177700 04455 000007 04456 000010 04457 000260 04460 177776 04461 177770 04462 003037 04463 003305 04464 000264 04465 006077 04466 006611 04467 000263 04470 177243 04471 177504 04472 176322 04473 177112 04474 002323 04475 002525 04476 000012 04477 000262 04500 177263 04501 177515 04502 176370 04503 177137 04504 004646 04505 005252 04506 000024 04507 000261 04510 177775 04511 177767 04512 177777 04513 177736 2283 EJCT
* 0520-001-H002 (O16-DPT9) DRAWING NO. 41285751-001-02 PAGE 51

2284 ************************************************************************ 2285 * 2286 * REV.B 26-FEB-2017 2287 * ----- ----------- 2288 * 2289 * INCORRECT PRINTING OF (OFTEN NON-NUMERIC) LAST CHARACTER IN THE TIMING 2290 * INFORMATION PRINTED AFTER FIGURE 2 IS PLOTTED. CHANGED 'ADD CNTC' TO 2291 * 'ADD CNTD' AT P204+6. 2292 * 2293 * INCORRECT ANGLE AND VERY JAGGED LINE IN THE SOFTWARE GENERATED LINES 2294 * OF THE SIXTEEN-POINTED STAR. THE GOAL IS TO DRAW A LINE AT AN ANGLE 2295 * OF 22.5 DEGREES. THE ROUTINE CALC COMPUTES 0.4142M 2296 * [0.4142 = TAN(22.5)] BUT THE ALGORITHM TO DISCARD THE INTEGER PART AND 2297 * 'SIDE-STEP' IF THE RESULT IS GREATER THAN 0.5 IS INCORRECT. ON THE 2298 * AVERAGE, THIS TEST WILL BE TRUE HALF OF THE TIME SO THE LINE ENDS UP 2299 * WITH HALF THE STEPS STRAIGHT AND HALF ON THE 45' DIAGONAL, SO THAT 2300 * THE ANGLE IS ATAN(0.5) = 26.57 DEGREES. 2301 * 2302 * THE REVISED ALGORITHM CALCULATES 0.412M AND THEN SUBTRACTS THE NUMBER 2303 * OF SIDE-STEPS TAKEN SO FAR. IF THIS QUANTITY IS >= 0.5 THEN ANOTHER 2304 * SIDE-STEP IS PERFORMED. ALSO, A LITTLE MORE CARE IN NOT RETURNING 2305 * EXACTLY 0.5 TO THE CALLER, WHICH WOULD RESULT IN THE PLOTTER MAKING 2306 * NEITHER OF THE TWO POSSIBLE DIRECTIONAL MOVES. 2307 * 2308 ************************************************************************ 2309 END STRT END OF O16-DPT9 2.3.70 P.J.F 10NU 004375A 20NU 004376A 30NU 004377A 40NU 004400A 45NU 004401A 50NU 004402A 60NU 004403A 707D 004406A 707R 004407A 70NU 004404A 80NU 004405A 92DM 004410A 92RD 004411A ADIP 000027A AIED 004336A AIEZ 004337A AMSG 004340A AQTN 001722A ASRB 000104A ASRI 000004A ASRN 000004A ASRO 000004A ASRT 000104A CAL0 004051A CAL1 004053A CAL2 004054A CALC 004004A CHNG 001044A CHR1 004343A CHR2 004344A CHRL 004341A CNTA 004346A CNTB 004347A CNTC 004350A CNTD 004351A CNTR 004352A D51 001111A D510 003507A D511 003730A D52 001163A D53 001210A D54 001117A D55 001171A D56 001216A D57 001136A D58 001144A D59 003461A DADD 001303A DAII 001347A DCML 004145A DIN1 003652A DIN2 003660A DIN3 003663A DIN4 003666A DIN5 003706A DMTR 004353A DP01 001561A DP02 001566A DP03 001577A DP04 001612A DP05 001633A DP06 001646A DP07 001667A DP08 001702A DP09 002410A DP10 003212A DP11 003226A DP12 003227A DP14 003250A DP15 003251A DP17 003272A DP18 003273A DP20 003314A DP21 003315A DP23 003336A DP24 003337A DP26 003360A DP27 003361A DP29 003402A DP30 003403A DP32 003424A DP33 003425A DP35 003446A DP36 003447A DP38 003474A DP39 003475A DP41 003522A DP42 003523A DP43 003532A DP44 003533A DP45 003542A DP46 003543A
* 0520-001-H002 (O16-DPT9) DRAWING NO. 41285751-001-02 PAGE 52

DP47 003552A DP48 003553A DP49 003562A DP50 003563A DP51 003572A DP52 003573A DP53 003602A DP54 003603A DP55 003612A DP56 003613A DP57 003622A DP58 003623A DP59 003632A DP60 003633A DP61 003700A DP62 003707A DP63 003742A DP64 003751A DP65 004177A DP66 004223A DP67 004225A DP68 004201A DPDA 004354A DPT0 001537A DPT1 001611A DPT2 001622A DPT3 001632A DPT4 001645A DPT5 001656A DPT6 001666A DPT7 001701A DPT8 001712A DPT9 001605A DRTR 004355A EMSG 004216A ERRR 004176A FGRC 004356A HADD 003756A I001 004106A I002 004125A I003 004142A IASR 004076A IATB 004342A ICLC 003776A IDAI 001337A IEPD 003677A IEPZ 003741A INTD 003641A INTL 004357A INTR 004360A INTZ 003714A LMAX 004361A LMIN 004362A LMIT 004363A MBIT 001425A MIDN 003621A MIET 003521A MINE 003551A MINT 003541A MINW 003561A MISE 003601A MIST 003571A MISW 003611A MIUP 003631A MIWT 003531A MPCT 003210A MPDN 003445A MPET 003225A MPNE 003313A MPNT 003271A MPNW 003335A MPSE 003401A MPST 003357A MPSW 003423A MPUP 003473A MPWT 003247A MRKR 004364A MSKB 004365A MSSG 002255A NO03 001410A NUNT 004366A O001 004061A OASR 004056A OPTN 001060A P002 002041A P003 002341A P004 003014A P00E 003171A P101 001773A P102 001775A P103 002007A P104 002031A P1NR 001771A P201 002071A P202 002173A P203 002201A P204 002207A P207 002247A P208 002321A P210 002335A P2NF 002063A P2NR 002056A P302 002447A P304 002471A P306 002513A P308 002536A P310 002560A P312 002602A P314 002625A P316 002647A P318 002671A P320 002714A P322 002736A P330 002752A P350 002774A P370 003010A P3NF 002436A P3NR 002430A P401 003071A P402 003132A P403 003153A P4NF 003034A P4NR 003031A PALL 004367A PAT1 001756A PAT2 002043A PAT3 002343A PAT4 003016A PDN0 003462A PDN1 003455A PEND 001427A PENU 001627A PET0 003236A PET1 003235A PINT 001474A PLET 000127A PLLR 000227A PLNB 000127A PLNE 000527A PLNI 000427A PLNT 000427A PLNW 000627A PLSE 001127A PLST 001027A PLSW 001227A PLWT 000227A PNE0 003324A PNE1 003323A PNT0 003302A PNT1 003301A PNTR 004370A PNW0 003346A PNW1 003345A PSE0 003412A PSE1 003411A PST0 003370A PST1 003367A PSW0 003434A PSW1 003433A PUP0 003510A PUP1 003503A PWT0 003260A PWT1 003257A Q102 001122A Q103 001147A Q104 001174A Q105 001220A Q501 001524A QST1 001047A QST2 001273A QST3 001353A QST4 001415A QST5 001460A QST6 001725A RDUS 004371A ROWC 004372A SINT 001365A SMKI 001560A SSHI 004413A SSLO 004414A SSTP 004412A STRT 001000A TBLE 004231A TMPB 004373A TNC1 001315A TNC2 004152A UNIT 004374A YES3 001403A ZIN0 003750A 0000 WARNING OR ERROR FLAGS DAP-16 MOD 2 REV. C 01-26-71
Previous File   Multiple Pages   Next File