Previous File   Multiple Pages   Next File

* ????-???-???? (LP-IOL) DRAWING NO. 41285997-001-01 PAGE 1

0001 * ????-???-???? (LP-IOL) DRAWING NO. 41285997-001-01 0002 * 0003 * 0004 * 0005 * COMPUTER: H316, DDP-516 0006 * 0007 * 0008 * PROGRAM CATEGORY: INPUT/OUTPUT 0009 * 0010 * 0011 * PROGRAM TITLE: LP-IOL 0012 * LINE PRINTER FORTRAN AND STANDARD INPUT/OUTPUT LIBRARY 0013 * USING IOBUS 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 * AUTHOR 0041 * 0042 * HONEYWELL - COMPUTER CONTROL DIVISION 0043 * 0044 * 0045 * PURPOSE 0046 * 0047 * 0048 * TO PROVIDE A LINE PRINTER FORTRAN AND STANDARD INPUT/OUTPUT 0049 * LIBRARY USING IOBUS 0050 *
* ????-???-???? (LP-IOL) DRAWING NO. 41285997-001-01 PAGE 2

0051 * 0052 * RESTRICTIONS 0053 * 0054 * THIS LIBRARY WILL WORK ON AN H316 OR DDP-516 COMPUTER WITH A 0055 * LINE PRINTER. THE EXACT OPTION NUMBER OF THIS LINE PRINTER IS 0056 * UNKNOWN. IT IS, HOWEVER, NOT THE LINE PRINTER OPTION DOCUMENTED 0057 * IN THE DDP-516 PROGRAMMERS REFERENCE MANUAL. 0058 * 0059 * THAT OPTION (516-7050) HAS NO CHARACTER BASED STORAGE IN THE LINE 0060 * PRINTER CONTROL UNIT AND, AS A CONSEQUENCE, A ONE-BIT VALUE MUST 0061 * BE OUTPUT FOR EACH CHARACTER POSITION INDICATING WHETHER THE PRINT 0062 * HAMMER SHOULD FIRE FOR EACH CHARACTER POSITION AROUND THE ROTATING 0063 * DRUM. IN ADDITION THE DRUM ONLY INCLUDES 60 CHARACTER POSITIONS 0064 * AND THE PAPER IS EXPLICTLY SHUTTLED LEFT AND RIGHT, UNDER PROGRAM 0065 * CONTROL, TO PRINT THE ODD AND EVEN CHARATER POSITIONS ALONG THE 0066 * LINE. 0067 * 0068 * IN CONTRAST, THE LINE PRINTER OPTION THAT THIS LIBRARY DRIVES HAS 0069 * STORAGE, IN THE LINE PRINTER CONTROLLER, FOR 120 CHARACTERS AND 0070 * THE PROGRAM MUST SIMPLY OUTPUT 60 WORDS, EACH HOLDING TWO 0071 * CHARACTERS, TO THE CONTROLLER FOR EACH LINE TO BE PRINTED. 0072 * SINCE NO MANUAL IS AVAILABLE FOR THIS OPTION, THE BEHAVIOUR OF 0073 * THE VARIOUS OCP, SKS, AND OTA COMMANDS HAS BEEN DEDUCED FROM THE 0074 * OPERATION OF THIS LIBRARY. THIS SOURCE CODE WAS RECOVERED BY 0075 * DISASSEMBLING THE CODE INCLUDED IN THE SELF LOADING SYSTEM TAPE 0076 * FOR DAP-16M2 USED ON A DDP-516 INSTALLATION. 0077 * 0078 * THE LINEPRINTER OPTION THAT THIS SOFTWARE DRIVES MAY WELL BE THE 0079 * "LINE PRINTER OPTION 316/516-670X" AS MENTIONED IN THE 0080 * "NEW AND UPDATED STANDARD SOFTWARE" NOTE OF JUNE 1971 0081 * 0082 * STORAGE 0083 * 0084 * SEE CONTENTS 0085 * 0086 * 0087 * CONTENTS 0088 * 0089 * MODULE STORAGE PAGE 0090 * NAME DEFINITION OCT DEC NO. 0091 * 0092 * O$LH LINE PRINTER HEADER INITIALIZE 0093 * O$LA LINE PRINTER LIST A LINE 0094 * O$LE LINE PRINTER EJECT 0095 * O$LLHB LINE PRINTER LIST HEADING BUFFER 0096 * O$LLHW LINE PRINTER LIST HEADING BUFFER NO. OF WORDS 0097 * O$LLPN LINE PRINTER LIST PAGE NUMBER 0098 * O$LLLC LINE PRINTER LIST LINE COUNT/PAGE 407 263 0099 * 0100 *
* ????-???-???? (LP-IOL) DRAWING NO. 41285997-001-01 PAGE 3

