JOB TRUE ADD 0300S ctl 6611 * * Stuff in the preamble * org 333 * * Set up for one-field-per-card format and begin loading * 333start sw 8,12 PROGRAM CHAINING ROUTINE 340reload sw 1 ,, 344 r 1 ,, * * Look for next program -- A in column 80 * 348detail r READ DETAIL OR PROGRAM HEADER 349tptest bce *&5,80,a BRANCH IF HEADER 357bcont b cont CONTINUE PROGRAM 361 cs reload,80 BRANCH TO CHAINING ROUTINE 368 dcw #1 * tapes3 equ 1262 1 IF TESTS ARE READ FROM TAPE tapes1 equ 1268 blank indicates the tape loader taperd equ 1288 tape read routine? tapes2 equ 1398 GM indicates the tape loader * org 377 377 b switch USE WHEN TESTS ARE RUN FROM TAPE 381 org 385 ,, 385 b taperd ,, 389switch nop 0 ,, 393 mcw bcont&3,switch&3 ,, 400begin cs 332 START TEST 404 cs 405 bce titlpr,titlsw,1 BR TO TITLE PRINT ROUTINE IF 1 IN S52 413 cs 80 CLEAR READ AREA 417next b detail BRANCH TO PROGRAM CHAINING ROUTINE 421cont sw 1,78 LOAD PRINT AREA 428 lca 80,299 ,, 435 lca 72,272 ,, 442 sw 221,241 ,, 449 sw 202 ,, 453 bce scope2,13,S BR TO USE SUBTRACT CODE IF S IN 013 461scope1 lca 230,270 LOAD B FIELD 468 a 210,270 ADD WITH LIKE SIGNS 475 bss scope1,B B ON TO SCOPE 480 b test BRANCH TO TEST FOR ERROR 484scope2 lca 230,270 LOAD B FIELD 491 s 210,270 SUBTRACT WITH UNLIKE SIGNS 498 bss scope2,B B ON TO SCOPE 503test c 270,250 TEST FOR ERROR 510 bu errprt BRANCH TO ERROR PRINT ROUTINE IF UNEQ 515 bss corr,c C ON TO CORRECT PRINT ROUTINE 520 b loop BRANCH TO SENSE D dc #1 org 900 900errprt lca error,285 BEGIN ERROR PRINT ROUTINE 907 bss errhlt,E E ON TO ERROR STOP 912 w loop ERROR PRINT 916errhlt h loop ERROR STOP 920 dcw #1 WORD MARK org 950 950corr lca blanks,285 CORRECT PRINT ROUTINE 957 w ,, 958loop bss cont,d D ON TO REPEAT 963 bin next, BRANCH TO READ NEXT RECORD org 1110 1114error dcw @ERROR@ CONSTANTS 1119blanks dcw @ @ ,, 1120 dcw @A FIELD @ ,, 1140 dcw @B FIELD @ ,, 1160 dcw @RESULT SHOULD BE @ ,, 1180 dcw @RESULT IS @ ,, * * Title print routine. Notice that in the original format, * the title and ID are in CC 49-77 of the last card -- the one * that transfers control to the program. * titlsw equ 1252 1 to use title print routine hdrs equ 1120 All programs put headers in 1120-1199 titlex equ 413 All routines must return here after title * org 1200 1200titlpr w Print (space). 1201 sw 49 Set WM for Title and Block No. 1205 lca 77,277 Load Title and Block No. in Print Area. 1212 w Print Title and Block No. 1213 cs 277 Clear Print Area 1217 w Print (space). 1218nohead cw hdrs&20,hdrs&40 Clear Word Marks in second 1225 cw hdrs&60 line stored information. 1229 lca hdrs&69,270 Load second line. 1236 w Print second line. 1237 cs 270 Clear Print Area. 1241 w titlex Print (space) and branch to main program. 1245 dcw #1 end start