########## FOVAL (AN EXTRACT/REFORMAT PROGRAM) 1401 SOURCE 0101 JOB 1401 FORMAT RETRIEVAL FOVAL 0102 CTL 6611 FOVAL 01020* VERSION OF MARCH 68 01021* CHANGES FROM PREVIOUS VERSION OF MAY 67 FOVAL 01022* 1. RECORD MARK NO LONGER REQUIRED FOR BLOCKED RECORDS. FOVAL 01023* 2. SORT7 MACRO REMOVED FROM EOJ. FOVAL 01024* 3. TABLE SEARCH ROUTINE REMOVED. UNDEFINED LABELS WILL FOVAL 01025* RESULT IN TABLE LOAD AND GENERATE CALL ROUTINES. FOVAL 01026* 4. WLR CHECKING ADDED. FOVAL 01027* FOVAL 0103 SIZE EQU 15999 USED TO ORG PROG IN UPPER CORE FOVAL 0104 ORG 1 DEFINE FIELDS IN I/O FOVAL 0105 AHERE DS 3 CONTROL BLOCKS RELATIVE FOVAL 0106 ALOW DS 4 TO ONE. FOVAL 0107 AHIGH DS 4 FOVAL 0108 AB DS 1 FOVAL 0109 BHERE DS 3 FOVAL 0110 BLOW DS 4 FOVAL 0111 BHIGH DS 4 FOVAL 0112 BC DS 1 B AND/OR C, A IS AND, O IS OR .SAME FOR A,B FOVAL 0113 CHERE DS 3 UNITS POS OF C FIELD . FIELDS FOVAL 0114 CLOW DS 4 LOWEST C TO BE USED . FOVAL 0115 CHIGH DS 4 HIGHEST C TO BE USED . FOVAL 0116 STATUS DS 1 NO WM IN LAST,ZONE IF RD CDS FOR A LOW/HIGH FOVAL 0117 COUNT DS 6 COUNT OUTPUT RECORDS FOVAL 0118 NXTABC DS 3 START OF NEXT I/O CONTROL BLOCK, AHERE-3 FOVAL 0119 IO DS 1 START OF OUTPUT ROUTINE FOVAL 0120 * FOVAL 0121 ORG 81 FOVAL 0122 CGM DCW @!@ FOVAL 0123 CBLK DCW @ @ CONSTANT BLANK FOVAL 0124 SW120 DC #1 FOVAL 0125 WK3 DCW #3 0126 * FOVAL 0127 *THROUGHOUT GENERATION, X3 IS LAST LOC ASSIGNED, CALLED ORIGIN FOVAL 0128 * FOVAL 0129 *FOR PROCESSING ROUTINES FOVAL 0130 * X1 IS START OF CURRENT OUTPUT BLOCK - 1 FOVAL 0131 * X2 IS START OF CURRENT AHERE - 1 FOVAL 0132 * X3 IS START OF TAPE INPUT RECORD - 1, ZERO IF CARD INPUT FOVAL 0133 * FOVAL 0134 X1 DCW #3 FOVAL 0135 DS 1 FOVAL 0136 SWW DC #1 WM IF PRINT GEN FOVAL 0137 X2 DCW #3 FOVAL 0138 DS 1 FOVAL 0139 SWP DC #1 WM IF PUNCH GEN FOVAL 0140 X3 DCW 336 ITITIAL ORIGIN FOVAL 0141 DS 1 FOVAL 0142 ORG 181 FOVAL 0143 DCW @!@ FOVAL 0144 RECNT DCW -000000 FOVAL 0145 NOISEC DCW #4 NOISE RECORD COUNT FOVAL 0146 WLRC DCW #4 WLR COUNT FOVAL 0148 TAPEL DCW 001 GM ADDRESS&1 FOR WLR CHECK FOVAL 0177 JOB GENERATE PRINT AND PUNCH FILE CONTROLS FOVAL 0178 ORG 336 FOVAL 0179 DCW @!@ CORE PROTECTION FOVAL 0180 HEADPG SBR HDX&3 FOVAL 0181 CC 1 EJECT FOVAL 0182 MRCM HL1-131,201 FOVAL 0183 A *-6,PAGECT PAGE COUNT FOVAL 0184 PPAGE NOP PAGECT,* FOVAL 0185 HSP1 CC / FOVAL 0186 W PRINT HEADING FOVAL 0187 MRCM HL2-131,201 FOVAL 0188 HSP2 CC S FOVAL 0189 W FOVAL 0190 MRCM HC-131,201 CLEAR PRINT FOVAL 0191 HDX B AFTIL FOVAL 0192 DCW #1 FOVAL 0193 HL1 DS 131 FOVAL 0194 DCW @\@ FOVAL 0195 HL2 DS 132 FOVAL 0196 DCW @\@ FOVAL 0197 HC DS 132 FOVAL 0198 DCW @\@ FOVAL 0199 PAGECT DCW #4 FOVAL 0200 * FOVAL 0201 FINCNT DCW #6 FOVAL 0202 SEQCHK DCW #9 FOVAL 0203 DS 45 SAVE FOR ABC FOVAL 0204 COUTT EQU *-3 FOVAL 0205 WI0 C SEQCHK-8,SEQCHK-8 FOVAL 0206 BE PRINT FOVAL 0207 WI1 MCW *,* RESET SEQUENCE FOVAL 0208 BCE *&6,*-2,* FIRST RECORD SWITCH FOVAL 0209 SW TO BRANCH TO PRINT FOVAL 0210 B PRINT FOVAL 0211 WI2 NOP COUTT,* MOVE COUNT TO PRINT AREA FOVAL 0212 A COUTT,FINCNT FOVAL 0213 S COUTT FOVAL 0214 WI3 NOP PAGECT RESET PAGE COUNT FOVAL 0215 NOP PRINT TOTAL LINE FOVAL 0216 WI4 NOP COUTT,* CLEAR PRINT AREA FOVAL 0217 WI5 NOP HEADPG FOVAL 0218 SWTOT B PRINT&5 FOVAL 0219 * FOVAL 0220 PRINT BCV HEADPG FOVAL 0221 * FOVAL 0222 ORGSZE EQU SIZE-999 ORG TO LOAD AHEAD OF TAPERR FOVAL 0223 ORGSZ2 EQU ORGSZE-999 AT END OF CORE AND FOR FOVAL 0224 ORG ORGSZ2-465 HOLD-4 TO BE XXX00 FOVAL 0225 SETWM B * END SW STRING FOVAL 0226 DOSET SBR SETWM&3 FOVAL 0227 B 1&X2 FOVAL 0228 STARTI CC 1 FOVAL 0229 MRCM 76,276 IDENTIFY PROGRAM AND VERSION FOVAL 0230 MLC CPROG,274 FOVAL 0231 CC T FOVAL 0232 W READ FOVAL 0233 C 6,CHEAD1 Q. HEAD FOVAL 0234 BE GENH FOVAL 0235 CS PRINT&4 FOVAL 0236 CS FOVAL 0237 CS FOVAL 0238 CS FOVAL 0239 CS FOVAL 0240 CS FOVAL 0241 CS FOVAL 0242 MLCWACGM,336 RESTORE CORE PROTECTION FOVAL 0243 B QPUNCH FOVAL 0244 GENH SW 7 FOVAL 0245 MCW 76,HL1-62 STORE 1-70 FOVAL 0246 B READ FOVAL 0247 C 6,CHEAD2 FOVAL 0248 BE *&6 FOVAL 0249 NOP 1111 HEAD 2 MISSING FOVAL 0250 H FOVAL 0251 SW 7,72 FOVAL 0252 MCW 68,HL1 STORE 71-132 FOVAL 0253 BCE *&19,71, Q. PAGE CT FOVAL 0254 SW 69 FOVAL 0255 MCW 71,PPAGE&6 FOVAL 0256 MCW CMCS,PPAGE FOVAL 0257 BCE *&8,72, FOVAL 0258 MCW 72,HSP1&1 FOVAL 0259 B READ FOVAL 0260 C 6,CHEAD3 FOVAL 0261 BU NOHL3 FOVAL 0262 SW 7 FOVAL 0263 MLC 76,HL2-62 FOVAL 0264 B READ FOVAL 0265 C 6,CHEAD4 FOVAL 0266 BE *&6 FOVAL 0267 NOP 1112 HEAD 4 MISSING FOVAL 0268 H FOVAL 0269 SW 7,72 FOVAL 0270 MLC 68,HL2 FOVAL 0271 BCE *&8,72, FOVAL 0272 MLC 72,HSP2&1 FOVAL 0273 B READ FOVAL 0274 B QPRINT FOVAL 0275 BIN HDX, FOVAL 0276 NOHL3 SBR HSP2-4,HC-131 FOVAL 0277 LCA NOHL3-1,HSP2&4 FOVAL 0278 QPRINT C 5,CPRINT FOVAL 0279 BE *&6 FOVAL 0280 NOP 1114 NO PRINT AFTER HEAD FOVAL 0281 H FOVAL 0282 SBR X3,SEQCHK UP ORIGIN FOVAL 0283 B LDABC FOVAL 0284 BCE NOTOT,F3, Q. TOTALS FOVAL 0285 MCW F3,WI2&6 FOVAL 0286 MCW F3,WI4&6 FOVAL 0287 MCW CMCS,WI2 FOVAL 0288 MCW CMCS,WI4 FOVAL 0289 MCW CW FOVAL 0290 NOTOT BCE NOSEQ,F1, Q. SEQUENCE CHECK FOVAL 0291 MZ CB,F1-1 FOVAL 0292 MCW F1,WI0&3 FOVAL 0293 SBR X1,SEQCHK-9 FOVAL 0294 MN F2-2,*&7 FOVAL 0295 SBR WI0&6,0&X1 FOVAL 0296 SBR WI1&6 FOVAL 0297 MCW F1,WI1&3 FOVAL 0298 BCE NOSEQ,F4-2, Q. SPACE AFTER BREAK FOVAL 0299 BCE EJ,F4-2,1 FOVAL 0300 LCA CNN,WI5&3 SET CC X, NOP X FOVAL 0301 MCW F4-2 FOVAL 0302 LCA CCC FOVAL 0303 B NOSEQ FOVAL 0304 EJ MCW CB,WI5 FOVAL 0305 BCE *&8,F4-1, Q. RESET PAGE COUNT FOVAL 0306 MCW CS,WI3 FOVAL 0307 NOSEQ SBR X3,PRINT&4 UP ORIGIN FOVAL 0308 B GETDV FOVAL 0309 B DOSET FOVAL 0310 BCE *&22,F2-1, Q. SPACE AFTER PRINT FOVAL 0311 MCW F2-1,2&X3 FOVAL 0312 MLCWACCC,1&X3 FOVAL 0313 SBR X3,2&X3 FOVAL 0314 SBR 12&X3,PASS FOVAL 0315 LCA CB,9&X3 FOVAL 0316 LCA CLRP&6 FOVAL 0317 MLCWACW FOVAL 0318 SBR X3,12&X3 FOVAL 0319 SW 1&X3,SWW PRINT SW ON FOVAL 0320 * FOVAL 0321 QPUNCH C 5,CPUNCH FOVAL 0322 BU QTABLE Q. PUNCH FOVAL 0323 B LDABC FOVAL 0324 B GETDV FOVAL 0325 B DOSET SET WM FOR PUNCH FOVAL 0326 LCA CP,1&X3 FOVAL 0327 BCE NSTACK,F1-2, Q. STACKER SELECTION FOVAL 0328 MCW F1-2,6&X3 FOVAL 0329 SBR 5&X3,PASS FOVAL 0330 LCA CSS,2&X3 FOVAL 0331 SBR X3,6&X3 FOVAL 0332 B *&15 FOVAL 0333 NSTACK SBR 4&X3,PASS FOVAL 0334 SBR X3,4&X3 FOVAL 0335 SW SWP,1&X3 PUNCH SW ON FOVAL 0336 B QPUNCH FOVAL 0337 * FOVAL 0338 EOTABL B READ FOVAL 0339 QTABLE C 5,CTABLE Q. TABLE FOVAL 0340 BU CLRJNK FOVAL 0341 TABLE B READ FOVAL 0342 BCE EOTABL,1,* Q. END OF TABLE CARD FOVAL 0343 SW 1,4 LOAD TABLES FOR LOOKUP FOVAL 0344 MLC 3,X2 FOVAL 0345 MA X2 FOVAL 0346 MA 3,X2 FOVAL 0347 MLCWA6,STORE&X2 FOVAL 0348 B TABLE FOVAL 0349 * FOVAL 0350 CLRP MRCM HC-131,201 FOVAL 0351 CCC DCW @F@ FOVAL 0352 CHEAD1 DCW @HEAD 1@ FOVAL 0353 CHEAD2 DCW @HEAD 2@ FOVAL 0354 CHEAD3 DCW @HEAD 3@ FOVAL 0355 CHEAD4 DCW @HEAD 4@ FOVAL 0356 CMCS MCS FOVAL 0357 CNN DCW @NN@ FOVAL 0358 CP P FOVAL 0359 CPRINT DCW @PRINT@ FOVAL 0360 CPROG DCW @PROGRAM@ FOVAL 0361 CPUNCH DCW @PUNCH@ FOVAL 0362 CSS SS FOVAL 0363 CTABLE DCW @TABLE@ FOVAL 0364 CW W FOVAL 0365 CLRJNK CS * DONE WITH PRINT/PUNCH FOVAL 0366 CS CLEAR ROUTINES FOVAL 0367 CS FOVAL 0368 CS FOVAL 0369 CS FOVAL 0370 CS FOVAL 0371 CS FOVAL 0372 CS FOVAL 0373 CW P PRINT OR PUNCH SWITCH OFF FOVAL 0374 SBR GETDV&10,*&4 NEW START FOR SW IN MCW FOVAL 0375 CLRJK3 B CLRJK2 FOVAL 0376 JOB GENERATE TAPE OUTPUT FILE CONTROLS FOVAL 0377 * THIS IS UPPER LIMIT OF USER GENERATED OUTPUT ROUTINES FOVAL 0378 B TUP FOVAL 0379 * HOLD MUST BE IN CORE FOR GENERATION AND INITP FOVAL 0380 HOLD DCW #1 *HOLD FILE DEFINITION FOVAL 0381 DC #43 * FOVAL 0382 F1 DCW #3 * FOVAL 0383 F2 DCW #3 * FOVAL 0384 F3 DCW #3 * FOVAL 0385 F4 DCW #3 * FOVAL 0386 DC #25 * FOVAL 0387 CLRJK2 CS CLRJK3&3 FOVAL 0388 CS FOVAL 0389 * FOVAL 0390 QTYPEF BCE READN,1,R READ FOVAL 0391 BCE END,1,E END FOVAL 0392 BCE TITLE,2,I TITLE FOVAL 0393 BCE TAPEN,3,P TAPEN FOVAL 0394 NOP 2111 CARD TYPE ERROR FOVAL 0395 H FOVAL 0396 * FOVAL 0397 *GENERATED TAPE OUTPUT ROUTINES, SAMPLE FOVAL 0398 * DS 45 A,B,C CONTROL FOVAL 0399 WTAPE2 SBR X1 ,* * IS RECORD TO FILL - 1 FOVAL 0400 * *,* FOVAL 0401 * *,* GENERATED MOVE COMMANDS FOVAL 0402 * *,* FOVAL 0403 BCE WTAPE,0&1&X1,! Q. END BLOCK, 0 IS REC LNG FOVAL 0404 SBR WTAPE2&6 SET TO NEXT BLOCK FOVAL 0405 B PASS FOVAL 0406 DCW 2 FOVAL 0407 STD DCW #5 BLOCKCOUNT FOVAL 0408 *WRITE AREA FOLLOWS WITH \S, GM, AND WMS FOVAL 0409 * FOVAL 0410 * FOVAL 0411 TAPEN B LDABC LOAD ABC FOR TAPE FILE FOVAL 0412 MN HOLD&4,*&4 FOVAL 0413 RWD 2 FOVAL 0414 LCA WTAPE2&3,4&X3 FOVAL 0415 SBR WHRWT2&3,7&X3 SBR X1,* FOVAL 0416 SBR X3 FOVAL 0417 B GETDV FOVAL 0418 WHRWT2 SBR *,22&X3 FOVAL 0419 MLCWASTD FOVAL 0420 MLCWA FOVAL 0421 LCA FOVAL 0422 LCA FOVAL 0423 LCA FOVAL 0424 MN HOLD&4,17&X3 FOVAL 0425 MCW WHRWT2&3,12&X3 MOVE SBR WTAPE2&6 FOVAL 0426 MN F1,TUP&6 FOVAL 0427 MN FOVAL 0428 MLC FOVAL 0429 A *-6,F1 FOVAL 0430 MN F1,7&X3 FOVAL 0431 MN FOVAL 0432 MLC FOVAL 0433 SBR X3,22&X3 FOVAL 0434 BCE *&8,F2, ASSUME 1 IF BLOCKING NOT GIVEN FOVAL 0435 QBLOCK S C1,F2 FOVAL 0436 BWZ ORC,F2,K FOVAL 0437 B 1&X2 FOVAL 0438 TUP SBR X3,0&X3 FOVAL 0439 MLC CRM FOVAL 0440 B QBLOCK FOVAL 0441 ORC SBR X3,1&X3 FOVAL 0442 LCA CGM END OF TAPE OUTPUT FILE GEN FOVAL 0443 B QTYPEF FOVAL 0444 JOB DATA MOVE GENERATION AND MISC CONTROL CARDS FOVAL 0445 READN MRCM 1,HOLD FOVAL 0446 BWZ *&5,5,2 Q. TAPE INPUT FOVAL 0447 B NOLAB FOVAL 0448 MN 5,*&4 FOVAL 0449 RWD 1 REWIND INPUT TAPE FOVAL 04490 BCE *&8,F2, FOVAL 04492CALBLK S C1,F2 CALCULATE INPUT BLOCK LENGTH FOVAL 04494 BWZ *&12,F2,K FOVAL 04496 MA F1,TAPEL FOVAL 04498 B CALBLK FOVAL 0450 BCE NOLAB,51, Q. TAPE LABEL FOVAL 0451 MN 5,*&4 FOVAL 0452 RT 1,201 READ TAPE LABEL FOVAL 0453 BER TAPERR FOVAL 0454 W FOVAL 0455 MRCM 101,201 FOVAL 0456 MRCM 101,233 FOVAL 0457 MN 5,*&4 Q. TAPEMARK AFTER LABEL FOVAL 0458 RT 1,79 FOVAL 0459 BEF NOLAB YES FOVAL 0460 MN 5,*&4 NO FOVAL 0461 BSP 1 FOVAL 0462 NOLAB MRCM HIGHM-28,260 FOVAL 0463 SBR X3,1&X3 LEAVE WM IF PRINT/PCH ONLY FOVAL 0464 SBR 293,0&X3 FOVAL 0465 W FOVAL 0466 MRCM 130,260 FOVAL 0467 LABC SBR X2,* INITALIZE TO LAST ABC FOVAL 0468 CW STATUS&X2 NO WM IN LAST STATUS FOVAL 0469 FABC SBR NXTABC&X2,* CHAIN LAST TO FIRST ABC FOVAL 0470 B READ FOVAL 0471 B QTYPEF FOVAL 0472 * FOVAL 0473 TITLE BCE *&6,6,1 FOVAL 0474 NOP 2121 FIRST TITLE NOT 1 FOVAL 0475 H FOVAL 0476 MRCM 7,201 FOVAL 0477 R FOVAL 0478 C 6,CTIT FOVAL 0479 BE *&6 FOVAL 0480 NOP 2122 TITLE 2 MISSING FOVAL 0481 H FOVAL 0482 LCA CGM,69 FOVAL 0483 MRCM 7,271 FOVAL 0484 CC 1 FOVAL 0485 WR FOVAL 0486 CCB HEADPG&6,L FOVAL 0487 AFTIL BCE END2,1,E FOVAL 0488 NOP 2124 NO END AFTER TITLE FOVAL 0489 H FOVAL 0490 * FOVAL 0491 END BWZ HEADPG,SWW,1 FOVAL 0492 END2 CS 80 FOVAL 0493 SW 56,63 FOVAL 0494 R 56 FOVAL 0495 * FOVAL 0496 LDABC SBR LDABCX&3 FOVAL 0497 SW 6 FOVAL 0498 LCA BLK3,45&X3 FOVAL 0499 LCA BLK6 LOAD ABC CONTROLS FOVAL 0500 LCA 41 FOVAL 0501 MRCM 1,HOLD HOLD FILE CARD FOVAL 0502 ANXTAB SBR FABC&6,0&X3 CHAIN NXTABC FOVAL 0503 SBR LABC&6 SAVE LAST FOR INITALIZE IN READN FOVAL 0504 S X1&1 FOVAL 0505 SWABC SW 42&X1 FOVAL 0506 S C4,42&X1 FOVAL 0507 MN 42&X1,*&7 FOVAL 0508 SBR X2,0&X3 FOVAL 0509 SW 4&X2,8&X2 SET WM FOR LENGTH ABC FOVAL 0510 SW 1&X3 SET WM FOR LOCATION FOVAL 0511 MZ CB,2&X3 INDEX FOR LOCATION FOVAL 0512 BCE *&19,X1,2 FOVAL 0513 SBR X1,1&X1 FOVAL 0514 SBR X3,12&X3 FOVAL 0515 B SWABC FOVAL 0516 SW 12&X3 SET WM IN STATUS FOVAL 0517 SBR ANXTAB&3,21&X3 CHAIN NXT ABC FOVAL 0518 SBR X3 FOVAL 0519 LDABCX B * FOVAL 0520 * FOVAL 0521 GETDV SBR GETDVX&3 READ AND ASSEMBLE MOVES FOVAL 0522 SBR X2,SETWM-1 IWIT SW STRING, SEE MCW FOVAL 0523 RCTL B READ FOVAL 0524 S X1&1 SEARCH TABLE OF MOVES FOR TYPE FOVAL 0525 QTYPEM C 4,DATAMV&X1 FOVAL 0526 BU *&16 FOVAL 0527 MCW DATAMV&3&X1,*&8 FOVAL 0528 S X1&1 FOVAL 0529 B * EXIT TO PROCESS TYPE FOVAL 0530 GETDVX BCE *,DATAMV&4&X1,* EXIT TO FILE ASSEMBLY FOVAL 0531 SBR X1,7&X1 FOVAL 0532 B QTYPEM FOVAL 0533 DATAMV DCW @MLC @ FOVAL 0534 DCW MCW FOVAL 0535 DCW @MLZS@ FOVAL 0536 DCW MZ FOVAL 0537 DCW @MLNS@ FOVAL 0538 DCW MN FOVAL 0539 DCW @BWZ @ FOVAL 0540 DCW BWZ FOVAL 0541 DCW @BCE @ FOVAL 0542 DCW BCE FOVAL 0543 DCW @CONS@ FOVAL 0544 DCW CONST FOVAL 0545 DCW @CORE@ FOVAL 0546 DCW CORE FOVAL 0547 DCW @1HDR@ FOVAL 0548 DCW HDR FOVAL 0549 DCW @2HDR@ WRITE 120 CHAR LABEL FOVAL 0550 DCW HDR120 FOVAL 0551 DCW @WTM @ WRITE TM ON DRIVE FOVAL 0552 DCW WTM FOVAL 0553 DCW @CNVR@ FOVAL 0554 DCW CNVRT FOVAL 0555 DCW @*@ FOVAL 0556 * FOVAL 0557 BWZ MCW CBWZ,OP ASSEMBLES FOVAL 0558 B *&8 FOVAL 0559 BCE MCW CB,OP FOVAL 0560 SW 6&X1,9&X1 BWZ/BCE *&6,CCC&X3,D FOVAL 0561 SW 10&X1 B *&9 FOVAL 0562 MCW 8&X1,20&X3 DCW @B@ FOVAL 0563 SBR 17&X3,13&X3 MCW *-1,AAA&X1 FOVAL 0564 LCA CMCW,14&X3 FOVAL 0565 LCA 9&X1 FOVAL 0566 SBR 12&X3,21&X3 FOVAL 0567 LCA CB,9&X3 FOVAL 0568 MCW 13&X1 FOVAL 0569 SBR 4&X3,14&X3 FOVAL 0570 LCA OP,1&X3 FOVAL 0571 CBWZ BWZ *&8,P,1 FOVAL 0572 MZ CS,19&X3 FOVAL 0573 MZ CB,6&X3 FOVAL 0574 SBR X3,20&X3 FOVAL 0575 BCE RCTL,14&X1, FOVAL 0576 SBR X1,8&X1 FOVAL 0577 B BCE&7 FOVAL 0578 * FOVAL 0579 CORE MRCM ORGIS,230 FOVAL 0580 SBR 242,1&X3 PRINT ORIGIN FOR PATCH FOVAL 0581 MA 8,X3 FOVAL 0585 W FOVAL 0586 MRCM 130,230 FOVAL 0587 B RCTL FOVAL 0588 ORGIS DCW @O@ FOVAL 0589 DC @RIGIN IS@ FOVAL 0590 DCW @!@ FOVAL 0591 * FOVAL 0592 MCW SW 6&X1,9&X1 ASSEMBLES FOVAL 0593 SW 12&X1 MCW AAA&X3,CCC&X1 FOVAL 0594 CMCW MCW 14&X1,7&X3 FOVAL 0595 MCW 8&X1 FOVAL 0596 LCA CMCW FOVAL 0597 MCW 11&X1,0&X2 GENERATE SW STRING TO SW IN FOVAL 0598 LCA CSW EACH OUTPUT RECORD OF BLOCK FOVAL 0599 SBR X2 FOVAL 0600 BWZ *&15,P,1 FOVAL 0601 MZ CB,3&X2 FOVAL 0603 MZ CS,6&X3 FOVAL 0604 MZ CB,3&X3 FOVAL 0605 SBR X3,7&X3 FOVAL 0606 BCE RCTL,15&X1, FOVAL 0607 SBR X1,9&X1 FOVAL 0608 B MCW FOVAL 0609 * FOVAL 0610 MZ MCW CMZ,OP FOVAL 0611 B *&8 FOVAL 0612 MN MCW CMN,OP ASSEMBLES FOVAL 0613 SW 6&X1 MZ/MN AAA&X3,BBB&X1 FOVAL 0614 MCW 11&X1,7&X3 FOVAL 0615 LCA OP FOVAL 0616 BWZ *&8,P,1 FOVAL 0617 CMZ MZ CS,6&X3 FOVAL 0618 MZ CB,3&X3 FOVAL 0619 SBR X3,7&X3 FOVAL 0620 BCE RCTL,12&X1, FOVAL 0621 SBR X1,6&X1 FOVAL 0622 B MN&7 FOVAL 0623 * FOVAL 0624 CONST SW 8,11 FOVAL 0625 MLC 7,X1 FOVAL 0626 MLC BLK3,X1-2 FOVAL 0627 MLCWACB,1&X3 FOVAL 0628 MA X1,X3 FOVAL 0629 MLC 10,11&X3 FOVAL 0630 BWZ *&8,P,1 FOVAL 0631 MLZS CS,10&X3 FOVAL 0632 MLCWACMCW,5&X3 FOVAL 0633 SBR 8&X3 FOVAL 0634 MLCWA10&X1 FOVAL 0635 SBR *&4 FOVAL 0636 SBR *,5&X3 FOVAL 0637 SBR X3,11&X3 FOVAL 0638 B RCTL FOVAL 0639 * FOVAL 0640 MLC 0&X3,ARG FOVAL 0641 B CNVRT1 FOVAL 0642 MLC FUN,0 FOVAL 0643 CNVRT SW 7,10 CALL TABLE-LOOKUP SUBROUTINE FOVAL 0644 MLCWACNVRT-1,18&X3 FOVAL 0645 CHAIN2 FOVAL 0646 MN 12,18&X3 FOVAL 0647 MN FOVAL 0648 MLC FOVAL 0649 MN 9,4&X3 FOVAL 0650 MN FOVAL 0651 MLC FOVAL 0652 BWZ *&8,P,1 FOVAL 0653 MZ CS,17&X3 FOVAL 0654 SBR X3,18&X3 FOVAL 0655 B RCTL FOVAL 0656 * FOVAL 0657 HDR MN HOLD&4,*&4 FOVAL 0658 WT 2,1 FOVAL 0659 BER TAPERR FOVAL 0660 B RCTL FOVAL 0661 * FOVAL 0662 HDR120 MRCM 1,216 FOVAL 0663 MLC C1,216 FOVAL 0664 MN HOLD&4,*&4 FOVAL 0665 WT 2,216 FOVAL 0666 BER TAPERR FOVAL 0667 MRCM 101,216 FOVAL 0668 SW SW120 FOVAL 0669 B RCTL FOVAL 0670 * FOVAL 0671 WTM MN HOLD&4,*&4 FOVAL 0672 WTM 2 FOVAL 0673 B RCTL FOVAL 0674 * FOVAL 0675 READ SBR READX&3 READ AND LIST CARD FOVAL 0676 CS 80 FOVAL 0677 R FOVAL 0678 SBR X1,1 FOVAL 0679 READM MRCM 0&X1,200&X1 FOVAL 0680 SAR X1 FOVAL 0681 BCE *&5,X1-1,8 LOOP IF RM IN CARD STOPPED MOVE FOVAL 0682 B READM FOVAL 0683 W FOVAL 0684 MRCM 101,201 FOVAL 0685 READX B * FOVAL 0686 * FOVAL 0687 BLK3 DCW #3 FOVAL 0688 BLK6 DC #3 FOVAL 0689 CRM DCW @\@ FOVAL 0690 P DCW #1 WM WHILE GEN PRINT/PUNCH FOVAL 0691 CTIT DCW @TITLE2@ FOVAL 0692 C1 DCW 1 FOVAL 0693 C4 DCW 4 FOVAL 0694 HIGHM DCW @ HIGH LOCATION FOR OUTPUT IS@ FOVAL 0695 DCW @!@ FOVAL 0696 OP DCW #1 BWZ/BCE, MN/MZ FOR GENERATION FOVAL 0697 CB B FOVAL 0698 CMN MN FOVAL 0699 CS S FOVAL 0700 CSW SW FOVAL 0701 * FOVAL 0702 ORG SIZE-101 FOVAL 0703 TAPERR SBR COMAND&16 REPEAT 8 CHARACTER TAPE FOVAL 0704 SBR *&4 R/W COMMANDS AFTER ERROR FOVAL 0705 C *,COMAND&13 FOVAL 0706 C FOVAL 0707 MCW FOVAL 0708 MN COMAND&17,COMAND&18 FOVAL 0709 MN COMAND&3,BACKSP&3 FOVAL 0710 REPEAT A *-6,COMAND&18 FOVAL 0711 C COMAND&18,COMAND&17 FOVAL 0712 BU *&11 FOVAL 07125 NOP 2288 FOVAL 0713 H FOVAL 0714 BSS COMAND&13,G FOVAL 0715 BACKSP CU %U1,B FOVAL 0716 BCE COMAND,COMAND&7,R FOVAL 0717 BL COMAND FOVAL 0718 CU %U1,E FOVAL 0719 COMAND NOP *,*,* FOVAL 0720 BER REPEAT FOVAL 0721 B *-3 FOVAL 0722 DCW 7 FOVAL 0723 DCW @ @ FOVAL 0724 EX STARTI FOVAL 0725 ******************************************************************* FOVAL 0726 * CONTROL CARDS HERE IN CONDENSED DECK FOVAL 0727 ******************************************************************* FOVAL 0728 JOB INITALIZE PROCESSING FOVAL 0729 ORGI EQU SIZE-999 FOVAL 0730 ORG ORGI-100 FOVAL 0731 R GETREC&11 CONSTANTS FOR CONVERSION FOVAL 0732 BCE LOADTR,1,, OF GET TAPE TO READ CARD FOVAL 0733 NOP FOVAL 0734 CARD MLCWA*-7,QPAD9 FOVAL 0735 CHAIN2 FOVAL 0736 S X3&1 FOVAL 0737 B GETREC&7 FOVAL 0738 * FOVAL 0739 INITP CS 80 FOVAL 07390 BWZ WTT120,SW120,1 Q. 120 CHAR LABELS FOVAL 07391 MLCWACGM,WTE80 NO, SET TO 80 FOVAL 07393 SBR MVEBKC&6,WTCNT MOVE BLOCKCOUNT, 80 LABEL FOVAL 0740 WTT120 BCE CARD,HOLD&4,C FOVAL 0741 MZ *-6,ABIT MAKE A-BIT CONSTANT FOVAL 0742 MN HOLD&4,RTAPE&3 FOVAL 0743 MN HOLD&4,EOT1&3 FOVAL 07435 MN HOLD&4,WLRBSP FOVAL 0744 SBR INTBLK&6,0&X3 FOVAL 0745 SBR RTAPE&6,1&X3 SET START OF TAPE INPUT BLOCK FOVAL 07455 MA RTAPE&6,TAPEL ADD BEGIN ADDR TO BLOCK LENGTH FOVAL 0746 SBR GETBL3&6,13&X3 INIT NOISE TEST FOVAL 0747 SBR GETBLK&6 FOVAL 0748 MLC ABIT,GETBL3&7 FOVAL 0749 A *-6,F1 FOVAL 0750 MN F1,GETREC&13 FOVAL 0751 MN FOVAL 0752 MLC FOVAL 0753 MCW RTAPE&7,GETBL2&7 FOVAL 0754 MLC F3,REELS SAVE INPUT REEL COUNT FOVAL 0755 S IPC1,REELS FOVAL 0756 R FOVAL 0757 CS *-4 FOVAL 0758 SBR *-4 FOVAL 0759 BWZ *-15,HOLD,1 FOVAL 0760 CS GETBLK,*&1 FOVAL 0761 IPC1 DCW 1 FOVAL 0762 JOB PROCESSING ROUTINES, INPUT/OUTPUT, PASS/FAIL FOVAL 0763 ORG *&X00 FOVAL 0764 ORGPRO EQU *&1 FOVAL 0765 CPGM DCW @!@ CORE PROTECTION FOVAL 0766 * THIS IS UPPER LIMIT OF USER TAPE INPUT BLOCK FOVAL 0767 *GET NEXT RECORD FROM BLOCKED INPUT TAPE FOVAL 07672WLR A *-6,WLRC COUNT SKIPPED WLR FOVAL 07674 B GETBLK FOVAL 0768 NOISE A *-6,NOISEC FOVAL 0769 GETBLK MLC ABIT,0&12 INIT ABIT FOR NOISE REC TEST FOVAL 0770 RTAPE RT 1,* * IS READ AREA FOVAL 07702 SBR X3 FOVAL 0771 BEF EOT1 FOVAL 0772 GETBL3 BCE NOISE,0&12, Q. NOISE RECORD FOVAL 0773 B *&9 FOVAL 0774 GETBL2 RT 1,* CALLING SEQUENCE FOR TAPERR FOVAL 0775 BER TAPERR FOVAL 07750 C TAPEL,X3 Q. WLR FOVAL 07751 BE INTBLK NO FOVAL 07752 MN 0&X3 YES, DESTROY EXTRA GM FOVAL 07753 MLC CBLK FOVAL 07753 MLC CGM,CPGM IN CASE DESTROYED CORE PROTECT GM FOVAL 07754 NOP 2244 FOVAL 07755 H FOVAL 07756 BSS WLR,G DROP RECORD IF SWITCH G ON FOVAL 07757WLRBSP BSP 1 FOVAL 07758 B GETBLK FOVAL 0776 INTBLK SBR X3,* * IS READ AREA - 1 FOVAL 0777 B QPAD9 FOVAL 0778 EOT1 RWU 1 INPUT REEL COMPLETED FOVAL 0779 S PRC1,REELS Q. ALL REELS READ FOVAL 0780 BWZ GETBLK,REELS,B FOVAL 0781 LOADTR SW 56,63 FOVAL 0782 B 56 FOVAL 0783 SCAN9 MCW X3,X1 FIRST CHAR OF RECORD WAS 9, FOVAL 0784 SBR X1,1&X1 SCAN FOR ALL 9S FOVAL 0785 BCE *-14,1&X1,9 FOVAL 0786 BCE GETREC&7,1&X1,\ YES, WAS PADDING FOVAL 0787 B QPAD9&8 NO, PROCESS FOVAL 0788 PASS A *-6,COUNT&X2 FOVAL 0789 SELX BW OUTSEL,STATUS&X2 Q. LAST FILE DEF TESTED FOVAL 0790 GETREC A *-6,RECNT COUNT LAST INPUT RECORD FOVAL 0791 BCE GETBLK,0&1&X3,! Q. END OF BLK, 0 IS RECORD LNG FOVAL 0792 SBR X3 SET TO NEXT RECORD FOVAL 0793 QPAD9 BCE SCAN9,1&X3,9 Q. PADDING FOVAL 0794 * FOVAL 0795 OUTSEL MCW NXTABC&X2,X2 TEST FOR TRUTH OF A,B,C FOVAL 0796 BCE IO&X2,AHERE&X2, WHEN AHERE BLK, ACCEPT ALL REC FOVAL 0797 MCW AHERE&X2,*&4 FOVAL 0798 C *,ALOW&X2 FOVAL 0799 BH TSTAF FOVAL 0800 MCW AHERE&X2,*&4 FOVAL 0801 C *,AHIGH&X2 FOVAL 0802 BL TSTAF FOVAL 0803 BCE IO&X2,AB&X2, FOVAL 0804 BCE TSTBP,AB&X2,O FOVAL 0805 TSTBL MCW BHERE&X2,*&4 FOVAL 0806 C *,BLOW&X2 FOVAL 0807 BCE TSTBN,AB&X2,N FOVAL 0808 BH TSTBF FOVAL 0809 MCW BHERE&X2,*&4 FOVAL 0810 C *,BHIGH&X2 FOVAL 0811 BL TSTBF FOVAL 0812 TSTBP BCE IO&X2,BC&X2, FOVAL 0813 BCE IO&X2,BC&X2,O FOVAL 0814 TSTCL MCW CHERE&X2,*&4 FOVAL 0815 C *,CLOW&X2 FOVAL 0816 BCE TSTCN,BC&X2,N FOVAL 0817 BH FAIL FOVAL 0818 MCW CHERE&X2,*&4 FOVAL 0819 C *,CHIGH&X2 FOVAL 0820 BL FAIL FOVAL 0821 B IO&X2 FOVAL 0822 TSTAF BCE TSTBL,AB&X2,O FOVAL 0823 BCE FAIL,AB&X2, FOVAL 0824 B TSTBF FOVAL 0825 TSTBN BH TSTBP FOVAL 0826 MLC BHERE&X2,*&4 FOVAL 0827 C *,BHIGH&X2 FOVAL 0828 BL TSTBP FOVAL 0829 TSTBF B TSTCL,BC&X2,O FOVAL 0830 FAIL BWZ SELX,STATUS&X2,2 FOVAL 0831 BCE SELX,1,, Q. END OF CARDS FOVAL 0832 MCW AHERE&X2,*&4 FOVAL 0833 C *,AHIGH&X2 FOVAL 0834 BL *&5 FOVAL 0835 B SELX FOVAL 0836 R FOVAL 0837 MCW 16,AHIGH&X2 FOVAL 0838 MCW FOVAL 0839 B OUTSEL&7 FOVAL 0840 TSTCN BH IO&X2 FOVAL 0841 MLC CHERE&X2,*&4 FOVAL 0842 C *,CHIGH&X2 FOVAL 0843 BL IO&X2 FOVAL 0844 B FAIL FOVAL 0845 * FOVAL 0846 *GENERALIZED WRITE AND TAPERR MUST BE IN CORE FOR PROCESSING FOVAL 0847 * AND FOR CLOSE FOVAL 0848 *GENERALIZED WRITE OUTPUT BLOCK FOVAL 0849 WTAPE SBR X1 FOVAL 0850 WTAPEL MCW 3&X1,*&4 RESET ROUTINE TO FILL FOVAL 0851 SBR *,13&X1 FIRST RECORD OF NEXT BLOCK FOVAL 0852 MCW 8&X1,*&4 DRIVE FOVAL 0853 WT 2,14&X1 FOVAL 0854 BER TAPERR FOVAL 0855 A *-6,13&X1 COUNT TAPE BLOCK FOVAL 0856 QEOT BEF *&5 Q. EOT FOVAL 0857 B PASS FOVAL 0858 MN 8&X1,*&4 FOVAL 0859 WTM 2 TM FOVAL 0863 MVEBKC MLC 13&X1,WTCNT2 MOVE BLOCKCOUNT TO LABEL FOVAL 0866 MLC WTTRL&25,13&X1 CLEAR BLOCKCOUNT FOR NEXT REEL FOVAL 0867 MN 8&X1,*&4 FOVAL 0868 WT 2,WTTRL-4 WRITE TRAILER LABEL FOVAL 0869 MN 8&X1,*&4 FOVAL 0870 WTM 2 TM AFTER TRAILER FOVAL 0871 MN 8&X1,*&4 FOVAL 0872 RWU 2 FOVAL 0873 WTEX B PASS FOVAL 0874 * FOVAL 0875 WTTRL DCW @1EOR @ FOVAL 0876 WTCNT DCW #5 FOVAL 0877 DCW #52 FOVAL 0878 DCW #4 FOVAL 0879 WTCNT2 DCW @0 @ FOVAL 0880 WTE80 DCW #9 IF 80 CHAR LABEL, GM IN LAST POS FOVAL 0881 DCW #39 FOVAL 0882 DCW @!@ GMARK FOVAL 0883 * FOVAL 0884 ABIT DCW #1 FOVAL 0885 PRC1 DCW 1 FOVAL 0886 REELS DCW 00 FOVAL 0887 EX INITP FOVAL 0888 ******************************************************************* FOVAL 0889 * CARD INPUT, WHEN USED, HERE FOVAL 0890 ******************************************************************* FOVAL 0891 JOB CLOSE FILES, PRINT I/O COUNTS FOVAL 0892 ORG ORGPRO FOVAL 0893 ENDPRG SW QEOT&4 MODIFY WT TO CLOSE FILE FOVAL 0894 MLC @F@,WTTRL-1 CHANGE EOR TO EOF FOVAL 0895 BSS *&8,F FOVAL 0896 MCW CR,WTEX-1 FOVAL 0897 SBR WTEX&3,QLAST FOVAL 0898 BWZ PFT,SWW,1 Q. PRINTED OUTPUT FOVAL 0899 B FINDON&2 FOVAL 0900 PFT SBR SWTOT&3,*&5 SWITCH TO FINAL TOTAL FOVAL 0901 B WI2 FOVAL 0902 MLC FINCNT,COUTT FOVAL 0903 MCW WI2&6,*&7 FOVAL 0904 NOP *,* FOVAL 0905 W FOVAL 0906 FINDON CC 1 FOVAL 0907 CS 332 FOVAL 0908 CS FOVAL 0909 MCW CINPUT,250 INPUT COUNT FOVAL 0910 MCS RECNT,258 FOVAL 0911 BCE *&15,NOISEC, FOVAL 0912 MLC CNOISE,275 FOVAL 0913 MCS NOISEC,282 FOVAL 09132 BCE *&15,WLRC, FOVAL 09134 MLC CWLR,295 FOVAL 09136 MCS WLRC,302 FOVAL 0914 CC T FOVAL 0915 W FOVAL 0916 CS FOVAL 0917 CS FOVAL 0918 MCW COUT,255 FOVAL 0919 CC S FOVAL 0920 W FOVAL 0921 CS FOVAL 0922 CS FOVAL 0923 PCNT MCW NXTABC&X2,X2 FOVAL 0924 MCS COUNT&X2,258 FOVAL 0925 BCE ET,IO&X2,H Q. TAPE FILE FOVAL 0926 QLAST W FOVAL 0927 BWZ PCNT,STATUS&X2,1 Q. LAST FILE FOVAL 0928 CC 1 FOVAL 0929 BWZ *&5,SWP,1 FOVAL 0930 B *&7 FOVAL 0931 CS 180 FOVAL 0932 P FOVAL 0933 P FOVAL 0934 BLC H2888 Q. ANOTHER PROGRAM IN READ FOVAL 09340 BCE *&5,1,, FOVAL 09341 R *-16 FOVAL 09342 SW 1 FOVAL 09343 B 1 FOVAL 09344H2888 NOP 2888 END OF JOB HALT FOVAL 09345 H FOVAL 09346 B H2888 FOVAL 09347* FOVAL 0935 ET MCW IO&6&X2,X3 FOVAL 0936 * FOVAL 0937 SBR X1,IO&7&X2 INIT FORWARD SEARCH FOR FOVAL 0938 ET2 BWZ ET3,0&X1,1 BCE WTAPE,XXX,GM FOVAL 0939 ET5 SBR X1,1&X1 SBR WTAPE2&6 FOVAL 0940 B ET2 FOVAL 0941 ET4 BCE WTAPE CONSTANTS FOR COMPARES FOVAL 0942 ET6 SBR FOVAL 0943 ET3 C 3&X1,ET4&3 CAN BE EQUAL IF BCE WTAPE OR FOVAL 0944 BU ET5 CONSTANT FOVAL 0945 C ET6,8&X1 SO TEST FOR FOLLOWING SBR FOVAL 0946 BU ET5 FOVAL 0947 SBR X1,8&X1 X1 CALLING SEQ FOR WTAPE FOVAL 0948 * FOVAL 0949 MN 8&X1,250 FOVAL 0950 MCW CTAPE,248 FOVAL 0951 SBR WK3,13&X1 Q. IS THIS BLOCK EMPTY FOVAL 09512 C WK3,X3 FOVAL 09514 BE QEOT FOVAL 0952 FILL9 MCW C9,1&X3 SCAN FORWARD TO GM, FOVAL 09520 BCE *&5,2&X3,! Q. GM FOVAL 09521 B *&9 NO FOVAL 09522 BWZ WTAPEL,2&X3,1 Q. GM-WM FOVAL 0953 BCE *&9,2&X3,\ FILL 9 PADDING FOVAL 0954 SBR X3 FOVAL 0955 B FILL9 FOVAL 0956 BCE WTAPEL,3&X3,! Q. PADDING COMPLETED FOVAL 0957 SBR X3 FOVAL 0958 B FILL9 FOVAL 0959 CINPUT DCW @INPUT@ FOVAL 0960 CNOISE DCW @NOISE REC@ FOVAL 0961 COUT DCW @OUTPUT COUNTS@ FOVAL 0962 CR DCW @R@ FOVAL 0963 CTAPE DCW @TAPE@ FOVAL 09632CWLR DCW @WLR@ FOVAL 0964 C9 DCW @9@ FOVAL 0965 END ENDPRG FOVAL