0101 * USE 0102 * 0103 * INTERNAL MODULES 0104 * 0105 * NAME CALLING SEQUENCE CALLS ERRORS 0106 * 0107 * O$LH CALL O$LH NONE 0108 * DAC HEADING BUFFER 0109 * RETURN 0110 * 0111 * O$LA CALL O$LA O$LE NONE 0112 * DAC LINE BUFFER 0113 * RETURN 0114 * 0115 * O$LE CALL O$LE NONE 0116 * RETURN 0117 * 0118 * 0119 * EXTERNAL MODULES 0120 * 0121 * NONE 0122 * 0123 * 0124 * ERRORS 0125 * 0126 * NONE ARE REPORTED IN A STANDARDIZED MANNER. IF AN ALARM IS 0127 * DETECTED, UP TO TEN ATTEMPTS ARE MADE TO OUTPUT THE LINE, IF 0128 * THAT FAILS THE PROGRAM HALTS WITH 052525 IN THE A-REGISTER. 0129 * 0130 * 0131 * METHOD 0132 * 0133 * O$LH SETS UP A HEADING LINE WHICH IS STORED IN A BUFFER PROVIDED 0134 * BY THIS MODULE (O$LHB). THE DEFAULT NUMBER OF WORDS COPIED IS 0135 * 48 (96 CHARACTERS), HOWEVER THE O$LLHW MAY BE MODIFIED TO SET A 0136 * DIFFERENT NUMBER OF WORDS. NORMALLY, THE PAGE NUMBER WILL BE 0137 * PRINTED AFTER THE HEADING SUPPLIED BY O$LH AT THE TOP OF EACH 0138 * PAGE. IN ORDER TO AVOID A PARTIAL PAGE NUMBER, IF O$LLHW IS 0139 * GREATER THAN 55 (110 CHARACTERS) THEN IT IS MODIFIED TO THE 0140 * VALUE 60, AND 60 WORDS ARE COPIED INTO THE BUFFER TO BE PRINTED 0141 * AT THE TOP OF EACH PAGE WITH NO PAGE NUMBER. 0142 * 0143 * O$LA PRINTS A LINE. IF THE CURRENT PAGE IS FULL WHEN THIS ROUTINE 0144 * IS CALLED THEN O$LE IS AUTOMATICALLY CALLED TO MOVE TO THE START 0145 * OF THE NEXT PAGE. THE NUMBER OF LINES PRINTED PER PAGE IS 0146 * INDICATED BY O$LLLC. THIS VALUE MUST BE SET CONSIDERING THE SIZE 0147 * OF THE PAPER FORM AND THE PLACEMENT OF THE VERTICAL TAB STOPS. 0148 * 0149 * O$LE EJECTS TO THE START OF THE NEXT PAGE. THE HEADING IS PRINTED 0150 * WITH THE PAGE NUMBER, AND THE PAGE NUMBER IS INCREMENTED. THE
* ????-???-???? (LP-IOL) DRAWING NO. 41285997-001-01 PAGE 4

0151 * PRINTER ADVANCES TO THE FIRST VERTICAL TAB STOP IN READINESS FOR 0152 * PRINTING THE FIRST LINE. 0153 * 0154 EJCT
* ????-???-???? (LP-IOL) DRAWING NO. 41285997-001-01 PAGE 5

0155 * 0156 * NOTES ON RECOVERY FROM DISASSEMBLY 0157 * 0158 * THE NAMES O$LH, O$LA, AND O$LE ARE KNOWN TO BE CORRECT SINCE 0159 * THEY ARE CALLED FROM THE IOS-O16X DEVICE SELECTION DRIVER OF 0160 * DAP-16M2, FOR WHICH SOURCE CODE IS AVAILABLE. 0161 * 0162 * THE NAMES O$LLHB, O$LLHW, O$LLPN, O$LLC, AND O$LLLN ARE NOT 0163 * KNOWN, AND IT IS POSSIBLE (EVEN LIKELY) THAT THESE LOCATIONS 0164 * HAD DIFFERENT NAMES IN THE ORIGINAL SOURCE CODE, OR THAT THEY 0165 * HAD NO GLOBAL NAMES VISIBLE TO THE LOADER. THE NAMES ARE CHOSEN 0166 * BY ANALOGY WITH THE SIMILAR FUNCTIONS IN THE ASR AND PAPER TAPE 0167 * ROUTINES OF SIMILAR FUNCTIONALITY. O$LLHW, ALMOST CERTAINLY HAD 0168 * A GLOBAL (LOADER) NAME SINCE IF IT CANNOT BE MODIFIED IT MAKES 0169 * NO SENSE TO COMPARE THIS VALUE TO LITERALS AS THIS CODE DOES. 0170 * (HOWEVER, SINCE THERE IS NO EQUIVALENT IN THE ASR AND PAPER TAPE 0171 * ROUTINES IT IS EVEN MORE LIKELY THAT ITS NAME IS INCORRECT.) 0172 * 0173 * THESE THREE ROUTINES (O$LH, O$LA, AND O$LE) MUST HAVE BEEN 0174 * CONTAINED IN A SINGLE ASSEMBLER SOURCE MODULE SINCE THEY ARE 0175 * COVERED BY A SINGLE LITERAL POOL. (THEY COULD NOT HAVE BEEN 0176 * SEPARATELY ASSEMBLED AND LINKED BY THE LOADER). 0177 * 0178 * THE DRAWING NUMBER (41285997-001-01) IS TAKEN FROM THE ORDER 0179 * FORM OF THE "NEW AND UPDATED STANDARD SOFTWARE" NOTE OF JUNE 1971 0180 * THOUGH THAT REVISION NUMBER MAY WELL NOT CORRESPOND TO THIS 0181 * CODE. 0182 * 0183 EJCT
* ????-???-???? (LP-IOL) DRAWING NO. 41285997-001-01 PAGE 6

0184 * 0185 * 0186 SUBR O$LH LINE PRINTER HEADER INITIALIZE 0187 SUBR O$LA LINE PRINTER LIST A LINE 0188 SUBR O$LE LINE PRINTER EJECT 0189 * 0190 SUBR O$LLHB,HEAD LINE PRINTER LIST HEADING BUFFER 0191 SUBR O$LLHW,HWRD LINE PRINTER LIST HEADING BUFFER NO. OF WORDS 0192 SUBR O$LLPN,PAGE LINE PRINTER LIST PAGE NUMBER 0193 SUBR O$LLLC,PAGE LINE PRINTER LIST LINE COUNT/PAGE 0194 SUBR O$LLLN,PAGE LINE PRINTER LIST LINE NUMBER 0195 * 0196 * 0197 CF5 H316 AND DDP-516 0198 REL RELOCATABLE 0199 * 0200 * 0201 * LINE PRINTER DEVICE CODES 0202 * 0203 * LINE PRINTER ADDRESS 0204 000003 LPTA EQU '3 LINE PRINTER ADDRESS 0205 * 0206 * OCP 0207 000103 LPSS EQU LPTA+'0100 LINE PRINTER START SCAN 0208 000203 LPES EQU LPTA+'0200 LINE PRINTER END SCAN 0209 001303 LPFF EQU LPTA+'1300 LINE PRINTER FORM FEED 0210 001603 LPVT EQU LPTA+'1600 LINE PRINTER SKIP TO VERTICAL TAB 0211 001703 LPLN EQU LPTA+'1700 LINE PRINTER STEP ONE LINE 0212 * 0213 * SKS 0214 000003 LPSR EQU LPTA+'0000 LINE PRINTER SKIP IF READY 0215 000203 LPNB EQU LPTA+'0200 LINE PRINTER SKIP IF NOT BUSY 0216 000303 LPNA EQU LPTA+'0300 LINE PRINTER SKIP IF NO ALARM 0217 000403 LPNP EQU LPTA+'0400 LINE PRINTER SKIP IF NOT SHIFTING PAPER 0218 * 0219 * OTA 0220 000003 LPCP EQU LPTA+'0000 LINE PRINTER OUTPUT CHARACTER PAIR 0221 * 0222 * 0223 00000 0 000000 O$LH DAC ** HEADER INITIALIZE 0224 00001 -0 02 00000 LDA* O$LH PICK UP BUFFER POINTER 0225 00002 0 04 00057 STA ADDR AND SAVE 0226 * 0227 00003 0 02 00065 LDA HDRA HEADER BUFFER TO BE INITIALIZED 0228 00004 0 04 00064 STA HPTR PLACE IN POINTER 0229 00005 0 02 00406 LDA =-66 -VE SIZE OF BUFFER 0230 00006 0 04 00056 STA CNTR INITIALIZE COUNTER 0231 00007 0 02 00405 LDA =A TWO SPACES 0232 00010 -0 04 00064 CLLP STA* HPTR STORE IN BUFFER 0233 00011 0 12 00064 IRS HPTR STEP POINTER
* ????-???-???? (LP-IOL) DRAWING NO. 41285997-001-01 PAGE 7

0234 00012 0 12 00056 IRS CNTR STEP COUNTER 0235 00013 0 01 00010 JMP CLLP GO BACK UNTIL BUFFER FILLED 0236 * 0237 00014 0 02 00065 LDA HDRA 0238 00015 0 04 00064 STA HPTR POINT TO START OF BUFFER 0239 00016 0 02 00404 LDA =55 (110 CHARACTERS) 0240 00017 0 07 00060 SUB HWRD NUMBER OF WORDS IN HEADER 0241 00020 101400 SMI MORE THAN 110 CHAR.S? 0242 00021 0 01 00024 JMP HCPY NO COPY JUST HWRD 0243 00022 0 02 00403 LDA =60 SET TO 60 0244 00023 0 04 00060 STA HWRD COPY WHOLE BUFFER 0245 00024 140040 HCPY CRA 0246 00025 0 07 00060 SUB HWRD A = -HRWD 0247 00026 0 10 00045 JST MCPY COPY TEXT ACROSS 0248 00027 0 02 00067 LDA PGNA PAGE NUMBER BUFFER 0249 00030 0 04 00057 STA ADDR SET ADDRESS 0250 00031 0 02 00402 LDA =-3 2 WORDS FOR 'PAGE' ONE SPACE EACH SIDE 0251 00032 0 10 00045 JST MCPY COPY INTO HEADER 0252 00033 0 02 00064 LDA HPTR 1ST TWO CHARS OF PAGE NUM. GO HERE 0253 00034 0 06 00401 ADD =1 ADD ONE BECAUSE 0254 00035 0 04 00066 STA HPN2 2ND TWO CHARS OF PAGE NUM. GO HERE 0255 00036 0 02 00061 LDA LCNT LIST LINE COUNT/PAGE 0256 00037 0 06 00401 ADD =1 START BEYOND END OF PAGE 0257 00040 0 04 00070 STA LINE TO FORCE INITIAL NEW PAGE 0258 00041 0 02 00401 LDA =1 RESET CURRENT PAGE NUMBER 0259 00042 0 04 00062 STA PAGE TO ONE 0260 00043 0 12 00000 IRS O$LH SKIP PARAMETER 0261 00044 -0 01 00000 JMP* O$LH RETURN 0262 * 0263 00045 0 000000 MCPY DAC ** COPY MEMORY FROM 'ADDR' 0264 00046 0 04 00056 STA CNTR -VE NO. WORDS IN A ON ENTRY 0265 00047 -0 02 00057 MCPL LDA* ADDR PICK UP WORD 0266 00050 -0 04 00064 STA* HPTR MORE TO NEW LOCATION 0267 00051 0 12 00057 IRS ADDR STEP SOURCE ADDR 0268 00052 0 12 00064 IRS HPTR STEP DEST ADDR 0269 00053 0 12 00056 IRS CNTR STEP COUNTER 0270 00054 0 01 00047 JMP MCPL LOOP FOR NEXT WORD 0271 00055 -0 01 00045 JMP* MCPY ALL DONE - RETURN 0272 * 0273 * 0274 * VARIABLES AND CONSTANTS 0275 * 0276 00056 CNTR BSS 1 COUNTER 0277 00057 ADDR BSS 1 ADDRESS POINTER 0278 * 0279 * LIST HEADER WORDS 0280 00060 000060 HWRD DEC 48 WORDS IN HEADER (96 CHAR. DEFAULT) 0281 * 0282 * LIST LINE COUNT/PAGE 0283 00061 000062 LCNT DEC 50 LIST LINE COUNT/PAGE
* ????-???-???? (LP-IOL) DRAWING NO. 41285997-001-01 PAGE 8

0284 * 0285 * LIST PAGE NUMBER 0286 00062 000001 PAGE DEC 1 LIST PAGE NUMBER 0287 * 0288 00063 0 000074 HDSZ DAC HDRE-HEAD MAXIMUM NO. WORDS IN HEADER 0289 00064 0 000345 HPTR DAC HEAD+51 1ST TWO CHARS OF PAGE NUM. GO HERE 0290 00065 0 000262 HDRA DAC HEAD ADDRESS OF HEADER BUFFER 0291 00066 0 000346 HPN2 DAC HEAD+52 2ND TWO CHARS OF PAGE NUM. GO HERE 0292 00067 0 000364 PGNA DAC PAGN POINT AT ' PAGE ' TEXT 0293 * 0294 * LIST LINE NUMBER 0295 00070 077777 LINE OCT 77777 MAXIMUM +VE INT. - FORCE NEW PAGE 0296 * 0297 00071 DECI BSS 4 BUFFER FOR ASCII CONV. PAGE NUMBER 0298 * 0299 00075 001750 DEC 1000 TABLE OF DECIMAL POWERS 0300 00076 000144 DEC 100 0301 00077 000012 DEC 10 0302 000100 DTAB EQU * 0303 * 0304 * 0305 00100 0 000000 O$LA DAC ** OUTPUT LINE TO LINEPRINTER 0306 00101 0 15 00261 STX SAVX SAVE 0307 00102 0 02 00061 LDA LCNT LIST LINE COUNT/PAGE 0308 00103 0 07 00070 SUB LINE CURRENT LINE 0309 00104 100400 SPL ANY SPACE THIS PAGE? 0310 00105 0 10 00116 JST O$LE NO - EJECT 0311 00106 0 12 00070 IRS LINE STEP LINE NUMBER 0312 00107 34 0403 SKS LPNP SKIP IF NOT SHIFTING PAPER 0313 00110 0 01 00107 JMP *-1 0314 00111 14 1703 OCP LPLN STEP ONE LINE 0315 00112 -0 02 00100 LDA* O$LA ADDRESS OF BUFFER TO PRINT 0316 00113 0 10 00214 JST OUTL 0317 00114 0 12 00100 IRS O$LA 0318 00115 -0 01 00100 JMP* O$LA 0319 * 0320 * 0321 00116 0 000000 O$LE DAC ** EJECT 0322 00117 0 15 00261 STX SAVX SAVE 0323 00120 140040 CRA CLEAR... 0324 00121 0 04 00071 STA DECI 1000S DIGIT 0325 00122 0 04 00072 STA DECI+1 100S DIGIT 0326 00123 0 04 00073 STA DECI+2 10S DIGIT 0327 * 0328 00124 0 02 00400 LDA =9999 MAX 4-DIGIT DECIMAL 0329 00125 0 07 00062 SUB PAGE CURRENT VALUE 0330 00126 101400 SMI TOO BIG? 0331 00127 0 01 00132 JMP DECC NO, IT'S OK - GO CONVERT 0332 00130 140040 CRA YES, RESET TO ZERO 0333 00131 0 04 00062 STA PAGE
* ????-???-???? (LP-IOL) DRAWING NO. 41285997-001-01 PAGE 9

0334 * 0335 * CONVERT TO DECIMAL 0336 00132 0 02 00062 DECC LDA PAGE PICK UP PAGE NUMBER 0337 00133 0 35 00402 LDX =-3 3 POWERS OF 10 0338 00134 1 07 00100 DECL SUB DTAB,1 SUBTRACT A POWER OF TEN 0339 00135 100400 SPL STILL POSITIVE? 0340 00136 0 01 00141 JMP DECM NO, IT'S GONE -VE 0341 00137 1 12 00074 IRS DECI+3,1 YES, INCREMENT ASCII DIGIT 0342 00140 0 01 00134 JMP DECL SUBTRACT POWER AGAIN 0343 00141 1 06 00100 DECM ADD DTAB,1 OOPS, -VE - RESTORE IT 0344 00142 0 12 00000 IRS 0 STEP COUNTER 0345 00143 0 01 00134 JMP DECL LOOP FOR NEXT SMALLER POWER OF 10 0346 00144 0 04 00074 STA DECI+3 REMAINDER IS UNITS 0347 * 0348 00145 0 12 00062 IRS PAGE INCREMENT FOR NEXT PAGE 0349 * 0350 00146 0 02 00071 LDA DECI PICK UP 1000S 0351 00147 100040 SZE ZERO? 0352 00150 0 01 00164 JMP D100 NO - SO TWO CHARS IN FIRST WORD 0353 00151 0 02 00377 LDA ='020000 ONE SPACE IN 1ST CHAR 0354 00152 -0 04 00064 STA* HPTR SAVE IN BUFFER 0355 00153 0 02 00072 LDA DECI+1 PICK UP 100S 0356 00154 100040 SZE ZERO? 0357 00155 0 01 00170 JMP D101 NO - ONE CHAR 0358 00156 0 02 00376 LDA ='020040 YES, TWO SPACES 0359 00157 -0 04 00064 STA* HPTR PLACE IN BUFFER 0360 00160 0 02 00073 LDA DECI+2 PICK UP 10S 0361 00161 101040 SNZ ZERO? 0362 00162 0 06 00375 ADD =-'20 YES, LATER +'60 GOES TO SPACE 0363 00163 0 01 00174 JMP D102 0364 * 0365 00164 0 06 00374 D100 ADD ='60 CONVERT TO ASCII 0366 00165 0414 70 LGL 8 TO UPPER CHAR 0367 00166 -0 04 00064 STA* HPTR PLACE IN BUFFER 0368 00167 0 02 00072 LDA DECI+1 PICK UP 100S 0369 00170 0 06 00374 D101 ADD ='60 CONVERT TO ASCII 0370 00171 -0 06 00064 ADD* HPTR ADD IN UPPER CHARACTER 0371 00172 -0 04 00064 STA* HPTR PLACE PAIR IN BUFFER 0372 00173 0 02 00073 LDA DECI+2 PICK UP 10S 0373 * 0374 00174 0 06 00374 D102 ADD ='60 CONVERT TO ASCII 0375 00175 0414 70 LGL 8 TO UPPER CHAR 0376 00176 0 06 00074 ADD DECI+3 ADD IN UNITS 0377 00177 0 06 00374 ADD ='60 CONVERT TO ASCII 0378 00200 -0 04 00066 STA* HPN2 PLACE PAIR IN BUFFER 0379 * 0380 00201 34 0403 SKS LPNP SKIP IF NOT SHIFTING PAPER 0381 00202 0 01 00201 JMP *-1 0382 00203 14 1303 OCP LPFF FORM FEED 0383 *
* ????-???-???? (LP-IOL) DRAWING NO. 41285997-001-01 PAGE 10

0384 00204 0 02 00065 LDA HDRA POINT AT HEADER BUFFER 0385 00205 0 10 00214 JST OUTL AND PRINT 0386 * 0387 00206 34 0403 SKS LPNP SKIP IF NOT SHIFTING PAPER 0388 00207 0 01 00206 JMP *-1 0389 00210 14 1603 OCP LPVT SKIP TO VERTICAL TAB 0390 * 0391 00211 0 02 00401 LDA =1 SET CURRENT LINE NUMBER 0392 00212 0 04 00070 STA LINE TO ONE 0393 00213 -0 01 00116 JMP* O$LE RETURN 0394 * 0395 00214 0 000000 OUTL DAC ** OUTPUT LINE TO PRINTER 0396 00215 0 04 00257 STA BUFR A IS POINTER TO BUFFER 0397 00216 0 02 00373 LDA =-10 INITIALIZE RETRY COUNTER 0398 00217 0 04 00256 STA RCNT FOR TEN ATTEMPTS 0399 00220 0 02 00257 RTRY LDA BUFR BUFFER ADDRESS 0400 00221 0 04 00260 STA BPTR INIT. POINTER 0401 00222 0 02 00063 LDA HDSZ CHARACTERS? 0402 00223 140407 TCA NEGATE 0403 00224 0 04 00000 STA 0 0404 * 0405 00225 34 0203 SKS LPNB SKIP IF NOT BUSY 0406 00226 0 01 00225 JMP *-1 0407 00227 14 0103 OCP LPSS START SCAN 0408 00230 -0 02 00260 OTL1 LDA* BPTR PICK UP CHARACTER PAIR 0409 00231 74 0003 OTA LPCP OUTPUT CHARACTER PAIR 0410 00232 0 01 00231 JMP *-1 LOOP UNTIL READY 0411 00233 0 12 00260 IRS BPTR STEP POINTER 0412 00234 0 12 00000 IRS 0 STEP COUNTER 0413 00235 0 01 00230 JMP OTL1 LOOP OVER CHARACTERS 0414 * 0415 00236 0406 60 ARR '20 SHORT TIMING DELAY? 0416 00237 0406 75 ARR '03 11 MICROSECONDS (516) 0417 * 0418 00240 34 0003 SKS LPSR SKIP IF READY 0419 00241 100000 SKP NOT YET - CHECK ALARM 0420 00242 14 0203 OCP LPES READY - STOP SCAN 0421 00243 34 0303 OTL2 SKS LPNA SKIP IF NO ALARM 0422 00244 0 01 00251 JMP ALRM OOPS, SOMETHING WRONG 0423 00245 34 0203 SKS LPNB SKIP IF NOT BUSY 0424 00246 0 01 00243 JMP OTL2 KEEP CHECKING 0425 00247 0 35 00261 OUTX LDX SAVX RESTORE X 0426 00250 -0 01 00214 JMP* OUTL RETURN 0427 * 0428 00251 0 02 00372 ALRM LDA ='52525 NOTICEABLE A-REG. PATTERN 0429 00252 0 12 00256 IRS RCNT STEP RETRY COUNTER 0430 00253 0 01 00220 JMP RTRY GIVE IT ANOTHER GO 0431 00254 000000 HLT OUT OF TRIES - HALT 0432 00255 0 01 00247 JMP OUTX RETURN IF RESTARTED 0433 *
* ????-???-???? (LP-IOL) DRAWING NO. 41285997-001-01 PAGE 11

0434 00256 177766 RCNT DEC -10 RETRY COUNTER 0435 00257 BUFR BSS 1 BUFFER ADDRESS 0436 00260 BPTR BSS 1 BUFFER WORD POINTER 0437 00261 SAVX BSS 1 X SAVED HERE 0438 * 0439 * 0440 00262 120240 HEAD BCI 6, SPACES 1-12 00263 120240 00264 120240 00265 120240 00266 120240 00267 120240 0441 00270 120240 BCI 6, SPACES 13-24 00271 120240 00272 120240 00273 120240 00274 120240 00275 120240 0442 00276 120240 BCI 6, SPACES 25-36 00277 120240 00300 120240 00301 120240 00302 120240 00303 120240 0443 00304 120240 BCI 6, SPACES 27-48 00305 120240 00306 120240 00307 120240 00310 120240 00311 120240 0444 00312 120240 BCI 6, SPACES 49-60 00313 120240 00314 120240 00315 120240 00316 120240 00317 120240 0445 00320 120240 BCI 6, SPACES 61-72 00321 120240 00322 120240 00323 120240 00324 120240 00325 120240 0446 00326 120240 BCI 6, SPACES 73-84 00327 120240 00330 120240 00331 120240 00332 120240 00333 120240 0447 00334 120240 BCI 6, SPACES 85-96 00335 120240
* ????-???-???? (LP-IOL) DRAWING NO. 41285997-001-01 PAGE 12

00336 120240 00337 120240 00340 120240 00341 120240 0448 00342 120320 BCI 6, PAGE COLS 97-108 00343 140707 00344 142640 00345 120240 00346 120240 00347 120240 0449 00350 120240 BCI 6, SPACES 109-120 00351 120240 00352 120240 00353 120240 00354 120240 00355 120240 0450 00356 120240 HDRE BCI 6, SPACES 121-132 00357 120240 00360 120240 00361 120240 00362 120240 00363 120240 0451 * THESE EXTRA 6 WORDS (AT HDRE) WILL BE USED IF THE 0452 * NUMBER OF WORDS IN THE HEADER (INDICATED BY O$LLHW) 0453 * EXCEEDS 55 SINCE THEN 60 WORDS OF HEADER ARE COPIED, 0454 * AND THE PAGE NUMBER IS NOT VISIBLE, BUT IT IS STILL 0455 * COPIED INTO THE AREA AFTER THE 60 WORD HEADING, EACH 0456 * TIME O$LE IS CALLED. 0457 * 0458 00364 120320 PAGN BCI 3, PAGE TO BE COPIED INTO BUFFER 00365 140707 00366 142640 0459 00367 120240 BCI 3, EXTRA SPACES - WHAT FOR? 00370 120240 00371 120240 0460 * 0461 * 0462 * LITERALS 0463 * 0464 00372 052525 FIN LITERALS 00373 177766 00374 000060 00375 177760 00376 020040 00377 020000 00400 023417 00401 000001 00402 177775 00403 000074 00404 000067
* ????-???-???? (LP-IOL) DRAWING NO. 41285997-001-01 PAGE 13

00405 120240 00406 177676 0465 END END OF O$LH 13.SEP.08 A.P.WISE ADDR 000057 ALRM 000251 BPTR 000260 BUFR 000257 CLLP 000010 CNTR 000056 D100 000164 D101 000170 D102 000174 DECC 000132 DECI 000071 DECL 000134 DECM 000141 DTAB 000100 HCPY 000024 HDRA 000065 HDRE 000356 HDSZ 000063 HEAD 000262 HPN2 000066 HPTR 000064 HWRD 000060 LCNT 000061 LINE 000070 LPCP 000003A LPES 000203A LPFF 001303A LPLN 001703A LPNA 000303A LPNB 000203A LPNP 000403A LPSR 000003A LPSS 000103A LPTA 000003A LPVT 001603A MCPL 000047 MCPY 000045 O$LA 000100 O$LE 000116 O$LH 000000 OTL1 000230 OTL2 000243 OUTL 000214 OUTX 000247 PAGE 000062 PAGN 000364 PGNA 000067 RCNT 000256 RTRY 000220 SAVX 000261 0000 WARNING OR ERROR FLAGS DAP-16 MOD 2 REV. C 01-26-71
Previous File   Multiple Pages   Next File