Cleanup typos.
authorRichard Cornwell <rcornwell@github.com>
Wed, 11 Apr 2018 03:45:28 +0000 (23:45 -0400)
committerRichard Cornwell <rcornwell@github.com>
Wed, 11 Apr 2018 03:45:28 +0000 (23:45 -0400)
16 files changed:
src/clkcss.mac
src/clock1.mac
src/common.mac
src/copy.mac
src/dlsint.mac
src/dskint.mac
src/dskser.mac
src/dtasrn.mac
src/dtcsrn.mac
src/eddt.mac
src/errcon.mac
src/onceb.mac
src/schedb.mac
src/scnsrf.mac
src/segcon.mac
src/sysini.mac

index f5b3b2e..0bc20dd 100644 (file)
@@ -1,6 +1,6 @@
-TITLE  CLKCSS - SCHEDULING ALOGRITHM FOR NON-SWAPPING SYSTEMS\r
+TITLE  CLKCSS - SCHEDULING ALGORITHM FOR NON-SWAPPING SYSTEMS\r
 SUBTTL T. HASTINGS/TH TS3.17 6 SEP 67 V001\r
-XP     VOLKCS,001\r
+XP     VCLKCS,001\r
                ;PUT VERSION NUMBER IN GLOB LISTING AND LOADER STORAGE MAP\r
 \r
 \r
@@ -9,16 +9,16 @@ XP    VOLKCS,001
 ;CALLED WHEN CURRENT JOB IS IN EXEC MODE AND:\r
 ;      1. JUST STARTED TO WAIT FOR IO\r
 ;      2. JUST STARTED TO WAIT FOR A BUSY SHARABLE DEVICE\r
-;      3. RETURNING TO USER AFTER TYPING CONTROL C\r
-;      4. RETURNING TO USER AFTER CLOCK TRIED TO INTERRUPT\r
+;      3. RETURNING TO USER MODE AFTER TYPING CONTROL C\r
+;      4. RETURNING TO USER MODE AFTER CLOCK TRIED TO INTERRUPT\r
 ;              CURRENT JOB WHILE IT WAS IN EXEC MODE\r
-;      5. AND ERROR OCCURRED IN CURRENT JOB\r
+;      5. AN ERROR OCCURRED IN CURRENT JOB\r
 \r
 ;CALL: SETOM TIMEF             ;IF CLOCK HAS GONE OFF SINCE LAST CALL\r
 ;      PUSHJ PDP,NXTJOB\r
 ;      RETURN WITH NEXT JOB TO RUN IN AC ITEM\r
 \r
-;INTIALIZE SCHEDULER(CALLED FROM IOINI1 BEFORE ALL OTHER\r
+;INITIALIZE SCHEDULER(CALLED FROM IOINI1 BEFORE ALL OTHER\r
 ;      DEVICES ARE INITIALIZED)\r
 \r
 INTERNAL NXTINI\r
@@ -29,7 +29,7 @@ NXTINI:       MOVSI TAC,-NQUEUE       ;NO. OF QUEUES
                                ;IE NO JOB WAITING OR USING DEVICE\r
        AOBJN TAC,.-2           ;OTHER DEVICE INITIALIZATION\r
        POPJ PDP,               ;MAY CHOOSE TO SET REQUEST TO MORE\r
-                               ;NEG. VALUE IF MORE THEN ON JOB CAN\r
+                               ;NEG. VALUE IF MORE THAN ON JOB CAN\r
                                ;USE DEVICE AT ONCE\r
 \fINTERNAL NXTJOB\r
 INTERNAL FTTRPSET,FTDISK\r
@@ -44,29 +44,29 @@ C=DAT               ;COUNT OF JOB LEFT TO SCAN
 XCKCSS:\r
 NXTJOB:        PUSHJ PDP,CHKSHF        ;SHUFFLE CORE IF NEEDED\r
        SETZM T\r
-       SKIPN ITEM,JOB          ;CURRENT JOB NO.. IS IT NULL JOB?\r
+       SKIPN ITEM,JOB          ;CURRENT JOB NO., IS IT NULL JOB?\r
        JRST NXT0               ;YES, DO NOT DECREMENT QUANTUM RUN TIME\r
        SKIPE TIMEF             ;NO, IS THIS A CLOCK INTERRUPT CALL?\r
        SOSA T,JBTSTS(ITEM)     ;YES, DECREMENT QUANTUM RUN TIME\r
                                ;IN JOB STATUS WORD\r
        SKIPA T,JBTSTS(ITEM)    ;NO, JUST PICKUP STATUS WORD\r
-       TRNE T,-1               ;REDUCE TIME TO ZERO YET?\r
+       TRNE T,-1               ;REDUCED TIME TO ZERO YET?\r
        JRST NXT1               ;NO\r
        HRR T,RNQUNT            ;YES, RESET FOR RUN QUEUE QUANTUM\r
 NXT0:  SETOM RNAVAL            ;FLAG TO SCAN RUN QUEUE FOR DIFFERENT JOB\r
 NXT1:  HRRM T,JBTSTS(ITEM)     ;STORE MODIFIED QUANTUM RUN TIME\r
        MOVEI Q,MAXQ            ;HIGHEST PRIORITY QUEUE SCANNED FIRST\r
 NXT2:  SKIPN AVALTB(Q)         ;SHOULD THIS QUEUE BE SCANNED FOR A RUNABLE JOB?\r
-NXT3:  SOJGE Q,NXT2            ;NO, LOOK AT NEXT LOWEST PRIORITY QUEUE\r
-       JUMPL Q,NXT7            ;YES, LOOKED AT QUEUES NQUEUE-1..,0?\r
+NXT3:  SOJGE Q,NXT2            ;NO. LOOK AT NEXT LOWEST PRIORITY QUEUE\r
+       JUMPL Q,NXT7            ;YES, LOOKED AT QUEUES NQUEUE-1...0?\r
        MOVE Q1,Q               ;MOVE QUEUE INDEX TO PROPER POS.\r
        ROT Q1,^D17-JWPOS       ;TO MATCH JOB STATUS WORD\r
-       MOVEI C,JOBMAX          ;NO, SACN ALL JOBS(EXECEPT NULL JOB)\r
+       MOVEI C,JOBMAX          ;NO, SCAN ALL JOBS(EXCEPT NULL JOB)\r
        AOSA ITEM,JOBP(Q)       ;SCAN ALL OTHER JOBS IN THIS QUEUE FIRST\r
 \r
 NXT4:  SETOM RNAVAL            ;FLAG RUN QUEUE BEING SCANNED\r
 \r
-NXT5:  CAIL ITEM,JOBN          ;GREATER THEN HIGHEST JOB NO.?\r
+NXT5:  CAIL ITEM,JOBN          ;GREATER THAN HIGHEST JOB NO.?\r
        MOVEI ITEM,1            ;YES, RESET TO 1(SKIP NULL JOB)\r
        HLRZ T,JBTSTS(ITEM)     ;IS JOB RUNABLE?\r
        TRZ T,RUNMSK+CMWB       ;MASK OUT JOB STATUS BITS WHICH DO NOT MATTER\r
@@ -78,18 +78,18 @@ NXT6:       SOJLE C,NXT3            ;NO IT IS NOT, SCANNED ALL JOBS YET?
 \r
 NXT7:  MOVEI C,JOBN            ;SCAN ALL JOBS INCLUDING POSSIBLY NULL JOB\r
        MOVE ITEM,JOB           ;STARTING WITH LAST JOB TO RUN\r
-       SKIPN Q1,RNAVAL         ;HAS RUN QUEUE(Q,Q1=7) BEEN SCANNED?\r
-       AOJA Q,NXT4             ;NO, FLAG THAT IS HAS AND SCAN RUN QUEUE(Q,Q1=2)\r
+       SKIPN Q1,RNAVAL         ;HAS RUN QUEUE(Q,Q1=0) BEEN SCANNED?\r
+       AOJA Q,NXT4             ;NO, FLAG THAT IS HAS AND SCAN RUN QUEUE(Q,Q1=0)\r
        SETZB ITEM,RNAVAL       ;YES, CLEAR FLAG, SET NULL JOB TO RUN\r
        POPJ PDP,               ;RETURN\r
 \r
 NXT8:\r
 IFN FTTRPSET,<\r
        EXTERNAL STOPTS\r
-       MOVE T,STOPTS                   ;HAS A TRPSET UUO BEEN DONE FOR JOB1\r
+               MOVE T,STOPTS           ;HAS A TRPSET UUO BEEN DONE FOR JOB1\r
                                        ;WITH NON ZERO AC?\r
-       CAIE ITEM,1                     ;IS THIS JOB 1?\r
-       JUMPN T,NXT6                    ;KEEP LOOKING IF NOT JOB1 AND\r
+               CAIE ITEM,1             ;IS THIS JOB 1?\r
+               JUMPN T,NXT6            ;KEEP LOOKING IF NOT JOB1 AND\r
                                        ;STOPTS FLAG SET\r
 >\r
 \r
@@ -119,8 +119,8 @@ DEFINE X(A,B)
        ZZ=0\r
        QUEUES\r
        LOC=ZZ\r
->\r
 \r
+>\r
 IFE FTCHECK+FTMONP,<\r
 ;APPROPRIATE ENTRY IS NON-ZERO WHEN SCHEDULER SHOULD LOOK\r
 ;AT THAT QUEUE TO FIND A JOB TO RUN\r
@@ -158,9 +158,9 @@ DEFINE X(A)
 \r
 JOBP:   REPEAT NQUEUE,<                EXP 1>\r
 \f\r
-;SHARABLE DEVICE REQUEST TABLE(GENERAL;IZED FOR OTHER QUEUES TOO)\r
+;SHARABLE DEVICE REQUEST TABLE(GENERALIZED FOR OTHER QUEUES TOO)\r
 ;CONTAINS THE NUMBER OF JOBS WAITING TO USE SHARABLE DEVICE\r
-;WSREG AND RNREG ARE UNUSED\r
+;WSREQ AND RNREQ ARE UNUSED\r
 \r
 DEFINE X(A,B)\r
 <      A'REQ:  0\r
@@ -174,7 +174,7 @@ REQTAB: QUEUES
 \f;QUANTUM RUNNING TIME FOR EACH QUEUE IN JIFFIES(CLOCK TICKS)\r
 \r
 DEFINE X(A,B)\r
-<      A'QUNT: EXP 2\r
+<      A'QUNT: EXP B\r
        INTERNAL A'QUNT\r
 >\r
 \r
index 67292ba..92a704e 100644 (file)
@@ -1,5 +1,5 @@
-TITLE  CLOCK1 - CLOCK, CONTEXT SWITCHING, AND JOB STARTING AND STOP ROUTINES - V412\r
-SUBTTL APRINT TH/TH/CHW   TS  20 MAY 69\r
+TITLE  CLOCK1 - CLOCK, CONTEXT SWITCHING, AND JOB STARTUP AND STOP ROUTINES - V412\r
+SUBTTL APRINT TH/TH/CHW  TS  20 MAY 69\r
 XP VCLOCK1,412\r
                ; PUT VERSION NUMBER IN GLOB LISTING AND LOADER STORAGE MAP\r
 \r
@@ -18,7 +18,7 @@ EXTERNAL JOBDAT,JOBTPC,JOBCNI,JOBAPR,APRERR,SCHEDF
 EXTERNAL APRILM,COMMAN,CONMES,DEVCHK,DEVSRC,ERROR,INLMES\r
 EXTERNAL RELEA9,CRSHWD,CRASHX\r
 \r
-INTERNAL       FTTTYSER        ;THIS ROUTINE MAY BE ASSEMBLED TO WORD  EITHER\r
+INTERNAL       FTTTYSER        ;THIS ROUTINE MAY BE ASSEMBLED TO WORK WITH  EITHER\r
                                ; THE OLD SCNSER OR THE NEW TTYSER.\r
 \r
 \r
@@ -31,10 +31,10 @@ INTERNAL UUO1
 IFE FTCHECK+FTMONP,<\r
        INTERN CLOCK,DAMESS\r
        EXTERN CIPWTM\r
-APRCON: 231000         ;MONITOR ENABLED CPU FLAGS\r
-APRIN1: 0              ;USER ENABLED CPU FLAGS\r
-CLKS17: 0              ;PLACE TO SAVE AC17 ON CLOCK INTERRUPT\r
-DAMESS: ASCIZ /-JAN-/\r
+APRCON:        231000          ;MONITOR ENABLED CPU FLAGS\r
+APRIN1:        0               ;USER ENABLED CPU FLAGS\r
+CLKS17:        0               ;PLACE TO SAVE AC17 ON CLOCK INTERRUPT\r
+DAMESS:        ASCIZ /-JAN-/\r
 CLOCK: POINT 36,CIPWTM,35      ;BYTE POINTER TO CLOCK REQ QUEUE\r
 >\r
 \f      INTERN APRINT\r
@@ -42,11 +42,11 @@ CLOCK:      POINT 36,CIPWTM,35      ;BYTE POINTER TO CLOCK REQ QUEUE
 APRINT:        JRST APRPAR             ;ALWAYS CHECK APR AND PI DEVICES\r
        JRST .                  ;CHECK OTHER DEVICES\r
 \r
-APRPCL: CONO PI,240000         ;TURN OFF MEM PAR, ERR, AND\r
+APRPCL:        CONO PI,240000          ;TURN OFF MEM PAR. ERR, AND\r
                                ; ENABLE FOR MEM PAR AND TRY AGAIN\r
                                ; (DO NOT TURN OFF POWR FAIL AS THAT PERMANENTLY\r
                                ; DISABLES POWR FAIL INTERRUPT)\r
-APRPAR: CONSZ PI,600000                ;MEM PARITY ERROR OR POWER FAILURE?\r
+APRPAR:        CONSZ PI,600000         ;MEM PARITY ERROR OR POWER FAILURE?\r
        HALT APRPCL             ;YES, HALT MACHINE, CLEAR FLAGS AND TRY AGAIN\r
                                ; ON CONTINUE\r
        CONSO APR,@APRCON       ;INTERRUPT FOR APR?\r
@@ -54,8 +54,8 @@ APRPAR: CONSZ PI,600000               ;MEM PARITY ERROR OR POWER FAILURE?
                                ; RH MODIFIED EACH TIME USER RUNS IN CASE HE IS\r
                                ; ENABLED FOR PC CHANGE OR AR OVF\r
        JRST APRINT+1           ;NO,CHECK OTHER DEVICES ON THIS PI CHANNEL\r
-       SKIPE CRSHWD            ;IS LOC, 30 CLOBBERED?\r
-       JRST CRASHX             ;YES ~ GO SAVE AC'S & STATE OF ALL DEVS,\r
+       SKIPE CRSHWD            ;IS LOC. 30 CLOBBERED?\r
+       JRST CRASHX             ;YES - GO SAVE AC'S & STATE OF ALL DEVS.\r
        CONSO APR,001000        ;YES, IS IT CLOCK?\r
        JRST APRER              ;NO, GO CHECK ERROR FLAGS\r
        AOS TIME                ;YES, INCREMENT TIME OF DAY\r
@@ -75,7 +75,7 @@ APRER1:       CONO APR,1000+APRCHN    ;NOW CLEAR CLOCK FLAG
        EXCH TAC,APRCHL         ;SAVE TAC, GET PC\r
        TLNE TAC,USRMOD         ;IS PC FROM USER MODE?\r
        JRST APRER4             ;YES, GO TRAP TO HIM\r
-       JRST APRER2             ;NO. GO CHECK IN CASE ALSO A SERIOUS ERROR\r
+       JRST APRER2             ;NO, GO CHECK IN CASE ALSO A SERIOUS ERROR\r
 \f;OTHER APR INTERRUPTS BESIDES CLOCK\r
 \r
 APRER: EXCH TAC,APRCHL         ;SAVE TAC, GET PC\r
@@ -93,7 +93,7 @@ APRER4:       EXCH JDAT,JOBDAT        ;YES, SAVE JDAT, GET CURRENT JOB DATA AREA ADR.
        HRRM TAC,APRCON         ;PD OVF,ILM,NXM, AND CLOCK\r
        HRR TAC,JOBAPR(JDAT)    ;GET USER LOC TO TRAP TO\r
        EXCH JDAT,JOBDAT        ;RESTORE JDAT,JOBDAT\r
-       CONO APR,440+APRCHN     ;DISBALE FOV, AROVF IN CASE ON\r
+       CONO APR,440+APRCHN     ;DISABLE FOV, AROVF IN CASE ON\r
                                ;SO USER MUST REENABLE WITH SETAPR UUO\r
 APRER3:        TLZ     TAC,440000      ;CLEAR FOV (PC CHANGE ON PDP-6) AND AR OVF FLAGS\r
                                ; SO INTERRUPT MAY BE DISMISSED\r
@@ -101,18 +101,18 @@ APRER3:   TLZ     TAC,440000      ;CLEAR FOV (PC CHANGE ON PDP-6) AND AR OVF FLAGS
        CONO APR,430110+APRCHN  ;CLEAR ALL ERROR FLAGS WHICH CAN CAUSE INTERRUPTS\r
                                ; EXCEPT CLOCK FLAG(ELSE LOSE TIME OF DAY)\r
        JEN @APRCHL             ;DISMISS INTERRUPT\r
-\fAPRER2: CONSO APR,NXM!ILM!POV! ;DOES EXEC CARE?\r
-       JRST    APRER3          ;NO. IGNORE EXEC OVERFLOW (MUST BE FOV OR AROVF\r
+\fAPRER2:       CONSO   APR,NXM!ILM!POV ;DOES EXEC CARE?\r
+       JRST    APRER3          ;NO. IGNORE EXEC OVERFLOW (MUST BE FOV OR AROVF)\r
        MOVEM   TAC,APRPC       ;STORE ERROR PC FOR CLK CHANNEL\r
        CONI APR,APRERR         ;STORE ERROR FLAGS\r
                                ; (ALSO USED AS ERROR FLAG)\r
        SETOM CLKFLG            ;SET FLAG FOR CLK INTERRUPT\r
        SETOM SCHEDF            ;FLAG THAT RESCHEDULING IS NEEDED\r
-                               ; (EVEN THROUGH PC MAY BE IN EXEC MODE)\r
+                               ; (EVEN THOUGH PC MAY BE IN EXEC MODE)\r
        CONO PI,REQCLK          ;REQUEST INTERRUPT IN CLK CHANNEL\r
        CONSZ   APR,ILM         ;WAS ERROR ILLEGAL MEMORY(FROM USER)?\r
        HRRI    TAC,0           ;YES,CLEAR RH OF PC,SO A SECOND ILM INTERRUPT\r
-                               ; WILL NOT OCCUR IF THIS IS A WILD(AND A PDP-10)\r
+                               ; WILL NOT OCCUR IF THIS IS A WILD PC(AND A PDP-10)\r
 IFN FTHALT,<\r
        CONSZ   PI,003400       ;ARE ANY PI'S IN PROGRESS OF LOWER PRIORITY THAN APR?\r
                                ; (PDP-10 BITS ONLY)\r
@@ -125,10 +125,10 @@ IFN FTHALT,<
 ;THIS ROUTINE RUNS ON THE LOWEST PRIORITY PI CHANNEL AND AT UUO LEVEL\r
 ;TO CAUSE AN INTERRUPT ON CLK CHANNEL:\r
 ;      SETOM CLKFLG    ;FLAG THAT INTERRUPT HAS BEEN REQUESTED\r
-;      CONO PI,CLKREQ  ;REQUEST PI INTERRUPT ON LOWEST PI CHANNEL\r
+;      CONO PI,CLKREQ  ;REQUEST PI INTERUPT ON LOWEST PI CHANNEL\r
 ;THE FOLLOWING OTHER FLAGS MUST ALSO BE SET\r
 ;APRERR-APR DETECTED ERROR IN CURRENT JOB\r
-;SCHEDF-RESCHEDULING MUST TAKE PLACE(EVEN THROUGH PC IN EXEC MODE)\r
+;SCHEDF-RESCHEDULING MUST TAKE PLACE(EVEN THOUGH PC IN EXEC MODE)\r
 ;TIMEF-APR CLOCK HAS TICKED ON HIGH PRIORITY CHANNEL\r
 ;SEE APRSER AND RUNCSS TO SEE HOW THIS ROUTINE IS CALLED\r
 \r
@@ -140,9 +140,9 @@ IFN FTHALT,<
 ;IF THE CURRENT JOB IS IN EXEC MODE THE ABOVE 4 TASKS ARE\r
 ;DELAYED UNTIL THE CURRENT JOB ENTERS A STOPPABLE STATE: I.E., UNTIL\r
 ;      1. JOB STARTS TO WAIT FOR A BUSY SHARABLE DEVICE\r
-;      2. JOB STARTS TO WAIT FOR A IO TO COMPLETE\r
+;      2. JOB STARTS TO WAIT FOR IO TO COMPLETE\r
 ;      3. CONTROL ABOUT TO RETURN TO USER MODE\r
-;THEN CLK SERVICE IS ENTERED AT THE UU0 LEVEL\r
+;THEN CLK SERVICE IS ENTERED AT THE UUO LEVEL\r
 \r
 STOR=DAT\r
 T=TAC\r
@@ -157,7 +157,7 @@ JA=JDAT
 ;      CONO PI,PIOFF\r
 ;      IDPB AC,CLOCK   ;STORE CLOCK REQUEST IN QUEUE\r
 ;      CONO PI,PION    ;TURN PI BACK ON\r
-;C(AC)=XWD ADDRESS,NO. OF CLOCK TICKS*DATA*10000\r
+;C(AC)=XWD ADDRESS,NO. OF CLOCK TICKS+DATA*10000\r
 ;WHERE DATA IS 6 BITS OF INFO NEEDED WHEN TIME RUNS OUT\r
 ;CLK SERVICE WILL PUSHJ PDP,ADR\r
 ;WHEN TIME RUNS OUT WITH DATA RIGHT JUSTIFIED IN AC TAC\r
@@ -181,7 +181,7 @@ WSCHED:     POP PDP,USRPC           ;SAVE PC IN PROTECTED PART OF SYSTEM DATA
        MOVEI AC3,JOBDAC(JDAT)  ;SAVE ACS 0-16 IN DUMP ACS\r
        BLT AC3,JOBD16(JDAT)    ;IN CURRENT JOB DATA AREA\r
        MOVEI PDP,NULPDL        ;NULL JOB PD LIST\r
-       HRLI PDP,MJOBP1         ;USED TO CALL SCHEDULER AND COMMAND DECODE\r
+       HRLI PDP,MJOBP1         ;USED TO CALL SCHEDULER AND COMMAND DECODER\r
                                ; OTHERWISE GET PD OUF\r
 \r
        JRST RSCHED             ;GO RESCHEDULE\r
@@ -230,12 +230,12 @@ CLKERR:   SKIPN 17,JOBDAT         ;CURRENT JOB DATA AREA, IS THERE ONE?
        MOVEI 16,JOBDAC(17)     ;SOURCE=0,DESTINATION=DUMP AC 0\r
        BLT 16,JOBD15(17)       ;SAVE ACS 0-15 JUST BELOW AC 16\r
        MOVE TAC,CLKS17         ;NOW SAVE 17 IN JOB DATA AREA\r
-       MOVEM TAC,JOBD17(17)    ;ALONE WITH OTHER ACS\r
+       MOVEM TAC,JOBD17(17)    ;ALONG WITH OTHER ACS\r
        MOVEI PDP,NULPDL        ;SET UP PUSH DOWN LIST IN NULL JOB DATA\r
                                ; AREA IN LOWER CORE\r
        HRLI PDP,MJOBP1         ;-LENGTH+1(LEAVE ROOM FOR UUO PC)\r
        SKIPE TAC,APRERR        ;IT THIS AN ERROR INTERRUPT?\r
-       PUSHJ PDP,APRILM        ;YES, GO PROCESS ERROR, APRILM WILL CLEAR APRERR\r
+       PUSHJ PDP,APRILM        ;YES, GO PROCESS ERROR,APRILM WILL CLEAR APRERR\r
                                ; FLAG IMMEDIATELY\r
 \fEXTERNAL COMCNT,NXTJOB,HNGTIM,POTLST,LSTWRD\r
 EXTERNAL TIMEF,APRERR,CLKFLG,SCHEDF,JOB,PMONTB\r
@@ -254,8 +254,8 @@ IFN FTTIME,<
        JRST    INCTIM          ;NO-PROCEED NORMALLY\r
        AOS     LSTWRD          ;YES-INCREMENT LOST TIME COUNT\r
        SETZM   POTLST          ;AND CLEAR LOST TICK INDICATION\r
-INCTIM:        AOS RTIME(ITEM)         ;INCR, CURRENT JOB INCREMENTAL RUN TIME\r
-       AOS TTIME(ITEM)         ;INCR, CURRENT JOB TOTAL RUN TIME\r
+INCTIM:        AOS RTIME(ITEM)         ;INCR. CURRENT JOB INCREMENTAL RUN TIME\r
+       AOS TTIME(ITEM)         ;INCR. CURRENT JOB TOTAL RUN TIME\r
 >\r
 IFN FTKCT,<\r
        EXTERN USRREL,JBTKCT\r
@@ -273,7 +273,7 @@ IFN FT2REL,<
        MOVE TAC1,TIME\r
        CAMGE TAC1,MIDNIT       ;GONE PAST MIDNITE?\r
        JRST CIP2               ;NO\r
-CIP3:  SETZB IOS,TIME          ;YES, RESET TIME OF DAY\r
+CIP3:  SETZB IOS,TIME          ;YES. RESET TIME OF DAY\r
        AOS TAC,THSDAT          ;UPDATE DAY\r
        IDIVI TAC,^D31\r
        DIVI IOS,^D12           ;NO.\r
@@ -300,32 +300,32 @@ CIP4:     CAIN STOR,CIPWTM1       ;END YET?
        POP PDP, STOR\r
        SOJA STOR, CIP4         ;GO BACK FOR MORE REQUESTS\r
 \r
-CIP5:  SOSG HNGTIM             ;DECREMENT HUNG ID DEVICE\r
-       PUSHJ PDP,DEVCHK        ;GO CHECK FOR HUNG ID DEVICES\r
+CIP5:  SOSG HNGTIM             ;DECREMENT HUNG IO DEVICE\r
+       PUSHJ PDP,DEVCHK        ;GO CHECK FOR HUNG IO DEVICES\r
        SKIPE COMCNT            ;ANY COMMANDS TO PROCESS?\r
        PUSHJ PDP,COMMAND       ;YES, CALL COMMAND DECODER\r
 CIP6:  PUSHJ PDP,NXTJOB        ;CALL SCHEDULER\r
        SETZM CLKFLG            ;CLEAR CLK INTERRUPT FLAG\r
                                ; SET ON ALL FORCED CLK INTERRUPTS\r
-       SETZM TIMEF             ;CLEAR TIME0 (1 JIFFY) INTERRUPT FLAG,\r
+       SETZM TIMEF             ;CLEAR TIMED (1 JIFFY) INTERRUPT FLAG.\r
        SETZM SCHEDF            ;CLEAR FORCED SCHEDULING FLAG\r
        CAMN ITEM,JOB           ;IS NEXT JOB SAME AS LAST ONE?\r
        JRST CIP8               ;YES, JUST RESTORE ACS AND DISMISS\r
-\f;DIFFERENT JOB. SAVE SOFTWARE STATE(HARDWARE ALREADY SAVED)\r
+\f;DIFFERENT JOB, SAVE SOFTWARE STATE(HARDWARE ALREADY SAVED)\r
 \r
 EXTERNAL JOB,JOBDAT,JOBPRT,USRPRT,USRHCU,JOBJDA\r
 \r
        SKIPN JA,JOBDAT         ;NULL JOB OR CORE 0 ON OLD JOB?\r
-       JRST CIP7               ;YES, DO NOT SAVE SOFTWARE STATE\r
-       MOVEI T,JOBPRT(JA)      ;DEST,#FIRST LOC PROTECTED FROM USER\r
-       HRLI T,USRPRT           ;SOUR,#SYSTEM DATA STORAGE FOR CURRETN JOB\r
+       JRST CIP7               ;YES, DO NO SAVE SOFTWARE STATE\r
+       MOVEI T,JOBPRT(JA)      ;DEST.=FIRST LOC PROTECTED FROM USER\r
+       HRLI T,USRPRT           ;SOUR.=SYSTEM DATA STORAGE FOR CURRETN JOB\r
        SKIPL T1,USRHCU         ;MOVE NO. OF OLD USER IO CHAN. IN USE\r
        CAILE T1,17             ;MUST BE 17 OR LESS(IO MIGHT\r
                                ; CLOBBER IF ADDRESS CHECKING MISSES)\r
        MOVEI T1,0              ;MOVE ONLY CHN 0 IF NEG, OR GR 17\r
                                ; SAVGET SETS LH NEGATIVE DURING IO AS A FLAG\r
                                ; SINCE IT DOES IO INTO AND OUT OF\r
-                               ; CHANNEL LOCATIONS (JOBJDA+1..,JOBJDA+17),\r
+                               ; CHANNEL LOCATIONS (JOBJDA+1...JOBJDA+17).\r
        ADD JA,T1               ;RELOCATE TO USER AREA\r
        BLT T,JOBJDA(JA)        ;MOVE TO USER JOB DATA AREA\r
                                ; STOP WITH USER CHANNEL 0-1+C(USRHCU)\r
@@ -345,13 +345,13 @@ IFN FTHALT,<
        SKIPN JA                ;DOES JOB HAVE CORE ASSIGNED?\r
        HALT .                  ;NO -ELSE CLOBBER MONITOR\r
 >\r
-       MOVEI T,USRPRT          ;NO, DEST,#PROTECTED AREA IN MONITOR\r
-       HRLI T,JOBPRT(JA)       ;SOURCE#FIRST PROTECT LOC. IN JB  DATA AREA\r
+       MOVEI T,USRPRT          ;NO, DEST.=PROTECTED AREA IN MONITOR\r
+       HRLI T,JOBPRT(JA)       ;SOURCE=FIRST PROTECTED LOC. IN JB  DATA AREA\r
        SKIPL T1,JOBHCU(JA)     ;MOVE NO. OF USER IO CHAN. IN USE\r
        CAILE T1,17             ;MUST BE 17 OR LESS(IO MIGHT CLOBBER\r
                                ; IF ADRRESS CHECKING MISSES\r
        MOVEI T1,0              ;MOVEJUST CHAN 0 IF NEG. OR GREATER THAN 17\r
-                               ; SAVEGET SETS NUG,DURING IO\r
+                               ; SAVEGET SETS NEG.DURING IO\r
        BLT T,USRJDA(T1)        ;AND MOVE INTO MONITOR\r
 \r
 ;RESTORE HARDWARE STATE OF CURRENT JOB\r
@@ -364,18 +364,18 @@ CIP8:     SKIPN JA,JBTDAT(ITEM)   ;JOB DATA AREA(IS THERE ONE?)
                                ; (ON CLK PI OR HIGHER)\r
        JRST CLKERR             ;YES, GO PROCESS ERROR\r
        SKIPN JOB               ;IS THIS JOB THE NULL JOB?\r
-       SKIPN NULERR            ;YES, HAS AN ERROR OCCURED WHILE NULL JOB\r
+       SKIPN NULERR            ;YES, HAS AN ERROR OCCURRED WHILE NULL JOB\r
                                ; WAS RUNNING? IF YES, RESTORE ACS\r
                                ; ILL UUO LOSED ACS\r
        JEN @USRPC              ;DISMISS CHANNEL(IF INTERRUPT IN PROGRESS)\r
 \r
 ;THE NULL JOB\r
-;RUNS IN USER MODE WITH PC=1 AND COUNTS AND AC 0\r
+;RUNS IN USER MODE WITH PC=1 AND COUNTS IN AC 0\r
 \r
 EXTERNAL APRNUL,TIME,THSDAT,MIDNIT,NULERR\r
 \r
 NULJB:\r
-IFN FTCHECK,<EXTERNAL MONPRTR,MONSUM,CHECK\r
+IFN FTCHECK,<EXTERNAL MONPTR,MONSUM,CHECK\r
        MOVE TAC,MONPTR\r
        PUSHJ PDP,CHECK\r
        CAME TAC1,MONSUM\r
@@ -391,7 +391,7 @@ IFN FTCHECK,<EXTERNAL MONPRTR,MONSUM,CHECK
                                ; WHILE CLK IN PROGRESS\r
                                ; CATCH THEM NEXT CLK INTERRUPT\r
        MOVE 1,[AOJA 0,1]       ;INSTR. TO AC1\r
-       JRST 11,1               ;DISMISS IF INTERUPT IN PROGRESS.\r
+       JRST 11,1               ;DISMISS IF INTERUPT IN PROGRESS\r
 \f;ROUTINE TO SET HARDWARE AND SOFTWARE RELOCATION INFORMATION FOR CURRENT USER\r
 ;CALLED FROM:\r
 ;      CLOCK ROUTINE WHEN NEW USER IS DIRRERENT FROM OLD USER\r
@@ -401,7 +401,7 @@ IFN FTCHECK,<EXTERNAL MONPRTR,MONSUM,CHECK
 ;      CALL RESET UUO\r
 ;      CALL SETUWP UUO\r
 \r
-;CALL: STORE RELOCATION AND PROTECTION FOR LOW SEQ IN JOBADR(JOB NUMBER)\r
+;CALL: STORE RELOCATION AND PROTECTION FOR LOW SEG IN JOBADR(JOB NUMBER)\r
 ;      STORE LENGTH-1 AND ABS ORIGIN FOR HIGH SEG IN JBTADR(HIGH SEG NO)\r
 ;      (MOVE ITEM,JOB NUMBER - IF CALLING SETRL1)\r
 ;      PUSHJ PDP,SETREL OR SETRL1\r
@@ -414,7 +414,7 @@ SETREL:     MOVE ITEM,JOB           ;CURRENT JOB NUMBER
 SETRL1:        MOVE PROG,JBTADR(ITEM)  ;XWD PROTECTION,RELOCATION FOR LOW SEG\r
        MOVEM PROG,JOBADR       ;SAVE TO MAKE UUO HANDLER FASTER\r
        HLRZM PROG,USRREL       ;SAVE PROTECTION FOR ADDRESS CHECKING\r
-                               ; (HIGHEST LEGAL REL ADDRES FOR CURRENT USER IN LOW SET)\r
+                               ; (HIGHEST LEGAL REL ADDRES FOR CURRENT USER IN LOW SEG)\r
 IFN JDAT-PROG,<\r
        MOVE JA,JBTDAT(ITEM)    ;LOC OF JOB DATA AREA\r
        MOVEM JA,JOBDAT         ;SAVE IT TOO FOR UUO HANDLER\r
@@ -446,27 +446,27 @@ IFE FT2REL,<
        SKIPN PROG,JOBADR       ;RESTORE PROG TO XWD PROT,RELOC FOR JUST LOW SEG\r
                                ; (IS THERE ONE)?\r
        TDZA TAC,TAC            ;NO, MUST BE NULL JOB OR CORE0 OR KJOB\r
-                               ; SET FOR NO SPECIAL INTERRUTPS TO USER\r
+                               ; SET FOR NO SPECIAL INTERRUPTS TO USER\r
        MOVE TAC,JOBENB(JA)     ;USER APR CONSO FLAGS (THE ONES HE WANTS TO HANDLE\r
                                ; FALL INTO SETAPR ROUTINE\r
 \r
 \r
 ;ROUTINE TO ENABLE/DISABLE APR FOR TRAPPING TO USER AND EXEC\r
-;CALL: MOVE TAC, APR, CONSO FLAGS FOR USER TRAPPING\r
-;      PUSHJ PDP,SETAPR\r
-;      RETUNRN WITH APR RESET AND INTERRUPT LOCATION CONS'S SET\r
+;CALL: MOVEI TAC, APR CONSO FLAGS FOR USER TRAPPING\r
+;      PUSHJ POP,SETAPR\r
+;      RETURN WITH APR RESET AND INTERRUPT LOCATION CONSO'S SET\r
 \r
        INTERN SETAPR\r
        EXTERN APRFOV\r
 \r
-SETAPR: ANDI TAC,231010+APRFOV         ;MASK OUT ALL BUT PD OVF, ILL MEM, NXM,\r
+SETAPR:        ANDI TAC,231010+APRFOV          ;MASK OUT ALL BUT PD OVF, ILL MEM, NXM,\r
                                ; CLOCK, FOV(ONLY PDP-10), AND AROVF CONSO FLAGS\r
                                ; FOV=PC CHANGE ON PDP-6 WHICH IS NEVER ALLOWED\r
                                ; UNDER TIME SHARING BECAUSE IT TRAPS MONITOR TOO\r
        HRLS TAC                ;PRESERVE USER BITS IN LH\r
        TRO TAC,231000          ;MAKE SURE MONITOR ALWAYS LOOKING FOR\r
-                               ; PD OVF, IL;M, NXM, CLOCK FLAGS\r
-       MOVE TAC1,TAC           ;DUPLICATE BITS IN TAC1 FOR CONO TO APR\r
+                               ; PD OVF, ILM, NXM, CLOCK FLAGS\r
+       MOVE TAC1,TAC           ;DUPLICATE BITS IN TAC1 FOR CONO TO APR.\r
        XORI TAC1,110           ;COMPLEMENT FOV(PDP-10 ONLY) AND AROV FLAGS\r
        ADDI TAC1, 330          ;SET DISABLE OR ENABLE FOR EACH\r
        ANDI TAC1,660           ;MASK OUT ALL BUT DISABLE/ENABLE\r
@@ -480,7 +480,7 @@ SETAPR: ANDI TAC,231010+APRFOV              ;MASK OUT ALL BUT PD OVF, ILL MEM, NXM,
                                ; FOV(PDP-10 ONLY) AND AR OVF SEPARATELY\r
        CONO PI,PION            ;ENABLE PI'S AGAIN\r
        POPJ PDP,\r
-\fSUBTTL        RUNCSS - RUN CONTROL(STATRING AND STOPPING OF JOBS)\r
+\fSUBTTL        RUNCSS - RUN CONTROL(STARTING AND STOPPING OF JOBS)\r
 \r
 ;RUN CONTROL IS A COLLECTION OF ROUTINES WHICH\r
 ;SET AND CLEAR BITS IN THE JOB STATUS WORDS OF\r
@@ -490,13 +490,13 @@ SETAPR: ANDI TAC,231010+APRFOV            ;MASK OUT ALL BUT PD OVF, ILL MEM, NXM,
 ;COMMON ERROR STOPPING ROUTINES\r
 ;CALLED AT ANY LEVEL(UUO,CLK, OR INTERRUPT)\r
 ;CALL: MOVE ITEM,JOB CAUSING ERROR OR BEING STOPPED\r
-;      MOVE DEVDAT,ADDRESS OF THAT JOB TTYP DEVICE DATA BLOCK\r
-;      MOVE DAT,BYTE POINTER TO LAST CHAR, ALEADY MOVED\r
-;                      :TO TTY OUTPUT BUFFER\r
+;      MOVE DEVDAT,ADRRESS OF THAT JOB TTY DEVICE DATA BLOCK\r
+;      MOVE DAT,BYTE POINTER TO LAST CHAR. ALREADY MOVED\r
+;                      ;TO TTY OUTPUT BUFFER\r
 ;      PUSHJ PDP,KSTOP,PHOLD,HOLD,OR ESTOP\r
 ;      NEVER RETURN IF CALLED AT UUO LEVEL\r
 \r
-;ROUTINE TO STOP JONB AFTER KJOB COMMAND\r
+;ROUTINE TO STOP JOB AFTER KJOB COMMAND\r
 ;CALLED AT UUO LEVEL IF JOB HAD CORE,CLK LEVEL IF NOT\r
 \r
 INTERNAL KSTOP\r
@@ -512,15 +512,15 @@ EXTERN PRJPRG
                        ; IF THIS IS THE LARGEST JOB IN USE,FIND NEXT\r
                        ; HIGHEST AND SET HIGHJB\r
        CAMGE   ITEM,HIGHJB     ;IS THIS THE BIGGEST JOB NUMBER ASSIGNED?\r
-       JRST    ESTOP           ;NO, LEAVE HOLD\r
-       MOVSI   TAC1,JNA        ;YES,JOB NUMBER ASSGINED BIT\r
+       JRST    ESTOP           ;NO, LEAVE HOLE\r
+       MOVSI   TAC1,JNA        ;YES,JOB NUMBER ASSIGNED BIT\r
        HRRZ    TAC,ITEM        ;SCAN DOWNWARD\r
        TDNN    TAC1,JBTSTS(TAC)        ;IS JNA BIT SET FOR THIS JOB?\r
        SOJG    TAC,.-1         ;NO,KEEP LOOKING,FINISHED(TRUE IF THIS THE ONLY JOB\r
        MOVEM   TAC,HIGHJB      ;YES,STORE NEW HIGHEST JOB NUMBER ASSIGNED\r
        JRST    ESTOP           ;GO SET ERROR BIT\r
 \f;ROUTINE TO STOP JOB, SET ERROR BIT AND PRINT MESSAGE\r
-;THEM ADD ^TC<CRLF><CRLF><PERIOD>\r
+;THEN ADD ^C<CRLF><CRLF><PERIOD>\r
 ;CALL: MOVEI TAC,ADR. OF MESSAGE\r
 ;      PUSHJ PDP,PHOLD\r
 \r
@@ -528,7 +528,7 @@ EXTERN PRJPRG
 \r
 PHOLD: PUSHJ PDP,CONMES        ;MOVE MESSAGE TO TTY OUTPUT BUFFER\r
                                ; FALL INTO HOLD\r
-;ROUTINE TO STOP JOB, SET ERROR BIT.\r
+;ROUTINE TO STOP JOB, SET ERROR BIT,\r
 ;AND ADD "^C<CRLF><CRLF><PERIOD>\r
 \r
 INTERNAL HOLD,HOLD1\r
@@ -541,7 +541,7 @@ HOLD:       PUSHJ PDP,INLMES
 ./\r
 \r
 HOLD1: PUSHJ PDP,TTYSTC        ;MAKE SURE TTY STAYS IN MONITOR MODE\r
-                               ; AND START TTYP TYPING OUTMESSAGE\r
+                               ; AND START TTY TYPING OUT MESSAGE\r
                                ; FALL INTO ESTOP\r
 \f\r
 ;ROUTINE TO STOP USER AND FLAG AS ERROR STOP\r
@@ -553,9 +553,9 @@ EXTERNAL SCHEDF,JOB,CPOPJ
 \r
 ESTOP: JUMPE ITEM,CPOPJ        ;IS THIS ERROR IN JOB 0?\r
        MOVSI TAC,JACCT         ;NO, CLEAR ACCOUNTING BIT(IN CASE LOGGING\r
-       ANDCAM TAC,JBTSTS(ITEM) ;IN OR OUT0 SO USER CAN USE CONTROL C\r
+       ANDCAM TAC,JBTSTS(ITEM) ;IN OR OUT) SO USER CAN USE CONTROL C\r
                                ; TO RECOVER\r
-ESTOP1: MOVSI TAC,JERR         ;SSET ERROR BIT IN JOB STATUS WORD\r
+ESTOP1:        MOVSI TAC,JERR          ;SET ERROR BIT IN JOB STATUS WORD\r
        IORM TAC,JBTSTS(ITEM)   ;SO JOB CAN NOT CONTINUE(CONT COM.)\r
        CAME ITEM,STUSER        ;SYSTEM TAPE USER?\r
        JRST STOP1              ;NO\r
@@ -563,33 +563,33 @@ ESTOP1: MOVSI TAC,JERR            ;SSET ERROR BIT IN JOB STATUS WORD
        PUSHJ PDP,DEVSRC        ;SYSTEM ERROR IF NOT FOUND\r
        JSP DAT,ERROR\r
        PUSHJ PDP,RELEA9        ;YES, RELEASE SYSTEM TAPE WITHOUT WAITING\r
-\f;ROUTINE TO STOP NY JOB FROM BEING SCHEDULED\r
+\f;ROUTINE TO STOP ANY JOB FROM BEING SCHEDULED\r
 ;CALL:\r
 ;      MOVE ITEM, JOB NUMBER\r
 ;      PUSHJ PDP, STOP1\r
 ;      EXIT    ;RETURN HERE IMMEDIATELY, IF CALLED FROM HIGHER\r
 ;PRIORITY PI CHANNEL THAN CLK(LOWEST), OTHERWISE WHEN JOB IS RUNABLE\r
 ;CALLED FROM COMMAND DECODER WHEN <CONTROL>C TYPED IN BY USER\r
-;OR ON ANY ERROR MESSAGE(SFE PREVIOUS PAGE)\r
+;OR ON ANY ERROR MESSAGE(SEE PREVIOUS PAGE)\r
 \r
 INTERNAL STOP1\r
 EXTERNAL JBTSTS,PJBSTS,REQTAB,JOB,STUSER,MAXQ,AVALTB\r
 \r
-STOP1: MOVSI TAC,RUN   \r
-       CONO PI,PIOFF           ;DONE AT INTERRUPT LEVEL HIGHER THEN DT LEVEL\r
-       CAME ITEM,STUSER        ;IS THIS JOB CURRENTLY USING THE SYTEM TAPE?\r
+STOP1: MOVSI TAC, RUN\r
+       CONO PI, PIOFF          ;DONE AT INTERUPT LEVEL HIGHER THAN DT LEVEL\r
+       CAME ITEM,STUSER        ;IS THIS JOB CURRENTLY USING THE SYSTEM TAPE?\r
        TDNN TAC,JBTSTS(ITEM)   ;NO, IS RUN BIT OFF IN JOB STATUS WORD\r
        JRST STOP1A             ;YES\r
        ANDCAM TAC,JBTSTS(ITEM) ;NO, SO CLEAR IT\r
-       CONO PI,PION\r
+       CONO PI, PION\r
        LDB TAC,PJBSTS          ;GET JOB WAIT QUEUE CODE(IF ANY)\r
        CAIG TAC,MAXQ           ;DOES STATE HAVE Q ?\r
        SOSL REQTAB(TAC)        ;YES. REDUCE IT.\r
        JRST STOP1A             ;NO\r
        SOSGE AVALTB(TAC)       ;YES REDUCE  COUNT\r
        SETZM AVALTB(TAC)       ;CLEAR AVAL FLAG IF NO ONE WAITING\r
-STOP1A:        CONO PI,PION            ;MAKE SURE PI ON\r
-       CAME ITEM, JOB          ;NO. IS THIS JONB CURRENT USER\r
+STOP1A:        CONO PI, PION           ;MAKE SURE PI ON\r
+       CAME ITEM, JOB          ;NO, IS THIS JOB CURRENT USER\r
 \r
 INTERNAL FTSWAP\r
 \r
@@ -601,7 +601,7 @@ IFN FTSWAP,<
 >\r
 \r
        SKIPL TAC,JBTSTS(ITEM)  ;RUN FLAG OFF?\r
-       TLNN    TAC,JERR        ;YES, ERROR FLAG ON?\r
+       TLNN    TAC,JERR        ;YES. ERROR FLAG ON?\r
        JRST    STOP2           ;NO\r
        SETOM   SCHEDF          ;YES, FORCE RESCHEDULING EVEN IF JOB IN EXEC MODE\r
        JRST STOP2              ;YES, MAKE CLK RESCHEDULE ANOTHER JOB\r
@@ -659,7 +659,7 @@ MONJOB:     PUSHJ PDP,MSTART        ;START WITH PC IN MONITOR
 ;SETS UP ITEM, WITH JOB NO.; PROG WITH RELOCATION, AND PDP\r
 ;WITH PUSH DOWN LIST ADR. IN JOB DATA AREA\r
 ;USED BY KJOB,CORE 0,SAVE,GET,RUN,R,REASSIGN AND FINISH COMMANDS\r
-;CALL: MOVEI TAC1,MONITOR JOB START ADDRESS\r
+;CALL: MOVEI TAC1,MONITOR JOB STOP ADDRESS\r
 ;      JSP TAC,MONSTR\r
 ;      RETURN WITH ACS PDP,PROG,JDAT, AND ITEM SETUP\r
 \r
@@ -669,13 +669,13 @@ EXTERNAL JOB,JBTADR,MJOBPD,JOBPDL,TTYFNU,JBTDAT
 MONSTR:        MOVE ITEM,JOB           ;CURRENT JOB NUMBER\r
        MOVE JDAT,JBTDAT(ITEM)  ;ADR. OF JOB DATA AREA\r
 IFN JDAT-PROG,<\r
-       MOVE PROG,JBTADDR(ITEM) ;JOB RELOCATION\r
+       MOVE PROG,JBTADR(ITEM)  ;JOB RELOCATION\r
 >\r
        MOVSI PDP,MJOBPD        ;MINUS LENGTH OF SYSTEM PD LIST\r
        HRRI PDP,JOBPDL(JDAT)   ;FIRST LOC.-1 OF PD LIST\r
-       PUSH PDP,TAC1           ;SAVE STOP ADDRESS\r
+       PUSH PDP,TAC1           ;SAVE STOP ADRRESS\r
        JRST (TAC)              ;RETURN AND DO MONITOR JOB\r
-                               ; WITH TT DDB,OUTPUT BYTE POINTER, AND JOB NO.\r
+                               ; WITH TTY DDB,OUTPUT BYTE POINTER, AND JOB NO.\r
 \f;ROUTINE TO SET JOB STATE TO BE SCHEDULED TO RUN\r
 ;WITH SPECIFIED STARTING ADDRESS INCLUDING PC FLAGS\r
 ;CALLED ONLY WHEN JOB IN CORE AND AFTER JOB HAS BEEN\r
@@ -695,22 +695,22 @@ EXTERNAL JOBPC,JOBDAC,JOBD17,TTYSET,JOBOPC,JOBPD1
 USTART:        MOVE TAC,JOBPC(JDAT)    ;GET OLD PC\r
        TLNE TAC,USRMOD         ;IS IT IN USER MODE TOO?\r
        JRST USTRT1             ;YES, DUMP ACS AND PC FLAGS ARE ALREADY HIS\r
-       MOVEI TAC,JOBDAC(JDAT)  ;NO. MOVE USERS(UUO) ACS TO DUMP ACS\r
-       HRL TAC,JDAT            ;SOURCE=REL, 0,DEST,=JOBDAC IN JOB DATA AREA\r
+       MOVEI TAC,JOBDAC(JDAT)  ;NO, MOVE USERS(UUO) ACS TO DUMP ACS\r
+       HRL TAC,JDAT            ;SOURCE=REL. 0,DEST.=JOBDAC IN JOB DATA AREA\r
        BLT TAC,JOBD17(JDAT)    ;MOVE ALL ACS\r
        MOVE TAC,JOBPD1(JDAT)   ;UUO PC HAS LAST PC\r
        HRRI TAC,-1(TAC)        ;SUBTRACT 1 FROM RIGHT HALF AND\r
-                               ; PRESERVE LH PC FLAGS\r
+                               ; PRESERVE LH PC FLAGS.\r
                                ; (RH=0 ON HALT 0 OR FIRST START)\r
 USTRT1:        MOVEM TAC,JOBOPC(JDAT)  ;STORE OLD PC FOR USER TO LOOK AT\r
        HLL TAC1,TAC            ;PRESERVE USER APR FLAGS\r
        TLO TAC1,USRMOD         ;MAKE SURE NEW PC IN USER MODE\r
        TLZ TAC1,37             ;MAKE SURE NO INDIRECT BITS OR INDEX FIELD\r
-       \r
+\r
 MSTART:        MOVEM TAC1,JOBPC(JDAT)  ;STORE NEW PC\r
        MOVSI TAC,JERR+WTMASK\r
        ANDCAM TAC,JBTSTS(ITEM) ;CLEAR ERROR AND WAIT STATUS BITS\r
-       JRST TTYSET             ;SET TTY STATE TO INITAL COND.\r
+       JRST TTYSET             ;SET TTY STATE TO INITIAL COND.\r
                                ; TTYUSR OR TTYURC SHOULD BE CALLED\r
                                ; TO INDICATE WHETHER TTY TO USER OR EXEC MODE\r
                                ; AND THAT JOB IS TO RUN(RUN BIT =1) WHEN\r
@@ -720,9 +720,9 @@ MSTART:     MOVEM TAC1,JOBPC(JDAT)  ;STORE NEW PC
 \r
 ;ROUTINE TO SET JOB STATUS RUN BIT(RUN)\r
 ;CALLED BY SCANNER SERVICE WHEN TTY MONITOR COMMAND\r
-;RESPONSE FINISHES,  THIS ACTION IS ENABLED BY CALLING\r
-;TTYUSR. OR TTYURC IN SCNSER\r
-;CALL:         MOVE ITEM,JOB NUMBER\r
+;RESPONSE FINISHES.  THIS ACTION IS ENABLED BY CALLING\r
+;TTYUSR, OR TTYURC IN SCNSER\r
+;CALL: MOVE ITEM,JOB NUMBER\r
 ;      PUSHJ PDP,SETRUN\r
 \r
 INTERNAL SETRUN\r
@@ -736,7 +736,7 @@ SETRUN:     LDB TAC,PJBSTS          ;GET JOB STATUS WAIT QUEUE CODE
        JRST SETR1              ;OTHERS WAITING?\r
        AOSG AVALTB(TAC)        ;MAKE AVAILABLE\r
        SETOM AVALTB(TAC)       ;FLAG AS JUST AVAILABLE, BECAUSE\r
-                               ; NO JONB WAS USING DEVICE. SCHEDULER\r
+                               ; NO JOB WAS USING DEVICE. SCHEDULER\r
                                ; WILL SCAN THIS QUEUE\r
 SETR1: MOVSI TAC,RUN           ;SET RUN BIT IN JOB STATUS WORD\r
        IORM TAC,JBTSTS(ITEM)   \r
@@ -753,8 +753,7 @@ IFN FTSWAP,<
 \r
 REQUE: MOVSI TAC,JRQ           ;MARK JOB TO BE REQUEUED WITH JRQ BIT\r
        TDNN TAC,JBTSTS(ITEM)   ;INCREMENT COUNT ONLY ONCE FOR EACH JOB\r
-       AOS QJOB                ;INCREMENT COUNT OF NO. OF JOBS WAITING TO BE REUEUED\r
-\r
+       AOS QJOB                ;INCREMENT COUNT OF NO. OF JOBS WAITING TO BE REQUEUED\r
        IORM TAC,JBTSTS(ITEM)   ;SET REQUE BIT FOR SCHEDULER\r
        POPJ PDP,\r
 \r
@@ -786,9 +785,9 @@ WAKE:       MOVEI TAC1,RNQ          ;RUN QUEUE CODE
        ANDCAM TAC,JBTSTS(ITEM) ;SO IT CAN PUT ANOTHER ONE IN\r
        LDB TAC,PJBSTS          ;GET QUEUE CODE\r
        CAIE TAC,SLPQ           ;IS JOB STILL SLEEPING?\r
-       POPJ PDP,               ;NO, RETURN TO CLOCK ROUTINE\r
+       POPJ PDP,               ;NO. RETURN TO CLOCK ROUTINE\r
        DPB TAC1,PJBSTS         ;YES, STORE RUN QUEUE CODE\r
-                               ; (CONTROL C, START CAN GET JOB OUT SLEEP)\r
+                               ; (CONTROL C, START CAN GET JOB OUT OF SLEEP)\r
        JRST SETR2\r
 >\r
 \f;ROUTINE TO GET DATA CONTROL AND ANOTHER SHARABLE DEVICE\r
@@ -811,7 +810,7 @@ GETWT:      PUSHJ PDP,DVWAT1        ;NOT AVAIL., GO WAIT FOR IT
        SOSL REQTAB(AC1)        ;REDUCE REQ. COUNT FOR OTHER\r
                                ; SHARABLE DEVICE.\r
        SETOM AVALTB(AC1)       ;SET AVAILABLE IF OTHER JOBS WAITING\r
-       JFCL DCREQ              ;ARGUMENT FOR DCQAIT\r
+       JFCL DCREQ              ;ARGUMENT FOR DCWAIT\r
        PUSHJ PDP,DCWAIT        ;WAIT FOR DATA CONTROL FREE\r
        MOVE AC1,@(PDP)         ;INCREMENT REQ. COUNT\r
        AOSN @AC1               ;NOW IS SHARABLE DEVICE FREE?\r
@@ -839,7 +838,7 @@ EXTERNAL JOB,REQTAB
 \r
 MTWAIT:DTWAIT:DCWAIT:STWAIT:DAWAIT:MQWAIT:AUWAIT:\r
 DVWAIT:        MOVE AC1,(PDP)          ;GET ADR. OF CALLER\r
-       MOVE AC1,-2(AC1)        ;GEET AOSLE XXREQ INSTRUCTION\r
+       MOVE AC1,-2(AC1)        ;GET AOSLE XXREQ INSTRUCTION\r
        JRST .+2\r
 DVWAT1:        MOVE AC1,@-1(PDP)       ;GET ADR. OF CALLER OF THIS ROUTINE\r
        SUBI AC1,REQTAB         ;COMPUTE WAIT-STATE QUEUE CODE\r
@@ -853,16 +852,16 @@ PJBS1:    POINT JWSIZ,JBTSTS(AC3),JWPOS   ;BYTE POINTER TO JOB STATUS
                                ; WORD WAIT QUEUE CODE\r
 \f;ROUTINE TO SET JOB TO RUN AFTER IT HAS BEEN STOPPED\r
 ;BECAUSE IT HAD TO WAIT FOR IO TO COMPLETE FOR SOME DEVICE\r
-;EACH SERVICE ROUTINE WILL AT INTERRUPT LEVEL\r
-;CHECK EACH TIME IT FINISHED A TASK(RUNFFERFUL)\r
+;EACH SERVICE ROUTINE AT INTERRUPT LEVEL\r
+;CHECK EACH TIME IT FINISHED A TASK(BUFFERFUL)\r
 ;TO SEE IF THE JOB USING THE DEVICE HAS\r
 ;PREVIOUSLY CAUGHT UP WITH DEVICE AND HAS BEEN STOPPED\r
-;CALL: MOVE DEVDAT,ADR, OF DEVICE DATA BLOCK\r
+;CALL: MOVE DEVDAT,ADR. OF DEVICE DATA BLOCK\r
 ;      MOVE IOS,DEVIOS(DEVDAT) ;GET DEVICE IO STATUS WORD FROM DDB\r
-;      TLZE IOS,IOW    ;IS JOB AN IO WAIT FOR THIS DEVICE?\r
+;      TLZE IOS,IOW    ;IS JOB IN AN IO WAIT FOR THIS DEVICE?\r
 ;      PUSHJ PDP,SETIOD        ;YES, GO FLAG JOB TO START UP AGAIN\r
 ;      RETURN\r
-;SETS THE JOB QUEUE WAIT CODE TO WSQ IN JOB STATUS WORD,\r
+;SETS THE JOB QUEUE WAIT CODE TO WSQ IN JOB STATUS WORD.\r
 ;THE SCHEDULER THEN SEES THAT THIS JOB HAS ITS\r
 ;IO WAIT SATISFIED AND IS WAITING TO BE RUN AGAIN\r
 \r
@@ -872,15 +871,15 @@ EXTERNAL WSQ,WSAVAL,TSQ,TSAVAL,JOB,PJOBN
 PJBS2: POINT JWSIZ,JBTSTS(TAC),JWPOS   ;BYTE POINTER TO JOB STATUS\r
                                ; WORD QUEUE CODE\r
 \r
-STTIOD: MOVEI TAC1,TSQ         ;SET TTY IO WAIT SATISFIED QUEUE CODE\r
+STTIOD:        MOVEI TAC1,TSQ          ;SET TTY IO WAIT SATISFIED QUEUE CODE\r
        AOS TSAVAL\r
-       JRST SETIO1\r
+       JRST SETID1\r
 SETIOD:        MOVEI TAC1,WSQ          ;REQUE TO WAIT SATISFIED Q\r
-       AOS WSAVAL              ;INCR, NO, OF JOBS WITH IO WAIT\r
-                               ; SATISFIED, NON-ZERO WSAVAL WILL\r
-                               ; CAUSE SCHED, TO SCAN FOR IO\r
+       AOS WSAVAL              ;INCR. NO. OF JOBS WITH IO WAIT\r
+                               ; SATISFIED. NON-ZERO WSAVAL WILL\r
+                               ; CAUSE SCHED. TO SCAN FOR IO\r
                                ; SATISFIED JOB.\r
-SETIO1:        LDB TAC,PJOBN\r
+SETID1:        LDB TAC,PJOBN\r
        DPB TAC1,PJBS2          ;IN JOB STATUS WORD\r
 \r
 INTERNAL FTSWAP\r
@@ -892,8 +891,8 @@ IFN FTSWAP,<
        IORM TAC1,JBTSTS(TAC)   ;SET REQUEUEING BIT FOR SCHEDULER\r
 >\r
 NULTST:        SKIPE JOB               ;IS NULL JOB RUNNING?\r
-       POPJ PDP,               ;NO LET OTHER JOB RUN TILL SCHEDULER IS TRAPPED TO\r
-\f;ROUTINE TO CAUSE CLK TO ROUTINE TO RESCHEDULE\r
+       POPJ PDP,               ;NO LET OTHER JOB RUN TILL SCHEDULER IS TRAPPPED TO\r
+\f;ROUTINE TO CAUSE CLK ROUTINE TO RESCHEDULE\r
 ;CALLED AT ANY LEVEL\r
 ;CALL: PUSHJ PDP,STOP2\r
 ;      RETURN IMMEDIATELY EXCEPT IF AT UUO LEVEL\r
@@ -904,24 +903,24 @@ EXTERNAL PICLK,CLKFLG
 \r
 STOP2: CONO PI,PIOFF   ;PREVENT CLOCK INTERRUPT DURING STOP2 CODE\r
        SETOM CLKFLG    ;SET FLAG TO INDICATE CLK INTERRUPT\r
-                       ; EVEN THOUGH  CLK INTERRUTP IS NOT A ATIME INTERRUPT\r
-       CONO PI,PICLK   ;TURN PI BACK ON AND REQUESST INTERRUPT TO\r
+                       ; EVEN THOUGH CLK INTERRUPT IS NOT A TIME INTERRUPT\r
+       CONO PI,PICLK   ;TURN PI BACK ON AND REQUEST INTERRUPT TO\r
                        ; CLK PI CHANNEL(LOWEST PRIORITY CHANNEL)\r
        POPJ PDP,       ;INTERRUPT IMMEDIATELY IF AT UUO LEVEL\r
-\f;ROUTINE TO WAIT TILL DEVICE CATCHES UP WITH USER AND BECOMES INCTIVE\r
+\f;ROUTINE TO WAIT TILL DEVICE CATCHES UP WITH USER AND BECOMES INACTIVE\r
 ,CALLING SEQUENCE\r
 ,      PUSHJ PDP, WAIT1\r
-,      EXIT        ALWAYS RETURN HERE\r
+,      EXIT        ALWAYS RETURNS HERE\r
 \r
-,IF DEVICE IS INACTIVBE (IOACT=0), RETURNS TO EXIT, OTHERWISE, SETS\r
-,IOW:=1 AND ENTERS WAIT UNLESS IOCT BECOMES ZERO BEFORE THE\r
-,JUMP IS MADE, IN WHICH CASE IT SETS IOW:=0 AND RETURNS TO EXIT,\r
-,ON LEAVING THE WIAT STATE, RETURNS TO EXIT.\r
+,IF THE DEVICE IS INACTIVE (IOACT=0), RETURNS TO EXIT. OTHERWISE. SETS\r
+,IOW:=1 AND ENTERS WAIT UNLESS IOACT BECOMES ZERO BEFORE THE\r
+,JUMP IS MADE, IN WHICH CASE IT SETS IOW:=0 AND RETURNS TO EXIT.\r
+,ON LEAVING THE WAIT STATE, RETURNS TO EXIT.\r
 ,THIS ROUTINE PREVENTS THE STATE IOACT=0 AND IOW=1 FROM OCCURING\r
 ,CALLING SEQUENCE\r
 ,     PUSHJ PDP, WSYNC\r
 ,     EXIT            ALWAYS RETURNS HERE\r
-,SETS IOW:=1 AND ENTERS WAIT ROUTINE. RETURNS TO EXIT WHEN IOACT=0\r
+,SETS IOW:=1 AND ENTERS WAIT ROUTINE. RETURNS TO EXIT WHEN IOACT=0.\r
 \r
 INTERNAL WAIT1\r
 \r
@@ -932,7 +931,7 @@ WAIT1:      MOVE IOS,DEVIOS(DEVDAT)
        JRST WAIT1\r
 \f\r
 ;WSYNC IS CALLED TO WAIT UNTIL SETIOD IS CALLED BY INTERRUPT SERVICE ROUTINE\r
-;IE  UNTIL CURRENT BUFFER ACTIVITY IS COMPLETE\r
+;IE  UNTIL CURRENT BUFFER ACTIVITY IS COMPLETED\r
 ;CALLED ONLY FROM UUO LEVEL\r
 ;CALL: MOVE DEVDAT,ADR. OF DEVICE DATA BLOCK\r
 ;      PUSHJ PDP,WSYNC\r
@@ -963,7 +962,7 @@ WSYNC:      MOVSI IOS,IOW           ;SETUP DEVICE IO WAIT BIT
                                ; WITH ACS 0-14 OCTAL RESTORED\r
                                ; RETURN WHEN IO-WAIT FINISHED\r
 WSYNC1:        CONO PI, PION\r
-       ANDCAB IOS, DEVIOS(DEVDAT)      ;CLEAR DEVIVCE IO-WAIT BIT\r
+       ANDCAB IOS, DEVIOS(DEVDAT)      ;CLEAR DEVICE IO-WAIT BIT\r
        POPJ PDP,\r
 \r
 \r
index dfcefaa..0a25637 100644 (file)
@@ -3,20 +3,19 @@ SUBTTL PART 3 COMMON.MAC - T. HASTINGS/RCC  TS  03 JUN 69
 XP VCOMMN,437\r
                ;PUT VERSION NUMBER IN GLOB AND LOADER STORAGE MAP\r
 \r
-REPEAT 0, <\r
+REPEAT 0,<\r
 \r
 ;THE COMMON SUBPROGRAM CONSISTS OF 3 FILES ASSEMBLED TOGETHER AS ONE SUBPROGRAM:\r
-  1. S.MAC - THE USUAL SYSTEM SYMBOL DEFINITIONS ASSEMBLED WITH\r
-       EVERY MONITOR SUBPROGRAM\r
-  2. CONFIG.MAC - THE CONFIGURATION DEFINITION FILE GENERATED BY THE\r
-       CONFIGURATION PROGRAM (MONGEN) OR BY AN EDITOR (SEE ABOVE)\r
-  3. COMMON.MAC - THE REST OF THIS PROGRAM WHICH IS THE SAME SOURCE FOR\r
-       ALL CONFIGURATIONS.  HOWEVER, THE ASSEMBLIES ARE CONDITIONED BY\r
-       SYMBOLS AND MACROS DEFINED IN 2.\r
-       THE FOLLOWING SYMBOLS AND TABLES ARE GENERATED BELOW:\r
-\r
-       A. MONITOR STARTUP LOCATIONS (140-147), HENCE LOAD THIS FIRST.\r
-       B. JOB TABLES - LENGTH DEPENDENT ON MAXIMUM NUMBER OF JOBS ALLOWED\r
+  1. S.MAC - THE USUAL SYSTEM SYMBOL DEFINTIONS ASSEMBLED WITH EVERY MONITOR SUBPROGRAM\r
+  2. CONFIG.MAC - THE CONFIGURATION DEFINTION FILE GENERATED BY THE\r
+       CONFIGURATION CONFIG PROGRAM OR BY AND EDITOR(SEE ABOVE)\r
+  3. COMMON.MAC - THE REST OF THIS PROGRAM WHICH IS THE SAME\r
+       SOURCE FOR ALL CONFIGURATIONS.\r
+       HOWEVER, THE ASSEMBLIES ARE CONDITIONED BY MACROS DEFINED IN 2.\r
+       THE FOLLOWING SYMBOLS AND TABLES ARE GENERATED:\r
+\r
+       A. MONITOR STARTUP LOCATIONS(140-147), HENCE LOAD THIS FIRST.\r
+       B. JOB TABLES - LENGTH DEPENDENT ON MAX. NO. OF JOBS ALLOWED\r
        C. ALL VARIABLE STORAGE NOT ASSOCIATED WITH A PARTICULAR DEVICE\r
        D. COMMON SUBROUTINE RETURNS\r
        E. COMMON BYTE POINTERS\r
@@ -34,15 +33,15 @@ REPEAT 0, <
 \r
 IFNDEF LISTSN, <LISTSN==1>     ;FORCE S.MAC TO BE LISTED WITH COMMON FILE ONLY\r
                        ;UNLESS 'LISTSN' DEFINED TO BE 0 WITH MONGEN\r
-IFNDEF APRSN,<APRSN==0> ;SERIAL NUMBER OF APR\r
+IFNDEF APRSN,<APRSN==0>        ;SERIAL NUMBER OF APR\r
 \r
 ;STANDARD MAG TAPE DENSITY(556 BPI),PARITY(ODD-BINARY)\r
        INTERN STDENS           ;STANDARD MAG TAPE DENSITY(556 BPI),PARITY(ODD-BINARY)\r
 \r
-       IFNDEF STDENS, <STDENS==2>      ;STAND. == BINARY AT 556 BPI\r
+       IFNDEF STDENS,<STDENS==2>       ;STAND.== BINARY AT 556 BPI\r
                                ;STDENS==D+P WHERE D AND P ARE:\r
-                               ;D==1(200 BPI);D== (556 BPI);D==3(800 BPI)\r
-                               ;P==0(ODD-BINARY PARITY);P=4(EVEN-BCD PARITY)\r
+                               ;D==1(200 BPI);D==2(556 BPI);D==3(800 BPI)\r
+                               ;P==0(ODD-BINARY PARITY);P==4(EVEN-BCD PARITY)\r
        INTERN JIFSEC                   ;NO. OF CLOCK TICKS(JIFFIES) PER SECOND\r
        IFNDEF JIFSEC,<JIFSEC==^D60>    ;STAND.==60 JIFFIES PER SEC.\r
        XP HNGSEC,2*JIFSEC\r
@@ -50,28 +49,29 @@ IFNDEF APRSN,<APRSN==0> ;SERIAL NUMBER OF APR
        INTERN DTTRY                    ;NO. OF TIMES TO TRY ON DECTAPE ERRORS\r
        IFNDEF DTTRY,<DTTRY==4>         ;STAND.==4 TRIES\r
 \r
-       INTERN MTSIZ                    ;SIZE OF MAGTAPE RECORDS(DATA WORDS IN BUFFER+1)\r
+       INTERN MTSIZ                    ;SIZE OF MAGTPAE RECORDS(DATA WORDS IN BUFFER+1)\r
        IFNDEF MTSIZ,<MTSIZ==^D128>     ;STAND.==128 WORDS PER BUFFER\r
 \r
        INTERN LPTSIZ                   ;SIZE OF LPT BUFFER(NO. OF DATA WORDS+2)\r
        IFNDEF LPTSIZ,<LPTSIZ==^D24+2>  ;STAND.==24 WORDS PER LPT BUFFER\r
 \r
-       INTERN BLKQNT                   ;MAX. NO OF CONSECUTIVE DECTAPE BLOCKS SEARCHED BEFORE\r
-                                       ; RESCHEDULING IF ANOTHER JOB IS WAITING TO USE CONTROL.\r
+       INTERN BLKQNT                   ;MAX. NO OF CONSECUTIVE DECTAPE BLOCK SEARCHED BEFORE\r
+                       ; RESCHEDULING IF ANOTHER JOB IS WAITING TO USE CONTROL\r
        IFNDEF BLKQNT,<BLKQNT==^D50>    ;STAND.==50 DT BLOCKS SEARCHED(3 SECS.)\r
 \r
-       INTERN NSPMEM                   ;NO OF NANO-SECONDS PER MEMORY CYCLE\r
-       IFNDEF NSPMEM,<NSPMEM==^01760>  ;STAND.==1760 NANO-SECONDS PER MEMORY CYCLE\r
-INTERNAL JIFSC2,JIFMIN,WDPJIF\r
+       INTERN NSPMEM                   ;NO. OF NANO-SECONDS PER MEMORY CYCLE\r
+       IFNDEF NSPMEM,<NSPMEM==^D1760>  ;STAND.==1760 NANO-SECONDS PER MEMORY CYCLE\r
+\r
+INTERN JIFSC2,JIFMIN,WDPJIF\r
        JIFSC2==JIFSEC/2                ;HALF NO. OF JIFFIES IN A SEC (FOR ROUNDING)\r
-       JIFMIN==JIFSEC*^D60             ;NO., OF JIFFIES PER MINUTE\r
-       WDPJIF==^D100000/NSPMEM*^D5000/JIFSEC   ;NO. OF WORDS MOVED\r
-       IFNDEF MINCOR,<MINCOR==^D54*JOBN>        ;DISK DDB AND ACCESS ENTRY\r
-                               ; ALLOCATION REQUIRMENTS IN FREE CORE\r
+       JIFMIN==JIFSEC*^D60             ;NO. OF JIFFIES PER MINUTE\r
+       WDPJIF==^D100000/NSPMEM*^D5000/JIFSEC ;NO. OF WORDS MOVED\r
+       IFNDEF MINCOR,<MINCOR==^D54*JOBN>       ;DISK DDB AND ACCESS ENTRY\r
+                               ; ALLOCATION REQUIREMENTS IN FREE CORE\r
                                ;USED TO EXPAND SIZE OF MONITOR AT ONCE ONLY TIME\r
 \r
                                ;32 WORDS/DDB AND 4 WORDS/ACCESS ENTRY = 36 WORDS\r
-                               ;ASSUME 1.5 OPEN FILE/JOB\r
+                               ;ASSUME 1.5 OPEN FILES/JOB\r
 \r
 \r
 INTERN LOGSIZ\r
@@ -82,7 +82,7 @@ IFNDEF LOGSIZ, <LOGSIZ==2>    ;MINSIZ OF VIRTUAL CORE LEFT
 \f;SYSTEM INITIALIZATION DISPATCH TABLE, STARTING AT LOCATION 140\r
 ;THIS SUBROUTINE MUST BE LOADED FIRST\r
 ;ROUTINE "ONCE" IS ONCE ONLY CODE. IT CONVERTS THE DATE\r
-;AND SETS UP I/O SERVICE CHAIN,\r
+;AND SETS UP IO SERVICE CHAIN,\r
 \r
        EXTERN SYSINI,SYSMAK,NULJOB,ONCE,JSR2\r
        INTERN SYSDSP,SYSDDT\r
@@ -94,13 +94,13 @@ IFNDEF LOGSIZ, <LOGSIZ==2>  ;MINSIZ OF VIRTUAL CORE LEFT
 \r
 SYSDSP: JRST SYSINI            ;INITIALIZE SYSTEM VARIABLES ONCE ONLY\r
 SYSDDT:\r
-IFG DDTN, <            ;IF EXEC DDT IS LOADED.....\r
+IFG DDTN,<             ;EXEC DDT TO BE LOADED?\r
        EXTERN PATSYM\r
        JRST PATSYM             ;YES, EXEC DDT(PATCH SYMBOL TABLE POINTER FIRST)\r
 \r
 >\r
-       IFE DDTN, <\r
-       HALT .          ;NO. EXEC DDT\r
+IFE DDTN,<\r
+       HALT .          ;NO, EXEC DDT\r
 >\r
        JRST SYSMAK             ;MAKE NEW SYSTEM\r
        JRST SYSINI             ;INITIALIZE SYSTEM VARIABLES ALWAYS\r
@@ -116,47 +116,46 @@ SYSCRS:   JRST SYSTOP             ;STOP MONITOR IN CASE OF DISASTER
        INTERN SYSSNP,FORTY,NULDAT,SIXTY,NULPDL,ERRPDL,KT10A,RCXIOC,RCXCCW,DDTSYM\r
        INTERN T30SYM,RAXIOC,RAXCCW,CRSHWD\r
 \r
-       RAXIOC=26               ;XWD 0,ADDRESS FOR RA-10'S DATA CHANNEL\r
+       RAXIOC=26               ;XWD 0,ADDRESS FOR RA10 DATA CHANNEL\r
                                ; MUST BE EVEN AND .LT. 777\r
        RAXCCW=RAXIOC+1         ;XWD CONTROL WORD ADDRESS,DATA ADDRESS\r
                                ; STORED ON CHANNEL TERMINATION\r
-       CRSHWD=30               ;NORMALLY THIS WORD WILL BE 0.  IF IT IS \r
+       CRSHWD=30               ;NORMALLY THIS WORD WILL BE 0. IF IT IS \r
                                ;ACCIDENTALLY OR PURPOSEFULLY OVERWRITTEN\r
                                ;THE MONITOR WILL ATTEMPT TO SAVE THE \r
-                               ;AC'S AND THE STATE OF ALL DEVICES,\r
+                               ;AC'S AND THE STATE OF ALL DEVICES.\r
                                ;[A LA 147 RESTART]\r
        KT10A=33                ;COPY OF CONTENTS OF RELOCATION AND PROTECTION\r
-                               ; DONE BY DATAO APR \r
+                               ; DONE BY DTATO APR \r
                                ; NEEDED BECAUSE KT10A MOD DOES NOT COME WITH\r
                                ; LIGHTS FOR 2ND REG.\r
        RCXIOC=34               ;INITIAL CONTROL WORD FOR DATA CHANNEL\r
-                               ; (TRANSFERS CHANNEL TO SEQUENCE OF IOWD'S IN DSKINT)\r
+                               ; (TRANSFERS CHANNE TO SEQUENCE OF IOWD'S IN DSKINT)\r
                                ; MUST BE IN EVEN LOC IN FIRST 1K OF MEMORY\r
        RCXCCW=RCXIOC+1         ;CHANNEL STORES FINAL CONTROL WORD\r
                                ; HERE ON TERMINATION\r
        SYSSNP=37               ;WHEN DEPOSITED NON-ZERO,PRINTS SNAP SHOT OF SYSTEM\r
                                ; ON LPT SEE LPSNAP SUBPROGRAM\r
-       DDTSYM=36               ;CONTAINS ADDRESS OF POINTER TO EXEC DDT SYMBOL TABLE\r
+       DDTSYM=36               ;CONTAINS ADR. OF POINTER TO EXEC DDT SYMBOL TABLE\r
        FORTY=40                ;PLACE WHERE UUOS ARE STORED ON TRAP\r
-       NULDAT=42               ;JOB DATA AREA FOR NULL JOB (USES EXEC\r
-                               ; 62 THRU 101 20-36 FOR DUMP AC)\r
+       NULDAT=42               ;JOB DATA AREA FOR NULL JOB(USES EXEC\r
+                               ; 62 THRU 101 20-36 FOR DUMP ACS)\r
                                ; AND ABOVE FOR PUSHDOWN LIST\r
-       SIXTY=60                ;PLACE WHERE UNIMPLEMENTED INSTR. ARE STORED ON \r
-                               ; TRAP (PDP-10 ONLY)\r
+       SIXTY=60                ;PLACE WHERE UNIMPLEMETNED INSTR. ARE STORED ON \r
+                               ; TRAP(PDP-10 ONLY)\r
        NULPDL=101              ;PUSH DOWN LIST FOR NULL JOB\r
                                ; USES EXEC LOCS 102 THRU 137\r
-                               ; USED FOR RE-SCHEDULING WHEN CURRENT JOB\r
+                               ; USED FOR RESCHEDULING WHEN CURRENT JOB\r
                                ; GOES INTO IO WAIT\r
        ERRPDL=120              ;PUSH DOWN LIST FOR ERROR IN NULL JOB\r
        T30SYM=131              ;PLACE IN 10/30 JOB DATA AREA WHERE SYMBOL TABLE\r
                                ; POINTER IS STORED BY REGULAR 10/30 LOADER\r
                                ; (MOVED TO DDTSYM BY ONCE)\r
 \f;PROTECTED JOB DATA STORAGE AND OTHER LOCATIONS SET EACH TIME\r
-;A NEW JOB IS RUN (SEE APRSER-CLKINT)\r
-\r
+;A NEW JOB IS RUN(SEE APRSER-CLKINT)\r
        INTERN SYSBEG,SYSBG1,SYSEND\r
 \r
-SYSBEG:                                ;FIRST LOCATION CLEARED ON 143 RESTART (SEE SYSINI)\r
+SYSBEG:                                ;FIRST LOCATION CLEARED ON 143 RESTART(SEE SYSINI)\r
 XP SYSBG1,SYSBEG+1\r
 \r
        INTERN JOB,JOBADR,JOBDAT,USRREL,USRSAV\r
@@ -168,8 +167,8 @@ JOBADR:     0                       ;XWD PROTECTION,RELOCATION FOR CURRENT JOB
                                ;SAME AS JBTADR(JOB) AND AC PROG\r
 USRREL:        0                       ;LH==0, RH CONTAINS CONTENTS OF PROTECTION REGISTER\r
                                ;LOW ORDER BITS==1777, IE THIS IS HIGHEST REL. LOC\r
-                               ;IN CURRENT USER AREA (USED FOR ADDRESS CHECKING)\r
-USRSAV:        0                       ;TEMPORARY FOR UUO HANDLER (IMPURE ROUTINE!)\r
+                               ;IN CURRENT USER AREA(USED FOR ADDRESS CHECKING)\r
+USRSAV:        0                       ;TEMPORARY FOR UUO HANDLER(IMPURE ROUTINE!)\r
 \r
 ;LOCATIONS COPIED FROM JOB DATA AREA INTO MONITOR WHEN A JOB RUNS\r
 ;THIS PREVENTS THE USER FROM CLOBBERING THEM AND MAKES IT\r
@@ -181,28 +180,28 @@ USRSAV:   0                       ;TEMPORARY FOR UUO HANDLER (IMPURE ROUTINE!)
 \r
        INTERN USRPRT,USRPR1,USRPC,USRDDT,USRHCU,USRSAV,USRJDA,USRLO,USRLO1,USRHI\r
 \r
-USRPRT:                                ;FIRST LOCATION OF PROTECTED JOB DATA\r
-       USRPR1==USRPRT+1        ;FIRST LOCATION+1\r
+USRPRT:                                ;FIRST LOC. OF PROTECTED JOB DATA\r
+       USRPR1==USRPRT+1        ;FIRST LOC.+1\r
 \r
-USRHCU:        0                       ;HIGHEST USER I/O CHANNEL IN USE\r
-                               ;0 MEANS EITHER NONE OR CHANNEL 0 IN USE\r
+USRHCU:        0                       ;HIGHEST USER IO CHANNEL IN USE\r
+                               ;0 MEANS EITHER NONE OR CHAN. 0 IN USE\r
                                ;LH=-1 DURING GET OF LOW OR HIGH SEG OR SAVE OF HIGH SEG\r
-                               ;SETREL ROUTINE DOESN'T STORE IN JOBHRL(11$) WHEN NEG,\r
+                               ;SETREL ROUTINE DOESN'T STORE IN JOBHRL(115) WHEN NEG.     \r
                                ;LH=-2 DURING SAVE OF LOW SEG AS FLAG THAT CORE\r
-                               ; IS COMPRESSED. \r
-                               ;ONLY CHANNEL ASSIGNMENTS IN USE ARE COPIED INTO\r
-                               ; MONITOR WHEN JOB RUNS\r
+                               ; IS COMPRESSED \r
+                               ;ONLY CHAN. ASSIGNMENTS IN USE ARE COPIED INTO\r
+                               ;MONITOR WHEN JOB RUNS\r
 USRPC: 0                       ;JOB PC WHEN SCHEDULER IS CALLED\r
-USRDDT:        0                       ;RH==STARTING ADDRESS OF USER DDT, LH UNUSED\r
+USRDDT:        0                       ;RH==STARTING ADR. OF USER DDT,LH UNUSED\r
 USRJDA:        BLOCK   20              ;RH==JOB DEVICE ASSIGNMENTS (DEVICE DATA\r
                                ; BLOCK ADDRESSES)\r
-                               ;LH==UUO'S DONE SO FAR FOR THIS CHANNEL (SEE SYSPAR)\r
-                               ;0 MEANS NO DEVICE INITIALIZED ON THIS CHANNEL\r
+                               ; LH==UUOS DONE SO FAR FOR THIS CHANNEL(SEE SYSPAR)\r
+                               ; 0 MEANS NO DEVICE INITIALIZED ON THIS CHANNEL\r
        USRLO==USRJDA           ;FIRST LOC CLEARED BY SETUSR ROUTINE\r
                                ;ON A CALL [SIXBIT /RESET/]\r
                                ;ALSO CLEARS USRHCU\r
        USRLO1==USRLO+1         ;FIRST LOC+1\r
-       USRHI==.-1              ;LAST LOC CLEARED BY SETUSR ROUTINE\r
+       USRHI==.-1              ;LAST LOC CLEARED BY SETUSR ROUT.\r
 \f\r
 ;OTHER SYSTEM DATA STORAGE\r
 \r
@@ -213,13 +212,13 @@ USRJDA:   BLOCK   20              ;RH==JOB DEVICE ASSIGNMENTS (DEVICE DATA
 \r
 COMCNT:        0                       ;NUMBER OF COMMANDS TYPED-IN BUT NOT DECODED\r
                                ;SET BY SCNSER, DECREMENTED BY COMCON\r
-HNGTIM:        0                       ;HUNG DEVICE TIME COUNT CHECK FOR HUNG I/O\r
-                               ;DEVICES WHEN THIS GOES TO ZERO (ONCE PER HNGSEC)\r
+HNGTIM:        0                       ;HUNG DEVICE TIME COUNT CHECK FOR HUNG IO\r
+                               ;DEVICES WHEN THIS GOES TO ZERO (ONCE A SECOND)\r
 CLKFLG:        0                       ;NON-ZERO WHEN CLK INTERRUPT FORCED FOR ANY REASON\r
 TIMEF: 0                       ;NON-ZERO FOR CLOCK INTERRUPT ON APR\r
                                ;SET BY APRSER, TESTED AND CLEARED BY CLK ROUTINE\r
 APRERR:        0                       ;APR ERROR BITS ON NON-EX MEM, ETC.\r
-                               ;SET BY APRSER, CLEARED BY CLK ROUTINE (CLOCK)\r
+                               ;SET BY APRSER, CLEARED BY CLK ROUTINE(CLOCK)\r
 APRPC: 0                       ;PC WHEN APR ERROR DETECTED\r
 SCHEDF:        0                       ;FORCED RESCHEDULING FLAG FOR CLK ROUTINE\r
                                ;USED TO FORCE RESCHEDULING WHEN JOB IS IN EXEC MODE\r
@@ -227,24 +226,24 @@ NULERR:   0                       ;SET NON-ZERO IF MONITOR DETECTS ERROR WHILE
                                ; NULL JOB IS RUNNING\r
 POTLST:        0                       ;-1 WHEN SCHEDULER SEES THAT THERE ARE \r
                                ;JOBS WHICH ARE POTENTIALLY RUNABLE BUT\r
-                               ;HAS TO RUN NULL JOB.\r
-                               ;0 WHEN IT FINDS A REAL JOB TO \r
-                               ;RUN OR NULL JOB IS ONLY JOB WHICH WANTS TO\r
-                               ;RUN.  'LSTWRD' IS INCREMENTED EVERY JIFFY\r
-                               ;IF THIS FLAG IS -1 AND PREVIOUS JOB WAS NULL JOB.\r
+                               ;HAS TO RUN NULL JOB. \r
+                               ;0 WHEN IT FINDS A REAL JOB TO\r
+                               ;RUN OR NULL JOB IS ONLY JOB WHICH WANTS\r
+                               ;TO RUN. 'LSTWRD' IS INCREMENTED EVERY JIFFY\r
+                               ;IF THIS FLAG IS -1 AND PREVIOUS JOB WAS NULL JOB\r
        IFN     FTTRPSET,<\r
        INTERN STOPTS\r
 STOPTS:        0                       ;STOP TIME SHARING OTHER USERS BECAUSE JOB 1 DID\r
                                ;A TRPSET UUO WITH NON-ZERO AC(IE SET LOWER CORE\r
-                               ; PI TRAP LOCATION,ALSO STOP CORE SHUFFLING\r
+                               ; PI TRAP LOCATION. ALSO STOP CORE SHUFFLING\r
 >\r
-       SLJOBN=0                ;NUMBER OF JOBS IF NO SLEEP FEATURE\r
+       SLJOBN=0                ;NO. OF JOBS IF NO SLEEP FEATURE\r
        IFN FTSLEEP,<SLJOBN=JOBN>       ;LEAVE ONE ENTRY PER JOB\r
 CIPWT: BLOCK SLJOBN+3          ;CLOCK REQUEST QUEUE\r
                                ; LH-MONITOR ADDRESS TO PUSHJ TO AT CLOCK LEVEL\r
                                ; WHEN BITS 24-35 COUNT DOWN TO ZERO\r
                                ; BITS 18-23 ARE DATA SET IN AC TAC WHEN PUSHJ DONE\r
-                               ; BITS 24-35 ARE NUMBER OF CLK TICKS LEFT TO GO\r
+                               ; BITS 24-35 ARE NO. OF CLK TICKS LEFT TO GO\r
        CIPWTM=CIPWT-1          ;FIRST LOC-1 OF CLOCK QUEUE\r
 \f;STORAGE FOR VARIOUS CORE ALLOCATION FUNCTIONS\r
 \r
@@ -253,79 +252,78 @@ CIPWT:    BLOCK SLJOBN+3          ;CLOCK REQUEST QUEUE
 \r
 \r
 NSWTBL:                                ;FIRST LOCATION OF MONITOR DATA STORAGE\r
-                               ; RETURNED BY GETTAB UUO (THESE LOCATIONS\r
+                               ; RETURNED BY GETTAB UUO(THESE LOCATIONS\r
                                ; PRESENT IN NON-SWAPPING SYSTEMS TOO)\r
-                               ; OCTAL NUMBERS IN () CORRESPOND TO GETTAB ARG\r
-CORTAB: BLOCK 10               ;(0-7) BIT=1 IF CORRESPONDING K OF CORE IN USE BY\r
+                               ; OCTAL NOS. IN () CORRESPOND TO GETTAB ARG\r
+CORTAB: BLOCK 10               ;(0-7)BIT=1 IF CORRESPONDING K OF CORE IN USE BY\r
                                ; ACTIVE,IDLE, OR DORMANT HIGH OR LOW SEGS OR NON-EX\r
        XP CORBLK,^D256\r
                                ;NUMBER OF BITS IN CORE TABLE\r
-CORMAX:        0                       ;(10)MAX. CORE REQUEST+1(IE LARGEST REL. ADR.+1)\r
-                               ; CAN BE RESTRICTED TO LESS THEN ALL OF USER CORE\r
+CORMAX:        0                       ;(10)MAX. CORE REQUEST+1(IE LARGEST REL. ADR,+1)\r
+                               ; CAN BE RESTRICTED TO LESS THAN ALL OF USER CORE\r
                                ; BY BUILD AND/OR ONCE\r
-                       \r
-\r
-CORLST:        0                       ;(11) 1 BIT BYTE POINTER TO LAST FREE BLOCK POSSIBLE\r
+CORLST:        0                       ;(11)1 BIT BYTE POINTER TO LAST FREE BLOCK POSSIBLE\r
                                ; SET BY SYSINI ON 143 STARTUP\r
-CORTAL:        0                       ;(12) TOTAL NUMBER OF FREE+DORMANT+IDLE CORE BLKS LEFT\r
-SHFWAT:        0                       ;(13) JOB NUMBER SHUFFLER HAS TEMPORARILY STOPPED\r
-                               ;UNTIL ITS IO DEVICES TO BECOME INACTIVE BEFORE SHUFFLING\r
-HOLEF: 0                       ;(14) ABSOLUTE ADDRESS OF LOWEST HOLE IN CORE, 0=NONE\r
-UPTIME:        0                       ;(15) NUMBER OF CLOCK TICKS SINCE SYSTEM LOADED OR\r
+CORTAL:        0                       ;(12)TOTAL NO. OF FREE+DORMANT+IDLE CORE BLOCKS LEFT\r
+SHFWAT:        0                       ;(13)JOB NO. SHUFFLER HAS TEMPORARILY STOPPED\r
+                               ;UNTIL ITS IO DEVICES BECOME INACTIVE, BEFORE SHUFFLING\r
+HOLEF: 0                       ;(14)ABS. ADDRESS OF JOB ABOVE LOWEST HOLE, 0 IF NO JOB.\r
+UPTIME:        0                       ;(15)NO. OF CLOCK TICKS SINCE SYSTEM LOADED OR\r
                                ; RESTARTED AT 143\r
-SHFWRD:        0                       ;(16) TOT NO. OF WORDS SHUFFLED BY SYSTEM\r
-STUSER:        0                       ;(17) JOB CURRENTLY USING THE SYSTEM TAPE\r
+SHFWRD:        0                       ;(16)TOT. NO. OF WORDS SHUFFLED BY SYSTEM\r
+STUSER:        0                       ;(17)JOB CURRENTLY USING THE SYSTEM TAPE\r
                                ; NEEDED SO CONTROL C WILL NOT TIE UP SYSTEM TAPE\r
-HIGHJB:        0                       ;(20) HIGHEST JOB NUMBER CURRENTLY ASSIGNED\r
-CLRWRD:        0                       ;(21) TOTAL NO. OF WORDS CLEARED BY 'CLRCOR' RTN.\r
-LSTWRD:        0                       ;(22) TOTAL NO. OF CLOCK TICKS WHEN NULL JOB RAN\r
-                               ; BUT OTHER JOBS WANTED TO RUN AND COULD NOT\r
-                               ; DO SO BECAUSE: ---\r
+HIGHJB:        0                       ;(20)HIGHEST JOB NUMBER CURRENTLY ASSIGNED\r
+\r
+CLRWRD:        0                       ;(21) TOTAL NO. OF WORDS CLEARED BY "CLRCOR" RTNE.\r
+LSTWRD:        0                       ;(22) TOTAL NO. OF CLOCK TICKS WHEN NULL\r
+                               ;JOB RAN BUT OTHER JOBS WANTED TO RUN, BUT\r
+                               ;COULD NOT BE BECAUSE:-\r
                                ;  1. SWAPPED OUT OR ON WAY IN OR OUT\r
-                               ;  2. MONITOR WAITING FOR I/O TO STOP SO\r
-                               ;      IT CAN SHUFFLE OR SWAP\r
-                               ;  3. JOB BEING SWAPPED OUT BECAUSE IT IS\r
+                               ;  2. MONITOR WAITING FOR IO TO STOP SO\r
+                               ;      CAN SHUFFLE OR SWAP\r
+                               ;  3. JOB BEING SWAPPED OUT BECAUSE\r
                                ;      EXPANDING CORE\r
 \r
                                ;INSERT NEW LOCATIONS HERE WHICH ARE OF INTEREST\r
                                ; TO USERS IN NON-SWAP AND SWAP SYSTEMS\r
-NSWMXL=<.-NSWTBL-1>B26         ;MAXIMUM ENTRY FOR GETTAB SHIFTED LEFT 9\r
+NSWMXL=<.-NSWTBL-1>B26 ;MAX. ENTRY FOR GETTAB SHIFTED LEFT 9\r
 \r
 ;CORE ALLOCATION DATA NOT AVAILABLE VIA GETTAB\r
-IFN FTTRACK, <INTERNAL LASCOR  ; (FOR DEBUGGING ONLY)\r
-LASCOR:        0                       ;LAST JOB OR HIGH SEG TO CALL CORE ROUTINES\r
->\r
+IFN FTTRACK,<INTERN LASCOR\r
+LASCOR:        0               ;LAST JOB OR HIGH SEG TO CALL CORE ROUTINES\r
+                       ; (FOR DEBUGGING ONLY)>\r
 \f;DATA LOCATIONS PRESENT ONLY IN SWAPPING SYSTEMS\r
 \r
-       IFG SYS50N, <                   ;SWAPPING SYSTEM ?\r
+       IFG SYS50N,<                    ;SWAPPING SYSTEM?\r
        INTERN SWPTBL,SWPMXL,BIGHOL,FINISH,FORCE,FIT,SWPERC,VIRTAL\r
        INTERN FULCNT,MAXSIZ,MAXJBN,SUMCOR\r
 SWPTBL:                                ;FIRST LOCATION OF MONITOR DATA STORAGE\r
-                               ; RETURNED BY GETTAB UUO (THESE LOCATIONS\r
+                               ; RETURNED BY GETTAB UUO(THESE LOCATIONS\r
                                ; PRESENT ONLY IN SWAP SYSTEMS)\r
-                               ; OCTAL NUMBERS IN () CORRESPOND TO GETTAB ARG\r
-BIGHOL:        0                       ;(0) CURRENT BIGGEST HOLE IN CORE (1K BLOCKS)\r
-FINISH:        0                       ;(1) IF +, THEN JOB NUMBER OF JOB BEING SWAPPED IN,\r
-                               ;IF -, THEN JOB NUMBER OF JOB BEING SWAPPED OUT\r
-FORCE: 0                       ;(2) JOB NUMBER BEING FORCED TO SWAP OUT\r
-FIT:   0                       ;(3) JOB NUMBER WAITING TO BE FITTED INTO CORE\r
-VIRTAL:        0                       ;(4) NUMBER OF FREE 1K BLOCKS OF SWAPPING SPACE LEFT\r
+                               ; OCTAL NOS. IN () CORRESPOND TO GETTAB ARG\r
+BIGHOL:        0                       ;(0)CURRENT BIGGEST HOLE IN CORE (1K BLOCKS)\r
+FINISH:        0                       ;(1)+JOBNO OF JOB BEING SWAPPED IN,\r
+                               ;-JOBNO OF JOB BEING SWAPPED OUT\r
+FORCE: 0                       ;(2)JOBNO BEING FORCED TO SWAP OUT\r
+FIT:   0                       ;(3)JOBNO WAITING TO BE FITTED INTO CORE\r
+VIRTAL:        0                       ;(4)NO. OF FREE 1K BLOCKS OF SWAPPING SPACE LEFT\r
                                ; (COUNTING DORMANT SEGMENTS AS IF FREE).\r
-                               ; PRINTED WITH CORE COMMAND (NO ARG) OR ERROR\r
+                               ; PRINTED WITH CORE COMMAND(NO ARG) OR ERROR\r
                                ; USUALLY THE SAME AS THE AMOUNT OF VIRTUAL CORE\r
                                ; LEFT IN SYSTEM, EXCEPT WHILE R,RUN,KJOB,GET\r
                                ; COMMAND ARE WAITING TO BE SWAPPED IN, BECAUSE\r
                                ; THE OLD DISK SPACE HAS NOT BEEN RETURNED YET,\r
                                ; BUT VIRTUAL CORE IS ONLY 140 WORDS FOR SWAPIN\r
-SWPERC:        0                       ;(5) LH= NUMBER OF SWAPPER READ OR WRITE FAILURES\r
-                               ; RH= ERROR BITS (BITS 18-21) + NUMBER OF K OF\r
+SWPERC:        0                       ;(5)LH= NO. OF SWAPPER READ OR WRITE FAILURES\r
+                               ; RH= ERROR BITS (BITS 18-21) + NO. OF K OF\r
                                ; DISCARDED SWAPPING SPACE\r
 \r
 \r
 \r
                                ;INSERT NEW LOCATIONS HERE WHICH ARE OF INTEREST\r
                                ; TO USER PROGS IN SWAPPING SYSTEMS\r
-SWPMXL=<.-SWPTBL-1>B26 ;MAXIMUM ENTRY FOR GETTAB SHIFTED LEFT 9\r
+SWPMXL=<.-SWPTBL-1>B26 ;MAX. ENTRY FOR GETTAB SHIFTED LEFT 9\r
 \f;MORE SWAPPING SYSTEM LOCATIONS (NOT RETURNED BY GETTAB)\r
 \r
 FULCNT:        0                       ;PRINT DISK IS FULL EVERY 30 SECONDS\r
@@ -334,24 +332,25 @@ MAXJBN:   0                       ;NUMBER OF THAT JOB
 SUMCOR:        0                       ;TEMP USED BY SWAPPER FOR SUM OF CORE NEEDED FOR SWAP IN\r
        IFN FT2REL,<\r
        INTERN SWPIN,SWPOUT\r
-SWPIN: 0                       ;JOB NUMBER BEING SWAPPED IN IF IT HAS A HIGH SEG\r
-                               ; USED TO REMEMBER THE JOB NUMBER DURING HIGH SEG\r
+SWPIN: 0                       ;JOB NO. BEING SWAPPED IN IF IT HAS A HIGH SEG\r
+                               ; USED TO REMEMBER THE JOB NUMBER DURING HIGH SEG SWAP\r
 \r
-SWPOUT:        0                       ;JOB NUMBER BEING SWAPPED OUT IF IT HAS A HIGH SEG\r
-                               ; USED TO REMEMBER THE JOB NUMBER DURING HIGH SEG\r
+SWPOUT:        0               ;JOB NO. BEING SWAPPED OUT IF IT HASA HIGH SEG\r
+                               ; USED TO REMEMBER THE JOB NUMBER DURING HIGH SEG SWAP\r
 \r
 >\r
        INTERN FTTRACK\r
-IFN FTTRACK, <         \r
-       INTERN LASIN,LASOUT\r
-LASIN: 0               ;LAST JOB OR HIGH SEG SWAPPED IN\r
+IFN FTTRACK,<          \r
+       INTERN LASOUT,LASIN\r
+\r
 LASOUT:        0               ;LAST JOB OR HIGH SEG SWAPPED OUT\r
+LASIN: 0               ;LAST JOB OR HIGH SEG SWAPPED IN\r
                        ; ABOVE TWO FOR DEBUGGING ONLY\r
 >\r
 >\r
 \r
-;DEFINE BLOCK FOR BIT TABLE DENOTING 4 WORD BLOCKS AVAILABLE (=0), IN USE (=1)\r
-; USE MULTIPLES OF 4*^D36 WORDS SO THE TABLE WILL HAVE A MULTIPLE OF ^D36 BITS\r
+;DEFINE BLOCK FOR BIT TABLE DENOTING 4. WORD BLOCKS AVAILABLE (=0), IN USE(=1)\r
+; USE MULTIPLES OF 4*36. WORDS SO THE TABLE WILL HAVE A MULTIPLE OF 36. BITS\r
 ; ADD 7 WORDS TO ACCOMODATE A POSSIBLE 1K BEYOND MINCOR AMOUNT\r
 \r
 IFG DSKN, <\r
@@ -359,67 +358,65 @@ INTERNAL DDBTAB,MINCOR
 \r
 DDBTAB:        BLOCK <MINCOR/^D144>+1+7\r
 >\r
-\r
 \f;MONITOR TABLES WITH ONE ENTRY PER JOB\r
 \r
        INTERN JBTSTS,JBTADR,JBTDAT,JBTNAM,JBTPRG\r
        INTERN JOBMAX,JBTMAX,MJOBN,JBTAD1,JOBMXL,JBTMXL\r
        INTERN FTTIME,FTKCT,FTPRV\r
 \r
-       JOBMAX==JOBN-1          ;MAXIMUM LEGAL JOB NUMBER\r
-       JOBMXL==<JOBMAX>B26     ;HIGHEST JOB NUMBERSHIFTED LEFT 9 (FOR GETTAB UUO)\r
-       MJOBN==-JOBN            ;NEGATIVE NUMBERS OF JOBS (COUNTING NULL JOB)\r
-       IFG KT10AN, <SEGN==JOBN+SEGN> ;IF ANY HIGH SEGMENTS,\r
+       JOBMAX==JOBN-1          ;MAX. LEGAL JOB NUMBER\r
+       JOBMXL==<JOBMAX>B26     ;HIGHEST JOB NO.SHIFTED LEFT 9(FOR GETTAB UUO)\r
+       MJOBN==-JOBN            ;NEG. NOS. OF JOBS(COUNTING NULL JOB)\r
+       IFG KT10AN,<SEGN==JOBN+SEGN> ;IF ANY HIGH SEGMENTS,\r
                                ; MUST HAVE AT LEAST AS MANY AS JOBS\r
        JBTMAX==JOBN+SEGN-1     ;HIGHEST INDEX IN JBT TABLES\r
-       JBTMXL=<JBTMAX>B26      ;HIGHEST JBT ENTRY SHIFTED LEFT 9 (FOR GETTAB UUO)\r
+       JBTMXL=<JBTMAX>B26      ;HIGHEST JBT ENTRY SHIFTED LEFT 9(FOR GETTAB UUO)\r
 JBTSTS:        BLOCK JOBN+SEGN         ;JOB AND HIGH SEG STATUS WORD\r
-                               ;LH==STATUS BITS (SEE S.MAC FOR DESCRIPTION)\r
-                               ;RH==QUANTUM RUN TIME LEFT (SEE CLKCSS) FOR LOW SEGS\r
+                               ;LH==STATUS BITS(SEE S.MAC FOR DESC.)\r
+                               ;RH==QUANTUM RUN TIME LEFT(SEE CLKCSS) FOR LOW SEGS\r
                                ;RH=IN CORE COUNT FOR HIGH SEGS\r
 JBTADR:        BLOCK JOBN+SEGN         ;JOB AND HIGH SEG CORE ASSIGNMENT\r
-                               ; LH==PROTECTION (LENGTH-1)\r
-                               ; RH==RELOCATION (ABSOLUTE LOCATION IN CORE)\r
-       JBTAD1==JBTADR+1        ;ADDRESS OF JOB 1 (USED BY SYSMAK)\r
+                               ; LH==PROTECTION,(LENGTH-1)RH==RELOCATION\r
+                               ; (ABS. LOC. IN CORE)\r
+       JBTAD1==JBTADR+1        ;ADR. OF JOB 1(USED BY SYSMAK)\r
        JBTDAT==JBTADR          ;RH==ADDRESS OF JOB DATA AREA\r
-                               ;SAME AS JBTADR (JDAT==PROG)\r
+                               ;SAME AS JBTADR(JDAT==PROG)\r
        INTERN JBTSGN\r
 JBTSGN:        IFG SEGN, <\r
        BLOCK JOBN              ;SEGMENT NUMBER OF HIGH SEGMENT THIS JOB\r
-                               ; IS USING IN CORE OR ON DISK\r
+                               ; IS USING IN CORE OR DISK\r
                                ; 0 MEANS JOB DOES NOT HAVE HIGH SEG\r
-                               ;LH=USER DEPENDENT HIGH SEG STATUS BITS\r
+                               ; LH=USER DEPENDENT HIGH SEG STATUS BITS\r
                                ; (SEE S.MAC)\r
-       XP ITMSGN,ITEM+JOBMXL   ;LH SYMBOL FOR GETTAB UUO\r
+       XP ITMSGN,ITEM+JOBMXL   ;LH SYSMBOL FOR GETTAB UUO\r
 >\r
        IFE SEGN, <\r
        0\r
        XP ITMSGN,JOBMXL        ;LH SYMBOL FOR GETTAB UUO\r
                                ;SO THAT JBTSGN IS UNDEFINED\r
-                               ;I.E., MAKE INDEXING BY ITEM BE 0\r
-                               ;       BUT ALLOW REFERENCES UP TO JOBMXL\r
+                               ;I.E. MAKE INDEXING BY ITEM BE 0\r
+                               ;      BUT ALLOW REFERENCES UP TO JOBMXL\r
 >\r
-       IFG DSKN, <             ;DISK SYSTEM ?\r
+       IFG DSKN,<              ;DISK SYSTEM?\r
        INTERN PRJPRG,JBTDIR\r
-JBTDIR:                                ;HIGH SEGMENT DIRECTORY NAME (DSK) OR PHYSICAL\r
-                               ; DEVICE NAME (DTA,MTA)\r
-PRJPRG:        BLOCK JOBN+SEGN         ;XWD PROJECT NUMBER,PROGRAMMER NUMBER\r
+JBTDIR:                                ;HIGH SEGMENT DIRECTORY NAME(DSK) OR PHYSICAL\r
+                               ; DEVICE NAME(DTA,MTA)\r
+PRJPRG:        BLOCK JOBN+SEGN         ;XWD PROJECT NO.,PROGRAMMER NO.\r
 >\r
-       IFE DSKN, <IFG SEGN, <  ;REENTRANT MONITOR WITHOUT DISK ?\r
+       IFE DSKN,<IFG SEGN,<    ;REENTRANT MONITOR WITHOUT DISK?\r
        INTERN JBTDIR\r
        JBTDIR=.-JOBN           ;INDEX BY HIGH SEG NUMBER\r
-       BLOCK SEGN              ;HIGH SEGMENT PHYSICAL DEVICE NAME (DTA,MTA)\r
+       BLOCK SEGN              ;HIGH SEGMENT PHYSICAL DEVICE NAME(DTA,MTA)\r
 >>\r
-       IFN FTTIME, <\r
+       IFN FTTIME,<\r
        INTERN RTIME,TTIME\r
-RTIME: BLOCK JOBN              ;TOTAL RUN TIME SINCE LAST IJOB OR RUNTIME\r
-TTIME: BLOCK JOBN              ;TOTAL RUN TIME SINCE LAST IJOB\r
+RTIME: BLOCK JOBN              ;TOT. RUN TIME SINCE LAST IJOB OR RUNTIME\r
+TTIME: BLOCK JOBN              ;TOT. RUN TIME SINCE LAST IJOB\r
 >\r
-\f      IFG SYS50N,<            ;SWAPPING SYSTEM ?\r
-       INTERNAL JBTSWP,JBTCHK\r
+\f      IFG SYS50N,<            ;SWAPPING SYSTEM?\r
+       INTERN JBTSWP,JBTCHK\r
 JBTSWP:        BLOCK JOBN+SEGN         ;LH:==PROTECT TIME WHILE JOB IS IN CORE.\r
                                ; DISK ADDRESS WHILE SWAPPED OUT\r
-                               ;BIT 0=1 IF SEGMENT IS FRAGMENTED\r
                                ; BITS18-26:==OUTCORE IMAGE SIZE\r
                                ; BITS27-35:==INCORE IMAGE SIZE\r
                                ; FOR HIGH SEG, LH ALWAYS DISK ADDRESS\r
@@ -427,27 +424,28 @@ JBTSWP:   BLOCK JOBN+SEGN         ;LH:==PROTECT TIME WHILE JOB IS IN CORE.
                                ; SAME AREA FOR HIGH SEG\r
 \r
 >\r
-JBTNAM:                                ;NAME OF HIGH SEGMENT (FILE IT WAS INITIALIZED FROM)\r
+JBTNAM:                                ;NAME OF HIGH SEGMENT(FILE IT WAS INITIALIZED FROM)\r
 JBTPRG:        BLOCK JOBN+SEGN         ;NAME OF FILE USED IN LAST R,RUN,GET, ETC\r
                                ; USED BY SYSTAT PROGRAM\r
-       IFN FTKCT, <\r
+       IFN FTKCT,<\r
        INTERN JBTKCT\r
-JBTKCT:        BLOCK JOBN              ;PRODUCT OF CORE LENGTH (IN K) TIMES NUMBER OF JIFFIES\r
+JBTKCT:        BLOCK JOBN              ;PRODUCT OF CORE LENGTH(IN K) TIMES NO. OF JIFFIES\r
                                ; PROGRAM USED CPU. USED FOR TIME ACCOUNTING.\r
 >\r
-       IFN FTPRV, <\r
+       IFN FTPRV,<\r
        INTERN JBTPRV\r
-JBTPRV:        BLOCK JOBN              ;PRIVILEGE BITS FOR JOB SET BY LOGIN\r
+JBTPRV:        BLOCK JOBN              ;PRIVELEGE BITS FOR JOB SET BY LOGIN\r
 >\r
-       IFG DSKN, <\r
+       IFG DSKN,<\r
        INTERN MQUEUE,MQTOP\r
-MQUEUE:        BLOCK JOBN              ;DISK MONITOR I/O QUEUE\r
+\r
+MQUEUE:        BLOCK JOBN              ;DISK MONITOR IO QUEUE\r
        MQTOP=.                 ;LAST LOC+1 OF MONITOR QUEUE\r
 >\r
-       IFG SYS50N, <\r
+       IFG SYS50N,<\r
 ;THE FOLLOWING ARE USED TO CREATE MXQUE\r
-;THE MAXIMUM QUEUE SIZE, USED BY SWAPPING SCHEDULER (SCHED)\r
-       FTDISK=-DSKN            ;DEFINE FEATURE SWITCH FTDISK,SINCE IT APPEARS\r
+;THE MAXIMUM QUEUE SIZE, USED BY SWAPPING SCHEDULER(SCHED)\r
+       FTDISK==-DSKN           ;DEFINE FEATURE SWITCH FTDISK,SINCE IT APPEARS\r
                                ; IN MACRO QUEUES\r
                                ; WHICH IS DEFINED IN S.MAC\r
        XP      MXQUE,0\r
@@ -459,7 +457,7 @@ MQUEUE:     BLOCK JOBN              ;DISK MONITOR I/O QUEUE
 DEFINE X       (A)\r
 \r
                <A'Z==MXQUE\r
-       INTERN  A'Z\r
+       INTERN A'Z\r
                MXQUE==MXQUE+1>\r
        CODES\r
                MXQUE==MXQUE+3\r
@@ -467,10 +465,10 @@ DEFINE    X       (A)
        XALL                    ;BACK TO NORMAL MACRO EXPANSION\r
 \r
        INTERN JBTQ,JBTQM1,JBTQP1,JBTQMN\r
-       BLOCK MXQUE             ;NUMBER OF QUEUES FOR SWAPPING SCHEDULER\r
+       BLOCK MXQUE             ;NO. OF QUEUES FOR SWAPPING SCHEDULER\r
 JBTQ:  BLOCK JOBN              ;ONE ENTRY PER JOB,\r
                                        ; LH=PREVIOUS JOB, RH=NEXT JOB IN QUEUE\r
-                               ; NEGATIVE MEANS THIS IS FIRST (LH) OR LAST (RH)\r
+                               ; NEGATIVE MENAS THIS IS FIRST (LH) OR LAST (RH)\r
                                ; JOB IN QUEUE\r
        JBTQM1==JBTQ-1                  ;JBTQ-1\r
        JBTQP1==JBTQ+1                  ;JBTQ+1\r
@@ -480,25 +478,25 @@ JBTQ:     BLOCK JOBN              ;ONE ENTRY PER JOB,
 ;INDEXED BY TTY LINE NUMBER, CONTAINS TTY DDB ADDRESS IN RH\r
 ;(ASSIGNED WHEN FIRST CHARACTER TYPED ON TTY BY SCNSER\r
        ;BIT 0==1 IF COMMAND TYPED BUT NOT PROCESSED\r
-       ;BITS 6-11==JOB NUMBER TTYP IS ATTACHED TO\r
+       ;BITS 6-11==JOB NUMBER TTY IS ATTACHED TO\r
        ;BITS 12-17==NEXT LINE NUMBER IN TALK RING OR ITS SELF IF NOT TALKING\r
 \r
        INTERN TTYTAB,PTYTAB,TPYTAB,TCONLN,MLTTYL,MTTYLN,TTPLEN,TTMODL,TTPMXL\r
 \r
-TTYTAB:        BLOCK HGHLIN+1+1        ;NO OF TTYS PLUS CTY\r
+TTYTAB: BLOCK HGHLIN+1+1       ;NO OF TTYS PLUS CTY\r
        TPYTAB==.-1             ;ADDRESS OF LAST ENTRY\r
        TCONLN==.-1-TTYTAB      ;LINE NUMBER OF CTY\r
        BLOCK PTYN              ;PSEUDO TTY TRANSLATOR TABLE\r
-                               ; THIS IS FOR LINKED TTY LINES,\r
+                               ; THIS IS FOR THE LINKED TTY LINES,\r
                                ; NOT THE DEVICE "PTYN"'S DDB\r
        TTPLEN==.-TTYTAB        ;LENGTH OF ENTIRE TABLE\r
-       TTPMXL=<TTPLEN-1>B26    ;HIGHET ENTRY IN TTYTAB SHIFTED LEFT 9(FOR GETTAB UUO)\r
+       TTPMXL==<TTPLEN-1>B26   ;HIGHEST ENTRY IN TTYTAB SHIFTED LEFT 9(FOR GETTAB UUO)\r
 \r
-       MLTTYL==-JOBN           ;NEG, NO OF TTY DDBS (ONE FOR EACH JOB, PLUS 1 ETRA\r
+       MLTTYL==-JOBN           ;NEG, NO OF TTY DDBS (ONE FOR EACH JOB, PLUS 1 EXTRA\r
                                ; SO JOB CAPACITY EXCEEDED MESSAGE CAN BE TYPED\r
        MTTYLN==-TTPLEN         ;NEG, LENGTH OF ENTIRE TRANSLATOR TABLE\r
 \r
-PTYTAB:        BLOCK PTYN+1            ;ADDRESS OF THE DDBS FOR DEVICE PTYN\r
+PTYTAB:        BLOCK PTYN+1            ;ADDRESSES OF THE DDBS FOR DEVICE PTYN\r
                                ; NOT THE LINKED TTY LINES. SEE TPYTAB.\r
 ;LAST LOCATION CLEARED BY SYSINI ON 143 RESTART\r
        SYSEND==.-1\r
@@ -527,33 +525,33 @@ CNTDB:    SETZM DESONC            ;PREVENT DESTRUCTION OF ONCE ONLY CODE
        HRRM TAC, LINKED        ;STORE EXIT FROM THIS ROUTINE (ONCE ONLY CODE WILL\r
                                ; BE OVERLAYED BY MULTIPLE DEVICE DATA\r
                                ; BLOCK GENERATION)\r
-       MOVSI TAC,INTNUM        ;NEG NUMBER OF ENTRIES IN TABLE\r
+       MOVSI TAC,INTNUM        ;NEG NO. OF ENTRIES IN TABLE\r
        MOVEI DEVDAT,DEVLST-DEVSER      ;MAKE DEVLST LOOK LIKE DEVSER IN A DOB\r
 LOOP:  MOVE TAC1,INTTB1(TAC)   ;GET NEXT DEVICE DATA BLOCK ADDRESS\r
        JUMPE TAC1,NEXT         ;0 MEANS NO DOB FOR DEVICE\r
-       SKIPE DESONC            ;OK TO DESTROY ONCE ONLY CODE ?\r
+       SKIPE DESONC            ;OK TO DESTROY ONCE ONLY CODE?\r
        HRLM TAC1,DEVSER(DEVDAT)        ;YES, STORE IN PREVIOUS DEVICE DATA BLOCK\r
        HRRZ DEVDAT,TAC1        ;MAKE DEVDAT POINT TO CURRENT DOB\r
-       LDB UUO,DDBNUM          ;GET NUMBER OF DDB'S\r
-       SOJLE UUO,NEXT          ;ONE OR LESS ?\r
+       LDB UUO,DDBNUM          ;GET NO. OF DDB'S\r
+       SOJLE UUO,NEXT          ;ONE OR LESS?\r
        HRRZ JBUF,DEVDAT        ;NO, CREATE MULTIPLE COPIES OF DOB\r
                                ; SAVE ORIGINAL IN JBUF\r
        MOVEI AC3,1             ;STARTING WITH DEV1,DEV2,DEV77\r
        LDB AC1,PUNIT           ;START UNIT NUMBER FROM\r
                                ; ASSEMBLE DEVICE DATA BLOCK\r
-                               ; PTY STARTS UNIT NUMBER AT 1 INSTEAD OF 0\r
+                               ; PTY STARTS UNIT NO. AT 1 INSTEAD OF 0\r
                                ; ALTHOUGH DEVICE NAMES ARE PTY0,PTY1,ETC.\r
 \fMULDDB:       HRRZ TAC1,SYSSIZ        ;ADR. OF NEXT DDB IS AT END OF MONITOR\r
-       SKIPE DESONC            ;OK TO DESTROY ONCE ONLY CODE ?\r
-       HRLM TAC1,DEVSER(DEVDAT) ;YES, MAKE PREVIOUS DDB POINT TO THE ONE ABOUT TO BE CREATED\r
+       SKIPE DESONC            ;OK TO DESTROY ONCE ONLY CODE?\r
+       HRLM TAC1,DEVSER(DEVDAT) ;YES,MAKE PREVIOUS DDB POINT TO ONE ABOUT TO BE CREATED\r
        HRL DEVDAT,JBUF         ;SOURCE ADDRESS TO LH\r
        HRR DEVDAT,TAC1         ;DESTINATION ADDRESS TO RH\r
        HLRZ AC2,INTTB1(TAC)    ;LENGTH OF DEVICE DATA BLOCK\r
        ADDB AC2,SYSSIZ         ;LAST LOCATION+1 AFTER MOVE\r
-       SKIPN DESONC            ;OK TO DESTROY ONCE ?\r
+       SKIPN DESONC            ;OK TO DESTROY ONCE?\r
        JRST JUSTCT             ;NO, JUST COUNT DDB SPACE\r
        BLT DEVDAT,-1(AC2)      ;MOVE ORIGINAL TO FREE STORAGE\r
-       SKIPL INTTAB(TAC)       ;IS THIS DECTAPE (ANY OF 3 SERVICES)?\r
+       SKIPL INTTAB(TAC)       ;IS THIS DECTAPE(ANY OF 3 SERVICES)?\r
        JRST NOTDTA             ;NO\r
        HRRZ AC2,DEVDAT         ;YES,DESTINATION\r
        SUBI AC2,(JBUF)         ;-SOURCE=DISTANCE MOVED\r
@@ -561,9 +559,8 @@ LOOP:       MOVE TAC1,INTTB1(TAC)   ;GET NEXT DEVICE DATA BLOCK ADDRESS
                                ; (SORRY ABOUT NO SYMBOL)\r
 NOTDTA:        MOVE PROG,PHYNAM        ;BYTE POINTER TO NEWLY CREATED\r
                                ; DDB PHYSICAL NAME\r
-\r
-       MOVE ITEM,AC3           ;MAKE COPY OF UNIT NUMBER\r
-       TRNN ITEM,70            ;IS IT 10 OR MORE ?\r
+       MOVE ITEM,AC3           ;MAKE COPY OF UNIT NO.\r
+       TRNN ITEM,70            ;IS IT 10 OR MORE?\r
        JRST SMALL              ;NO\r
        ROT ITEM,-3             ;YES, CONVERT HIGH ORDER OCTAL DIGIT TO\r
        ADDI ITEM,20            ;SIXBIT\r
@@ -579,11 +576,11 @@ JUSTCT:   CAIGE AC3,(UUO)         ;COMPARE WITH HIGHEST DEVICE NUMBER
 NEXT:  AOBJN TAC,.+1           ;MOVE BY TWOS\r
        AOBJN TAC,LOOP          ;ANY MORE DEVICES\r
        MOVEI TAC,0             ;NO, FLAG END OF DEVICE DATA BLOCK CHAIN WITH 0 LINK\r
-       SKIPE DESONC            ;OK TO DESTROY ONCE ?\r
+       SKIPE DESONC            ;OK TO DESTROY ONCE?\r
        HRLM TAC,DEVSER(DEVDAT) ;YES, STORE 0 IN CASE LAST DDB IS MULTIPLE\r
-IFG DSKN, <\r
-       EXTERNAL LOCORE,CRINIT\r
-       MOVE TAC,SYSSIZ         ;SIZE OF MONITOR SO FAR (SYSMAK, EXEC DDT OR NOT)\r
+IFG DSKN,<\r
+       EXTERN LOCORE,CRINIT\r
+       MOVE TAC,SYSSIZ         ;SIZE OF MONITOR SO FAR(SYSMAK,EXEC DDT OR NOT)\r
        MOVEM TAC,LOCORE        ;SAVE POINTER TO FIRST 4 WORD BLOCK\r
        ADDI TAC,MINCOR         ;MINIMUM REQUIRED FOR DISK DDBS\r
        IORI TAC,1777           ;FORCE TO 1K BOUNDARY\r
@@ -603,71 +600,74 @@ DESONC:   0                       ;FLAG =0 IF CALLED BY JSP TAC,CNTDB
 DDBNUM:        POINT 8,INTTAB(TAC),8   ;POINTER TO DDB NUMBER\r
 PHYNAM:        POINT 6,DEVNAM(DEVDAT),17       ;BYTE POINTER TO DB PHYSICAL NAME\r
 \r
-\f;MACROS TO DEFINE PI CHANNEL NUMBER AND GENERATE INTERRUPT CHAINING\r
-;INFORMATION FOR ONCE \r
+\f;MACRO TO DEFINE PI CHANNEL NUMBER AND GENERATE INTERRUPT CHAINNING\r
+;INFORMATION FOR ONCE\r
 ;SO IT CAN LINK THE DEVICE INTERRUPT SERVICE ROUTINES AND THE DEVICE DATA BLOCKS\r
 ;TABLE INTTAB IS GENERATED WITH PAIRS OF ENTRIES FOR EACH DEVICE\r
-;WHICH HAS A DEVICE DATA BLOCK(0-7)\r
-;FIRST WORD: BIT 0==1 IF DECTAPE,BITS 1-9==NO. OF DDBS, BITS 9-17==PI CHANNEL(0-7)\r
+;WHICH HAS A DEVICE DATA BLOC(0-7)\r
+;FIRST WORD: BIT 0==1 IF DECTAPE,BITS 1-9==NO. OF DDBS,BITS 9-17==PI CHANNEL(0-7)\r
 ;0 MEANS NO PI CHANNEL (EG PTY)\r
-;SECOND WORD:LH==0 IF SINGLE DEVICE,==LENGTH OF DDB IF MULTIPLE, RH==DDB ADDRESS\r
+;SECOND WORD:LH==0 IF SINGLE DEVICE,==LENGTH OF DDB IF MULTIPLE,RH==DDB ADDRESS\r
 \r
 ;MACRO FOR DEVICES WHICH ARE ALWAYS PRESENT(AND WHICH DO NOT USE A CHANNEL SAVE ROUTINE\r
 ;AND HAVE NO DDB (EX-APR,CTY,PEN,CLK)\r
 \r
-DEFINE SPASGINT (DEV,PI) <\r
+\r
+DEFINE SPASGINT (DEV,PI) < \r
        DEV'N==1\r
        ASGINT DEV,PI\r
 >\r
 \r
-DEFINE ASGINT (DEV,PI) <\r
-       IFG DEV'N, <IFG PI, <\r
-       IFE <PI-.CH>, <.CHAS==1 ;CHANNEL PI IN USE.>\r
-       INTERNAL DEV'CHN\r
+DEFINE ASGINT (DEV,PI)<\r
+       IFG DEV'N,<IFG PI,<\r
+       IFE <PI-.CH>,<.CHAS==1  ;CHANNEL PI IN USE>\r
+       INTERN DEV'CHN\r
                DEV'CHN==PI\r
-       EXTERNAL DEV'INT        ;INTERRUPT SERVICE CONSO INSTRUCTION\r
+       EXTERN DEV'INT          ;INTERRUPT SERVICE CONSO INSTRUCTION\r
                XWD PI,DEV'INT  ;GENERATE INTERRUPT ENTRY POINT FOR ONCE\r
                XWD 0,0         ;NO DDB TO CHAIN TOGETHER\r
-       ASGIN1 DEV,\PI\r
+       ASGIN1 (DEV,\PI)\r
 >\r
 >>\r
 \r
-DEFINE ASGIN1 (DEV,PI) <\r
-       IFDEF   CH'PI, <                ;WAIT TILL PASS 2 TO DEFINE\r
+DEFINE ASGIN1 (DEV,PI)<\r
+       IFDEF   CH'PI,<         ;WAIT TILL PASS 2 TO DEFINE\r
                        DEV'CHL==CH'PI\r
-               INTERNAL DEV'CHL\r
+               INTERN DEV'CHL\r
 >>\r
+;MACRO FOR OPTIONAL DEVICES (ALWAYS USE CHANNEL SAVE ROUTINE)\r
+       ; (EXAMPLE: CR, DSK, PTR, ETC.  ALSO PTY WITH 0 PI)\r
 \r
-;MACRO FOR OPTIONAL DEVICES WHICH ALWAYS USE A CHANNEL SAVE ROUTINE\r
-; (EXAMPLES: CDR, DSK, PTR, ETC.  ALSO PTY WITH 0 PI)\r
-\r
-DEFINE         SPASGSAV (DEV,PI,NUM) <\r
+DEFINE SPASGSAV (DEV,PI,NUM) <\r
        DEV'N==NUM\r
        ASGSAV DEV,PI\r
 >\r
 \r
+\r
 DEFINE ASGSAV (DEV,PI) <\r
        IFG DEV'N, <IFG PI, <\r
-               EXTERN DEV'INT          ;INTERRUPT SERVICE CONS INSTRUCTION\r
+               EXTERN DEV'INT          ;INTERRUPT SERVICE CONSO INSTRUCTION\r
                >\r
        EXTERN DEV'DDB\r
        ASGSV1 (DEV,\PI)\r
        >>\r
+\r
 \f;MACRO FOR:   1. COMPLETION OF THE DEFINITION REQUIRED FOR THOSE\r
 ;                 DEVICES INVOKING THE ASGSAV MACRO\r
 ;\r
 ;              2. COMPLETE DEFINITION FOR THOSE DEVICES WITH THEIR\r
-;                 INTERRUPT ENTRY POINT AND DDB'S HERE IN COMMON\r
+;                 INTERRUPT ENTRY POINT AND DDB'S IN COMMON\r
 ;                 (EXAMPLE: LPT'S)\r
 \r
 DEFINE ASGSV1 (DEV,PI) <\r
        IFG PI, <\r
-               IFE <PI-.CH>, <.CHAS==1         ;CHANNEL PI IN USE.>\r
+               IFE <PI-.CH>,<.CHAS==1          ;CHANNEL PI IN USE>\r
                DEV'CHN==PI             ;DEFINE DEVICE CHANNEL NUMBER\r
                INTERN DEV'CHN          ;DECLARE INTERNAL - ONLY IF DEVICE WANTED\r
                USED'PI==1              ;SET FLAG SO THAT A CHANNEL SAVE\r
                                        ; ROUTINE WILL BE GENERATED FOR\r
                                        ; THIS PI CHANNEL\r
+\r
        IFDEF SAV'PI, <         ;WAIT TILL CHANNEL SAVE ROUTINES\r
                                        ; ARE DEFINED BELOW (IN PASS 2)\r
 \r
@@ -676,34 +676,36 @@ DEFINE ASGSV1 (DEV,PI) <
                                        ; (USUALLY POPJ USED)\r
                DEV'CHL==CH'PI          ;LOCATION WHERE INTERRUPT PC IS STORED\r
                DEV'SAC==SAVAC'PI       ;STARTING CHANNEL SAVE LOCATION FOR AC'S\r
+\r
                INTERN DEV'SAV, DEV'RET, DEV'CHL, DEV'SAC\r
        >>\r
 \r
        DTBIT==0                        ;ASSUME THIS IS NOT A DECTAPE\r
 \r
-       IFIDN <DEV>, <DTA>, <DTBIT==1>  ;IS IT PDP-10 DECTAPES ?\r
-       IFIDN <DEV>, <DTC>, <DTBIT==1>  ; OR PDP-6 DECTAPES ?\r
+       IFIDN <DEV>,<DTA>,<DTBIT==1>    ;IS IT PDP-10 DECTAPES?\r
+       IFIDN <DEV>,<DTC>,<DTBIT==1>    ; OF PDP-6 DECTAPES?\r
 \r
        IFE PI, <\r
                XWD DEV'N*1000+0,0      ;NO PI CHANNEL FOR THIS DEVICE\r
        >\r
 \r
        IFG PI, <\r
-               XWD DTBIT*400000+DEV'N*1000+PI,DEV'INT  ;FIRST WORD OF INTTAB ENTRY\r
+               XWD DTBIT*400000+DEV'N*1000+PI,DEV'INT  ;FIRST WORD\r
        >\r
 \r
        IFG DEV'N-1, <\r
-               XWD DEV'DDS,DEV'DDB     ;MULTIPLE DEVICE SECOND WORD OF INTTAB ENTRY\r
+               XWD DEV'DDS,DEV'DDB     ;MULTIPLE DEVICE SECOND WORD\r
                EXTERN DEV'DDS\r
        >\r
+\r
        IFE DEV'N-1, <\r
-               XWD 0,DEV'DDB           ;SINGLE DEVICE SECOND WORD OF INTTAB ENTRY\r
+               XWD 0,DEV'DDB           ;SINGLE DEVICE SECOND WORD\r
        >>\r
-\f\r
-;MACRO'S TO ALLOW GENERATION OF MULTIPLE INTTAB ENTRIES FOR MULTIPLE\r
-; DEVICES SUCH AS LINE-PRINTERS\r
+\f;MACRO'S TO ALLOW GENERATION OF MULTIPLE INTTAB ENTRIES FOR MULTIPLE\r
+; DEVICES SUCH AS LINE PRINTERS\r
 \r
 DEFINE MULASG (DEV,DE,PI) <\r
+\r
        IFG DEV'N, <\r
                ZZ==0\r
                REPEAT DEV'N, <\r
@@ -714,26 +716,20 @@ DEFINE MULASG (DEV,DE,PI) <
 >\r
 \r
 DEFINE DEVASG (DE,X,PI) <\r
+\r
        DE'X'N==1\r
        ASGSV1 DE'X,\PI\r
 >\r
 \r
-\r
 ;MACROS TO CONTROL ASSIGNMENT OF PI CHANNELS TO DEVICES\r
 \r
-DEFINE NEXTCH <        .CH==.CH+1\r
+DEFINE NEXTCH< .CH==.CH+1\r
 .CHAS==0\r
-NEXTCU \.CH    \r
+NEXTCU (\.CH)\r
 >\r
-DEFINE NEXTCQ <        IFN .CHAS,<NEXTCH>>\r
-DEFINE NEXTCU (N) < IFDEF UNIQ'N,<IFN UNIQ'N,<NEXTCH>>>\r
-\r
-\r
-\r
-\r
-\r
-\r
-;ASSUME NO PI CHANNEL SAVE ROUTINES NEEDED\r
+DEFINE NEXTCQ< IFN .CHAS,<NEXTCH>>\r
+DEFINE NEXTCU (N) <IFDEF UNIQ'N,<IFN UNIQ'N,<NEXTCH>>>\r
+\f;ASSUME NO PI CHANNEL SAVE ROUTINES NEEDED\r
 \r
        USED1==0\r
        USED2==0\r
@@ -746,17 +742,15 @@ DEFINE NEXTCU (N) < IFDEF UNIQ'N,<IFN UNIQ'N,<NEXTCH>>>
 ;NOW GENERATE THE TABLE FOR ONCE AND DEFINE PI CHANNEL ASSIGNMENTS\r
 \r
        INTERN INTTAB,INTTB1,INTNUM,SCNN,CTYN\r
-\r
                CTYN==1         ;ALWAYS ONE CTY\r
                SCNN==JOBN      ;NUMBER OF SCN DDB\r
-                               ; ONE FOR EACH JOB + NULL JOB (EXTRA ONE)\r
+                               ; ONE FOR EACH JOB + NULL JOB(EXTRA ONE)\r
                APRN==1         ;ALWAYS AN APR\r
                CLKN==1         ;ALWAYS LOWEST PRIORITY CLOCK\r
 \r
 \r
-INTTAB:                        ;TABLE OF DATA FOR DEFINING PI CHAN AND NUMBER OF DOB\r
+INTTAB:                        ;TABLE OF DATA FOR DEFINING PI CHAN AND NO. OF DOB\r
        INTTB1==INTTAB+1\r
-\r
        ASGSAV PTY,0    \r
 \r
 .CHAS==0\r
@@ -769,30 +763,29 @@ NEXTCH
 ;NOTE THAT THE PDP-6 DECTAPE AND MAGTAPE SHARE A\r
 ; 136 DATA CONTROL IF BOTH ARE PRESENT.\r
 \r
-       ;DATA PRODUCTS DISK BLKI/BLKO PI CHANNEL:\r
-       IFNDEF DCBCHN, <IFG DPDN, <XP DCBCHN,.CH\r
+       ;DATA PRODUCTS DISK BLKO/BLKI PI CHANNEL\r
+       IFNDEF DCBCHN,<IFG DPDN,<XP DCBCHN,.CH\r
        NEXTCH>>\r
        ;PDP-6 OR PDP-10 MAGTAPE BLKI/BLKO PI CHANNEL:\r
-       IFNDEF MTDCHN, <IFG MTAN, <XP MTDCHN,.CH\r
+       IFNDEF MTDCHN,<IFG MTAN,<XP MTDCHN,.CH\r
        NEXTCH>>\r
-       IFNDEF DCTCHN, <IFG MTCN, <XP DCTCHN,.CH\r
+       IFNDEF DCTCHN,<IFG MTCN,<XP DCTCHN,.CH\r
        NEXTCH>>\r
-       ;PDP-6 OR PDP-10 DECTAPE BLKI/BLKO PI CHANNEL:\r
-       IFNDEF DTDCHN, <IFG DTAN, <XP DTDCHN,.CH\r
+       ;PDP6 OR PDP10 DECTAPE BLKI/BLKO PI CHANNEL:\r
+       IFNDEF DTDCHN,<IFG DTAN,<XP DTDCHN,.CH\r
        NEXTCH>>\r
-       IFNDEF DCTCHN, <IFG DTCN, <XP DCTCHN,.CH\r
+       IFNDEF DCTCHN,<IFG DTCN,<XP DCTCHN,.CH\r
        NEXTCH>>\r
 \r
-IFNDEF BLKMXC, <BLKMXC=.CH>    ;REMEMBER THIS CHANNEL ON PASS 1\r
+IFNDEF BLKMXC,<BLKMXC=.CH>     ;REMEMBER THIS CHANNEL ON PASS 1\r
 .CH==BLKMXC                    ;ON PASS 2, SKIP OVER BLKI CHANNELS\r
 \r
-\f;THE FOLLOWING ARE GROUPED ON A CHANNEL FOR HIGH-PRIORITY DEVICES\r
+;THE FOLLOWING ARE GROUPED ON A CHANNEL FOR HIGH-PRIORITY DEVICES\r
        ASGSAV CDR,.CH\r
        ASGINT APR,.CH\r
 \r
 NEXTCQ\r
-\r
-;THE FOLLOWING ARE MEDIUM-PRIORITY DEVICES, AS A GROUP\r
+\f;THE FOLLOWING ARE MEDIUM-PRIORITY DEVICES, AS A GROUP\r
        ASGSAV SCN,.CH\r
        ASGSAV PTR,.CH\r
        MULASG LPT,LP,.CH\r
@@ -803,107 +796,101 @@ NEXTCQ
        ASGINT CTY,.CH\r
 \r
 NEXTCQ\r
-\f\r
-;THE FOLLOWING ARE LOWER-PRIORITY DEVICES, AS A GROUP\r
+\r
+;THE FOLLOWING ARE LOWER-PRIORITY DEVICES,AS A GROUP\r
        ASGSAV DSK,.CH\r
        ASGSAV PEN,.CH\r
        ASGSAV PTP,.CH\r
        ASGSAV CDP,.CH\r
        ASGSAV PLT,.CH\r
-NEXTCQ\r
 \r
+NEXTCQ\r
 \r
-;THESE DEVICES GET LOW PRIORITY CHANNEL\r
+;THE DISPLAY GETS ITS OWN LOW-PRIORITY CHANNEL\r
        ASGSAV DIS,.CH\r
 \r
 NEXTCQ\r
-\f\r
+\r
 ;LAST IS THE SCHEDULER, ON CHANNEL 7 BY ITSELF\r
 \r
-IFG <.CH-7>, < PRINTX ;NOT ENOUGH PI'S TO SERVICE THIS CONFIGURATION.\r
+IFG <.CH-7>,<PRINTX ;NOT ENOUGH PI'S TO SERVICE THIS CONFIGURATION\r
                PRINTX ;SUGGEST EDITING COMMON TO PUT MORE DEVICES ON\r
-               PRINTX ; A SINGLE CHANNEL\r
->\r
+               PRINTX ; A SINGLE CHANNEL>\r
 \r
 .CH==7\r
        ASGINT CLK,.CH\r
-\r
-       SPCINT\r
-                               ;GENERATE ANY SPECIAL DEVICES CUSTOMER IS SUPPLYING\r
+\f      SPCINT\r
+                               ;GENERATE ANY SPECIAL DEVICES CUSTOMER IS SUPPLING\r
                                ; WHICH DO NOT USE A CHANNEL SAVE ROUTINE AND HAVE\r
-                               ; NO DEVICE DATA BLOCK\r
+                               ; NO DEVIC EDATA BLOCK\r
        SPCSAV\r
-                               ;GENERATE ANY SPECIAL DEVICES CUSTOMER IS SUPPLYING\r
+                               ;GENERATE ANY SPECIAL DEVICES CUSTOME IS SUPPLYING\r
                                ; WHICH DO NEED A CHANNEL SAVE ROUTINE\r
+                               ; AND HAVE MULTIPLE DEVICE DATA BLOCKS(0 MEANS NONE)\r
 \r
 ;END OF THE ASSIGNMENT TABLE\r
 \r
        INTNUM==INTTAB-.        ;-LENGTH OF INTERRUPT CHANNEL ASSIGNMENT TABLE\r
 \r
-       IFLE .-SYSEND, <LOC SYSEND+1>\r
+       IFLE .-SYSEND,<LOC SYSEND+1>\r
                                ; SET LOC UP TO SYSEND+1, UNLESS ONCE ONLY CODE\r
                                ; IS BIGGER\r
-\r
-\f\r
-\r
-;SYSTEM CONSTANTS AND PARAMETERS\r
+\f;SYSTEM CONSTATNS AND PARAMETERS\r
 \r
        INTERN CNFTBL,CNFMXL,CONFIG,SYSTAP,SYSDAT\r
 \r
 \r
-CNFTBL:                                ;FIRST LOCATION OF MONITOR DATA STORAGE\r
-                               ; RETURNED BE GETTAB UUO (THESE LOCATIONS\r
+CNFTBL:                                ;FIRST LOCATION 0F MONITOR DATA STORAGE\r
+                               ; RETURNED BE GETTAB UUO(THESE LOCATIONS\r
                                ; NOT CLEARED BY SYSINI)\r
-                               ; CNFTBL IS GETTAB TABLE 11 (RH OF AC)\r
-                               ; OCTAL NO. IN () CORRESPOND TO GETTAB UUO\r
-CONFIG: SYSNAM\r
-\r
-       LOC CONFIG+5            ;ALWAYS LEAVE 5 WORDS (24 CHARS)\r
+                               ; CNFTBL IS GETTAB TABLE 11(RH OF AC)\r
+                               ; OCTAL NOS. IN () CORRESPOND TO GETTAB UUO\r
+CONFIG: SYSNAM                 ;(0-4)NAME OF SYSTEM, IN ASCII\r
+       LOC CONFIG+5            ;ALWAYS LEAVE 5 WORDS(24 CHARS)\r
                                ; SO GETTAB UUO WILL BE CONSTANT\r
-SYSDAT: SYSDAT\r
-                               ;(5,6) GENERATE SYSTEM DATE\r
+SYSDAT: SYSDAT                 ;(5,6)GENERATE SYSTEM DATE\r
        LOC SYSDAT+2            ;ALWAYS LEAVE 2 WORDS SO GETTAB CONSTANT\r
-SYSTAP: SYSDEV\r
-                               ;(7) NAME OF SYSTEM DEVICE, IN SIXBIT\r
+SYSTAP: SYSDEV                 ;(7)NAME OF SYSTEM DEVICE, IN SIXBIT\r
 \r
-;LOCATIONS SETUP BY ONCE ONLY OPERATOR DIALOGUE AND NEVER RESET ON RESTARTS\r
+\f;LOCATIONS SETUP BY ONCE ONLY OPERATOR DIALOGUE AND NEVER RESET ON RESTARTS\r
 \r
        INTERN TIME,THSDAT,SYSSIZ,DEVOPR,DEVLST,SEGPTR,TWOREG,STATES\r
        INTERN SERIAL\r
        EXTERN PATCH\r
 \r
-TIME:  0                       ;(10) TIME OF DAY IN JIFFIES (60TH OR 50THS OF A SEC)\r
-THSDAT:        0                       ;(11) TODAY'S DATE ((Y-1964)*12+(M-1))*31+(D-1)\r
-SYSSIZ:        EXP PATCH               ;(12) SIZE OF MONITOR (FIRST LOC NOT USED)\r
-DEVOPR:        SIXBIT /CTY/            ;(13) SIXBIT PHYSICAL NAME OF OPERATORS CONSOLE\r
+TIME:  0                       ;(10)TIME OF DAY IN JIFFIES (60TH OR 50THS OF A SEC.)\r
+THSDAT:        0                       ;(11)TODAY'S DATE((Y-1964)*12+(M-1))*31+(D-1)\r
+SYSSIZ:        EXP PATCH               ;(12)SIZE OF MONITOR(FIRST LOC NOT USED)\r
+DEVOPR:        SIXBIT /CTY/            ;(13)SIXBIT PHYSICAL NAME OF OPERATORS CONSOLE\r
                                ; (IF THIS LOCATION CONTAINS 0, NONE HAS\r
                                ;  BEEN DESIGNATED)\r
-                               ;PUBLIC LOGICAL NAME "OPR" WILL BE THIS DEVICE.\r
-                               ; ALSO UNEXPLAINED MONITOR ERROR MESSAGES\r
-                               ; WILL BE TYPED ON TTY OPR\r
-DEVLST:        XWD 0,0                 ;(14) LH CONTAINS ADDRESS OF FIRST DEVICE DATA BLOCK\r
-                               ; ONCE ONLY CODE LINKS DEVICE DATA BLOCKS\r
-\fSEGPTR:       XWD -SEGN,JOBN          ;(15) AOBJN POINTER TO 1ST HIGH SEG IN JBTXXX TABLES\r
-                               ; LH=-NO. OF HIGH SEGS,  RH= ST HIGH SEG NO.\r
-TWOREG:        0                       ;(16) FLAG TO INDICATE WHETHER BOTH HARDWARE AND SOFTWARE\r
+                               ;PUBLIC LOGICAL NAME "OPR" WILL BE THIS DEVICE\r
+                               ;ALSO UNEXPLAINED MONITOR ERROR MESSAGE WILL BE TYPED\r
+                               ;ON TTY OPR\r
+DEVLST:        XWD 0,0                 ;(14)LH CONTAINS ADDRESS OF FIRST DEVICE DATA BLOCK\r
+                               ;ONCE ONLY CODE LINKS DEVICE DATA BLOCKS\r
+\fSEGPTR:       XWD -SEGN,JOBN          ;(15)AOBJN POINTER TO FIRST HIGH SEG IN JBTXXX TABLES\r
+                               ; LH=-NO. OF HIGH SEGS, RH=FIRST HIGH SEG NO.\r
+TWOREG:        0                       ;(16)FLAG TO INDICATE WHETHER BOTH HARDWARE AND SOFTWARE\r
                                ; HAVE 2 RELOC REG CAPACITY\r
                                ; NON-ZERO IF BOTH DO, 0 IF EITHER OR BOTH DO NOT\r
                                ; SET BY ONCE ONLY CODE\r
-\r
        ZZ==0\r
-       IFG DSKN,<ZZ==ZZ!1B0>   ;1 IF DISK SYSTEM (ANALOGOUS TO FTDISK)\r
-       IFG SYS50N,<ZZ==ZZ!1B1> ;1 IF SWAPPING SYSTEM (ANALOGOUS TO FTSWAP)\r
-       IFG LOGINN,<ZZ==ZZ!1B2> ;1 IF LOGIN (ANALOGOUS TO FTLOGIN)\r
+       IFG DSKN,<ZZ==ZZ!1B0>   ;1 IF DISK SYSTEM(ANALOGOUS TO FTDISK)\r
+       IFG SYS50N,<ZZ==ZZ!1B1> ;1 IF SWAPPING SYSTEM(ANALOGOUS TO FTSWAP)\r
+       IFG LOGINN,<ZZ==ZZ!1B2> ;1 IF LOGIN(ANALOGOUS TO FTLOGIN)\r
        IFN FTTTYSER,<ZZ==ZZ!1B3>       ;1 IF FULL DUPLEX SOFTWARE\r
        IFN FTPRV,<ZZ==ZZ!1B4>  ;1 IF PRIVILEGE FEATURE INCLUDED\r
        IFN FT2REL,<ZZ==ZZ!1B5> ;1 IF REENTRANT SOFTWARE\r
-       IFE JIFSEC-^D50,<ZZ==ZZ!1B6>    ;1 IF 50 CYCLE MACHINE, 0 IF 60 CYCLE\r
-STATES:        EXP ZZ                  ;(17) BITS WHICH DEFINE TYPE OF SYSTEM IN LH\r
+       IFE JIFSEC-^D50,<ZZ==ZZ!1B6>    ;1 IF 50 CYCLE MACHINE, 0 OF 60 CYCLE\r
+STATES:        EXP ZZ                  ;(17)BITS WHICH DEFINE TYPE OF SYSTEM IN LH\r
                                ; RH PATCHED BY MONITOR COMMAND TO\r
                                ; INDICATE OPERATIONAL STATE OF SYSTEM\r
+                               ;INSERT NEW LOCATIONS OF INTEREST SETUP\r
+                               ; BY ONCE ONLY CODE HERE\r
 SERIAL:        EXP APRSN       ;(20) SERIAL NUMBER OF APR\r
-CNFMXL==<.-CNFTBL-1>B26        ;MAXIMUM ENTRY IN CNFTBL FOR GETTAB UUO\r
-\fIFG DSKN, <\r
+CNFMXL==<.-CNFTBL-1>B26        ;MAX. ENTRY IN CNFTBL FOR GETTAB UUO\r
+\fIFG DSKN,<\r
        INTERN ODPTBL,ODPMXL,SWPHGH,K4SWAP,PROT,PROT0\r
 \r
 IFG SYS50N,<   EXTERN ICPROT,ICPRT1    ;THESE ARE DEFINED ONLY IN\r
@@ -912,24 +899,24 @@ IFLE SYS50N,<     XP ICPROT,0             ;IF NON-SWAPPING, DECLARE
                XP ICPRT1,0             ; INTERNAL IN COMMON>\r
 \r
 ODPTBL:                                ;FIRST LOC IN MONITOR DATA AREA FOR DISK\r
-                               ; LOCATIONS WHICH ARE NOT SET TO 0 WHEN SYSTEM\r
-                               ; STARTED, ODPTBL IS GETTAB UUO TABLE 15\r
+                               ; LOCATION WHICH ARE NOT SET TO 0 WHEN SYSTEM\r
+                               ; STARTED. ODPTBL IS GETTAB UUO TABLE 15\r
 \r
 SWPHGH:        0                       ;(0) HIGHEST LOGICAL BLOCK # IN THE SWAPPING\r
                                ; SPACE ON THE DISK (SET BY SWPINI)\r
 K4SWAP:        0                       ;(1)K OF DISK WORDS SET ASIDE FOR SWAPPING\r
                                ; ASSIGNED AT ONCE ONLY REFRESH TIME\r
+PROT:  EXP ICPROT              ;(2) IN-CORE PROTECT TIME PARAMETER USED TO\r
+                               ; MULTIPLY TIMES (K-1) OF CORE\r
+PROT0: EXP ICPRT1              ;(3) IN-CORE PROTECT TIME PARAMETER ADDED TO\r
+                               ; ABOVE REULT TO COMPLETE COMPUTATION\r
+\r
 \r
-PROT:  EXP ICPROT              ;(2) IN-CORE PROTECT TIME PARAMETER TO BE\r
-                               ; MULTIPLIED BY (K-1) OF CORE IN JOB.\r
-PROT0: EXP ICPRT1              ;(3) IN-CORE PROTECT TIME PARAMETER TO \r
-                               ; BE ADDED TO ABOVE RESULT.\r
 \r
                                ;INSERT NEW LOCATIONS OF INTEREST SETUP\r
                                ; BY ONCE ONLY CODE HERE FOR DISK SYSTEMS\r
-ODPMXL==<.-ODPTBL-1>B26        ;MAXIMUM ENTRY IN ODPTBL FOR GETTAB UUO\r
->      \r
-\r
+ODPMXL==<.-ODPTBL-1>B26        ;MAX. ENTRY IN ODPTBL FOR GETTAB UUO\r
+>\r
 \f;MORE DATA LOCATIONS SETUP AT ASSEMBLY TIME OR ONCE ONLY TIME\r
 ; BUT NOT OF INTEREST TO USER PROGRAMS\r
 \r
@@ -937,23 +924,23 @@ ODPMXL==<.-ODPTBL-1>B26   ;MAXIMUM ENTRY IN ODPTBL FOR GETTAB UUO
 \r
 XJBPFI:        XWD .,0                 ;LH FILLED IN WITH EXTERNAL JOBPFI (SEE JOBDAT)\r
                                        ; JOBPFI==HIGHEST LOC, IN USER JOB DATA AREA\r
-                               ; PROTECTED FROM I/O\r
+                               ; PROTECTED FROM IO\r
 ;MONTH TABLE FOR DAYTIME COMMAND PRINTING\r
 \r
 PMONTB:        POINT 6,MONTAB(TAC),5   ;POINTER TO NUMBER OF DAYS INMONTH\r
-MONTAB:        EXP ^D30B5+"JAN"\r
-       EXP ^D27B5+"FEB"\r
-       EXP ^D30B5+"MAR"\r
-       EXP ^D29B5+"APR"\r
-       EXP ^D30B5+"MAY"\r
-       EXP ^D29B5+"JUN"\r
-       EXP ^D30B5+"JUL"\r
-       EXP ^D30B5+"AUG"\r
-       EXP ^D29B5+"SEP"\r
-       EXP ^D30B5+"OCT"\r
-       EXP ^D29B5+"NOV"\r
-       EXP ^D30B5+"DEC"\r
-MIDNIT: EXP ^D60*^D60*^D24*JIFSEC ;NO OF JIFFIES TILL MIDNIGHT\r
+MONTAB:        EXP ^D30B5+"JAN\r
+       EXP ^D27B5+"FEB\r
+       EXP ^D30B5+"MAR\r
+       EXP ^D29B5+"APR\r
+       EXP ^D30B5+"MAY\r
+       EXP ^D29B5+"JUN\r
+       EXP ^D30B5+"JUL\r
+       EXP ^D30B5+"AUG\r
+       EXP ^D29B5+"SEP\r
+       EXP ^D30B5+"OCT\r
+       EXP ^D29B5+"NOV\r
+       EXP ^D30B5+"DEC\r
+MIDNIT: EXP ^D60*^D60*^D24*JIFSEC      ;NO OF JIFFIES TILL MIDNIGHT\r
 \f;STOP PROCEDURE WHEN SHUTTING DOWN SYSTEM\r
 ;BECAUSE OF CATOSTROPHIC FAILURE OR ANY OTHER REASON\r
 ;WRITE OUT DIRECTORIES STILL IN CORE (DISK)\r
@@ -962,11 +949,11 @@ MIDNIT: EXP ^D60*^D60*^D24*JIFSEC ;NO OF JIFFIES TILL MIDNIGHT
 ;PROCEDURE TO SAVE CRASHED MONITOR ON DECTAPE FOR LATER DEBUGGING UNDER TIME SHARING\r
 ;OPERATOR SHOULD:\r
 ;  1. PUSH STOP AND HOLD IT DOWN\r
-;  2. PUSH CONTINUE (APR PI IN PROGRESS SHOULD COME ON)\r
+;  2. PUSH CONTINUE(APR PI IN PROGRESS SHOULD COME ON)\r
 ;              THIS PUTS MACHINE INTO EXEC MODE AND STORES PC OC CRASH\r
 ;  3. LETUP ON STOP\r
 ;  4. SET ADDRESS SWITCHES TO 147\r
-;  5. PUSH START (DO NOT PUSH I/O RESET AS IT WILL CLEAR DEVICES)\r
+;  5. PUSH START(DO NOT PUSH IO RESET AS IT WILL CLEAR DEVICES)\r
 \r
 INTERN APRSTS,PISTS,SYSTOP,CRASHX,SWTSTS,TTYSTS,PTRSTS,TMCSTS\r
 INTERN PTPSTS,DLSSTS,DTSSTS,CRSTS,LPTSTS,PLTSTS,TMSSTS,DSKSTS,DSKDTI\r
@@ -987,6 +974,7 @@ SYSTOP:     MOVEM 17,CRSHAC+17      ;SAVE ALL ACS
        MOVEI 17,CRSHAC         ;SOURCE==0, DESTINATION==CRSHAC\r
        BLT 17,CRSHAC+16        ;SO DDT CAN LOOK AT SAVED CRASH LATER\r
 \r
+\r
 APRSTS:        CONI APR,.              ;STORE APR STATUS HERE\r
 PISTS: CONI PI,.               ;STORE PI STATUS HERE\r
 SWTSTS:        DATAI APR,.\r
@@ -1004,18 +992,16 @@ DSKSTS:  CONI    DSK,.
 DSKDTI:        DATAI   DSK,.\r
        CONO APR,APRRST         ;RESET SYSTEM\r
        MOVEI   PDP,SYSPDL      ;SETUP PDP TO SPARE AREA\r
-       IFG DSKN, <\r
+       IFG DSKN,<\r
        EXTERN DSKSTP\r
        PUSHJ   PDP,DSKSTP>\r
-       HALT 137400             ;STOP AT TENDMP(READY TO READ IN ANYTHING)\r
+       HALT    137400          ;STOP AT TENDMP(READY TO READ IN ANYTHING)\r
+\r
 ;ERROR RECOVERY - TRY TO START NULL JOB\r
 \r
 NULJB1:        MOVEI ITEM,0    ;SET JOB NUMBER TO 0\r
        JRST NULJOB     ;GO RESTORE NULL JOB\r
-\f\r
-\r
-\r
-;COMMON SUBROUTINE RETURNS\r
+\f;COMMON SUBROUTINE RETURNS\r
 \r
        INTERN CPOPJ,CPOPJ1,DPOPJ,TPOPJ,TPOPJ1,CPOPJ2,IPOPJ1,IPOPJ\r
        INTERN CUXIT1,CUXIT,UXIT\r
@@ -1023,7 +1009,7 @@ NULJB1:   MOVEI ITEM,0    ;SET JOB NUMBER TO 0
 CPOPJ2:        AOS     (PDP)           ;DOUBLE SKIP SUBROUTINE RETURN\r
 CUXIT1:                                ;OLD SKIP RETURN FOR UUOS\r
 CPOPJ1:        AOSA    (PDP)           ;SKIP SUBROUTINE RETURN\r
-DPOPJ: MOVEM   IOS,DEVIOS(DEVDAT) ;DEPOSIT I/O STATUS WORD IN DDB\r
+DPOPJ: MOVEM   IOS,DEVIOS(DEVDAT) ;DEPOSIT IO STATUS WORD IN DDB\r
 UXIT:\r
 CUXIT:                         ;OLD RETURN FOR UUOS\r
 CPOPJ: POPJ    PDP,\r
@@ -1035,7 +1021,7 @@ IPOPJ1:   AOS -1(PDP)             ;SET FOR SKIP RETURN
 IPOPJ: POP PDP,ITEM            ;RESTORE ITEM (USUALLY JOB OR HIGH SEG NUMBER)\r
        POPJ PDP,\r
 \r
-\f; SYSTEM BYTE POINTERS\r
+; SYSTEM BYTE POINTERS\r
 \r
        INTERN PUUOAC,PIOMOD,PJOBN,PUNIT,PJBSTS,PDVTIM,PDVCNT,PCORSZ,COREP\r
        INTERN IADPTR\r
@@ -1043,23 +1029,23 @@ IPOPJ:  POP PDP,ITEM            ;RESTORE ITEM (USUALLY JOB OR HIGH SEG NUMBER)
 PUUOAC:        POINT   4,UUO,12        ;UUO AC FIELD\r
 PIOMOD:        POINT   4,IOS,35        ;MODE BITS\r
 PJOBN: POINT   6,DEVCHR(DEVDAT),5 ;DEVICE JOB ASSIGNMENT\r
-PUNIT: POINT   6,DEVCHR(DEVDAT),23 ;DEVICE UNIT NUMBER\r
-PJBSTS:        POINT   JWSIZ,JBTSTS(ITEM),JWPOS ;JOB WAIT STATE (QUEUE) CODE\r
+PUNIT: POINT   6,DEVCHR(DEVDAT),23 ;DEVICE UNIT NO.\r
+PJBSTS:        POINT   JWSIZ,JBTSTS(ITEM),JWPOS ;JOB WAIT STATE(QUEUE) CODE\r
                                ;IN JOB STATUS WORD\r
 PDVTIM:        POINT   6,DEVCHR(DEVDAT),17 ;TIME IN SECONDS BEFORE DEVICE\r
-                                   ;IS SAID TO BE HUNG\r
-PDVCNT:        POINT   6,DEVCHR(DEVDAT),11 ;COUNTED DOWN EACH SECOND,\r
+                               ;IS SAID TO BE HUNG\r
+PDVCNT:        POINT   6,DEVCHR(DEVDAT),11 ;COUNTER DOWN EACH SECOND,\r
                                ;1 TO 0 TRANSITION MEANS HUNG DEVICE\r
-IADPTR:        POINT   2,DEVIAD(DEVDAT),2      ;COUNT OF NUMBER OF USER CHANNELS INITED\r
-                               ; ON THIS DEVICE (DECTAPE ONLY)\r
+IADPTR:        POINT   2,DEVIAD(DEVDAT),2      ;COUNT OF NO. OF USER CHANNELS INITED\r
+                               ; ON THIS DEVICE(DECTAPE ONLY)\r
 PCORSZ:        POINT 8,JBTADR(ITEM),7  ;BYTE POINTER TO LOW OR HIGH SEG CORE SIZE-1\r
 \r
 COREP: POINT   1,CORTAB        ;1 BIT POINTER TO CORE ALLOCATION TABLE\r
 \r
-       IFG SYS50N, <           ;SWAPPING SYSTEM ?\r
+       IFG SYS50N,<            ;SWAPPING SYSTEM?\r
        INTERN IMGIN,IMGOUT,IMGINT,OUTMSK,INMSK,INLEFT\r
        INMSK=000377            ;RH MASK TO IMGIN\r
-       INLEFT=12               ;NUMBER OF BITS TO SHIFT TO LEFT JUSTIFY IN RH\r
+       INLEFT=12               ;NO. OF BITS TO SHIFT TO LEFT JUSTIFY IN RH\r
 \r
 IMGIN: POINT 8,JBTSWP(ITEM),35 ;BYTE POINTER FOR # 1K BLOCKS OF CORE\r
                                ;WHEN JOB OR HIGH SEG NEXT SWAPPED IN\r
@@ -1071,16 +1057,15 @@ IMGOUT: POINT 8,JBTSWP(ITEM),26 ;BYTE POINTER FOR # 1K BLOCK OF DISK
                                ; (IE NO DISK SPACE)\r
 IMGINT:        POINT   8,JBTSWP(DEVDAT),35 ;POINTER TO INCORE IMAGE\r
 >\r
-\r
-\f;SPECIAL PROJECT-PROGRAMMER NUMBERS\r
-       IFG DSKN, <             ;DISK SYSTEM?\r
+\f;SPECIAL PROJECT-PROGRAMMER NOS.\r
+       IFG DSKN,<              ;DISK SYSTEM?\r
        INTERN CUSPPP,SYSPP,DUMPPP,HELPPP\r
 \r
 CUSPPP:                        ;CUSP FILE DIRECTORY, MAKE SEPARATE TAG FROM\r
                                ; MFD(SYSPP) \r
 SYSPP: XWD     1,1     ;THE MASTER FILE DIRECTORY PROJECT PROGRAMMER NO.\r
-DUMPPP:        XWD     1,2     ;THE FAILSAFE PROJ,PROG NO (CAN READ OF WRITE ANYTHING)\r
-HELPPP:        XWD     2,4     ;SYSTAT AND HELP PROJECT,PROGRAMMER NOS IF JOB NOT LOGGED IN ALREADY\r
+DUMPPP:        XWD     1,2     ;THE FAILSAFE PROJ,PROG NO.(CAN READ OR WRITE ANYTHING)\r
+HELPPP:        XWD     2,4     ;SYSTAT AND HELP PROJECT,PROGRAMMER NOS IF JOB NOT LOGGED INALREADY\r
 >\r
 \f;DEFINE PI CHANNEL SAVE AND RESTORE ROUTINES IF A DEVICE IS ON THE CHANNEL\r
 \r
@@ -1119,19 +1104,16 @@ CH'PI'PD1:      EXP RET'PI      ;FIRST WORD ON LIST,
        LIST\r
 >\r
 \r
-\f;GENERATE THE CHANNEL SAVE ROUTINE ONLY FOR PI WHICH NEED THEM (ASGSAV MACRO USED)\r
-\r
-       IFN USED1, <CHAN 1>\r
-       IFN USED2, <CHAN 2>\r
-       IFN USED3, <CHAN 3>\r
-       IFN USED4, <CHAN 4>\r
-       IFN USED5, <CHAN 5>\r
-       IFN USED6, <CHAN 6>\r
-       IFN USED7, <CHAN 7>\r
+\f;GENERATE THE CHANNEL SAVE ROUTINE ONLY FOR PI WHICH NEED THEM(ASGSAV MACRO USED)\r
 \r
-\r
-\r
-;GENERATE NULL CHANNEL SAVE ROUTINES FOR THOSE CHANNELS NOT USED\r
+       IFN USED1,<CHAN 1>\r
+       IFN USED2,<CHAN 2>\r
+       IFN USED3,<CHAN 3>\r
+       IFN USED4,<CHAN 4>\r
+       IFN USED5,<CHAN 5>\r
+       IFN USED6,<CHAN 6>\r
+       IFN USED7,<CHAN 7>\r
+;GENERATE NULL CHANNEL SAVE ROUTINES FOR THOSE CHANNEL NOT USED\r
 \r
 DEFINE NULL (PI)<\r
        XLIST\r
@@ -1141,31 +1123,31 @@ CH'PI:  0
        LIST\r
 >\r
 \r
-       IFE USED1, <NULL 1>\r
-       IFE USED2, <NULL 2>\r
-       IFE USED3, <NULL 3>\r
-       IFE USED4, <NULL 4>\r
-       IFE USED5, <NULL 5>\r
-       IFE USED6, <NULL 6>\r
-       IFE USED7, <NULL 7>\r
-\f;HERE ON TRAPS TO LOC 60/61 - UNIMPLEMENTED INSTRUCTIONS (PDP-10 ONLY)\r
-;OPCODE AND EFFECTIVE ADDRESS STORED IN SIXTY AND 61 EXECUTED (JSR UUO2)\r
-;OP CODE 100 (UJEN) IS USED TO DISMISS USER MODE INTERRUPTS FOR REAL TIME OPERATION\r
+       IFE USED1,<NULL 1>\r
+       IFE USED2,<NULL 2>\r
+       IFE USED3,<NULL 3>\r
+       IFE USED4,<NULL 4>\r
+       IFE USED5,<NULL 5>\r
+       IFE USED6,<NULL 6>\r
+       IFE USED7,<NULL 7>\r
+\f;HERE ON TRAPS TO LOC 60/61 - UNIMPLEMENTED INSTRUCTIONS(PDP-10 ONLY)\r
+;OPCODE AND EFFECTIVE ADDRESS STORED IN SIXTY AND 61 EXECUTED(JSR UUO2)\r
+;OP CODE 100(UJEN) IS USED TO DISMISS USER MODE INTERRUPTS FOR REAL TIME OPERATION\r
 ;USED IN CONJUNCTION WITH TRPSET UUOWHICH IS SOON TO BE REPLACED\r
 ;WITH SOME KNAVE-PROOF REAL TIME UUOS.  THIS CODE IS HERE ONLY\r
 ;BECAUSE MANUAL DESCRIBES TRPSET AND TRPJEN UUOS.\r
-;TRPJEN HAS BEEN REPLACED WITH OPCODE 100 (UJEN).\r
+;TRPJEN HAS BEEN REPLACED WITH OPCODE 100(UJEN).\r
 ;CALL: UGEN U                  ;WHERE U CONTAINS PC STORED BY INTERRUPT JSR\r
 \r
        INTERN UUO2\r
 \r
 UUO2:  0                       ;USER PC STORE HERE BY JSR\r
        EXCH TAC,UUO2           ;GET USER PC, SAVE TAC\r
-IFN FTTRPSET, <\r
-       TLNN TAC,UIOMOD         ;USER I/O MODE ON ?\r
+IFN FTTRPSET,<\r
+       TLNN TAC,UIOMOD         ;USER IO MODE ON?\r
        JRST UUOER2             ;NO, TREAT AS AN ILLEGAL INSTRUCTION AND PRINT MESS.\r
        HLL TAC,SIXTY           ;YES, GET UNIMPLEMENTED OPCODE WHICH TRAPPED\r
-       TLNE TAC,677777         ;IS IT OPCODE 100 (UJEN)?\r
+       TLNE TAC,677777         ;IS IT OPCODE 100(UJEN)?\r
        JRST UUOER1             ;NO, TREAT AS ILLEGAL INSTRUCTION\r
        MOVE TAC,SIXTY          ;YES, GET EFFECTIVE ADDRESS\r
        ADD TAC,JOBADR          ;ADD RELOCATION FOR CURRENT JOB\r
@@ -1173,13 +1155,13 @@ IFN FTTRPSET, <
        EXCH TAC,UUO2           ;RESTORE TAC, AND STORE PC\r
        JEN @UUO2               ;DISMISS INTERRUPT\r
 \r
-UUOER1:        HRLI TAC,USRMOD!UIOMOD  ;SET USER MODE AND USER I/O MODE BACK ON\r
+UUOER1:        HRLI TAC,USRMOD!UIOMOD  ;SET USER MODE AND USER IO MODE BACK ON\r
 >\r
 UUOER2:        MOVEM TAC,UUO0          ;STORE PC AS IF AN ILLEGAL INSTR. HAD OCCURRED\r
        SETOM FORTY             ;MAKE IT LOOK LIKE AN ILLEGAL INSTRUCTION\r
                                ; TRAPPED TO 40\r
        SKIPA TAC,UUO2          ;RETORE TAC AND FALL INTO REGULAR UUO HANDLER\r
-\f;HERE ON TRAPS TO EXEC LOC 40/41 - OPCODES 0,40-77 (0-77 ON PDP-6)\r
+\f;HERE ON TRAPS TO EXEC LOC 40/41 - OPCODES 0,40-77(0-77 ON PDP-6)\r
 \r
        INTERN UUO0\r
        EXTERN UUOUSR,UUOSY1,ERROR\r
@@ -1187,69 +1169,64 @@ UUOER2: MOVEM TAC,UUO0          ;STORE PC AS IF AN ILLEGAL INSTR. HAD OCCURRED
 UUO0:  0                       ;JSR HERE FROM LOC 41\r
        MOVEM 17,USRSAV         ;SAVE 17\r
        MOVE 17,UUO0            ;GET PROCESSOR FLAGS\r
-       TLNN 17,USRMOD          ;IS UUO FROM MONITOR ?\r
+       TLNN 17,USRMOD          ;IS UUO FROM MONITOR?\r
        JRST UUOSY1             ;YES, DO NOT SAVE ACS\r
-       SKIPN 17,JOBADR         ;IS THERE A JOB DATA AREA ?\r
+       SKIPN 17,JOBADR         ;IS THERE A JOB DATA AREA?\r
        JSP DAT,ERROR           ;NO, MUST BE UUO DURING NULL JOB\r
                                ; PRINT ERROR IN MONITOR\r
-IFE PDP10N, <                  ;FOR PDP-6 OPCODES 1-37\r
+IFE PDP10N,<                   ;FOR PDP-6 OPCODES 1-37\r
        EXCH TAC,FORTY          ;SAVE TAC, PICK UP UUO\r
-       TLNN TAC,740000         ;IS THIS SYSTEM UUO ?\r
-       TLNN TAC,077000         ;NO, IS IT 0 UUO ?\r
+       TLNN TAC,740000         ;IS THIS SYSTEM UUO?\r
+       TLNN TAC,077000         ;NO, IS IT 0 UUO?\r
        JRST UUOSYS             ;YES\r
        MOVEM TAC,40(17)        ;STORE UUO IN USER'S 40\r
        HRRZ TAC,41(17)         ;PICK UP ADR OF USER'S JSR\r
-       JUMPE TAC,UUOSYS        ;IF ADDRESS=0,ILLEGAL USER UUO****UWA PATCH\r
-       HLL TAC,UUO0            ;USER PD FLAGS (RESTORED ON RETURN)\r
+       JUMPE TAC,UUOSYS        ;IF ADDRESS=0,ILLEGAL USER UUO\r
+       HLL TAC,UUO0            ;USER PD FLAGS(RESTORED ON RETURN)\r
        MOVEI 17,(TAC)          ;17 NOW HAS REL.ADR+1 OF USER JSR\r
-       CAML 17,USRREL          ;IS EFFECTIVE ADDRESS IN BOUNDS ?\r
+       CAML 17,USRREL          ;IS EFFECTIVE ADDRESS IN BOUNDS?\r
        JRST UUOSY0             ;ERROR, JSR EFF. ADDR. OUTSIDE USER AREA\r
        HRRI TAC,1(TAC)         ;YES, INCREMENT PC.\r
        EXCH TAC,UUO0           ;SET UP RETURN TO USER IN UUO0\r
                                ; PICKUP USERS FLAGS,PC\r
-       ADD 17,JOBADR           ;MAKE REL. ADDRESS INTO ABSOLUTE ADDRESS\r
+       ADD 17,JOBADR           ;MAKE REL. ADR. INTO ABS. ADR.\r
        MOVEM TAC,(17)          ;STORE FLAGS AND PC LIKE JSR\r
        MOVE TAC,FORTY          ;RESTORE TAC\r
        MOVE 17,USRSAV          ;RESTORE 17\r
-       JRST 2,@UUO0            ;RETURN TO USER (RESTORING FLAGS)\r
+       JRST 2,@UUO0            ;RETURN TO USER(RESTORING FLAGS)\r
 \r
 UUOSY0:        MOVE 17,JOBADR          ;SETUP 17 FOR LOW SEGMENT RELOCATION\r
-UUOSYS:        EXCH TAC,FORTY          ;RESTORE USERS AC(TAC) AND USER'S UUO (FORTY)\r
->              \r
-       JRST UUOUSR             ;GO SAVE USER'S ACS IN REL. LOCATION 0-17\r
+UUOSYS:        EXCH TAC,FORTY          ;RESTORE USERS AC(TAC) AND USER'S UUO(FORTY)\r
+>\r
+       JRST UUOUSR             ;GO SAVE USER'S ACS IN REL. LOC. 0-17\r
                                ; AND DISPATCH ON UUO\r
-\f;GENERATE EXTERNAL GLOBALS TO CAUSE LOADING OF PROPER ROUTINES FROM MONITOR LIBRARY TAPE\r
+\f;GENERATE EXTERNAL GLOBALS TO CAUSE LOADING OF PROPER ROUT. FROM MONITOR LIBRARY TAPE\r
 ;IF THERE IS ONE\r
 \r
 \r
 ;ALWAYS LOAD CLOCK1,COMCON,CORE1,ERRCON,JOBDAT,ONCE,PATCH,SYSMAK,UUOCON\r
-\r
 EXTERNAL CLOCK1,COMCON,CORE1,ERRCON,DATJOB,ONCE,PATCH,SYSMAK,UUOCON\r
-\r
 ;LOAD DDT\r
-       IFG DDTN, <EXTERN DDTX>\r
-       IFE DDTN, <XP DDTEND,0  ;ONCE REFERENCES END OF DDT>\r
-\r
-;LOAD SCHEDULER FOR NON-SWAPPING OR SWAPPING SYSTEM\r
+       IFG DDTN,<EXTERN DDTX>\r
+       IFE DDTN,<XP DDTEND,0   ;ONCE REFERENCES END OF DDT>\r
+;LOAD APPROPRIATE SCHEDULER FOR NON-SWAP OR SWAPPING SYSTEMS\r
        IFG SYS40N,<EXTERN XCKCSS>      ;CLKCSS\r
        IFG SYS50N,<EXTERN XCKCSW>      ;SCHED\r
 \r
-;LOAD EITHER SEGCON (2REG SOFTWARE) OR NULSEG (1 REG SOFTWARE)\r
+;LOAD EITHER SEGCON(2REG SOFTWARE) OR NULSEG(1 REG SOFTWARE)\r
 ; UNLESS USER HAS EDITTED S WITH FT2REL=0 SO ALL PUSHJ'S\r
-; TO SEGCON (NULSEG) ARE REMOVED\r
+; TO SEGCON(NULSEG) ARE REMOVED\r
 \r
-IFN FT2REL, <\r
+IFN FT2REL,<\r
        IFG KT10AN, <EXTERN SEGCON>\r
-\r
        IFE KT10AN, <EXTERN NULSEG>\r
 >\r
 \r
-\r
 ;APR AND PI BITS\r
        INTERN  PION,PIOFF,REQCLK,PICLK,APRCLR,APRCLE,APRNUL,APRRST,NXM,APRFOV\r
 \r
        CLKBIT==1\r
-       REPEAT 7-CLKCHN, <CLKBIT==CLKBIT*2>\r
+       REPEAT 7-CLKCHN,<CLKBIT==CLKBIT*2>\r
        PION==200               ;CONO PI,PION TURNS PI SYSTEM ON\r
        PIOFF==400              ;TURN IT OFF\r
        REQCLK==1B24+CLKBIT     ;REQUEST INTERRUPT ON LOW PRIORITY CLK CHANNEL\r
@@ -1258,9 +1235,9 @@ IFN FT2REL, <
        APRCLE==431550+APRCHN   ;CLEAR ALL APR ERROR BITS\r
                                ; AND DISABLE FOV AND AR OVF\r
        APRNUL==433550+APRCHN   ;RESET APR FOR NULL JOB\r
-                       ; CLEAR EVERYTHING BUT DON'T I/O RESET\r
-       APRRST==APRNUL+200000   ;RESET APR FOR SYSINI (I/O RESET TOO)\r
-       NXM==10000              ;NON-EX MEM (APR STATUS WORD)\r
+                       ; CLEAR EVERYTHING BUT DONT IO RESET\r
+       APRRST==APRNUL+200000   ;RESET APR FOR SYSINI(IO RESET TOO)\r
+       NXM==10000              ;NON-EX MEM I(APR STATUS WORD)\r
        IFG PDP10N,<APRFOV==100 ;FLOADTING OVERFLOW CAN BE ENABLED ON PDP10\r
                                ; FOR USER TRAPPING>\r
        IFE PDP10N,<APRFOV==000 ;PC CHANGE CANNOT BE ENABLED ON PDP-6, BEACUSE\r
@@ -1268,31 +1245,31 @@ IFN FT2REL, <
 \r
 ;MAKE SURE THAT PROPER VERSION OF FEATURE SWITCH FILES WERE USED TO ASSEMBLE\r
 ;THE REST OF THE MONITOR\r
-;THE LOADER WILL PRINT NUL. DEF. GLOBAL IF A MISTAKE HAS BEEN MADE\r
+;THE LOADER WILL PRINT MUL. DEF. GLOBAL IF A MISTAKE HAS BEEN MADE\r
        XP FTDISK,-DSKN\r
        XP FTSWAP,-SYS50N\r
        XP FTRC10,-RD10N\r
 \r
-       IFG KT10AN,<XP FT2REL,-1>       ;IF Z RELOC SOFTWARE, THEN FTZREI MUST BE -1\r
+       IFG KT10AN,<XP FT2REL,-1>       ;IF Z RELOC SOFTWARE, THEN FTZREL MUST BE -1\r
        IFE COREN,<COREN=^D256          ;NO RESTRICTION IF 0 TYPED>\r
-       XP USRLIM,COREN                 ;DEFINE GLOBAL RESTRICTING SIZE OF CRE FOR ANY SINGLE USER\r
-                                       ; ONCE ONLY CODE CAN ALTER THIS VALUE\r
-                                       ; (PATCH RH CORLIM IN SYSIM)\r
-\f;SCANNER ENTRY POINTS AND BIT DEFINITIONS\r
-\r
-       IFG DLSN, <EXTERN DLSINT>       ;DATA LINE SCANNER\r
-       IFG CCIN, <EXTERN CCIINT>       ;DA-10 PDP-8 680\r
-       IFG DCSN, <EXTERN DCSINT>       ;630 DATA COMMUNICATIONS SYS\r
+       XP USRLIM,COREN                 ;DEFINE GLOBAL RESTRICTING SIZE OF CORE FOR ANY SINGLE USER\r
+                               ; ONCE ONLY CODE CAN ALTER THIS VALUE\r
+                               ; (PATCH RH CORLIM IN SYSIM)\r
+\f\r
+;SCANNER ENTRY POINTS AND BIT DEFINITIONS\r
 \r
-       IFG FULLN, <EXTERN SCNSRF>      ;FULL DUPLEX SOFTWARE ENTRY POINT\r
-       IFE FULLN, <EXTERN SCNSRH>      ;HALF DUPLEX SOFTWARE ENTRY POINT\r
+       IFG DLSN,<EXTERN DLSINT>        ;DATA LINE SCANNER\r
+       IFG CCIN,<EXTERN CCIINT>        ;DA-10 PDP-8 680\r
+       IFG DCSN,<EXTERN DCSINT>        ;630 DATA COMMUNICATIONS SYS\r
 \r
-       IFG FULLN, <\r
+       IFG FULLN,<EXTERN SCNSRF>       ;FULL DUPLEX SOFTWARE ENTRY POINT\r
+       IFE FULLN,<EXTERN SCNSRH>       ;HALF DUPLEX SOFTWARE ENTRY POINT\r
+       IFG FULLN,<\r
        INTERN LINTAB\r
 \r
-LINTAB:                ;LINE CHARACTERISTICS BITS (NOT CLEARED ON SYSTEM STARTUP)\r
+LINTAB:                ;LINE CHARACTERISTIC BITS (NOT CLEARED ON SYSTEM STARTUP)\r
 \r
-;TELETYPE LINE CHARACTERISTICS (LH OF LINTAB)\r
+;TELETYPE LINE CHARACTERISTICS(LH OF LINTAB)\r
 ;USED IN SCNSRF ALSO\r
 \r
        XP PTYLIN,400000        ;PSEUDO TTY LINE\r
@@ -1309,26 +1286,25 @@ LINTAB:         ;LINE CHARACTERISTICS BITS (NOT CLEARED ON SYSTEM STARTUP)
 IFG EDITN,<            ;HAS COMMON.MAC BEEN EDITED TO DEFINE TTY LINE CHAR.\r
                        ; SO MONGEN TYPE-IN REDUCED?\r
 ;IF NO APR NUMBER, AND THIS IS NOT EDITED FOR THE CUSTOMER,\r
-; MAKE ALL LIENS JUST BE MODEL 33 TELETYPES\r
+; MAKE ALL LINES JUST BE MODEL 33 TELETYPES\r
 \r
-IFE APRN,<REPEAT TTPLEN,<0>>\r
-\r
-IFE APRSN-2,<\r
-;FOLLOWING LINE DEFINITIONS FOR DEC PDP12 #2\r
+IFE APRSN,<REPEAT TTPLEN,<0>>\r
+\fIFE APRSN-2,<\r
+;FOLLOWING LINE DEFINITIONS FOR DEC PDP10 #2\r
 \r
        XWD T35,0       ;TTY0\r
        XWD T35,0       ;TTY1\r
        XWD T35,0       ;TTY2\r
        XWD 0,0         ;TTY3\r
-REPEAT 3,<     XWD T35,0>;TTY4-6\r
+REPEAT 3,<     XWD T35,0>      ;TTY4-6\r
        XWD T35+TTYRMT,0        ;TTY7 - REMOTE 35\r
        XWD DSDTLN,0    ;TTY10\r
        XWD DSDTLN+HLFDPX,0     ;TTY11\r
        XWD DSDTLN,0    ;TTY12\r
-REPEAT 4,<     XWD T35,0>;TTY13-16\r
+REPEAT 4,<     XWD T35,0>      ;TTY13-16\r
+       XWD TTYRMT,0    ;TTY17 - REMOTE\r
 REPEAT 8,<XWD TTYRMT,0>\r
 >\r
-\r
 IFE APRSN-^D40,<\r
 ;THIS CONFIGURATION FOR DEC SYSTEM NUMBER 40\r
 \r
@@ -1337,102 +1313,97 @@ REPEAT ^D8,<0          ;MODEL 33'S LOCALLY>
 REPEAT ^D8,<   XWD DSDTLN,0    ;DATASET>\r
 >\r
 \r
-; CTY AND PTY SET BY SCNSER\r
->      ;END PRE-EDITED LINE CHARACTERISTICS\r
-\f\r
+; CTY AND PTY SET BY SCNSRF\r
+>              ;END PRE-EDITED LINE CHARACTERISTICS\r
+\fIFE EDITN,<           ;MONGEN DIALOG DEFINE TTY CONFIG?\r
 \r
-IFE EDITN,<            ;MONGEN DIALOG DEFINE TTY CONFIG?\r
-\r
-DEFINE GENLIN(LIN)<\r
+DEFINE GENLIN (LIN)<\r
        IFNDEF DSD'LIN,<DSD'LIN=0>      ;DATA SET?\r
        IFNDEF TAB'LIN,<TAB'LIN=0>      ;HARDWARE TABS?\r
        IFNDEF RMT'LIN,<RMT'LIN=0>      ;REMOTE?\r
        IFNDEF HLF'LIN,<HLF'LIN=0>      ;HALF DUPLEX SCANNER?\r
-       XWD DSD'LIN*TAB'LIN*T35+RMT'LIN*TTYRMT+HLF'LIN*HLFDPX,0\r
+       XWD DSD'LIN*DSDTLN+TAB'LIN*T35+RMT'LIN*TTYRMT+HLF'LIN*HLFDPX,0\r
 >\r
 \r
 REPEAT HGHLIN+1,<LINE=.-LINTAB         ;DEFINE LINE NUMBER\r
-       GENLIN \LIN>\r
+       GENLIN \LINE>\r
+\r
+\r
 >\r
-       LOC LINTAB+TTPLEN       ;MAKE SURE ENOUGH SPACE FOR CTY+PTY;S\r
+       LOC LINTAB+TTPLEN       ;MAKE SURE ENOUGH SPACE FOR CTY+PTY'S\r
 \r
->      ;END OF FULL DUPLEX CONDITIONAL\r
+\r
+>              ;END OF FULL DUPLEX CONDITIONAL\r
 \r
        INTERN FSNCHN,SCNON,SCNOFF\r
 \r
-       FSNCHN==SCNCHN*101      ;CHANNEL ASSIGNMENT FOR FULL DUPLEX SCN.\r
-       SCNBIT==<1_<7-SCNCHN>>\r
+       FSNCHN==SCNCHN*101      ;CHANNEL ASSIGN. FOR FULL DUPLEX SCN.\r
+       SCNBIT==1\r
+       REPEAT 7-SCNCHN,<SCNBIT==SCNBIT*2>\r
        SCNON==2000+SCNBIT      ;CONO PI, TURNS SCANNER PI CHANNEL ON\r
        SCNOFF==1000+SCNBIT     ;CONO PI, TURNS SCANNER PI CHANNEL OFF\r
-       IFG TABSN, <TTMODL=-1>  ;HARDWARD TABS\r
-       IFE TABSN, <TTMODL=0>\r
-XP SCNNUM,HGHLIN+1             ;# OF SCANNER LINES (USED BY ONCE FOR PRINTING CONFIG)\r
+       IFG TABSN,<TTMODL=-1>   ;HARDWARD TABS\r
+       IFE TABSN,<TTMODL=0>\r
+XP SCNNUM,HGHLIN+1             ;NO. OF SCANNER LINES (USED BY ONCE FOR PRINTING CONFIG)\r
 \f;MAGTAPE ENTRY POINT AND BIT DEFINITIONS\r
 \r
-       IFG MTAN, <EXTERN MTASRX>       ;TM10 ENTRY POINT\r
-       IFG MTCN, <EXTERN MTCSR6>       ;PDP-6 MAGTAPES ENTRY POINT\r
-\r
-       IFG MTAN, <\r
-\r
-       INTERN MMTSIZ,MTALOC,MTLOC1,MTBOTH,MTFLAG\r
+       IFG MTAN,<EXTERN MTASRX>        ;TM10 ENTRY POINT\r
+       IFG MTCN,<EXTERN MTCSR6>        ;PDP-6 MAGTAPES ENTRY POINT\r
 \r
-       MMTSIZ==-MTSIZ\r
-       MTALOC==40+2*MTDCHN             ;BLKI/BLKO LOCATION\r
-       MTLOC1==MTALOC+1                ;NEXT LOCATION\r
-       MTBOTH==MTACHN*10+MTDCHN        ;BOTH PI CHANNELS\r
-       MTFLAG==400+MTACHN*10\r
+       IFG MTAN,<\r
+       INTERN MTALOC,MTLOC1,MTBOTH,MTFLAG,MMTSIZ\r
+               MMTSIZ==-MTSIZ\r
+               MTALOC==40+2*MTDCHN             ;BLKI/BLKO LOCATION\r
+               MTLOC1==MTALOC+1                ;NEXT LOCATION\r
+               MTBOTH==MTACHN*10+MTDCHN        ;BOTH PI CHANNELS\r
+               MTFLAG==400+MTACHN*10\r
 >\r
-\r
-       IFG MTCN, <\r
-\r
-       INTERN  DCLOC,DCLOC1,DCON,DCOFF,DCIN,DCOUT\r
-\r
-       DCLOC==40+2*DCTCHN      ;EVEN DC PI CHANNEL LOCATION\r
-       DCLOC1==DCLOC+1         ;NEXT LOCATION\r
+       IFG MTCN,<\r
+       INTERN DCLOC,DCLOC1,DCON,DCOFF,DCIN,DCOUT\r
+               DCLOC==40+2*DCTCHN      ;EVEN DC PI CHANNEL LOC\r
+               DCLOC1==DCLOC+1         ;NEXT LOCATION\r
                DCBIT==1\r
-               REPEAT 7-DCTCHN, <DCBIT==DCBIT*2>\r
-       DCON==2000+DCBIT        ;TURN DC PI CHANNEL ON\r
-       DCOFF==1000+DCBIT       ;TURN DC PI CHANNEL OFF\r
-       DCIN=4010+DCTCHN        ;SET DATA CHANNEL FOR INPUT\r
-       DCOUT==3410+DCTCHN      ;SET DATA CHANNEL FOR OUTPUT\r
+               REPEAT 7-DCTCHN,<DCBIT==DCBIT*2>\r
+               DCON==2000+DCBIT                ;TURN DC PI CHANNEL ON\r
+               DCOFF==1000+DCBIT               ;TURN DC PI CHANNEL OFF\r
+               DCIN==4010+DCTCHN               ;SET DC FOR INPUT\r
+               DCOUT==3410+DCTCHN      ;SET DC FOR OUTPUT\r
 >\r
-\f\r
-;DECTAPE ENTRY POINT AND BIT DEFINITIONS\r
+\f;DECTAPE ENTRY POINT ADN BIT DEFINITIONS\r
 \r
        SAVN==1                         ;WE ONLY SUPPORT NEW FORMAT NOW\r
-                                       ;MONGEN NO LONGER ASKS QUESTION,\r
+                                       ;MONGEN NO LONGER ASKS QUESTION.\r
 \r
-       IFG DTAN, <EXTERN DTASRN>       ;TD10 WITH NEW FORMAT\r
-       IFG DTCN, <\r
-       IFG SAVN, <EXTERN DTCSRN>       ;556 WITH NEW FORMAT\r
-       IFE SAVN, <EXTERN DTCSRO>       ;556 WITH OLD FORMAT\r
+       IFG DTAN,<EXTERN DTASRN>        ;TD10 WITH NEW FORMAT\r
+       IFG DTCN,<\r
+       IFG SAVN,<EXTERN DTCSRN>        ;556 WITH NEW FORMAT\r
+       IFE SAVN,<EXTERN DTCSRO>        ;556 WITH OLD FORMAT\r
 >\r
-       IFG DTAN, <     ;DEFINE SYMBOLS IF PDP-10 DECTAPES (TD10)\r
-       INTERNAL DTALOC,DTALC2,DTBOTH,DTTURN\r
+       IFG DTAN,<      ;DEFINE SYMBOLS IF PDP-10 DECTAPES(TD10)\r
+       INTERN DTALOC,DTALC2,DTBOTH,DTTURN\r
                DTALOC==40+2*DTDCHN     ;BLKI/BLKO LOCATION\r
-               DTALC2==DTALOC+1        ;NEXT LOCATION\r
+               DTALC2==DTALOC+1                ;NEXT LOCATION\r
                DTBOTH==DTDCHN*10+DTACHN\r
                DTTURN==300200+DTBOTH\r
 >\r
-       IFG DTCN, <     ;DEFINE SYMBOLS IF PDP-6 DECTAPES (556)\r
-       INTERNAL DCLOC,DCLOC1,DCON,DCOFF,DCIN,DCOUT\r
+       IFG DTCN,<      ;DEFINE SYMBOLS IF PDP-6 DECTAPES(556)\r
+       INTERN DCLOC,DCLOC1,DCON,DCOFF,DCIN,DCOUT\r
                DCLOC==40+2*DCTCHN      ;EVEN DC PI CHANNEL LOC\r
                DCLOC1==DCLOC+1         ;NEXT LOCATION\r
                DCBIT==1\r
-               REPEAT 7-DCTCHN, <DCBIT==DCBIT*2>\r
-               DCON==2000+DCBIT        ;TURN DC PI CHANNEL ON\r
-               DCOFF==1000+DCBIT       ;TURN DC PI CHANNEL OFF\r
-               DCIN==4010+DCTCHN       ;SET DATA CHANNEL FOR INPUT\r
-               DCOUT==3410+DCTCHN      ;SET DATA CHANNEL FOR OUTPUT\r
+               REPEAT 7-DCTCHN,<DCBIT==DCBIT*2>\r
+               DCON==2000+DCBIT                ;TURN DC PI CHANNEL ON\r
+               DCOFF==1000+DCBIT               ;TURN DC PI CHANNEL OFF\r
+               DCIN==4010+DCTCHN               ;SET DC FOR INPUT\r
+               DCOUT==3410+DCTCHN      ;SET DC FOR OUTPUT\r
 >\r
-\r
 ;DEFINE SAVE MODE AND EXTENSION FOR OLD OR NEW FORMAT\r
 \r
-       INTERNAL SAVDMP\r
-       IFE SAVN, <XP SAVMOD,17\r
+       INTERN SAVDMP\r
+       IFE SAVN,<\r
                SAVDMP==<SIXBIT /   DMP/>       ;EXTENSION FOR SAVED FILES == "DMP"\r
 >\r
-       IFN SAVN, <\r
+       IFN SAVN,<\r
                SAVDMP==<SIXBIT /   SAV/>       ;EXTENSION FOR SAVED FILES == "SAV"\r
 >\r
 \f;DISPLAY AND LITE PEN\r
@@ -1440,17 +1411,19 @@ XP SCNNUM,HGHLIN+1              ;# OF SCANNER LINES (USED BY ONCE FOR PRINTING CONFIG)
        IFG DISN,<\r
        IFG T340N,<EXTERN DIS340>       ;TYPE 340 ENTRY POINT\r
        IFE T340N,<EXTERN DIST30>       ;TYPE 30 ENTRY POINT\r
-       INTERN DISBLK,DISJSR,OFFDIS,DISPON,DISPOF\r
+       INTERN DISBLK,DISJSR,ONDIS,NONDIS,OFFDIS,DISPON,DISPOF\r
                DISBLK==40+2*DISCHN     ;BLKI/BLKO LOCATION\r
                DISJSR==DISBLK+1\r
                ONDIS==100+10*PENCHN+DISCHN\r
                NONDIS==10*PENCHN+DISCHN\r
                OFFDIS==0\r
                DISBIT==1\r
-               REPEAT 7-DISCHN, <DISBIT==DISBIT*2>\r
+               REPEAT 7-DISCHN,<DISBIT==DISBIT*2>\r
                DISPON==2000+DISBIT     ;CONO PI, TURNS DIS PI CHANNEL ON\r
                DISPOF==1000+DISBIT     ;CONO PI, TURNS DIS PI CHANNEL OFF\r
 >\r
+\r
+\r
 \f;LINE PRINTER ENTRY POINT AND DDB DEFINITIONS\r
 \r
        IFG LPTN, <\r
@@ -1467,12 +1440,12 @@ LP'N'INT: CONSO LP'N,0                  ;(-4) SKIP IF INTERRUPT FOR THIS LPT
          JRST .-1                      ;(-3)  GO TO NEXT SKIP CHAIN ELEMENT\r
          MOVEM DEVDAT,LP'N'SV1         ;(-2) SAVE DEVDAT IN CHANNEL SAVE AREA\r
          JSP DEVDAT,LPTINT             ;(-1) SET UP DDB ADDRESS AND BRANCH\r
+\r
 LP'N'DDB:\r
 LP'N'NAM: \r
-       \r
-       IFE LPTN-1, < SIXBIT /LPT/      ;( 0) PHYSICAL DEVICE NAME>\r
-       IFN LPTN-1, < SIXBIT /LPT'N/    ;( 0) PHYSICAL DEVICE NAME>\r
-         XWD ^D60*HUNGST,<N>B23+LPTSIZ    ;( 1) DEVICE CHARACTERISTICS\r
+        IFE LPTN-1, < SIXBIT /LPT/     ;( 0) PHYSICAL DEVICE NAME >\r
+        IFN LPTN-1, < SIXBIT /LPT'N/   ;( 0) PHYSICAL DEVICE NAME >\r
+         XWD ^D60*HUNGST,<N>B23+LPTSIZ ;( 1) DEVICE CHARACTERISTICS\r
          0                             ;( 2) DEVICE I/O STATUS\r
          XWD 0,LPTDSP                  ;( 3) LH=DDB LINK, RH=DSP TABLE ADDR.\r
 LPTMOD==1_A+1_AL+1_I                   ;LPT LEGAL MODES\r
@@ -1490,46 +1463,50 @@ LP'N'PTR: 0                             ;( 7) BLOCK OUTPUT POINTER
 \r
          MOVE DEVDAT,LP'N'SV1          ;(16) RESTORE DEVDAT AND\r
          JEN @LP'N'CHL                 ;(17)  DISMISS INTERRUPT\r
-         0                             ;(20) SAVE LOCATION FOR DAT\r
+\r
+         0                             ;(20) SAVE LOCATION FOR TAC\r
+\r
          CONSZ LP'N,LPTECM             ;(21) THE REST OF THE DDB CONTAINS\r
          CONSO LP'N,LPTDON             ;(22)  THE ACTUAL I/O INSTRUCTIONS\r
-         CONSO LP'N,(DAT)              ;(23)  USED BY THE COMMON SERVICE\r
-         CONSZ LP'N,(DAT)              ;(24)  ROUTINE TO CONTROL A LINE\r
-         CONI  LP'N,DAT                ;(25)  PRINTER. THEY ARE EXECUTED\r
-         CONO  LP'N,(DAT)              ;(26)  BY MEANS OF AN XCT INSTRUCTION\r
-         DATAO LP'N,(DAT)              ;(27)  INDEXED TO THE PROPER DDB\r
+                                       ;      USED BY THE COMMON SERVICE\r
+         CONSO LP'N,(TAC)              ;(23)  ROUTINE TO CONTROL A LINE\r
+         CONSZ LP'N,(TAC)              ;(24)  PRINTER. THEY ARE EXECUTED\r
+         CONI  LP'N,TAC                ;(25)  BY MEANS OF AN XCT INSTRUCTION\r
+         CONO  LP'N,(TAC)              ;(26)  INDEXED TO THE PROPER DDB\r
+         DATAO LP'N,(TAC)              ;(27)\r
          BLKO  LP'N,LP'N'PTR           ;(30)\r
 \r
-       LIST                            ;TURN LISTING BACK ON AFTER EXPANSION\r
-\f\r
+       LIST                            ;TURN LISTING BACK ON DURING EXPANSION\r
 >\r
-       EXTERN LPTSER, LPTNXT, LPTECM, LPTDON, LPTINT, LPTDSP\r
 \r
-       LPT2=234                ;DEVICE SELECT CODE FOR SECOND LPT\r
+               EXTERN LPTSER, LPTNXT, LPTECM, LPTDON, LPTINT, LPTDSP\r
 \r
-       IFNDEF LP0, <LP0=LPT>   ;DEFINE STANDARD MNEMONIC DEFINITIONS\r
-       IFNDEF LP1, <LP1=LPT2>  ; BUT ALLOW FOR OVERRIDE\r
+               LPT2=524                ;DEVICE SELECT CODE FOR SECOND LPT\r
 \r
-       $LPNUM=0                ;TEMPORARY SYMBOL USED TO FACILITATE\r
-                               ; MACRO GENERATION\r
+               IFNDEF LP0, <LP0=LPT>   ;DEFINE STANDARD MNEMONIC DEFINITIONS\r
+               IFNDEF LP1, <LP1=LPT2>  ; BUT ALLOW FOR OVERRIDE\r
 \r
+               $LPNUM=0                ;TEMPORARY SYMBOL USED TO FACILITATE\r
+                                       ; MACRO GENERATION\r
 \r
-       REPEAT LPTN, <\r
 \r
-               LPTDDB \$LPNUM\r
-               $LPNUM=$LPNUM+1\r
+               REPEAT LPTN, <\r
+\r
+                       LPTDDB (\$LPNUM)\r
+                       $LPNUM=$LPNUM+1\r
+               >\r
+\r
        >\r
 \r
->\r
 \r
 \f;CARD READER ENTRY POINT AND BITS\r
 \r
-       IFG CDRN, <\r
-       IFG CR10N, <EXTERN CDRSRX>      ;CR10 ENTRY POINT\r
-       IFE CR10N, <EXTERN CDRSR6>      ;PDP-6 CARD READER\r
-       INTERNAL CDRBTS\r
+       IFG CDRN,<\r
+       IFG CR10N,<EXTERN CDRSRX>       ;CR10 ENTRY POINT\r
+       IFE CR10N,<EXTERN CDRSR6>       ;PDP-6 CARD READER\r
+       INTERN CDRBTS\r
                CDRBTS==1670+CDRCHN\r
->\r
+       >\r
 \r
 \r
 ;CARD PUNCH ENTRY POINT\r
@@ -1541,41 +1518,42 @@ LP'N'PTR: 0                             ;( 7) BLOCK OUTPUT POINTER
 \r
        IFG PLTN,<EXTERN PLTSER>\r
 \r
+\r
 ;PAPER TAPE READER ENTRY POINT AND MASK\r
 \r
-       IFG PTRN, <EXTERN PTRSER        ;SAME ROUTINE FOR PDP-6 AND PDP-10 READER\r
+       IFG PTRN,<EXTERN PTRSER ;SAME ROUTINE FOR PDP-6 AND PDP-10 READER\r
        INTERN PTRMSK\r
-               IFG PDP10N, <PTRMSK==0>         ;MASK==0 IF PDP-10 READER\r
-               IFE PDP10N, <PTRMSK==777777>    ;MASK==777777 FOR PDP-6 READER\r
+               IFG PDP10N,<PTRMSK==0>  ;MASK==0 IF PDP-10 READER\r
+               IFE PDP10N,<PTRMSK==777777>     ;MASK==777777 FOR PDP-6 READER\r
 >\r
 \r
 \r
 ;PAPER TAPE PUNCH ENTRY POINT\r
 \r
        IFG PTPN,<EXTERN PTPSER>\r
-\f;DISK ENTRY POINTS AND BITS\r
 \r
 \r
+\f;DISK ENTRY POINTS AND BITS\r
+\r
        IFG DSKN,<\r
        INTERN DSKBIT,DCBBIT,DSKON,DSKOFF\r
                DCBBIT==0       ;0 UNLESS DATA PRODUCTS DISK(SEE BELOW)\r
                DSKBIT==1       ;LOW PRIORITY DISK PI CHANNEL\r
                REPEAT 7-DSKCHN,<DSKBIT==DSKBIT*2>\r
                DSKON==2000+DSKBIT      ;CONO PI, TURN DISK CHANNEL ON\r
-               DSKOFF=1000+DSKBIT      ;CONO PI, TURN DISKCHANNEL OFF\r
+               DSKOFF==1000+DSKBIT     ;CONO PI, TURN DISKCHANNEL OFF\r
        IFG RD10N,<     ;BURROUGHS DISK\r
-               EXTERN RCXINT,DSKSRB,RCXWNZ     ;LOAD EARLIER VERSION\r
+               EXTERN RCXINT,DSKSRB,RCXWNZ     ;LOAD EARLIER VERSIONS OF\r
                                        ; DSKINT,DSKSRB,ONCEB\r
                IFG SYS50N,<EXTERN RCXSKD>      ;LOAD EARLIER VERSION OF SCHEDB\r
        >\r
        IFG DPDN,<      ;IF DATA PRODUCTS DISK\r
-               EXTERNAL LODINT         ;LOAD DPDINT\r
-               EXTERNAL DSKSRD         ;LOAD ONCE=DSKSR FOR DATA PROD DISK\r
-\r
+               EXTERNAL LDDINT         ;LOAD DPDINT\r
+               EXTERNAL DSKSRD         ;LOAD ONCE+DSKSR FOR DATA PROD DISK\r
                INTERN DCBBIT,DSKX8,DSKX9\r
                        DCBBIT==1\r
                        REPEAT 7-DCBCHN,<DCBBIT==DCBBIT*2>\r
-                       DSKX8==40+2*DCBCHN      ;DATA-CONTROL BLKI/BLKO OCS\r
+                       DSKX8==40+2*DCBCHN      ;DATA-CONTROL BLKI/BLKO LOCS\r
                        DSKX9==DSKX8+1\r
        >\r
        IFG RA10N,<     ;IF BRYANT DISK\r
@@ -1584,19 +1562,19 @@ LP'N'PTR: 0                             ;( 7) BLOCK OUTPUT POINTER
        >\r
 >\r
 \r
+\r
 ;PSEUDO TTY ENTRY POINT\r
 \r
-       IFE PTYN, <INTERN PTYPE,PTMNMZ,PTYOW,PTMNMD\r
+       IFE PTYN,<INTERN PTYPE,PTMNMZ,PTYOW,PTMNMD\r
 PTYPE:PTMNMZ:PTYOW:PTMNMD:     HALT CPOPJ      ;HALT IF SCNSER CALL PTY ROUTINES\r
                                                ; BECAUSE NONE LOADED\r
 >\r
-       IFG PTYN, <\r
+       IFG PTYN,<\r
        IFE FULLN,<EXTERN PTYSRH>       ;HALF DUPLEX SCANNER SOFTWARE\r
        IFG FULLN,<EXTERN PTYSRF>       ;FULL DUPLEX SCANNER SOFTWARE\r
 >\r
        LIT\r
        RELOC .-COMORG          ;NOW MAKE RELOCATABLE SO NEXT PROGRAM WILL BE LOADED\r
-                               ; IMMEDIATELY AFTER THIS ONE\r
-\r
-COMEND: END\r
+                               ; IMMMEDIATELY AFTER THIS ONE\r
 \r
+COMEND:        END\r
index 3a2533b..cfad827 100644 (file)
@@ -605,7 +605,7 @@ ERRCMD:     MOVEI   BP,MESCMD
 MESCMD:        SIXBIT  /?COMMAND ERROR#/\r
 ERRSW: MOVEI   BP,MESSW\r
        PUSHJ   P,TYPEIT\r
-       JRST    ST\r\r\r
+       JRST    ST\r
 MESSW: SIXBIT  /?SWITCH ERROR#/\r
 ERRIN1:        SKIPA   T,IDEV\r
 ERRIN2:        MOVE    T,ODEV\r
@@ -776,7 +776,7 @@ COPOUT:     OUTPUT  2,LISTC         ;COPY AND ZERO
        PUSHJ   P,VERIFY                ;VERIFY AND EXIT THIS PAGE\r
 VERONE:        SETSTS  1,136           ;SET\r
        SETSTS  2,136           ;DUMP MODE\r
-       MOVEI   LOC,1           ;START AT BLOCK 1\r\r\r
+       MOVEI   LOC,1           ;START AT BLOCK 1\r
 VERSET:        MOVE    V1,LISTV1       ;IOWDS\r
        MOVE    V2,LISTV2       ;TO ACS\r
        USETI   1,(LOC)         ;MASTER\r
@@ -873,7 +873,7 @@ NEWBLK:     PUSHJ   P,GETWRD        ;GET ONE WORD FROM PTR FILE
        CAIN    TYPE,1          ;BLKTYP=1?\r
        PUSH    I,W             ;YEP, SAVE THE BITS\r
        CAIG    TYPE,7          ;ILL-BLK-TYP?\r
-       JRST    @TYPTAB(TYPE)   ;NO, OFF TO BLOCK HANDLER\r\r\r
+       JRST    @TYPTAB(TYPE)   ;NO, OFF TO BLOCK HANDLER\r
 \r
 TTCALL 3,[ASCIZ /?ILLEGAL BLOCK TPYE\r
 /]\r
@@ -950,7 +950,7 @@ BLK4A:      HRLI    CNT,-22         ;
        TRNN    CNT,-1          ;\r
        JRST    NEWBLK          ;\r
        PUSHJ   P,GETWRD        ;\r
-       AOBJN   CNT,BLK4A+1     ;PASS/IGNORE \r
+       AOBJN   CNT,.-1         ;PASS/IGNORE \r
        TRNN    CNT,-1          ;\r
        JRST    NEWBLK          ;\r
        PUSHJ   P,GETWRD        ;\r
index 7d9de3a..c930d94 100644 (file)
@@ -1,11 +1,11 @@
 TITLE  DLSINT - INT. SERV. FOR DLS (DATA LINE SCANNER DC10)\r
-SUBTTL M.FREDRIKSEN/RCC TS  01 JUN 69 V005\r
+SUBTTL M. FREDRIKSEN/RCC TS  01 JUN 69 V005\r
 XP     VDLSIT,005\r
                ;PUT VERSION NUMBER IN GLOB LISTING AND LOADER STORAGE MAP\r
 \r
 ;MODULAR HARDWARE INTERFACE WITH EITHER SCNSER OR TTYSER\r
 \r
-EXTERN TYPX\r
+EXTERNAL TYPX\r
 \r
 IFE FTTTYSER,<XP FULTWX,200000>\r
 \r
@@ -26,12 +26,12 @@ EXTERNAL PLASTC
 \r
 \r
 \r
-DLS=240                        ;DC10 DEVICE NUMBER\r
-;BITS IN CHREC TO COMMUNCATE WITH DLS\r
+DLS=240                                ;DC10 DEVICE NUMBER\r
+;BITS IN CHREC TO COMMUNICATE WITH DLS\r
 \r
-USDRLN=100             ;USE DIRECTED LINE NUMBER\r
-TDSABL=400             ;TRANSMIT DISABLE\r
-RCVBIT=400             ;RECEIVE BIT AFER DATAI DLS,CHREC\r
+USDRLN=100                     ;USE DIRECTED LINE NUMBER\r
+TDSABL=400                     ;TRANSMIT DISABLE\r
+RCVBIT=400                     ;RECEIVE BIT AFTER DATAI DLS,CHREC\r
 \f\r
 ;DEVICE DEPENDENT PORTION OF INITIALIZATION CODE\r
 ;CALL: MOVEI   TAC,CHANNEL NUMER\r
@@ -39,11 +39,11 @@ RCVBIT=400          ;RECEIVE BIT AFER DATAI DLS,CHREC
 \r
 INTERNAL SCNINI\r
 DLSINI:\r
-SCNINI:        CONO    DLS,40          ;INIT DLS COMPLETELY (I/O/RESET)\r
+SCNINI:        CONO    DLS,40          ;INIT DLS COMPLETELY (I/O RESET)\r
        CONO    DLS,(TAC)       ;ASSIGN PI CHANNEL NUMBER\r
        POPJ    PDP,\r
 \r
-;SCANNER INTERRUPT SERVICE ROUTINE\r
+;SCANNER INTERRUPT SERVICE ROUTINE.\r
 \r
 ENTRY DLSINT\r
 \r
@@ -51,7 +51,7 @@ INTERNAL SCNINT
 EXTERNAL SCNSAV,TCONLN,TTYTAB,XMTINT,TYPE,INUS2,RECINT\r
 \r
 DLSINT:\r
-SCNINT:        CONSO   DLS,30          ;ANY INTERRUPTS ON DLS\r
+SCNINT:        CONSO   DLS,30          ;ANY INTERRUPTS ON DLS?\r
        JRST SCNINT             ;NO\r
        JSR SCNSAV\r
        DATAI   DLS,CHREC       ;GET CHARACTER & LINE INFO\r
@@ -76,13 +76,13 @@ TCOMM:
        CAILE LINE,TCONLN       ;PSEUDO CONSOLE?\r
        JRST INJEST             ;YES\r
        CAIN    LINE,TCONLN     ;IS IT THE CTY ?\r
-       JRST INUS2              ;YES, ACCPT CHAR AND PROCESS\r
+       JRST INUS2              ;YES, ACCEPT CHAR AND PROCESS\r
        JRST TYPE               ;NO, ECHO CHAR ON FULL DUPLEX\r
                                ;BEFORE PROCESSING IT\r
 \r
                                ;HERE IF LINE NUMBER TOO BIG\r
 SCNIN2:        DATAO   DLS,[EXP TDSABL]                ;SET TRANSMIT DISABLE BIT AND OUTPUT IT\r
-                               ;(JUST INCASE, ELSE IT WILL INTERRUPT IMMEDIATLY AGAIN)\r
+                               ;(JUST INCASE, ELSE IT WILL INTERRUPT IMMEDIATELY AGAIN)\r
        POPJ    PDP,            ;DISMISS INTERRUPT\r
 \f;COMMON TO RECEIVE AND TRANSMIT.\r
 \r
index cd914c2..841ea1a 100644 (file)
@@ -124,7 +124,7 @@ DSKFDG:     HRRZI   TAC,DSKCHN      ;THIS INSTRUCTION TEMPORARILY ALTERED DURING "ONCE".
        HLRE    TAC1,@RCXIOC    ; CHANNEL CONTROL WORD SHOULD CONTAIN UPON\r
        SUB     TAC,TAC1        ; SUCCESSFUL COMPLETION OF THE DISK OPERATION.\r
        MOVE    TAC1,RCXIOC\r
-       HRLI    TAC,1(TAC)\r
+       HRLI    TAC,1(TAC1)\r
        MOVEM   TAC,RCXFIN\r
        SETZM   RCXCCW          ;ZERO THE LOCATION WHERE THE DISK SYNCRONIZER WILL\r
                                ; STORE THE CHANNEL CONTROL WORD.\r
index 30fe5b8..0279d9a 100644 (file)
@@ -58,8 +58,7 @@ MFDBLK:       13000                   ;THIS BLOCK CONTAINS RETRIEVAL INFO, OF MFD
 SATXWD:        XWD -NUMSAT,13001       ;LH=NUMBER OF SAT BLOCKS.\r
                                ;RH=FIRST SAT BLOCK NUMBER.\r
 >>\r
-\f\r
-CHKCNT=200                     ;NUMBER OF WORDS TO CHECK-SUM\r
+\fCHKCNT=200                    ;NUMBER OF WORDS TO CHECK-SUM\r
 W8BIT=400000                   ;WAIT INDICATION FOR DDB\r
 \r
 ; BITS IN LH OF IOS\r
@@ -89,8 +88,10 @@ VRGPTR=100000                        ;FLAG TO SIGNAL THAT POINTERS HAVE NEVER BEEN WRITTEN
 RENBIT=20000                   ;"RENAMING" INDICATION FOR SETLE ROUTINE\r
 WPRO=40000                     ;LOOKUP DONE, FILE IS IN WRITE PROTTECT\r
 CKSUPR=10000                   ;FLAG SET IF READING DUMP FILES IN NON-DUMP MODE\r
-\f\r
-;CONSTANTS USED IN CONNECTION WITH ACCESS TABLE ENTRIES\r
+\r
+\r
+\r
+\f;CONSTANTS USED IN CONNECTION WITH ACCESS TABLE ENTRIES\r
 \r
 ATPP=0                         ;PROJECT,PROGRAMMER NUMBERS\r
 ATNAME=1                       ;OWNER NAME\r
@@ -122,19 +123,18 @@ XP NUMSAT,16                      ;NUMBER OF SAT BLOCKS FOR 5.76 MILLION
 >>\r
 XP WLBIT,400000                                ;IF BIT IS ON IN FIRST SATENT ENTRY\r
                                ;WORD, THE DISK IS WRITE-LOCKED.\r
-\f\r
-EXTERNAL DSKOFF\r
+\fEXTERNAL DSKOFF\r
 \r
 DEFINE NOSCHEDULE <\r
        CONO PI,DSKOFF\r
 >\r
 \r
+\r
 EXTERNAL DSKON\r
 DEFINE SCHEDULE <\r
        CONO PI,DSKON\r
 >\r
-\f\r
-INTERNAL FTCHECK,FTMONP\r
+\fINTERNAL FTCHECK,FTMONP\r
 IFN FTCHECK+FTMONP,<\r
 EXTERNAL DDBPTR,DSKCOR,PTRN,MOPTR,MIPTR,RUNUSR,SAVPRG,USRCNT\r
 EXTERNAL SATPTR,SAT,SATBK2,DIRSIZ\r
@@ -153,7 +153,6 @@ DDBPTR:     Z                       ;LOCATION OF NEXT DDB TO LOOK AT
 INTERNAL SATPTR,SAT,SATBK2,REFLAG,DFBUSY,CKSMCT\r
 MOPTR: BLOCK   1               ;POINTER TO NEXT TASK TO DO\r
 MIPTR: BLOCK   1               ;POINTER TO NEXT FREE QUEUE ENTRY\r
-\r
 RUNUSR:        BLOCK   1               ;LH=DEVDAT OF USER JOB RUNNING\r
                                ;RH= UNUSED\r
 USRCNT:        BLOCK   1               ;COUNT OF WAITING USER JOBS\r
@@ -195,8 +194,7 @@ DSKXDB=5400                 ;FILE STORAGE BEGINS ON SECOND DISK OF OLD (MOD 270)
                                ; DISK FILE SINCE FIRST DISK IS ALLOCATED\r
                                ; TO SWAPPING.\r
 >\r
-\f\r
-SATENT:        REPEAT  NUMSAT,<\r
+\fSATENT:       REPEAT  NUMSAT,<\r
        XWD     DSKXDB,0        ;RH CONTAINS WLBIT AND COUNT OF BLOCK USED\r
        BLOCK   1               ;BIT MASK, SINGLE ROTATING BIT\r
        BLOCK   1               ;XWD LENGTH OF SAT TABLE POINTER WORD\r
@@ -204,22 +202,22 @@ SATENT:   REPEAT  NUMSAT,<
        DSKXDB=DSKXDB+NUMBLK>\r
 \r
        XP      SATTOP,SATENT+SENTSZ*NUMSAT-SENTSZ\r
+\r
 >;END OF FTRA100 CONDITIONAL\r
 \r
+\r
 SAT:   BLOCK   200             ;CURRENT SAT BLOCK\r
 \r
        XP      SATM2,SAT-2     ;LOWEST ABS, ADR-1 ALLOWED IN CHANNEL COMMAND\r
                                ; LIST - USED TO KEEP FROM WIPING OUT MONITOR.\r
 SATBK2:        XWD     -200,SAT\r
-\f\r
-       XP      DIRSIZ,4                ;NO. OF WORDS OF RET. INFO WHICH ARE\r
+\f      XP      DIRSIZ,4                ;NO. OF WORDS OF RET. INFO WHICH ARE\r
                                ;NOT POINTERS.\r
 \r
 ;THE DUMMY DEVICE DATA BLOCK\r
 DSKCOR=10\r
 DSKSIZ=4*DSKCOR                        ;NUMBER OF WORDS ALLOCATED FOR DDB\r
                                ;MUST BE A MULTIPLE OF FOR (SEE GETCOR)\r
-\r
 INTERN DSKDDB\r
 DSKDDB:        SIXBIT  /DSK/\r
        XWD     ^D5*HUNGST,201\r
@@ -241,7 +239,7 @@ DSKDDB:     SIXBIT  /DSK/
        Z                       ;C(LH)=ADDRESS OF ACCESS TABLE ENTRY\r
                                ;C(RH)=ADDRESS OF CURRENT POINTER IN DDB\r
        XP      DEVCNT,.-DSKDDB ;C(LH)USED DURING LOOKUP,ENTER\r
-       Z                       ;C(LH)==RELATIVE BLOCK# WITHIN UFD OPTIMIZE UFD SEARCHES)\r
+       Z                       ;C(LH)=RELATIVE BLOCK# WITHIN UFD OPTIMIZE UFD SEARCHES)\r
                                ;C(RH)=COUNT OF BLOCKS IN FILE\r
        XP      DEVBLK,.-DSKDDB ;C(LH)=BLOCK NUMBER OF CURRENT POINTER\r
        Z                       ;C(LH)=LOGICAL BLOCK# OF RIB\r
@@ -264,9 +262,7 @@ DSKDDB:     SIXBIT  /DSK/
        XP      FPNTR,PTR1+DIRSIZ       ;LOC. OF FIRST POINTER TO RET. INFO.\r
        XP      FPNTR1,FPNTR-1\r
        XP      PTRN,DSKSIZ-1\r
-\f\r
-;DEFINE 3 WORD ENTRY CONTROLLING BIT SEARCH IN DDBTAB\r
-\r
+\f;DEFINE 3 WORD ENTRY CONTROLLING BIT SEARCH IN DDBTAB                                    \r
 INTERNAL LOCORE,CRINIT\r
 EXTERNAL DDBTAB\r
 \r
@@ -277,8 +273,8 @@ CORIWD:     XWD 0,0                 ;AOBJN POINTER TO FIRST WORD IN DDBTAB CONTAINING A 0
 CRINIT:        XWD 0,DDBTAB            ;INITIAL AOBJN POINTER FOR CORIWD\r
                                ; LH SET BY LINKDB\r
 MONBUF:        BLOCK 200               ;MONITOR BUFFER, USED TO READ RETRIEVAL POINTERS, ETC.\r
-\f\r
-;ERROR CODES FOR LOOKUP, RENAME  AND/OR ENTER\r
+>\r
+\f;ERROR CODES FOR LOOKUP, RENAME  AND/OR ENTER\r
 \r
 NOTINU=0                       ;NO SUCH FILE\r
 NOTINM=1                       ;NO SUCH USER\r
@@ -289,6 +285,7 @@ RENFAL=4                    ;TRIED TO RENAME FILE TO EXISTING NAME OR ENTER
 NOFILE=5                       ;TRIED TO RENAME WITH NO FILE SELECTED\r
 ERRBIT=1                       ;BITS GO IN WORD 1 OF THE ENTRY\r
 \r
+\r
 ;DISK DISPATCH TABLE\r
 \r
 INTERNAL DSKDSP\r
@@ -329,11 +326,11 @@ ACCIN2:   MOVEI TAC,DSKDDB
        MOVEM TAC,CORBIT        ;INITIALIZE FLOATING 1 BIT\r
        MOVE TAC,CRINIT\r
        MOVEM TAC,CORIWD        ;RESET AOBJN WORD\r
-\r
        POPJ PDP,\r
 \r
-;DSKINI - CALLED AT START, RESTART, 143 RESTART\r
-; REMOVE ACCESS ENTRIES, REMOVE DDB'S NOT ASSIGNED BY CONSOLE. CLEAR THE MONITOR QUEUE\r
+\r
+;DSKINI - CALLED AT 140 START, RESTART, 143 RESTART\r
+; REMOVE ACCESS ENTRIES,  REMOVE DDB'S NOT ASSIGNED BY CONSOLE.  CLEAR THE MONITOR QUEUE.\r
 INTERNAL DSKINI, SETSAT\r
 EXTERNAL DISKUP,DFWUNS\r
 \r
@@ -379,8 +376,7 @@ SETSAT:     AOSE STARTS             ;SKIP FIRST TIEM ONLY
        JRST SAT01              ;WRITE SAT BLOCK IN CORE\r
        JRST DFWUNS             ;SCAN ALL SAT BLOCKS\r
 STARTS: -1                     ;COUNT STARTS, RESTARTS\r
-\f\r
-;WRITE OUT SAT BLOCK, ENTER AT DSKSTP WITH FIXED START 147,\r
+\f;WRITE OUT SAT BLOCK, ENTER AT DSKSTP WITH FIXED START 147,\r
 ;AT SAT01 UPON RE-ENTRY OF INITIALIZATION.\r
 \r
 INTERN DSKSTP,SAT05,JSAT06\r
@@ -454,8 +450,7 @@ DFENT2:     MOVEI TAC1,WTBIT+ATCLO  ;BITS FOR ACCESS ENTRRY - FILE CREATION
        NOSCHEDULE\r
        PUSHJ PDP,SCANAT        ;SCAN ACCESS TABLE FROM BEGINNING\r
        JRST DFENT3             ;NOT THERE\r
-\f\r
-DFEN2A:        MOVE DAT,TBITS(TAC)     ;WRITE BIT ON?\r
+\fDFEN2A:       MOVE DAT,TBITS(TAC)     ;WRITE BIT ON?\r
        TRNE DAT,WTBIT\r
        JRST DFERR6             ;YES,ERROR\r
        PUSHJ PDP,SCNAT2\r
@@ -472,7 +467,6 @@ DFENT3:     TLZE    IOS,PRCHG       ;PROTECTION FAILURE?
        HRLZM TAC,DEVBKO(DEVDAT)\r
        HRRM TAC,DEVEXT(DEVDAT) ;STORE FIRST RIB#\r
        NOSCHEDULE\r
-\r
        MOVE DAT,TAC1           ;ACCESS ENTRY BITS\r
        PUSHJ PDP,SETAT         ;CREATE ACCESS ENTRY. RETURN POINTER IN TAC1\r
        HRLM TAC1,DEVACC(DEVDAT) ;STORE POINTER TO ACCESS ENTRY\r
@@ -505,8 +499,7 @@ DFENT4:     TLO TAC1,55000          ;PROTECTION
        MOVSI TAC,VRGPTR        ;SET "VIRGIN POINTER" FLAG (O DFO4A SUBROUTINE\r
        IORM TAC,DEVOAD(DEVDAT) ;WILL CREATE A NEW RIB WHEN JUST CALLED\r
        JRST ALLOK\r
-\f\r
-;AN ENTER AFTER A LOOKUP, SET "RWTBIT" FLAG IN ACCESS ENTRY\r
+\f;AN ENTER AFTER A LOOKUP, SET "RWTBIT" FLAG IN ACCESS ENTRY\r
 \r
 DFENT5:        MOVE TAC,DEVOAD(DEVDAT) ;CHECK PROTECTION\r
        TLNE TAC,WPRO\r
@@ -518,9 +511,8 @@ DFENT5:     MOVE TAC,DEVOAD(DEVDAT) ;CHECK PROTECTION
        PUSHJ PDP,DFERR6        ;YES,  THIS WILL NOT RETURN HERE\r
        MOVEM TAC1,TBITS(TAC)   ;NO, SET IT\r
        SCHEDULE\r
-       CONO PI,DSKON\r
 \r
-       MOVE TAC,@UUO           ;SAVE FILE?\r
+       MOVE TAC,@UUO           ;SAME FILE?\r
        CAME TAC,DEVFIL(DEVDAT)\r
        JRST DFERR8             ;NO, NAME WRONG\r
        ADDI UUO,1\r
@@ -541,8 +533,8 @@ DFENT5:     MOVE TAC,DEVOAD(DEVDAT) ;CHECK PROTECTION
 DFENT7:        PUSHJ PDP,SCNAT2        ;FIND ANOTHER\r
        JRST DFENT1             ;NO WRITERS, PERMIT THIS ENTER\r
        JRST DFERR6             ;MUST BE BEING WRITTEN OR RENAMED\r
-\f\r
-;LOOKUP UUO\r
+\f;LOOKUP UUO\r
+\r
 \r
 EXTERNAL UDLKC,TPOPJ\r
 \r
@@ -581,8 +573,8 @@ DFLUK3:     AOS TBITS(TAC)          ;INCREMENT RCOUNT
        TLOA TAC1,WPRO          ;WRITE PROTECTED. SET FLAG\r
        TLZ TAC1,WPRO           ;WRITE OK--RESET FLAG\r
        IORM TAC1,DEVOAD(DEVDAT)\r
-\f\r
-DFLUK4:        MOVSI TAC,PTR1(DEVDAT)  ;COPY INFO TO LOOKUP PARAMETER BLOCK\r
+\r
+\fDFLUK4:       MOVSI TAC,PTR1(DEVDAT)  ;COPY INFO TO LOOKUP PARAMETER BLOCK\r
        NOSCHEDULE\r
        HRRI TAC,@UUO           ;DESTINATION IS UUO PARAMETER BLOCK\r
        MOVE TAC1,TAC\r
@@ -597,8 +589,7 @@ DFLUK4:     MOVSI TAC,PTR1(DEVDAT)  ;COPY INFO TO LOOKUP PARAMETER BLOCK
        TLZ DEVDAT,ICLOSB\r
        MOVSI TAC,VRGPTR        ;POINTERS DO EXIST ON THE DISK SO\r
        ANDCAM TAC,DEVOAD(DEVDAT) ;CLEAR THE VIRGIN POINTERS FLAG.\r
-\f\r
-ALLOK: MOVEI DAT,FPNTR(DEVDAT) ;SKIP FILE INFO IN FIRST RIB\r
+\fALLOK:        MOVEI DAT,FPNTR(DEVDAT) ;SKIP FILE INFO IN FIRST RIB\r
        HRRM DAT,DEVACC(DEVDAT) ;SET VERTICAL POINTER POINTER\r
        MOVEI TAC,1\r
        HRRM TAC,SETCNT(DEVDAT) ;"POISITONED" AT RELATIVE BLOCK 1 OF FILE\r
@@ -617,7 +608,6 @@ IFG CHKCNT,<
        IORM TAC,DEVOAD(DEVDAT) ;NO. SUPPRESS CHECKSUM\r
 >\r
 ALLXIT:        POP PDP,TAC             ;REMEMBER 0(PDP) WASS XWD PROJ,PROG\r
-\r
        AOS (PDP)               ;RETURN TO CALL+2\r
        JRST CLRBUF             ;RELEASE MONITOR BUFFER\r
 \r
@@ -646,8 +636,7 @@ ALTMFD:     MOVEI TAC,3(UUO)        ;IS PROJ, PROG. = 1,1?
        POPJ PDP,               ;YES, RETURN\r
 \r
        JRST    DFERR5\r
-\f\r
-;RENAME UUO\r
+\f;RENAME UUO\r
 \r
 EXTERNAL CPOPJ1\r
 EXTERNAL THSDAT\r
@@ -674,6 +663,7 @@ DFRENX:     SKIPN DEVFIL(DEVDAT)    ;IS THERE AN OLD FILE?
 DFREN1:        AOS TBITS(TAC)          ;INCREMENT RCOUNT\r
        HRLM TAC,DEVACC(DEVDAT) ;SAVE POINTER TO ACCESS ENTRY\r
        SCHEDULE\r
+\r
        HRRZ TAC,DEVEXT(DEVDAT) ;CAN THIS FILE BE RENAMED?\r
        PUSHJ PDP,SETPTR        ;READ IN FIRST SET OF RETRIEVAL POINTERS\r
        MOVEI   AC1,@UUO        ;IS THE PROTECTION TO BE CHANGED ?\r
@@ -692,8 +682,8 @@ DFRN2A:     MOVSI DAT,100000        ;CAN THIS BE RE-WRITTEN?
        JRST DFERR3             ;BAD RETREIVAL INFO\r
        JRST DFRN8A             ;WRITE PROTECTED\r
        TLZ IOS,PRCHG           ;ARBITRARY CHANGE OK.\r
-\f\r
-DFREN2:        NOSCHEDULE\r
+\r
+\fDFREN2:       NOSCHEDULE\r
        PUSHJ PDP,SCANAT        ;SCAN ACCESS TABLE FROM BEGINNING\r
        JRST DFRN1B             ;NO\r
 \r
@@ -708,8 +698,7 @@ DFRN1B:     HLRZ TAC,DEVACC(DEVDAT) ;SET RENAME FLAG IN FIRST ENCOUNTERED ACCESS ENT
        MOVEI AC1,RTBIT         ;RENAME BIT\r
        ORM AC1,TBITS(TAC)\r
        SCHEDULE\r
-\f\r
-       MOVE TAC,@UUO           ;GET NEW FILENAME\r
+\f      MOVE TAC,@UUO           ;GET NEW FILENAME\r
        CAME TAC,DEVFIL(DEVDAT) ;SAVE AS DDB?\r
        JRST DFREN3             ;NO\r
        ADDI UUO,1              ;YES, SAME EXTENSION?\r
@@ -718,6 +707,7 @@ DFRN1B:     HLRZ TAC,DEVACC(DEVDAT) ;SET RENAME FLAG IN FIRST ENCOUNTERED ACCESS ENT
        TLNE TAC,-1             ;SAME?\r
        SOJA UUO,DFREN3         ;NO\r
 \r
+\r
 ;FILENAME AND EXTENSION ARE IDENTICAL. CHANGE ONLY PROTECTION\r
 \r
        TLZ IOS,PRCHG           ;CLEAR PRTOECTION CHANGE FLAG\r
@@ -761,8 +751,7 @@ DFREN3:     TLZE IOS,PRCHG          ;IS ONLY PROTECTION CHANGE PERMITTED?
        SCHEDULE\r
        PUSHJ PDP,DFCL21\r
        JRST DFER10\r
-\f\r
-;ALTER RETRIEVAL INFORMATION\r
+\f;ALTER RETRIEVAL INFORMATION\r
 \r
 DFREN5:        POP PDP,DAT             ;BACK UP PDP\r
 \r
@@ -794,8 +783,7 @@ DFREN5:     POP PDP,DAT             ;BACK UP PDP
        DPB TAC,[POINT 9,@TAC1,8] ;STORE IN RIB\r
 \r
        PUSHJ PDP,WRI           ;RE-WRITE RIB\r
-\f\r
-;ALTER UFD BLOCK\r
+\f;ALTER UFD BLOCK\r
 \r
        PUSHJ PDP,FINDE         ;BRING IN CORRECT BLOCK\r
        \r
@@ -814,7 +802,6 @@ DFREN5:     POP PDP,DAT             ;BACK UP PDP
 \r
 DFRN8A:        TLNE  IOS,PRCHG         ;PROTECTION CHANGE?\r
        JRST DFREN2             ;YES\r
-\r
 DFREN8:        PUSHJ PDP,DFCL21        ;TAKE OUT ACCESS ENTRY\r
        JRST DFERR5             ;AND LEAVE\r
 \r
@@ -823,8 +810,7 @@ DFREN8:     PUSHJ PDP,DFCL21        ;TAKE OUT ACCESS ENTRY
 DFREN9:        SCHEDULE\r
        PUSHJ PDP,DFCL21        ;TEAKE OUT ACCESS ENTRY\r
        JRST DFERR6\r
-\f\r
-;DELETE A FILE FROM A UFD\r
+\f;DELETE A FILE FROM A UFD\r
 \r
 DFREN7:        PUSHJ PDP,FINDE         ;FIND THE CORRECT BLOCK\r
 \r
@@ -851,8 +837,7 @@ DFREN7:     PUSHJ PDP,FINDE         ;FIND THE CORRECT BLOCK
        MOVEI TAC1,DTBIT\r
        IORM TAC1,TBITS(TAC)    ;SET TO DELETE WHEN THROUGH READIN\r
        JRST DFCL21             ;CLOSE ACCESS ENTRY AND LEAVE\r
-\f\r
-;SET UP ARGUMENT LIST FOR LOOKUP, ENTER, AND RENAME\r
+\f;SET UP ARGUMENT LIST FOR LOOKUP, ENTER, AND RENAME\r
 ;SEARCH THRU MFD AND UFD FOR THE FILE-NAME,\r
 ;EXIT TO CALL+1 IF A UFD CANNOT BE FOUND.\r
 ;EXIT TO CALL+2 IF THE FILE IS NOT FOUND.\r
@@ -871,7 +856,6 @@ SETLE0:     MOVEM IOS,DEVIOS(DEVDAT)
        TLO UUO,PROG\r
        MOVE AC1,@UUO           ;PICK UP FILE NAME\r
        MOVEM AC1,DEVFIL(DEVDAT) ;STORE FILE NAME AND EXT IN DDB\r
-\r
        ADDI UUO,1\r
        HLLZ AC1,@UUO\r
        MOVEM AC1,DEVEXT(DEVDAT)\r
@@ -886,8 +870,7 @@ SETLE9:     MOVE ITEM,JOB           ;TRY CURRENT JOB PP.
        SUBI UUO,3              ;UUO POINTS TO FILE NAME\r
        EXCH DAT,(PDP)          ;PUT PP-NUMBER IN PD LIST\r
        PUSH PDP,DAT            ;PDP POINTS TO CALL+1\r
-\f\r
-;SEARCH MFD FOR THE OWNER OF THE FILE\r
+\f;SEARCH MFD FOR THE OWNER OF THE FILE\r
 \r
        MOVE DAT,-1(PDP)         ;XWD PROJ,PROG\r
        MOVSI AC1,(SIXBIT /UFD/) ;EXTENSION "UFD"\r
@@ -924,8 +907,7 @@ SETLE9:     MOVE ITEM,JOB           ;TRY CURRENT JOB PP.
        POP PDP,TAC              ;YES\r
        POP     PDP,TAC\r
        JRST DFERR6\r
-\f\r
-;CHECK RETRIEVAL INFO FOR ELIGIBILITY\r
+\f;CHECK RETRIEVAL INFO FOR ELIGIBILITY\r
 ;ENTER WITH C(DAT) = PROTECTION TO CHECK IN BITS 0-2\r
 ;EXIT TO CALL+1 IF NAME OR EXTENSION WRONG\r
 ;EXIT TO CALL+2 IF PROTECTION WRONG\r
@@ -944,7 +926,6 @@ PROTEK:     MOVEI TAC,PTR1(DEVDAT)  ;POINT TO RETRIEVAL INFO
 \r
        AOS (PDP)\r
 PROTKX:        MOVE AC1,-1(PDP)\r
-\r
 PROTKY:        MOVE ITEM,JOB\r
        XOR AC1,PRJPRG(ITEM)\r
        TRNN AC1,-1             ;SAVEM PROGRAMMER?\r
@@ -962,95 +943,94 @@ PROT1:    TLZ DAT,60000           ;DO NOT TEST OWNER READ OR PROTECT PROTECTION
                                ;PROGRAMMER NUMBER?\r
        AOS(PDP)                ;YES, ALL FILES AVAILABLE\r
        POPJ PDP,\r
-\f\r
-       CLOSE UUO\r
+\f;CLOSE UUO\r
 ;CLOSE AN OUTPUT FILE\r
 \r
 EXTERNAL PIOMOD,WAIT1,OUT\r
 \r
 DFCLSO:        TLNN DEVDAT,ENTRB       ;ENTER DONE YET?\r
-       POPJ PDP,       ;NO, FORGET IT\r
+       POPJ PDP,               ;NO, FORGET IT\r
        HLRZ TAC,DEVACC(DEVDAT) ;SHOULD WE CLOSE? (POINT TO ACCESS ENTRY)\r
        IFN FTRCHK,<\r
-       SKIPN TAC       ;ACCESS TABLE POINTER EXISTS?\r
-       HALT .  ;IF NOT, HALT, NO RE-START POSSIBLE.\r
+       SKIPN TAC               ;ACCESS TABLE POINTER EXISTS?\r
+       HALT .                  ;IF NOT, HALT, NO RE-START POSSIBLE.\r
 >\r
        MOVE TAC,TBITS(TAC)\r
        IFN FTRCHK, <\r
        TRNN TAC,ATCLO+RWTBIT   ;CREATION OR UPDATE OF FILE IN PROGRESS?\r
-       HALT .  ;NO, ERROR. CAN'T CONTINUE\r
+       HALT .                  ;NO, ERROR. CAN'T CONTINUE\r
 >\r
        LDB TAC,PIOMOD\r
-       CAIGE TAC,DR    ;DUMP MODE?\r
+       CAIGE TAC,DR            ;DUMP MODE?\r
        TLNE DEVDAT,DSKRLB      ;RESET UUO IN PROGRESS?\r
-       JRST DFCL2      ;YES TO EITHER QUESTION\r
+       JRST DFCL2              ;YES TO EITHER QUESTION\r
        HLRZ TAC,DEVBUF(DEVDAT) ;NO. GET ADDRESS OF OUTPUT\r
-                       ; BUFFER HEADER BLOCK.\r
-       TLO TAC,PROG    ;RELOCATE\r
-       SKIPG TAC1,@TAC ;VIRGIN BUFFERS (NO RING SET-UP) ?\r
-       JRST DFCL2      ;YES, DON'T OUTPUT\r
-       AOS TAC ;TAC POINTS TO OUTPUT BYTE POINTER\r
+                               ; BUFFER HEADER BLOCK.\r
+       TLO TAC,PROG            ;RELOCATE\r
+       SKIPG TAC1,@TAC         ;VIRGIN BUFFERS (NO RING SET-UP) ?\r
+       JRST DFCL2              ;YES, DON'T OUTPUT\r
+       AOS TAC                 ;TAC POINTS TO OUTPUT BYTE POINTER\r
        ADD TAC1,[XWD PROG,1]   ;TAC1 POINTS TO WORD COUNT PRECEDING\r
-                       ; USER DATA BUFFER\r
-       HRRZ AC1,@TAC   ;PICK UP OUTPUT BYTE POINTER\r
-       SKIPE AC1       ;DON'T CALCULATE WORD COUNT IF BYTE POINTER\r
-                       ; NOT SET UP\r
-       SUBI AC1,(TAC1) ;CALCULATE NUMBER OF WORDS USER HAS FILLED\r
-       TRNE IOS,IOWC   ;USER KEEPING HIS OWN WORD COUNT ?\r
-       HRRZ AC1,@TAC1  ;YES, SUBSTITUTE HIS COUNT FOR\r
-                       ; COMPUTED WORD COUNT\r
-       SKIPN AC1       ;WORD COUNT EQUAL TO 0?\r
-       JRST DFCL2      ;YES, DON'T OUTPUT 0-WORD FINAL BLOCK.\r
-       PUSHJ PDP,OUT   ;NO, GO WRITE LAST PARTIAL BUFFER\r
-       PUSHJ PDP,WAIT1 ;WAIT FOR IT TO FINISH\r
+                               ; USER DATA BUFFER\r
+       HRRZ AC1,@TAC           ;PICK UP OUTPUT BYTE POINTER\r
+       SKIPE AC1               ;DON'T CALCULATE WORD COUNT IF BYTE POINTER\r
+                               ; NOT SET UP\r
+       SUBI AC1,(TAC1)         ;CALCULATE NUMBER OF WORDS USER HAS FILLED\r
+       TRNE IOS,IOWC           ;USER KEEPING HIS OWN WORD COUNT ?\r
+       HRRZ AC1,@TAC1          ;YES, SUBSTITUTE HIS COUNT FOR\r
+                               ; COMPUTED WORD COUNT\r
+       SKIPN AC1               ;WORD COUNT EQUAL TO 0?\r
+       JRST DFCL2              ;YES, DON'T OUTPUT 0-WORD FINAL BLOCK.\r
+       PUSHJ PDP,OUT           ;NO, GO WRITE LAST PARTIAL BUFFER\r
+       PUSHJ PDP,WAIT1         ;WAIT FOR IT TO FINISH\r
        \r
 DFCL2: PUSHJ PDP,SETBUF        ;CHOOSE A BUFFER AREA FOR RETRIEVAL POINTERS\r
        TLO IOS,NMP!NCTRLC              ;SET NMP, MUST NOT INTERRUPT POINTER WRITING\r
        MOVEM IOS,DEVIOS(DEVDAT) ;DO DFO4A WON'T READ NEW POINTERS IN\r
-       PUSHJ PDP,DFO4A ;WRITE OUT LAST BLOCK OF POINTERS\r
+       PUSHJ PDP,DFO4A         ;WRITE OUT LAST BLOCK OF POINTERS\r
        HLRZ AC1,DEVBLK(DEVDAT)\r
        XOR AC1,DEVEXT(DEVDAT)\r
        TRNE AC1,-1             ;ONLY ONE BLOCK OF POINTERS?\r
-       PUSHJ PDP,RRIB  ;NO. READ FIRST BLOCK INTO BUFFER\r
+       PUSHJ PDP,RRIB          ;NO. READ FIRST BLOCK INTO BUFFER\r
        PUSHJ PDP,SET000\r
-       ADDI TAC1,3     ;SET TAC1 TO POINT TO 4TH WORD OF BUFFER\r
+       ADDI TAC1,3             ;SET TAC1 TO POINT TO 4TH WORD OF BUFFER\r
        MOVN AC1,DEVCNT(DEVDAT) ;PICK UP AND NEGATE SIZE OF FILE\r
-       HRLM AC1,@TAC1  ;NEGATIVE WORD COUNT INTO FOURTH WORD OF FIRST RIB\r
-       PUSHJ PDP,WRIB  ;WRITE OUT FIRST BLOCK OF RETRIEVAL INFORMATION\r
-\f\r
-;CLOSE UUO CONTINUED.\r
+       HRLM AC1,@TAC1          ;NEGATIVE WORD COUNT INTO FOURTH WORD OF FIRST RIB\r
+       PUSHJ PDP,WRIB          ;WRITE OUT FIRST BLOCK OF RETRIEVAL INFORMATION\r
+\f;CLOSE UUO CONTINUED.\r
 ;THE FILE AND ALL ITS POINTERS HAVE BEEN PUT ON DISK.\r
 ;NOW PUT ENTRY IN DIRECTORY.\r
+\r
        TLZ DEVDAT,ENTRB\r
        HLRZ TAC,DEVACC(DEVDAT) ;PICK UP ACCESS TABLE POINTER\r
        MOVE DAT,TBITS(TAC)     ;GET STATUS BITS AND READ COUNT\r
-       TRZE DAT,RWTBIT ;CLOSING AND UPDATED FILE?\r
-       JRST DFCLU1     ;YES\r
+       TRZE DAT,RWTBIT         ;CLOSING AND UPDATED FILE?\r
+       JRST DFCLU1             ;YES\r
        TLNE DEVDAT,DSKRLB      ;RESET UUO IN PROGRESS?\r
-       JRST DFC16A     ;YES\r
-       TRNN DAT,ATIND  ;IUS NAME ALREADY IN DIRECTORY?\r
-       JRST DFCL20     ;NO. INSERT IT\r
+       JRST DFC16A             ;YES\r
+       TRNN DAT,ATIND          ;IS NAME ALREADY IN DIRECTORY?\r
+       JRST DFCL20             ;NO. INSERT IT\r
        MOVEM IOS,DEVIOS(DEVDAT)\r
-       PUSHJ PDP,FINDE ;BRING IN BLOCK WITH THIS ENTRY.\r
+       PUSHJ PDP,FINDE         ;BRING IN BLOCK WITH THIS ENTRY.\r
        MOVE TAC,DEVEXT(DEVDAT) ;CHANGE BLOCK POINTER\r
-       EXCH TAC,@TAC1  ;TAC1 POINTS TO ENTRY IN UFD BLOCK\r
+       EXCH TAC,@TAC1          ;TAC1 POINTS TO ENTRY IN UFD BLOCK\r
        MOVEM TAC,DEVEXT(DEVDAT);SAVE POINTER TO RIB OF OLD VERSION FOR RECLAM  \r
-       PUSHJ PDP,WUFD  ;WRITE THE BLOCK BACK OUT\r
+       PUSHJ PDP,WUFD          ;WRITE THE BLOCK BACK OUT\r
        HLRZ TAC,DEVACC(DEVDAT) ;ACCESS TABLE POINTER\r
        NOSCHEDULE\r
        PUSH PDP,ATPP(TAC)      ;SAVE XWD PROJ,PROG\r
-       PUSHJ PDP,CLRAT ;REMOVE THE ACCESS ENTRY\r
-       POP PDP,AC2     ;XWD PROJ,PROG\r
+       PUSHJ PDP,CLRAT         ;REMOVE THE ACCESS ENTRY\r
+       POP PDP,AC2             ;XWD PROJ,PROG\r
        PUSHJ PDP,SCNAT0        ;SCAN FOR ANY OTHERS READING OLD VERSION\r
        JRST DFCL17             ;NONE\r
        \r
 DFCL16:        MOVEI AC1,DTBIT ;DELETE WHEN THRU READING SINCE IT WAS JUST UPDATED\r
        IORM AC1,TBITS(TAC)\r
        PUSHJ PDP,SCNAT2        ;LOOK FOR MORE\r
-       JRST CLRBUF     ;NO MORE\r
+       JRST CLRBUF             ;NO MORE\r
        JRST DFCL16\r
-DFC16A:        PUSHJ PDP,CLRAT ;UPON RESET UUO WITH PARTIALLY WRITTEN FILE.\r
-                       ; CLEAR ACCESS TABLE ENTRY RECLAIM DISK SPACE.\r
+DFC16A:        PUSHJ PDP,CLRAT         ;UPON RESET UUO WITH PARTIALLY WRITTEN FILE.\r
+                               ; CLEAR ACCESS TABLE ENTRY RECLAIM DISK SPACE.\r
                        \r
 DFCL17:        SCHEDULE\r
        HRRZ TAC,DEVEXT(DEVDAT) ;RIB# OF FILE\r
@@ -1059,56 +1039,53 @@ DFCL17: SCHEDULE
 DFCL20:        PUSHJ PDP,INSDIR                ;INSERT THE NAME\r
        HLRZ TAC,DEVACC(DEVDAT) ;ACCESS TABLE POINTER\r
        NOSCHEDULE\r
-       PUSHJ PDP,CLRAT ;REMOVE THE ACCESS ENTRY\r
-       JRST CLRBUF     ;CLEAR ANY BUFFER IN FREE STORAGE\r
+       PUSHJ PDP,CLRAT         ;REMOVE THE ACCESS ENTRY\r
+       JRST CLRBUF             ;CLEAR ANY BUFFER IN FREE STORAGE\r
 DFCLU1:        MOVEM DAT,TBITS(TAC)    ;STORE STATUS BITS (WITH UPDATE MARKER CLEARED)\r
        TLN DEVDAT,LOOKB        ;WAS IUNPUT SIDE OF FILE ALSO CLOSED?\r
-       POPJ PDP,       ;NO, LET THE USER KEEP READING IT\r
+       POPJ PDP,               ;NO, LET THE USER KEEP READING IT\r
        TRNE DAT, RCOUNT        ;YES, ANYBODY ELSE STILL READING IT?\r
-       JRST DFCLU2     ;YES\r
-       TRNE DAT,DTBIT  ;NO, WAS IT MARKED FOR DELETION?\r
-       JRST DFC16A     ;YES, GO DELETE IT AND RECLAIM DISK SPACE\r
-       PUSHJ PDP,CLRAT ;NO, CLEAR ACCESS TABLE ENTRY\r
+       JRST DFCLU2             ;YES\r
+       TRNE DAT,DTBIT          ;NO, WAS IT MARKED FOR DELETION?\r
+       JRST DFC16A             ;YES, GO DELETE IT AND RECLAIM DISK SPACE\r
+       PUSHJ PDP,CLRAT         ;NO, CLEAR ACCESS TABLE ENTRY\r
 DFCLU2:        HRRZS DEVACC(DEVDAT)    ;CLEAR POINTER TO ACCESS TABLE\r
-       JRST CLRBUF     ;CLEAR ANY BUFFER AREA AND EXIT.,\r
-\r
-\r
-       ;CLOSE UUO CONTINUED.\r
+       JRST CLRBUF             ;CLEAR ANY BUFFER AREA AND EXIT.,\r
+\f      ;CLOSE UUO CONTINUED.\r
 ;CLOSE AN INPUT FILE.\r
 \r
 DFCLSI:        TLZN DEVDAT,LOOKB\r
        POPJ PDP,\r
 DFCL21:        HLRZ TAC,DEVACC(DEVDAT) ;POINT TO ACCESS ENTRY\r
-       JUMPE TAC,CPOPJ ;EXIT IF ACCESS TABLE ALREADY CLOSED\r
-                       ; (PROBABLY ^C DURING EARLIER ATTEMPT)\r
+       JUMPE TAC,CPOPJ         ;EXIT IF ACCESS TABLE ALREADY CLOSED\r
+                               ; (PROBABLY ^C DURING EARLIER ATTEMPT)\r
        MOVE TAC1,TBITS(TAC)    ;GET STATUS BITS\r
        IFN FTRCHK,<\r
-       TRNE TAC1,ATCLO ;IS THIS FILE SIMPLY BEING CREATED (NOT UPDATED)?\r
+       TRNE TAC1,ATCLO         ;IS THIS FILE SIMPLY BEING CREATED (NOT UPDATED)?\r
        HALT CPOPJ              ;IF SO, SOMEBODY IS VERY CONFUSED.\r
 >\r
        NOSCHEDULE\r
        SOS TAC1,TBITS(TAC)     ;DECREMENT RCOUNT\r
        TRNE TAC1,RCOUNT+RWTBIT ;ANY MORE READS? OR OUTPUT CLOSE TO DO?\r
-       JRST DFCL23     ;YES, LEAVE\r
+       JRST DFCL23             ;YES, LEAVE\r
 \r
-       TRNE TAC1,DTBIT ;TO BE DELETED?\r
-       JRST  DFC16A    ;YES\r
-       PUSHJ PDP,CLRAT ;CLEAR THE ENTRY AND EXIT\r
+       TRNE TAC1,DTBIT         ;TO BE DELETED?\r
+       JRST  DFC16A            ;YES\r
+       PUSHJ PDP,CLRAT         ;CLEAR THE ENTRY AND EXIT\r
 DFCL23:        SCHEDULE\r
        TLZN DEVDAT,INPB        ;ANY INPUT UUO'\r
-       JRST CLRBUF     ;NO, JUST EXIT, RETURNING MON BUF\r
+       JRST CLRBUF             ;NO, JUST EXIT, RETURNING MON BUF\r
        PUSHJ PDP,SETBUF        ;YES, UPDATE ACCESS DATE AS FOLLOWS:\r
-       PUSHJ PDP,RRIB  ;READ IN JUST BLOCK OF RETRIEVAL INFORMATION.\r
+       PUSHJ PDP,RRIB          ;READ IN JUST BLOCK OF RETRIEVAL INFORMATION.\r
        SUBI TAC1,BLKSIZ-2      ;SET TAC1 TO 2ND WORD OF BLOCK\r
        LDB AC1,[POINT 17,@TAC1,35] ;GET PREVIOUS ACCESS DATA.\r
-       CAMN AC1,THSDAT ;ALREADY ACCESSED EARLIER TODAY?\r
-       JRST CLRBUF     ;YES, JUST CLEAR BUFFER AND EXIT.\r
-       MOVE AC1,THSDAT ;NO, STORE TODAY(S DATE AS NEW ACCESS DATE.\r
+       CAMN AC1,THSDAT         ;ALREADY ACCESSED EARLIER TODAY?\r
+       JRST CLRBUF             ;YES, JUST CLEAR BUFFER AND EXIT.\r
+       MOVE AC1,THSDAT         ;NO, STORE TODAY(S DATE AS NEW ACCESS DATE.\r
        DPB AC1,[POINT 17,@TAC1,35] ;\r
-       PUSHJ PDP,WRIB  ;REWRITE FIRST BLOCK OF RETRIEVAL INFORMATION.\r
-       JRST CLRBUF     ;CLEAR BUFFER AND EXIT.\r
-\r
-SUBTTL DIRECTORY SEARCHING\r
+       PUSHJ PDP,WRIB          ;REWRITE FIRST BLOCK OF RETRIEVAL INFORMATION.\r
+       JRST CLRBUF             ;CLEAR BUFFER AND EXIT.\r
+\fSUBTTL DIRECTORY SEARCHING\r
 ;SEARCH DIRECTORY FOR A PARTICULAR ENTRY.\r
 ;ENTRY BY:     MOVE DAT,NAME\r
 ;              HLLZ AC1,EXTENSION\r
@@ -1118,74 +1095,73 @@ SUBTTL DIRECTORY SEARCHING
 ;              EXIT2           NAME FOUND, TAC POINTS TO ENTRY\r
 \r
 DIRSRC:        PUSH PDP,AC1\r
-       PUSH PDP,DAT    ;0(PDP) IS FILENAME,-1(PDP) IS EXTENSION\r
+       PUSH PDP,DAT            ;0(PDP) IS FILENAME,-1(PDP) IS EXTENSION\r
        PUSHJ PDP,SETPTR        ;READ UFD RETRIEVAL POINTERS\r
 DRSRC0:        HRRZ TAC,DEVACC(DEVDAT)\r
        CAILE TAC,PTRN(DEVDAT)  ;MORE POINTERS IN CORE?\r
-       JRST DRSRC7     ;NO, GET MORE.\r
+       JRST DRSRC7             ;NO, GET MORE.\r
        HRRZ TAC,(TAC)\r
        JUMPE TAC,DRSRC6        ;0 SIGNALS END OF POINTERS\r
        AOS DEVACC(DEVDAT)      ;NEXT POINTER\r
 \r
        AOS DEVCNT(DEVDAT)      ;COUNT UFD BLOCKS SEARCHED\r
-       PUSHJ PDP,MQIN  ;READ IN DATA BLOCK\r
-       JRST RERA       ;ERROR, YOU LOSE.\r
+       PUSHJ PDP,MQIN          ;READ IN DATA BLOCK\r
+       JRST RERA               ;ERROR, YOU LOSE.\r
 \r
        MOVE TAC1,DSKBUF(DEVDAT) ;XWD-L,POINTER\r
        HRRZ TAC,TAC1\r
-       TLNN IOS,UBFS   ;DUMP MODE?\r
-       HRLI TAC,PROG   ;NO. RELOCATE.\r
+       TLNN IOS,UBFS           ;DUMP MODE?\r
+       HRLI TAC,PROG           ;NO. RELOCATE.\r
        HLLZ AC1,-1(PDP)        ;SIXBIT/EXT/\r
-DRSR3A:        SKIPN AC3,@TAC  ;BLOCK ENTIRELY SEARCHED?\r
-       JRST DRSRC0     ;YES\r
+DRSR3A:        SKIPN AC3,@TAC          ;BLOCK ENTIRELY SEARCHED?\r
+       JRST DRSRC0             ;YES\r
        ADDI TAC,1\r
-       CAMN AC3,(PDP)  ;NAMES MATCH?\r
-       JRST DRSRC8     ;YES\r
+       CAMN AC3,(PDP)          ;NAMES MATCH?\r
+       JRST DRSRC8             ;YES\r
 \r
 DRSRC4:        ADDI TAC,1\r
        HRRZ AC3,TAC\r
        CAIE AC3,BLKSIZ(TAC1)   ;IS BLOCK ENTIRELY SEARCHED?\r
-       JRST DRSR3A     ;NO\r
+       JRST DRSR3A             ;NO\r
        JRST DRSRC0\r
 \r
-DRSRC7:        TLNE IOS,NMP    ;ANY MORE POINTERS ON DISK?\r
+DRSRC7:        TLNE IOS,NMP            ;ANY MORE POINTERS ON DISK?\r
        JRST DRSRC6             ;NO\r
-       PUSHJ PDP,GETPTR                ;YES, GET SOME\r
+       PUSHJ PDP,GETPTR        ;YES, GET SOME\r
        JRST DRSRC0\r
 \r
-DRSRC8:        HLLZ AC3,@TAC   ;DOES EXTENSION MATCH\r
+DRSRC8:        HLLZ AC3,@TAC           ;DOES EXTENSION MATCH\r
        CAME AC3,AC1\r
-       JRST DRSRC4     ;NO\r
-       SUBI TAC,1      ;POINT TO FIRST WORD OF ENTRY\r
+       JRST DRSRC4             ;NO\r
+       SUBI TAC,1              ;POINT TO FIRST WORD OF ENTRY\r
 \r
-       AOS -2(PDP)     ;YES, ENTRY IS FOUND\r
+       AOS -2(PDP)             ;YES, ENTRY IS FOUND\r
        MOVSS DEVCNT(DEVDAT)    ;SAVE COUNT OF UFD BLOCKS FOR USE AT CLOSE\r
-;EXIT\r
+\r
+\f;EXIT\r
 \r
 DRSRC6: POP PDP,DAT\r
        POP PDP,AC1\r
-       POPJ PDP,       ;"FILE" NOT FOUND\r
+       POPJ PDP,               ;"FILE" NOT FOUND\r
 ;CHECK PROTECTION ON UFD\r
 \r
-DSRC10: PUSH PDP,AC1   ;PUSH EXTENSION\r
+DSRC10: PUSH PDP,AC1           ;PUSH EXTENSION\r
        PUSHJ PDP,SETPTR\r
        MOVSI DAT,200000        ;SET UP TO TEST READ BIT\r
-       TLNE IOS,10     ;IS IT LOOKUP>\r
+       TLNE IOS,10             ;IS IT LOOKUP?\r
        ROT DAT,-1              ;NO,TEST WRITE PROTECTION\r
        MOVEI TAC,PTR1(DEVDAT)\r
-       HRRZ AC1,-3(PDP)                ;XWD PROJ,PROG\r
+       HRRZ AC1,-3(PDP)        ;XWD PROJ,PROG\r
        TLZ     IOS,PRCHG\r
        PUSHJ PDP,PROTKY\r
-       TLO IOS,PRCHG   ;FLAG PROTECTION CHANGE\r
+       TLO IOS,PRCHG           ;FLAG PROTECTION CHANGE\r
        PUSH PDP,DEVFIL(DEVDAT) ;PUSH FILENAME TO MAKE PDL LOOK LIKE DIRSRC\r
        JRST DRSRC0\r
-\r
-       \r
-;FIND A UFD ENTRY,  IT MUST BE THERE.\r
+\f;FIND A UFD ENTRY,  IT MUST BE THERE.\r
 \r
 EXTERNAL AUREQ,AUWAIT\r
 \r
-FINDE: AOSE AUREQ\r
+FINDE: AOSE AUREQ\r
        PUSHJ PDP,AUWAIT\r
        TLO IOS,AUFLG\r
        HLRZ TAC,SETCNT(DEVDAT) ;SET TAC TO UFD POINTERS\r
@@ -1196,31 +1172,30 @@ FINDE1: MOVSM TAC,DEVBLK(DEVDAT);READ A POINTER BLOCK
        PUSHJ PDP,RRIA\r
        CAILE DAT,BLKSIZ-2      ;POINTER IN THIS BLOCK?\r
        JRST FINDE2             ;NO, GET NEXT ONE\r
-       SUBI DAT,1                      ;YES, BRING THEM IN\r
+       SUBI DAT,1              ;YES, BRING THEM IN\r
        HRRM DAT,DEVBLK(DEVDAT) ;SET INDEX INTO RIB\r
        PUSHJ PDP,DFIN4         ;COPY POINTERS INTO DDB\r
        HRRZ TAC,PTR1(DEVDAT)   ;GET RETRIEVAL POINTER FOR UFD BLOCK\r
-\r
        PUSHJ PDP,MQIN          ;READ THE UFD BLOCK\r
-       JRST RERA                       ;ERROR\r
-       PUSHJ PDP,SET000                ;FIND THE ENTRY\r
+       JRST RERA               ;ERROR\r
+       PUSHJ PDP,SET000        ;FIND THE ENTRY\r
        HLLZ AC1,DEVEXT(DEVDAT) ;GET EXTENSION FROM DDB\r
 \r
-SRCU1: MOVE TAC,@TAC1  ;GET FILE NAME FROM UFD\r
+SRCU1: MOVE TAC,@TAC1          ;GET FILE NAME FROM UFD\r
        ADDI TAC1,1\r
        CAME TAC,DEVFIL(DEVDAT) ;SAME?\r
        AOJA TAC1,SRCU1         ;NAMES DO NOT MATCH\r
        HLLZ TAC,@TAC1          ;GET EXTENSION FROM UFD\r
        CAME TAC,AC1            ;SAME?\r
        AOJA TAC1,SRCU1         ;EXTENSIONS DO NOT MATCH\r
-       POPJ PDP,                       ;FOUND IT\r
+       POPJ PDP,               ;FOUND IT\r
+\r
 \r
-FINDE2:        PUSHJ PDP,SET176                ;GET THE NEXT POINTER BLOCK\r
+FINDE2:        PUSHJ PDP,SET176        ;GET THE NEXT POINTER BLOCK\r
        HLRZ TAC,@TAC1\r
        SUBI DAT,BLKSIZ-2       ;BACK UP DAT\r
        JRST FINDE1\r
-\r
-;INSERT AN ENTRY IN A DIRECTORY.\r
+\f;INSERT AN ENTRY IN A DIRECTORY.\r
 \r
 EXTERNAL AUREQ,AUWAIT,AUAVAL\r
 \r
@@ -1229,7 +1204,7 @@ INSDIR:   AOSE AUREQ
        TLO IOS,AUFLG\r
        SETZM DEVCNT(DEVDAT)    ;CLEAR BEFORE COUNTING BLOCK OF UFD\r
        HLRZ TAC,SETCNT(DEVDAT) ;BLOCK# OF UFD RIB\r
-       PUSHJ PDP,SETPTR                ;SET UP FIRST POINTERS,.\r
+       PUSHJ PDP,SETPTR        ;SET UP FIRST POINTERS,.\r
        SOS DEVACC(DEVDAT)      ;SYNC\r
 \r
 INSD1: AOS TAC,DEVACC(DEVDAT)  ;GET NEXT POINTER,\r
@@ -1238,12 +1213,12 @@ INSD1:  AOS TAC,DEVACC(DEVDAT)  ;GET NEXT POINTER,
        CAILE TAC,PTRN(DEVDAT)  ;ANY MORE IN CORE?\r
        JRST INSD10             ;NO, GET SOME MORE\r
 \r
-INSD2: HRRZ TAC,(TAC)  ;GET RETRIEVAL POINTER\r
+INSD2: HRRZ TAC,(TAC)          ;GET RETRIEVAL POINTER\r
        JUMPE TAC,INSD5         ;0 SIGNALS END OF POINTERS\r
-       PUSHJ PDP,MQIN  ;READ UFD BLOCK\r
+       PUSHJ PDP,MQIN          ;READ UFD BLOCK\r
        JRST RERA               ;ERROR.\r
 \r
-       PUSHJ PDP,SET176                ;SET TAC1 TO WORD 127\r
+       PUSHJ PDP,SET176        ;SET TAC1 TO WORD 127\r
        SKIPE @TAC1             ;IS IT ZERO?\r
        JRST INSD1              ;NO, BLOCK FULL.\r
 \r
@@ -1251,33 +1226,31 @@ INSD2:  HRRZ TAC,(TAC)  ;GET RETRIEVAL POINTER
        PUSHJ PDP,INSD3         ;INSERT ENTRY.\r
 \r
        JRST WUFD               ;WRITE BLOCK AND LEAVE\r
-\r
-;INSERT THE ENTRY.\r
+\f;INSERT THE ENTRY.\r
 \r
 INSD3: HRRZ AC1,DSKBUF(DEVDAT)\r
 INSD3B:        CAIN AC1,(TAC1)         ;BEGINNING OF BLOCK?\r
-       JRST INSD3A     ;YES\r
+       JRST INSD3A             ;YES\r
        SUBI TAC1,2\r
        SKIPN @TAC1             ;SEARCH UFD BLOCK BACKWARDS\r
                                ; FOR LAST NON-ZERO FILENAME.\r
 \r
        JRST INSD3B\r
 \r
-       ADDI TAC1,2     ;MOVE IN NAME.\r
+       ADDI TAC1,2             ;MOVE IN NAME.\r
 INSD3A:        MOVE TAC,DEVFIL(DEVDAT)\r
        MOVEM TAC,@TAC1\r
-       ADDI TAC1,1     ;MOVE IN EXTENSION & POINTER.\r
+       ADDI TAC1,1             ;MOVE IN EXTENSION & POINTER.\r
        MOVE TAC,DEVEXT(DEVDAT)\r
        IFN FTRCHK,<\r
                TRNN TAC,-1     ;POINTER TO BLOCK 0\r
 \r
-               HALT .+1                ;FOR RETRIEVAL INFO\r
-                                       ; CONTINUE-GET BAD INFO MESSAGE\r
+               HALT .+1        ;FOR RETRIEVAL INFO\r
+                               ; CONTINUE-GET BAD INFO MESSAGE\r
 >\r
        MOVEM TAC,@TAC1\r
        POPJ PDP,\r
-\r
-;CREATE NEW UFD BLOCK AND ADD ENTRY. THEN FIND THE LAST OR ONLY\r
+\f;CREATE NEW UFD BLOCK AND ADD ENTRY. THEN FIND THE LAST OR ONLY\r
 ;POINTER BLOCK, ADD POINTER IF POSSIBLE.  IF NOT POSSIBLE.\r
 ;CREATE NEW POINTER BLOCK AND PUT THE POINTER IN IT.\r
 \r
@@ -1327,8 +1300,7 @@ INSD7A:   MOVE TAC,SETCNT(DEVDAT) ;GET POINT SAVED ABOVE
        TLZ IOS,AUFLG\r
        MOVEM IOS,DEVIOS(DEVDAT)\r
        POPJ PDP,\r
-\r
-;ROOM FOR ANOTHER POINTER IN THIS BLOCK.  FIND LAST POINTER.\r
+\f;ROOM FOR ANOTHER POINTER IN THIS BLOCK.  FIND LAST POINTER.\r
 ;INSERT NEW ONE, AND WRITE BLOCK OUT.\r
 \r
 INSD8: SKIPN @TAC1\r
@@ -1347,13 +1319,10 @@ INSD10: TLNE IOS,NMP            ;ANY MORE ON DISC?
 \r
 INSD11:        TRNN IOS,IOIMPM\r
        JRST WERA               ;IT WAS NOT, YOU LOSE.\r
-\r
        PUSHJ PDP,WLERA         ;GET ANOTHER BLOCK\r
        HRRM TAC,SETCNT(DEVDAT)\r
        JRST INSD5A\r
-\r
-\r
-;OUTPUT A UFD BLOCK, PERFORM CHECKSUM IF NEEDED, WRITE THE BLOCK OUT.\r
+\f;OUTPUT A UFD BLOCK, PERFORM CHECKSUM IF NEEDED, WRITE THE BLOCK OUT.\r
 ;IF WRITE-LOCK ERROR, TRY ANOTHER BLOCK. FINALLY, IF POINTERS WERE\r
 ;ALTERED, WRITE THEM OUT.\r
 \r
@@ -1401,8 +1370,7 @@ WUFD3:    MOVE TAC1,DSKCNT(DEVDAT);WAS ERROR WRITE-LOCK?
        MOVE TAC1,DEVACC(DEVDAT)\r
        HRRM TAC,(TAC1)\r
        JRST WUFD1\r
-\r
-SUBTTL ACCESS TABLE PROCESSING\r
+\fSUBTTL ACCESS TABLE PROCESSING\r
 ;SCAN ACCESS TABLE.\r
 ;EXIT TO CALL+1 WITH TAC SET TO THE LAST ENTRY IF NOT THERE.\r
 ;EXIT TO CALL+2 WITH TAC SET TO CORRECT ENTRY IF THERE.\r
@@ -1428,18 +1396,19 @@ SCNAT1: CAME AC2,ATPP(TAC)      ;PROJ,-PROG. THE SAME?
 \r
 ;CONTINUE SCAN FROM CURRENT ENTRY\r
 \r
+\r
 SCNAT2:        HRRZ DAT,ATLINK(TAC)    ;ANY MORE ENTRIES?\r
        JUMPE DAT,CPOPJ         ;NO\r
        MOVE TAC,DAT            ;YES, GO TO THE NEXT ONE\r
        JRST SCNAT1\r
 \r
-;CLEAR AN ACCESS ENTRY.\r
+\f;CLEAR AN ACCESS ENTRY.\r
 ;IT IS ASSUMED THAT NO SCHEDULING WILL TAKE PLACE.\r
 ;ENTER WITH TAC POINTING TO THE ENTRY TO WIPE OUT.\r
 \r
+\r
 CLRAT: IFN     FTRCHK,<\r
        SKIPN TAC               ;ATTEMPT TO CLEAR NON EXISTENT ACCESS TABLE IS AN ERROR\r
-\r
        HALT SCNHLT             ;CONTINUE WILL POPJ AND EXIT.\r
 >\r
        HRRZS DEVACC(DEVDAT)    ;CLEAR ACCESS TABLE POINTER IN DEVICE DATA BLOCK\r
@@ -1461,7 +1430,8 @@ CLRAT1:   MOVE AC1,AC2            ;PICKUP THE NEXT ACCESS TABLE
        HRRM AC2,ATLINK(AC1)    ;LINK AROUND IT\r
        JRST CLRCOR             ;CLEAR THE CORE\r
 \r
-;FIND A HOLD FOR ACCESS TABLE ENTRY AND SET A LINK.\r
+\r
+\f;FIND A HOLD FOR ACCESS TABLE ENTRY AND SET A LINK.\r
 ;BUILD UP THE ENTRY\r
 ;UPON ENTRY, DAT SHOULD CONTAIN TEST BITS TO SET\r
 \r
@@ -1479,8 +1449,7 @@ SETAT:    PUSHJ PDP,GETFCR        ;TAC1 POINTS TO 4 WORD BLOCK
        HRRZM TAC1,FAT          ;POINT FAT TO THIS NEW ENTRY\r
 SETHLT:        POPJ PDP,               ;HALT PC HERE IF END OF TABLE WITHOUT FINDING\r
                                ; ENTRY TO BE CLEARED\r
-\r
-SUBTTL DUMP INPUT/OUTPUT\r
+\fSUBTTL DUMP INPUT/OUTPUT\r
 ;DUMP MODE OUTPUT\r
 \r
 EXTERNAL COMCHK,ADRERR,SAVDDL\r
@@ -1511,7 +1480,7 @@ DFDO1A:   PUSHJ PDP,SATGET        ;AQUIRE A NON-FULL SAT BLOCK
        MOVMS ITEM\r
        ADDI ITEM,BLKSIZ-1      ;MAKE E.G. 129 WORDS USE 2 DISK BLOCK\r
        ASH ITEM,-BLKP2         ;NUMBER OF BLOCK REQUIRED FOR THIS WRITE\r
-DFD02A:        HRRZ AC1,SATPTR\r
+\fDFD02A:       HRRZ AC1,SATPTR\r
        MOVE AC2,SATBK2\r
 DFDO1B:        PUSHJ PDP,GETBIT        ;ASK FOR C(ITEM BITS)\r
        JRST DFDO6              ;NOT AVAILABLE\r
@@ -1529,15 +1498,13 @@ DFDO1B: PUSHJ PDP,GETBIT        ;ASK FOR C(ITEM BITS)
        MOVN TAC,ITEM\r
        LSH TAC,BLKP2\r
        HLRES TAC1\r
-\r
        CAML TAC,TAC1\r
        HRLM TAC,DSKBUF(DEVDAT) ;ONLY A PARTIAL WRITE\r
        HLRE TAC1,DSKBUF(DEVDAT)\r
        MOVMS TAC1\r
        PUSHJ PDP,UPDEVC        ;UPDATE SIZE OF FILE\r
        ADDM ITEM,SETCNT(DEVDAT) ;NON UPDATE RELATIVE BLOCK# WITHIN THE FILE\r
-\r
-       MOVE TAC1,DSKBUF(DEVDAT) ;PICK UP ADDRESS AND WORD COUNT\r
+\f      MOVE TAC1,DSKBUF(DEVDAT) ;PICK UP ADDRESS AND WORD COUNT\r
        TLZN TAC1,BLKSIZ-1      ;AN EVEN NUMBER OF DISK BLOCKS TO BE WRITTEN?\r
        JRST DFDO2G             ;YES, DON'T WORRY ABOUT PARTIAL BLOCK\r
                                ;HANDLING PROBLEMS\r
@@ -1558,6 +1525,8 @@ DFDO2C:   ADD AC1,[XWD BLKSIZ,BLKSIZ] ;SET UP ADDRESS, WORD COUNT, AND LOGICAL
        JUMPL AC1,DFDO2C        ;OF THIS DUMP MODE OUTPUT REQUEST.\r
        SUB AC1,[XWD BLKSIZ,BLKSIZ]\r
        HLL AC2,AC1             ;SAVE LH\r
+       ADDI AC1,(PROG)         ;RELOCATE USER'S ADDRESS\r
+       HLL AC1,AC2             ;IN CASE OF OVERFLOW INTO LH(2 SEG SAVE)\r
 DFDO2D:        MOVE AC2,(AC1)          ;MOVE DATA FROM END OF USER'S\r
        MOVEM AC2,(TAC1)        ;OUTPUT AREA DT MONITOR BUFFER\r
        AOBJP TAC1,.\r
@@ -1588,6 +1557,7 @@ DFDO2B:   POP PDP,ITEM            ;RESTORE COUNT
 ;TOSS OUT A SERIES OF CONSECUTIVE POINTERS\r
 \r
        HRRZ AC2,DEVACC(DEVDAT) ;GET RETRIEVAL POINTER POINTER\r
+\r
 DFDO3A:        MOVE AC1,@AC2           ;IS POINTER ALREADY THERE?\r
        ADDI AC2,1\r
        TRNE AC1,-1     \r
@@ -1606,7 +1576,6 @@ DFDO3B:   AOS DAT,(PDP)           ;PUT A POINTER IN CORE
        MOVE TAC,-1(PDP)\r
        PUSHJ PDP,SAVDDL        ;ADJUST ADR IN CASE OF HIGH SEG SAVE\r
        PUSHJ PDP,CHKSUM\r
-\r
        HRLM TAC1,-1(AC2)\r
        >\r
 \r
@@ -1622,8 +1591,7 @@ DFDO3C:   MOVE TAC1,[XWD BLKSIZ,BLKSIZ];INCREMENT IOWD
        JRST DFDO1              ;NOT FINISHED, GET NEXT SET\r
        POP PDP,TAC             ;BACK UP PDP\r
        AOJA UUO,DFDO0          ;GO BAK FOR MORE\r
-\r
-;WRITE POINTERS ONTO DISK\r
+\f;WRITE POINTERS ONTO DISK\r
 \r
 DFDO4: HRLM ITEM,(PDP)         ;SAVE COUNT OF BLOCKS TO WRITE\r
        PUSHJ PDP,SETBUF        ;FIND SOME 200 WORD AREA\r
@@ -1664,8 +1632,7 @@ DFDO9:    HRLM ITEM,(PDP)         ;SAVE BLOCK COUNT WITH BLOCK#
        POP PDP,AC2             ;RESTORE POINTER INTO RETRIEVAL INFO\r
        HLRZ ITEM,(PDP)         ;RESTORE COUNT OF BLOCKS TO WRITE THIS ITERATION\r
        JRST DFDO3B\r
-\r
-;DUMP MODE INPUT.\r
+\f;DUMP MODE INPUT.\r
 \r
 EXTERNAL COMCHK,ADRERR\r
 \r
@@ -1703,9 +1670,7 @@ DFDI0A:   ADDI TAC,1              ;FROM XWD -L,FIRST-ADDRESS
        ADDM TAC,-2(PDP)\r
        AOS DEVACC(DEVDAT)      ;NEXT POINTER\r
        AOS SETCNT(DEVDAT)      ;NEXT RELATIVE BLOCK\r
-\r
-\r
-DFDI1: SKIPGE -2(PDP)          ;MORE TO GO?\r
+\fDFDI1:        SKIPGE -2(PDP)          ;MORE TO GO?\r
        JRST DFDI2              ;YES\r
 \r
 DFDI1A:        MOVE TAC1,-1(PDP)       ;NO, PROCESS THE FIRST BLOCK\r
@@ -1733,8 +1698,7 @@ DFDI1B:   SUB PDP,[XWD 2,2]       ;BACK UP PDP, REMOVE XWD AND IOWD
 DFDI1C:        MOVE IOS,[XWD IOEND,IODEND] ;NO MORE INPUT\r
        ORB IOS,DEVIOS(DEVDAT)\r
        POPJ PDP,\r
-\r
-;DUMP INPUT CONTINUED,\r
+\f;DUMP INPUT CONTINUED,\r
 ;FIND A SERIES OF CONSECUTIVE BLOCKS TO READ AT ONCE\r
 \r
 DFDI2: HRRZ AC2,DEVACC(DEVDAT) ;GET NEXT POINTER\r
@@ -1753,7 +1717,6 @@ DFDI3:    ADDI TAC,BLKSIZ         ;ANY MORE TO READ?
        CAIG AC2,PTRN(DEVDAT)\r
        SKIPN AC3,@AC2          ;END-FILE\r
        JRST DFDI4              ;YES\r
-\r
        CAIN TAC1,-1(AC3)       ;STILL CONSECUTIVE?\r
        AOJA TAC1,DFDI3         ;YES, LOOP\r
 \r
@@ -1771,13 +1734,12 @@ DFDI6:  HRRZ TAC1,DEVACC(DEVDAT)
        MOVS TAC1,@TAC\r
        HRLM TAC,(PDP)\r
        HRR TAC1,-3(PDP)\r
-       MOVE TAC,(PDP)          ;GET POINTER TO FIRST RETRIEVAL POINTER FOR THIS INPUT\r
+       MOVE TAC,(PDP)          ;GET POINTER TO FIRST RETRIEVAL POINTER FOR THIS INPUT  \r
        MOVE TAC,(TAC)          ;GET FIRST LOGICAL BLOCK#\r
        MOVEM TAC1,DSKBUF(DEVDAT) ;STORE CONTROLLING IOWD\r
        PUSHJ PDP,MQIN          ;REQUEST THE INPUT\r
        JFCL                    ;ERRORS IGNORED\r
-\r
-;DUMP INPUT CONTINUED.\r
+\f;DUMP INPUT CONTINUED.\r
 ;IF THERE IS CHECKSUMMING. CHECK IT, ELSE INCREMENT IOWD\r
 ;AND LOOP.\r
 \r
@@ -1825,8 +1787,7 @@ DFDI10:   MOVEI AC2,PTR1(DEVDAT)  ;NO MORE POINTERS ON DISK
        HRRM AC2,DEVACC(DEVDAT)\r
        SETZM @AC2\r
        POPJ PDP,\r
-\r
-SUBTTL USETO/USETI\r
+\fSUBTTL USETO/USETI\r
 ;SETD AND SETI UUOS\r
 \r
 EXTERNAL WAIT1\r
@@ -1876,8 +1837,7 @@ DFSET1:   PUSHJ PDP,RRI           ;READ THEM IN
        MOVNS TAC\r
        ADDM TAC,SETCNT(DEVDAT)\r
        JRST DFSETC\r
-\r
-;THE DESIRED POINTER MAY BE IN CORE. IF THERE ARE MORE POINTERS ON\r
+\f;THE DESIRED POINTER MAY BE IN CORE. IF THERE ARE MORE POINTERS ON\r
 ;DISC, THEN CORE IS FULL, AND THE POINTER IS IN CORE, OTHERWISE\r
 ;A CHECK IS MADE TO INSURE THAT THE END FILE IS AFTER THE DESIRED\r
 ;POINTER.\r
@@ -1913,7 +1873,7 @@ DFSET6:   SUBI TAC1,PTR1(DEVDAT)
        PUSHJ PDP,DFO4A         ;NO, WRITE THEM OUT\r
        HRRZ TAC,DEVEXT(DEVDAT) ;GET BLOCK# OF FIRST RIB\r
        PUSHJ PDP,SETPTR        ;READ FIRST RIB\r
-DFSETB:        MOVEI TAC,1             ;RESET SETCNT\r
+\fDFSETB:       MOVEI TAC,1             ;RESET SETCNT\r
        HRRM TAC,SETCNT(DEVDAT) ;"POSITIONED" AT RELATIVE BLOCK 1\r
 \r
 DFSETC:        HRRZ TAC,DSKBUF(DEVDAT) ;LSET TAC TO FIRST POINTER\r
@@ -1932,7 +1892,6 @@ DFSETD:   HRRZ AC1,SETCNT(DEVDAT)
        HRRZ AC2,TAC1\r
        ADD AC2,AC1\r
        CAIL AC2,(UUO)\r
-\r
        JRST DFSET7             ;YES\r
        ADDI AC2,1              ;NO. GET NEXT BLOCK\r
        HRRM AC2,SETCNT(DEVDAT)\r
@@ -1962,13 +1921,13 @@ DFSET8: ADDI TAC1,1
        MOVEM IOS,DEVIOS(DEVDAT)\r
        PUSHJ PDP,DFO6A         ;CLEAR POINTERS\r
        JRST CLRBUF             ;CLEAR ANY DUMP BUFFER AND LEAVE\r
-\r
-SUBTTL INPUT/OUPUT UUO'S.  RETRIEVAL POINTER PROCESSING\r
+\fSUBTTL INPUT/OUPUT UUO'S.  RETRIEVAL POINTER PROCESSING\r
 ;INPUT UUO\r
 ;* INDICATES INTERRUPT LEVEL\r
 \r
 EXTERNAL ADVBFF\r
 \r
+\r
 DFIN:  TLNN DEVDAT,LOOKB       ;FILE OPEN?\r
        JRST DFERR2             ;NO, UNDEFINED FILE\r
        TLZ IOS,IO              ;SET INPUT INDICATOR\r
@@ -1994,6 +1953,7 @@ DFIN1E:   TLO     IOS,LIR         ;*EMPTY FILE
        MOVEM   IOS,DEVIOS(DEVDAT) ;*\r
        POPJ    PDP,            ;*\r
 \r
+\r
 DFIN1B:        TLNE IOS,NMP            ;*ANY MORE POINTERS ON DISK?\r
        TLO IOS,LIR             ;*NO, THIS IS THE LAST READ\r
        JRST DFIN1A             ;*\r
@@ -2003,8 +1963,7 @@ DFIN2:    MOVEM IOS,DEVIOS(DEVDAT)
        PUSHJ PDP,GETPTR        ;READ RIB COPY POINTERS INTO DDB\r
        HRRZ TAC1,DEVACC(DEVDAT)\r
        JRST DFIN1D\r
-\r
-;NEED NEW POINTER FROM DISK\r
+\f;NEED NEW POINTER FROM DISK\r
 \r
 GETPTR:        MOVE AC2,DEVOAD(DEVDAT) ;POINTERS DIFFER?\r
        TLNE AC2,PNTDIF\r
@@ -2016,14 +1975,13 @@ DFIN4:  MOVEI AC2,PTR1(DEVDAT)  ;RESET DEVACC
        MOVE TAC,DEVBLK(DEVDAT) ;RESET DEVBKO\r
        MOVEM TAC,DEVBKO(DEVDAT) ;BLOCK # WORD INDEX OF A CURRENT RETRIEVAL PACKET\r
 GTPTR1:        PUSHJ PDP,SET000        ;SET TAC1 TO FIRST WORD OF RIB\r
-\f\f\f\f\f\f\f\f\f\f\f\f\f\f\f\f\f      MOVE IOS,DEVIOS(DEVDAT) \r
+       MOVE IOS,DEVIOS(DEVDAT) \r
        HRRZ AC3,DEVBLK(DEVDAT) ;WORD INDEX OF RETRIEVAL POINTER PACKET\r
        ADD AC3,TAC1            ;AC3 POINTS TO NEXT POINTER WITHIN RIB\r
        ADDI TAC1,BLKSIZ-2      ;TAC1 POINTS TO WORD 127\r
 \r
        MOVEI AC1,PTRN(DEVDAT)  ;DDB END CHECK\r
 DFIN5: CAML AC3,TAC1           ;POINTER BLOCK EMPTY?\r
-\r
        JRST DFIN7              ;YES, GET SOME MORE\r
 \r
        MOVE TAC,@AC3           ;GET RETRIEVAL POINTER\r
@@ -2045,8 +2003,7 @@ DFIN6A:   MOVEM IOS,DEVIOS(DEVDAT)
        MOVSI AC1,PNTDIF        ;CLEAR "POINTER DIFFER"\r
        ANDCAM AC1,DEVOAD(DEVDAT) ;SINCE DDB IS COPY OF RETRIEVAL DATA.\r
        POPJ PDP,\r
-\r
-DFIN7: HLRZ TAC,@TAC1          ;RIB LINK TO TAC RH\r
+\fDFIN7:        HLRZ TAC,@TAC1          ;RIB LINK TO TAC RH\r
        JUMPE TAC,DFIN8         ;DONE IF LINK=0\r
        MOVSM TAC,DEVBLK(DEVDAT) ;SET BLOCK#, WORD INDE FOR NEXT PACKET\r
        PUSH PDP,AC2\r
@@ -2067,8 +2024,7 @@ DFINX:    PUSHJ PDP,ADVBFF        ;*ANY MORE EMPTY BUFFERS?
        POPJ PDP,               ;*\r
 \r
        JRST DFIN1              ;*NO,FILL NEXT ONE\r
-\r
-;OUTPUT UUO\r
+\f;OUTPUT UUO\r
 \r
 EXTERNAL WSYNC,ADVBFE\r
 \r
@@ -2087,7 +2043,6 @@ DFOUT1:   HRRZ DAT,DEVACC(DEVDAT) ;*GET POINTER LOC
        MOVSI TAC1,PNTDIF       ;*\r
        ORM TAC1,DEVOAD(DEVDAT) ;*\r
        >\r
-\r
        HRRZ TAC,@DAT           ;*ALREADY HAVE A POINTER?\r
        JUMPN TAC,DFOT3A        ;*YES IF JUMP\r
        CAIE DAT,PTRN(DEVDAT)   ;*NO, CLEAR NEXT ONE?\r
@@ -2111,8 +2066,7 @@ DFOUT1:   HRRZ DAT,DEVACC(DEVDAT) ;*GET POINTER LOC
 \r
 DFOT3A:        CAIE DAT,PTRN(DEVDAT)   ;*LIST FULL?\r
        JRST QOUT               ;*NO, WRITE AND LEAVE\r
-\r
-;OUTPUT UUO CONTINUED.\r
+\f;OUTPUT UUO CONTINUED.\r
 ;WRITE OUT POINTER LIST.\r
 \r
        PUSHJ PDP,SETBFO        ;CHOOSE AN OUTPUT BUFFER TO READ RIB INTO\r
@@ -2155,8 +2109,7 @@ DFO6A:    MOVEI TAC,PTR1(DEVDAT)
        MOVE TAC,DEVBLK(DEVDAT)\r
        MOVEM TAC,DEVBKO(DEVDAT) ;SAE BLOCK#,WORD INDEX OF CURRENT POINTER PACKET\r
        POPJ PDP,\r
-\r
-DFO7A: MOVEM TAC,DEVOAD(DEVDAT) ;SAVE VRGPTR BIT\r
+\fDFO7A:        MOVEM TAC,DEVOAD(DEVDAT) ;SAVE VRGPTR BIT\r
        PUSHJ PDP,SET177        ;SET TAC1 TO WORD 128\r
        SETZM @TAC1             ;CLEAR BLOCK# WORD\r
        AOS (PDP)               ;ALWAYS SKIP RETURN\r
@@ -2175,7 +2128,6 @@ NEWRIB:   PUSH PDP,AC3            ;CREATE A NEW RETRIEVAL BLOCK
        MOVSM TAC,DEVBLK(DEVDAT) ;STORE BLOCK#, INDEX FOR NEW BLOCK\r
        PUSHJ PDP,SET176        ;SET TAC1 TO WORD 127 AGAIN\r
        HRLM TAC,@TAC1          ;LH LINKS TO NEW BLOCK\r
-       \r
        MOVE TAC,AC3            ;BLOCK# OF CURRENT BLOCK\r
        PUSHJ PDP,WRIA          ;WRITE THE BLOCK OUT\r
 \r
@@ -2199,8 +2151,7 @@ DFOUT9:   EXCH TAC,DEVBLK(DEVDAT) ;SAVE NEW BLOCK# INDEX. GET OLD BLOCK# INDEC
        PUSHJ PDP,WRIA          ;WRITE THIS BLOCK OF POINTERS OUT\r
        PUSHJ PDP,RRI           ;READ NEXT BLOCK OF POINTERS IN\r
        JRST DFO8A\r
-\r
-;ENTER HERE AT INTERRUPT LEVEL TO WRITE ANOTHER\r
+\f;ENTER HERE AT INTERRUPT LEVEL TO WRITE ANOTHER\r
 \r
        EXTERN MJOBN\r
 \r
@@ -2222,8 +2173,7 @@ DFOUTX:   PUSHJ PDP,ADVBFE        ;*ANY MORE TO DO?
        POP PDP,AC2             ;*\r
        POP PDP,AC1             ;*\r
        POPJ PDP,               ;*\r
-\r
-SUBTTL READ/WRITE RETRIEVAL POINTERS\r
+\fSUBTTL READ/WRITE RETRIEVAL POINTERS\r
 ;INPUT RETRIEVAL BLOCK.\r
 \r
 RRIB:  SKIPA TAC,DEVEXT(DEVDAT) ;READ FIRST RETRIEVAL BLOCK\r
@@ -2264,8 +2214,7 @@ SET176:   HRRZ TAC1,DSKBUF(DEVDAT)
 \r
 SET000:        HRRZ TAC1,DSKBUF(DEVDAT)\r
        JRST S177A\r
-\r
-\r
+\f\r
 ;PUT POINTER INFO IN DDB\r
 ;ENTER WITH TAC CONTAINING THE BLOCK NUMBER OF THE POINTERS.\r
 \r
@@ -2284,6 +2233,7 @@ SETPTR:   HRLZM TAC,DEVBLK(DEVDAT) ;XWD RIB#, 0...0 INDEX
 ;ENTER WITH TAC POINTING TO FIRST RETRIEVAL BLOCK OF THE FILE\r
 ;     TO BE DELETED.\r
 \r
+\r
 RECLAM:        PUSHJ PDP,SETBUF        ;FIND SPACE IN USER AREA\r
        \r
        PUSHJ PDP,RECLM5        ;GET FIRST POINTER BLOCK\r
@@ -2297,6 +2247,7 @@ RECLM2:   CAML DAT,TAC1           ;MORE POINTERS IN BLOCK?
        POP PDP,TAC1\r
        AOJA DAT,RECLM2         ;GO BACK FOR MORE\r
 \r
+\r
 RECLM4:        HLRZ TAC,@TAC1          ;PICK UP POINTER TO NEXT BLOCK\r
        JUMPE TAC,RECLM6        ;NO MORE, GO HOME.\r
 RECLM5:        PUSHJ PDP,RRIA          ;READ IN A R.I. BLOCK.\r
@@ -2311,8 +2262,7 @@ RECLM5:   PUSHJ PDP,RRIA          ;READ IN A R.I. BLOCK.
 \r
 RECLM6:        POP PDP,TAC\r
        JRST CLRBUF             ;CLEAR ANY DUMP BUFFER AND LEAVE\r
-\r
-;RELEASE UUO.\r
+\f;RELEASE UUO.\r
 \r
 EXTERNAL DAREQ,DAAVAL\r
 \r
@@ -2329,8 +2279,7 @@ DFREL:    TLO     DEVDAT,DSKRLB   ;MARK RELEASE (VIA RESET UUO) IN PROGRESS.
        PUSHJ   PDP,DOWNDA      ;RESET DAREQ INTERLOCK\r
 DFREL1:        TLZ     DEVDAT,DSKRLB   ;CLEAR RELEASE MARKER.\r
        JRST WAIT1\r
-\r
-SUBTTL DISK SPACE ALLOCATION\r
+\fSUBTTL DISK SPACE ALLOCATION\r
 ;DFGETF: GET A FREE DISK BLOCK\r
 ;CALL:  PUSHJ PDP,DFGETF\r
 ;       ... RETURNS WITH TAC:=LOGICAL BLOCK#\r
@@ -2362,15 +2311,16 @@ DFGTF2: MOVEI TAC,NUMBIT        ;BITS/SAT BLOCK
        HRRM TAC,@SATPTR        ;MARK SAT ENTRY FULL\r
        JRST DFGTF1\r
 \r
+\r
 ;UPDA - TURN ON THE DISK ALLOCATION INTERLOCK (DAREQ)\r
 ;     - A CALL TO UPDA MUST PRECEDE SAT BLOCK MANIPULATIONS\r
+\r
 UPDA:  AOSE DAREQ              ;INCREMENT COUNT OF USERS REQUESTING DISK ALLOCATION\r
        PUSHJ PDP,DAWAIT        ;WAIT UNTIL JOB REACHES TOP OF QUEUE\r
        TLO IOS,DAFLG\r
        MOVEM IOS,DEVIOS(DEVDAT) ;MAKE THIS JOB AS USING SAT BLOCK\r
        POPJ PDP,\r
-\r
-;SATGET - FIND A NON-FULL SAT BLOCK FOR DFGTF OR DUMP MODE OUTPUT.\r
+\f;SATGET - FIND A NON-FULL SAT BLOCK FOR DFGTF OR DUMP MODE OUTPUT.\r
 ;        CONSIDER DISK FULL WHEN FEW BLOCKS REMAIN FREE UNLESS THE USER\r
 ;        IS LOGGING IN OR USING A NON-SHARABLE RESOURCE.\r
 \r
@@ -2389,12 +2339,12 @@ SATGT1: HRRZ TAC, 0(TAC1)       ;GET WLBIT + BLOCKS USED
        PUSHJ PDP,SATCNT        ;NO. COUNT # FREE\r
        ADDI TAC1,SENTSZ        ;NEXT SAT ENTRY\r
        CAIL AC1,JOBN           ;ENOUGH SPACE ACCUMULATED?\r
-\r
        JRST SATGT2             ;YES - READ A SAT BLOCK\r
        CAIGE TAC1,SATTOP       ;END OF ENTRIES?\r
        JRST SATGT1             ;NO. CONTINUE\r
        JUMPE AC1,DSKFUL        ;IF NONE FOUND DISK IS REALLY FULL\r
 \r
+\r
 ;THERE ARE JOBN OR FEWER DISK BLOCKS AVAILABLE.\r
 ;GIVE THEM OUT ONLY IN HARDSHIP CASES\r
        LDB TAC,PJOBN\r
@@ -2403,8 +2353,7 @@ SATGT1:   HRRZ TAC, 0(TAC1)       ;GET WLBIT + BLOCKS USED
        TLNE IOS,UBFS+AUFLG     ;DOES USER HAVE MONITOR BUFFER OR IS HE ALTERING UFD?\r
        JRST SATGT2             ;YES TO EITHER. GIVE HIM A BLOCK ANYWAY.\r
 DSKFUL:        TLNE IOS,UBFS+AUFLG\r
-       JRST DFERR1             ;NON-RECOVERABLE ERROR IF USING BUFFER OR ALTERING UFD\r
-\r
+       JRST DFERR1             ;NON-RECOVERABLE ERROR IF USING BUFFER OR ALTERING UFD  \r
        PUSHJ PDP,DOWNDA        ;RESET ALLOCATION INTERLOCK\r
        PUSHJ PDP,HNGSTP        ;PRINT "DSK OK?"\r
        PUSHJ PDP,UPDA          ;IF USER TYPE "CONT" WE TRY AGAIN\r
@@ -2418,8 +2367,7 @@ SATCNT:   CAIE TAC,NUMBIT         ;IS ENTRY FULL?
        ADDI AC1,NUMBIT         ;MAXIMUM NUMBER\r
        SUB AC1,TAC             ;LESS NUMBER USED\r
        POPJ PDP,\r
-\r
-;SETFRE - RETURN A DISK BLOCK TO AVAILABLE STORAGE\r
+\f;SETFRE - RETURN A DISK BLOCK TO AVAILABLE STORAGE\r
 ;CALL       TAC:=LOGICAL BLOCK L\r
 ;           PUSHJ PDP,SETFRE\r
 ;           ... RETURN\r
@@ -2458,8 +2406,7 @@ SETFR2:   SUB TAC,AC1             ;FROM BIT# (IN RANGE 0 TO NUMBLK-1)
        SOS @SATPTR             ;DECREMENT BLOCKS USED\r
        SETOM SATCHG            ;SAT BLOCK IN CORE NOT = DISK COPY\r
        JRST DOWNDA             ;REMOVE ALLOCATION INTERLOCK AND EXIT.\r
-\r
-;NOTE: SATRD USES TEMPORARY STORAGE LOCATIONS SATTMP AND SATTEM TO HELP AVOID\r
+\f;NOTE: SATRD USES TEMPORARY STORAGE LOCATIONS SATTMP AND SATTEM TO HELP AVOID\r
 ; A PDL OVRFLW PROBLEM.  IT CAN DO SO BECAUSE IT IS NOT RE-ENTRANT, I.E., ONLY\r
 ; ONE USER AT A TIME MAY PASS THROUGH HERE BECAUSE OF THE DAREQ INTERLOCK.\r
 \r
@@ -2487,6 +2434,7 @@ SATW1:    MOVSI IOS,NORELB        ;RESET BIT
        ANDCAB IOS,DEVIOS(DEVDAT)\r
        POPJ PDP,\r
 \r
+\r
 ;SET UP TAC AND TAC1 FOR READ OR WRITE OF SAT BLOCK\r
 \r
 SATBLK:        MOVE TAC,SATPTR\r
@@ -2496,8 +2444,7 @@ SATBLK:   MOVE TAC,SATPTR
        MOVE TAC1,SATBK2\r
        MOVEM TAC1,DSKBUF(DEVDAT)\r
        POPJ PDP,\r
-\r
-SUBTTL "FREE" CORE ALLOCATION\r
+\fSUBTTL "FREE" CORE ALLOCATION\r
 ;CLEAR OUT DDB AT RELEASE TIME\r
 \r
 INTERNAL CLRDDB\r
@@ -2545,8 +2492,7 @@ SETDD0:   MOVEI ITEM,DSKCOR       ;GET SOME FREE CORE
 SETDD1:        POP PDP,TAC1\r
        POP PDP,ITEM\r
        POPJ PDP,\r
-\r
-;SET TAC1 TO SOME AREA FOR BUFFER.\r
+\f;SET TAC1 TO SOME AREA FOR BUFFER.\r
 ;GET BUFFER SPACE FROM USER INPUT OR OUTPUT RING IF AVAILABLE\r
 ;ASSIGN FROM MONITOR CORE AS A LAST RESORT.\r
 ;SET DSKBUF(DEVDAT) TO POINT TO BUFFER.\r
@@ -2587,8 +2533,7 @@ SETBF6:   AOSE MQREQ
        TLO IOS,UBFU            ;BUFFER IN MONITOR CORE\r
        MOVEI TAC1, MONBUF      ;TAC1 POINTS TO MONITOR BUFFER\r
        JRST SETBF5\r
-\r
-;CLEAR THE BUFFER IN FREE STORAGE IF THERE.\r
+\f;CLEAR THE BUFFER IN FREE STORAGE IF THERE.\r
 \r
 EXTERNAL BUFCLR,JOBFF,IADRCK\r
 CLRBUF:        SCHEDULE\r
@@ -2621,8 +2566,7 @@ CLRBF1:   MOVEM IOS,DEVIOS(DEVDAT)
        SUBI TAC,2              ;SET TAC TO 2ND BUFFER WORD\r
        SOS (PDP)               ;BUFCLR WILL SKIP RETURN\r
        JRST BUFCLR             ;CLEAR THE BUFFER\r
-\r
-;FIND THE FIRST ZERO IN A SET OF WORDS\r
+\f;FIND THE FIRST ZERO IN A SET OF WORDS\r
 ;ENTER WITH LH OF TAC SET TO NEGATIVE OF NUMBER OF WORDS.\r
 ;          RH OF TAC CONTAINING ADDRESS OF FIRST WORD.\r
 ;CALL: PUSHJ PDP,GETZER\r
@@ -2669,9 +2613,7 @@ RESID1:   TLO TAC1,32000
        FAD TAC1,[0]\r
        LSH TAC1,-33\r
        POPJ PDP,\r
-\r
-\r
-;FIND FOUR FREE WORDS OF CORE, RETURN AN ADDRESS IN TAC1\r
+\f;FIND FOUR FREE WORDS OF CORE, RETURN AN ADDRESS IN TAC1\r
 ;IT IS ASSUMED THAT THE CLOCK IS OFF.\r
 \r
        INTERN GETFCR\r
@@ -2687,8 +2629,7 @@ GTCOR1:   MOVEI AC1,LOCORE        ;POINT TO THREE WORD FREE CORE ENTRY
        SUBI TAC1,4             ;SYNCHRNIZE\r
        ADD TAC1,LOCORE         ;FORM CORE ADDRESS\r
        POPJ PDP,\r
-\r
-INTERNAL GETBIT\r
+\fINTERNAL GETBIT\r
 \r
 \r
 ;SEARCH THROUGH A TABLE TO FIND A SERIES OF ZERO-BITS.\r
@@ -2707,7 +2648,6 @@ GETBIT:   PUSH PDP,[-1]           ;INITIALIZE LARGEST HOLD FOUND SO FAR
        MOVEM TAC1,1(AC1)       ;SAVE THE SPOT\r
        MOVEM TAC,2(AC1)\r
        PUSH PDP,TAC\r
-       \r
        PUSH PDP,TAC1\r
 \r
 GTBIT1:        AOS DAT                 ;INCREMENT SIZE OF HOLD BY 1 (GETZER LEFT DAT=-1)\r
@@ -2741,6 +2681,7 @@ GTBIT3:   ORM TAC1,(TAC)
 GTBIT4:        POP PDP,TAC1\r
        POP PDP,TAC\r
        AOS -2(PDP)\r
+\r
        HRRZS TAC\r
        SUBI TAC,-1(AC2)\r
        PUSHJ PDP,RESIDU\r
@@ -2754,8 +2695,7 @@ GTBIT6:   POP PDP,TAC
        POP PDP,TAC1\r
        AOS -1(PDP)             ;SIZE OF LARGEST HOLD MUST BE ADJUSTED\r
        JRST GTBIT5\r
-\r
-;FREE A FOUR WORD SECTION OF CORE.\r
+\f;FREE A FOUR WORD SECTION OF CORE.\r
 ;ENTER WITH ADDRESS IN TAC\r
 \r
        INTERNAL CLCOR1\r
@@ -2808,8 +2748,7 @@ CLRB5:    POP PDP,TAC1
 CLRB2: MOVEM TAC1,1(AC1)\r
 CLRB3: MOVEM TAC,2(AC1)\r
        POPJ PDP,\r
-\r
-SUBTTL QUEUEING AND INTERRUPT PROCESSING\r
+\fSUBTTL QUEUEING AND INTERRUPT PROCESSING\r
 ;PUT A REQUEST IN THE USER QUEUE.\r
 ;ENTER AT QIN FOR INPUT. QOUT FOR OUTPUT.\r
 ;CALLED AT BOTH INTERRUPT AND UUO LEVELS\r
@@ -2838,9 +2777,7 @@ QOUT:     MOVEI TAC1,DEVOAD-DEVIAD(DEVDAT) ;*
 \r
 QIOEND:        SCHEDULE        ;*\r
        POPJ PDP,               ;*\r
-\r
-\r
-;PUT A REQUEST IN THE MONITOR QUEUE.\r
+\f;PUT A REQUEST IN THE MONITOR QUEUE.\r
 ;ENTER AT MQIN FOR INPUT, MQOUT FOR OUTPUT.\r
 ;ENTER WITH    C(TAC1 0-17) = -SIZE OF BLOCK\r
 ;              C(TAC1 18-35) = CORE ADDRESS\r
@@ -2859,7 +2796,6 @@ MQOUT:    HRLZ TAC1,DEVDAT
                                ; LOSS ON THE DISK\r
 >\r
        HRLI TAC,TRIES\r
-\r
        MOVSM TAC,DSKCNT(DEVDAT);STASH AWAY BLOCK #, ERROR COUNT.\r
        PUSHJ PDP,SETACT        ;SET IOACT\r
        NOSCHEDULE\r
@@ -2883,8 +2819,7 @@ MQOUT:    HRLZ TAC1,DEVDAT
        TRNN AC1,IODERR!IODTER!IOIMPM\r
        AOS (PDP)               ;NO, SKIP RETURN\r
        POPJ PDP,\r
-\r
-;*\r
+\f;*\r
 ;* EVERYTHING FROM HERE THRU SETDUN CALLED AT INTERRUPT LEVEL\r
 ;*\r
 ;ROUTINE CALLED BY INTERRUPT IN DISK.\r
@@ -2898,6 +2833,7 @@ EXTERNAL MQREQ,MQAVAL,DFRED,DFWRT
 EXTERNAL JBTADR\r
 EXTERNAL MQTOP,MQUEUE\r
 \r
+\r
 DFINT:\r
        IFN FTSWAP,<\r
        EXTERNAL SQREQ,SERA,SQGO,SWPINT\r
@@ -2929,7 +2865,7 @@ DFINTA:   AOS DEVACC(DEVDAT)      ;INCREMENT POINTER TO RETRIEVAL POINTER
        MOVEI TAC1,BLKSIZ\r
        HRRM TAC1,@TAC\r
 \r
-       IFG CHKCNT,<\r
+\f      IFG CHKCNT,<\r
        MOVE TAC,DEVOAD(DEVDAT)\r
        TLNE TAC,CKSUPR\r
        JRST DINT0B\r
@@ -2948,7 +2884,6 @@ DINT0B:
        SKIPA\r
 DFINT1:        PUSHJ PDP,DFOUTX        ;CHECK FOR MORE OUTPUT\r
        SETZM RUNUSR\r
-\r
        JRST DFINT4\r
 \r
 DINT1A:        HRRZ TAC,DEVACC(DEVDAT) ;WRITE-LOCK FOUND, SET WLBIT\r
@@ -2973,7 +2908,7 @@ DFINT3:   HRRM IOS,DSKCNT(DEVDAT) ;SAVE ANY ERRORS
        CAIL TAC,MQTOP\r
        MOVEI TAC,MQUEUE\r
        MOVEM TAC,MOPTR         ;FALL THROUGH TO DFINT4\r
-\r
+\f\r
 ;DETERMINE NEXT TRANSFER TO MAKE ACCORDING TO PRIOROTY\r
 ; 1) SWAPPING  2) MQ I/O  3) BUFFERED MODE I/O\r
 DFINT4:        MOVEM IOS,DEVIOS(DEVDAT) ;CLEAR IOACT\r
@@ -2990,7 +2925,7 @@ DINT4B:   SKIPE @MOPTR            ;MONITOR JOB WAITING?
        JRST FINDV              ;YES.\r
        SETZM DFBUSY            ;NO. TURN OFF BUSY FLAG\r
        POPJ PDP,               ;EXIT INTERRUPT\r
-\r
+\f\r
 ;FIND A WAITING USER\r
 \r
 FINDV: HRRZ DEVDAT,DDBPTR\r
@@ -3015,7 +2950,7 @@ DFINT6:   ANDCAM TAC,DEVOAD(DEVDAT) ;CLEAR OUTPUT WAIT BIT IN DDB
        JRST USRGO\r
 \r
 ;START UP A USER READ\r
-\f\f\f\f\f\f\f\f\f\f\f\f\f\f\f\f\f\r
+\r
 DFINT7:        ANDCAM TAC,DEVIAD(DEVDAT) ;CLEAR INPUT WAIT BIT IN DDB\r
 \r
 USRGO: MOVSM DEVDAT,RUNUSR     ;SAVE DEVDAT FOR USE AT DFINT\r
@@ -3036,8 +2971,7 @@ USRGO:    MOVSM DEVDAT,RUNUSR     ;SAVE DEVDAT FOR USE AT DFINT
 \r
 USRGO3:        HRRI TAC1,@DEVOAD(DEVDAT) ;GET ADDRESS OF OUTPUT BUFFER\r
        AOJA TAC1,DFWRT         ;FORM IOWD AND WRITE\r
-\r
-\r
+\f\r
 ;START UP A MONITOR READ OR WRITE\r
 \r
 MONGO: MOVS ITEM,@MOPTR        ;XWD CORE ADDRESS, SAVED DEVDAT\r
@@ -3074,8 +3008,7 @@ SETDUN:                           ;*
        TLZE IOS,IOW            ;*\r
        JRST SETIOD             ;*\r
        POPJ PDP,               ;*\r
-\r
-SUBTTL ERRORS,  SUBROUTINES.\r
+\fSUBTTL ERRORS,  SUBROUTINES.\r
 ;ERROR ROUTINES CALLED FROM UUO LEVEL\r
 \r
 EXTERN EXCALP,ERRPTU,TPOPJ\r
@@ -3127,16 +3060,15 @@ DFER11: MOVEI TAC,NOFILE
 DFER12:        MOVEI   TAC,0\r
        PUSH    PDP,TAC         ;ADD SOMETHING TO BE REMOVED (SINCE SETLE NOT CALLED)\r
        JRST DFERRY\r
-\r
-WERA:  MOVSI IOS,NORELB\r
+\fWERA: MOVSI IOS,NORELB\r
        ANDCAB IOS,DEVIOS(DEVDAT)\r
        ERRORS <NON-RECOVERABLE DISC WRITE ERROR>\r
 \r
+\r
 RERA:  MOVSI IOS,NORELB\r
        ANDCAB IOS,DEVIOS(DEVDAT)\r
        ERRORS <NON-RECOVERABLE DISC READ ERROR>\r
-\r
-;CALLED AT BOTH INTERUPT AND UUO LEVELS\r
+\f;CALLED AT BOTH INTERUPT AND UUO LEVELS\r
 ;COMPUTE CHECK-SUM\r
 ;ENTER WITH C(TAC 18-35) SET TO BUFFER ADDRESS\r
 ;RETURN WITH C(TAC1)SET TO ONES COMPLEMENT SUM IN RH.\r
@@ -3189,8 +3121,7 @@ CHKSM2:   AOBJN TAC,CHKSM1        ;LOOP UNTIL DONE
        ADDI TAC1,1             ;YES BRING IT AROUND\r
        POPJ PDP,\r
 >\r
-\r
-;UPDATE DEVCNT IF NECESSARY. DEVCNT HAS SIZE OF FILE IN R.H. (IN WORDS IF POSSIBLE,\r
+\f;UPDATE DEVCNT IF NECESSARY. DEVCNT HAS SIZE OF FILE IN R.H. (IN WORDS IF POSSIBLE,\r
 ; OTHERWISE NEGATIVE BLOCK COUNT).\r
 ; ENTER WITH SIZE OF CURRENT BLOCK IN TAC1\r
 UPDEVC:        HRRZ TAC,SETCNT(DEVDAT) ;*CONVERT CURRENT RELATIVE BLOCK NUMBER TO WORDS\r
@@ -3201,8 +3132,7 @@ UPDEVC:   HRRZ TAC,SETCNT(DEVDAT) ;*CONVERT CURRENT RELATIVE BLOCK NUMBER TO WORDS
        HRRZ TAC1,DEVCNT(DEVDAT) ;*PICK UP PREVIOUS MAXIMUM FILE SIZE OF COMPARISON.\r
        TRNE TAC1,400000        ;*PREVIOUS MAXIMUM SIZE GREATER THAN 2 EXP 17 WORDS?\r
        JRST UPDVC2             ;*YES, THEN COMPARE AND SAVE NEGATIVE BLOCK COUNTS\r
-       TLNN TAC,-1             ;*NO, DOES THE NEWLY COMPUTED CURRENT FILE SIZE EXCEED\r
-\r
+       TLNN TAC,-1             ;*NO, DOES THE NEWLY COMPUTED CURRENT FILE SIZE EXCEED  \r
                                ;* 2EXP17 WORDS?\r
        TRNE TAC,40000          ;*\r
        JRST UPDVC1             ;*YES, GO SAVE NEGATIVE BLOCK COUNT.\r
@@ -3225,8 +3155,8 @@ UPDVC2:   ADDI TAC,BLKSIZ-1       ;*CONVERT POSITIVE WORD COUNT TO NEGATIVE
        HRRM TAC,DEVCNT(DEVDAT) ;*STORE NEW MAXIMUM FILES SIZE ONLY IF PREVIOUS\r
                                ;* MAXIMUM EXEEDED.\r
        POPJ PDP,               ;*\r
+\f;OUTPUT WRITE-LOCK ERROR. FREE THE BLOCK AND GET NEW ONE.\r
 \r
-;OUTPUT WRITE-LOCK ERROR. FREE THE BLOCK AND GET NEW ONE.\r
 \r
 WLERA: HLR TAC,DSKCNT(DEVDAT)  ;PICK UP BLOCK NUMBER.\r
        PUSHJ PDP,SETFRE        ;FREE THE BLOCK\r
@@ -3235,6 +3165,7 @@ WLERA:    HLR TAC,DSKCNT(DEVDAT)  ;PICK UP BLOCK NUMBER.
 ;SET WRITE-LOCK INDICATION IN A SAT ENTRY.\r
 ;ENTER WITH A BLOCK NUMBER IN TAC.\r
 \r
+\r
 SETWL: MOVEI TAC1,SATENT       ;*\r
        JRST .+2                ;*\r
 SETWL1:        ADDI TAC1,SENTSZ        ;*\r
@@ -3245,7 +3176,4 @@ SETWL1:   ADDI TAC1,SENTSZ        ;*
        MOVEI ITEM,WLBIT        ;*\r
        ORM ITEM,@TAC1          ;*\r
        POPJ PDP,               ;*\r
-\r
-DSKSR: END\r
-\f\r
-\0\r
+\fDSKSR:        END\r
index c0530cc..1386af8 100644 (file)
@@ -31,6 +31,7 @@ MINDIS=14     ;MINMUM NUMBER OF BLOCKS TO SEARCH BEFORE DISCONNECTING
                ;FROM A TAPE\r
 SPACE=4                ;NUMBER OF BLOCKS SEPERATING CONTIGUOUS BLKS OF A FILE\r
 \r
+\r
 ;DDB MAGIC CELLS\r
 FSTBLK=13\r
 DLOC=14\r
@@ -43,6 +44,7 @@ SVDWRD=21
 UDSD=100\r
 LSTSAV=20000\r
 \r
+\r
 ;FLAGS IN LH OF IOS\r
 NOLINK=200\r
 CHNGDR=400\r
@@ -57,10 +59,10 @@ REWBIT=100000
 RUNBIT=200000\r
 RECKON=400000          ;THIS TAPE IS DEAD-RECKONING.\r
                        ; (MUST BE SIGN BIT)\r
-\r
 CPBIT=-1               ;FEATURE TEST TO ALLOW IO INTO USER AREA DIRECTLY\r
                        ;IT WILL ONLY HAPPEN ON DUMP MODE WITH NON-STANDARD BIT\r
                        ;(UDSD) ON\r
+\r
 \f      EXTERN  JIFSEC\r
 \r
        INTERN  DTAINT,DTADDB,DTAINI,DTADDS,DTADSP\r
@@ -71,18 +73,15 @@ DTADDB:     SIXBIT  /DTA0/
        EXP     DTADSP\r
        XWD     1107,154403\r
        EXP     0,0\r
-\r
        XWD     PROG,0\r
        XWD     PROG,0\r
        EXP     0,0,0\r
-\r
        EXP     DTADIR\r
        EXP     0,0,0,0,0\r
-\r
-\r
 DTADIR:        BLOCK   200\r
 DTADDS=.-DTADDB\r
 \r
+\r
        JRST    DTAINI\r
        JRST    HUNGTP          ;HUNG DEVICE\r
 DTADSP:        JRST    UREL\r
@@ -106,6 +105,7 @@ DTADSP:     JRST    UREL
        SOJA    TAC1,MTAP0\r
        POPJ    PDP,            ;OTHERS ARE NO-OPS\r
 \r
+\r
 ;INITIALIZE DTC\r
 DTAINI:        CONO    DTC,0\r
        SETZM   DISCON\r
@@ -179,7 +179,6 @@ RENAM1:     TLO     IOS,CHNGDR      ;DIRECTORY HAS CHANGED
 \r
 ;COME HERE TO RENAME TO A REAL NEW NAME\r
 RENAM2:        MOVE    DAT,TAC          ;SAVE LOC OF NAME IN DIRECTORY\r
-\r
        PUSHJ   PDP,DSERCH      ;SEARCH FOR NEW NAME\r
        SKIPA           ;NOT FOUND - GOOD\r
        JRST    RENER2          ;NAME ALREADY EXISTS - ERROR\r
@@ -282,7 +281,6 @@ DECPTR:     JUMPL   DAT,.+5
        SOJA    DAT,CPOPJ\r
        HRLI    DAT,060500\r
        SOJA    DAT,CPOPJ\r
-\r
 \f;COME HERE TO DELETE THE FILE WHOSE INDEX IS INN TAC\r
 DLETE: MOVEI   TAC1,0          ;SET TO DELETE BLOCKS\r
        PUSHJ   PDP,BLKSRC      ;FIND A BLOCK BELONGING TO FILE\r
@@ -351,12 +349,12 @@ DRPTR:    SUBI    BLK,1           ;SET FOR ILDB OR IDPB
 \r
 ;HERE FOR NEW FILE NAME ON ENTER\r
 NEWENT:        SUB     TAC,[XWD 26,26];START AT BEGINNING OF DIRECT.\r
-\r
        SKIPN   (TAC)           ;FIND A FREE SLOT\r
        AOJA    UUO,ENTR2       ;RETURN WITH UUO POINTING TO WRD 2\r
        AOBJN   TAC,.-2\r
        POPJ    PDP,            ;NONE AVAILABLE.\r
 \r
+\r
 ;SET UP LENGTH OF FILE IN DIRECTORY FOR A SAVE FILE\r
 SETWD4:        HLRE    TAC1,@UUO       ;GET -LENGTH\r
        MOVNS   TAC1            ;+LENGTH\r
@@ -391,6 +389,7 @@ GETF:       PUSHJ   PDP,WAIT1       ;WAIT TILL BUFFERES EMPTY
        MOVE    TAC,BLK         ;TELL USER THE BLOCK NUMBER\r
        JRST    STOTAC\r
 \r
+\r
 ;GET NEXT (OR PREVIOUS) FREE BLOCK\r
 USRFRE:        MOVEI   TEM,SPACE       ;BLOCKS "SPACE" APART\r
        LDB     BLK,PIOMOD      ;EXCEPT DUMP AND SAVMOD FILES\r
@@ -415,6 +414,7 @@ USRLST:     SUBI    BLK,(TEM)       ;LOOK FOR FREE BLOCK N BEFORE
 USLSTA:        PUSHJ   PDP,LSTFRE      ;THIS ONE\r
        JRST    CALNXT+1\r
 \r
+\r
 ;NO FREE BLOCKS AVAILABLE. GIVE HIGH BLOCK,SET IOBKTL LATER\r
 NOBLKS:        MOVEI   BLK,TOPBLK+1    ;SET HIGH BLOCK\r
        POPJ    PDP,\r
@@ -450,6 +450,8 @@ UCLS:       TLZE    IOS,NOLINK      ;IS LAST BLOCK NOT LINKED?
        MOVEM   IOS,DEVIOS(DEVDAT)  ;SAVE IOS\r
        JRST    OUT             ;GO TO WRITE RECORD\r
 \r
+\r
+\r
 ;HERE TO CLOSE A DUMP MODE FILE\r
 CLSDMP:        TLO     IOS,DMPCLS+IO+DMPMOD ;SET SWITCHES\r
        PUSHJ   PDP,GETDT       ;GET CONTROL\r
@@ -473,9 +475,9 @@ UREL:       PUSHJ   PDP,WAIT1       ;MAKE SURE THE TAPE IS STOPPED
        PUSHJ   PDP,WRTBLK      ;WRITE UT\r
        PUSHJ   PDP,WAIT1       ;WAIT TILL IT HAS BEEN WRITTEN\r
 \r
+\r
 UREL2: MOVE    TAC,DEVIAD(DEVDAT) ;BITS 1,2 ARE COUNT OF CHANS\r
        TLNE    TAC,200000      ;DEV INITED ON ANOTHER CHANNEL TOO?\r
-\r
 QUANTL:        POPJ    PDP,QUANT       ;YES, DON'T ZAP IOS OR DDB\r
 \r
 ;SOME BITS IN THE IOS WORD AND THE DDB WILL NORMALLY BE CHANGED ON THE\r
@@ -487,6 +489,8 @@ QUANTL:     POPJ    PDP,QUANT       ;YES, DON'T ZAP IOS OR DDB
                                ;IT WILL WORK (CHECK IS MADE AT ENTER)\r
        SETZM   FSTBLK(DEVDAT)\r
        JRST    STOIOS          ;STORE IOS AND RETURN\r
+\r
+\r
 \fGETDT0:       PUSHJ   PDP,SETACT      ;WAIT TILL TAPE COMES OUT OF REWIND\r
        PUSHJ   PDP,WSYNC       ;BEFORE DOING ANYTHING ELSE TO IT\r
 ;GET DEC TAPE CONTROLLER\r
@@ -536,7 +540,6 @@ UIN:        TLZ     IOS,IO
        JUMPE   BLK,EOF         ;0 MEANS EOF\r
        PUSHJ   PDP,BLKCHK      ;CHECK LEGALITY OF BLOCK NUMBER\r
        TLNN    IOS,DMPMOD      ;DUMP MODE?\r
-\r
        CAIE    BLK,DIRBLK      ;TRYING TO READ DIRECTORY?\r
        JRST    READBF          ;NO. GO READ\r
 \r
@@ -561,6 +564,7 @@ EOF:        TLO     IOS,IOEND       ;LIGHT EOF BIT
        JRST    STOIOS\r
        JRST    DMPEOF          ;GIVE UP CONTROL IF DUMP-MODE\r
 \r
+\r
 ;ZERO USER'S CORE ON SAVE-MODE INPUT\r
 ZERCOR:        MOVEI   TAC,JOBDDT(PROG) ;ZERO CORE\r
        HRLI    TAC,1(TAC)\r
@@ -590,7 +594,6 @@ UOUT:       TLO     IOS,IO
        CAIN    BLK,DIRBLKK     ;CHECK IF WRITING DIRECTORY\r
        JRST    COR2HM          ;YES, WRITE CORE IMAGE\r
        JUMPE   BLK,FAKADV      ;DONT WRITE IF NO BLOCK GIVEN\r
-\r
        PUSHJ   PDP,BLKCHK      ;CHECK FOR LEGAL BLOCK\r
 UOUT2: TLNN    IOS,DMPMOD      ;ALREADY HAVE CONTROL IF DUMP-MODE\r
        PUSHJ   PDP,GETDT       ;GET DEC TAPE CONTROLLER\r
@@ -623,6 +626,7 @@ OUTBLK:     HRLM    BLK,BUF          ;SAVE LINK IN 1ST WORD OF BLOCK
 OUTBL2:        HRRZ    BLK,OBLK(DEVDAT)\r
        PUSHJ   PDP,STOIOS\r
 \r
+\r
 WRTBLK:        PUSHJ   PDP,FNDBLK      ;GO SEARCH FOR BLOCK\r
        MOVE    TAC1,[BLKO DTC,700] ;HERE WE ARE - GO WRITE\r
        JRST    RDWRT\r
@@ -664,6 +668,7 @@ DMPST2:     SOS     UUO             ;NO. SAVE START OF LIST (-1)
 DMPTS1:        POP     PDP,TAC\r
        JRST    THRUTD\r
 \r
+\r
        IFN CPBIT, <\r
 ;HERE TO START DUMP-MODE INTO USER AREA DIRECTLY\r
 TOUSER:        JUMPE   AC2,NOBLK0      ;CANT READ BLK 0 IN NON-STD DUMP  MODE\r
@@ -684,6 +689,7 @@ TOUSR1:     MOVEM   UUO,USPNTR      ;SAVE IT
        POP     PDP,TAC         ;WRITING - THIS WILL SAVE LOTS OF TIME\r
        JRST    OUTBL2\r
 \r
+\r
 NOBLK0:        TRO     IOS,IOIMPM\r
        POP     PDP,TAC         ;RETURN TO UUOCON WITH ERROR BIT SET\r
        JRST    THRUTD\r
@@ -727,6 +733,7 @@ DMPOVA:     MOVEI   TAC,177
        MOVEM   TAC,BUF         ;WD CNT =177\r
        JRST    OUFULL          ;GO WRITE PART OF STUFF\r
 \r
+\r
 ;GET NEXT COMMAND FROM LIST\r
 NXTCOM:        SKIPN   DMPLST(DEVDAT)  ;END OF COMMANDS?\r
        JRST    NXTCM2          ;YES. RETURN\r
@@ -737,11 +744,13 @@ NXTCM1:   HRRM    TAC,DMPLST(DEVDAT) ;STORE GO-TO ADDRESS
        JUMPG   TAC,NXTCM1      ;GO-TO WORD\r
        ADDI    TAC,(PROG)      ;REAL COMMAND - ADD RELOCATION\r
        AOJA    TAC,CPOPJ1      ;AND RETURN\r
+\r
 \f;END OF DUMP-MODE LIST\r
 NXTCM2:        SETZM   SVDWRD(DEVDAT)  ;ZERO POINTERS\r
        SETZM   DMPLST(DEVDAT)\r
        POPJ    PDP,\r
 \r
+\r
 DMPFLC:        SKIPE   TAC,SVDWRD(DEVDAT)      ;IS THERE ANOTHER COMMAND\r
        JRST    DMPFLA          ;YES. GET IT\r
        JRST    DMPTH2          ;NO. THROUGH\r
@@ -764,7 +773,6 @@ RDWRT:      HLLM    TAC1,IOWD       ;BLKI OR BLKO
        SKIPA   TAC,BFPNTR      ;NO. INTO BUF\r
        HRR     TAC,DLOC(DEVDAT)        ;YES. LOC OF DIRECTORY\r
        CONSZ   DTC,100000      ;IN REVERSE?\r
-\r
        JRST    IORVRS          ;YES\r
        SOS     TAC             ;ADDRESS -1\r
        MOVE    TEM,IOWD        ;GET IOWD\r
@@ -784,6 +792,7 @@ IORVRS:     ADDI    TAC,176         ;START AT TOP OF BUFFER
        MOVE    TEM,[JSR RVERS]\r
        JRST    IOGO            ;COMPILCATED STUFF FOR EACH WORD\r
 \r
+\r
 ;HERE FOR AY DATA WORD WITH TAPE IN REVERSE\r
 RVERS: 0\r
 IOWD:  BLKI    DTC,PNTR        ;READ (WRITE) A WORD\r
@@ -810,6 +819,7 @@ MTAP0:      PUSHJ   PDP,GETDT       ;GET THE CONTROL FOR THE TAPE
        MOVEI   BLK,0           ;SEARCH FOR BLOCK 0\r
        PUSHJ   PDP,FNDBLK      ;GO FIND BLOCK\r
 \r
+\r
 ;CONTROL COMES HERE ON INTERRUPT CHANNEL WHEN THE BLOCK IS FOUND\r
        TLNE    IOS,RUNBIT      ;REWIND UNLOAD?\r
        JRST    .+3             ;YES, CONTINUE\r
@@ -829,6 +839,7 @@ RUNCLK:     MOVE    DEVDAT,USEWRD
        MOVE    IOS,DEVIOS(DEVDAT)  ;RESET IOS\r
        JRST    REWDUN          ;DECREASE DTREQ. STOP TAP\r
 \r
+\r
 ;HERE TO PUT C(TAC) IN THE CLOCK QUEUE\r
 CLKREQ:        0\r
        CONO    PI,PIOFF        ;TURN OFF PI\r
@@ -877,7 +888,8 @@ SRCH:       0
        TLNE    TAC,2000        ;IS CONTROL STILL ACTIVE?\r
        JRST    SRCHD           ;YES. MUST BE IN "PSEUDO END-ZONE"\r
        DATAI   DTC,TAC         ;NO. READ A BLOCK NUMBER\r
-       TLZ     TAC,-1          ;LEGAL BLOCK NUMBER>\r
+       TLZ     TAC,-1          ;INSURANCE\r
+       CAILE   TAC,TOPBLK      ;LEGAL BLOCK NUMBER?\r
        JRST    SRCHB           ;NO. SET ERROR SWITCH\r
        SUB     TAC,BLOCK       ;NOW-WANTED\r
        IFN CPBIT, <\r
@@ -888,7 +900,6 @@ SRCH:       0
 SRCHA: CONSZ   DTC,100000      ;IF TAPE IS IN REVERSE\r
        MOVNS   TAC             ;SWITCH TURN-AROUND TEST\r
        JUMPLE  TAC,.+3 ;TEST FOR DISCONNECT IF DIRECTION IS CORRECT\r
-\r
                                ;***\r
        CONO    DTC,DTTURN      ;TURN AROUND\r
        JRST    SRCHXT          ;AND GO AWAY\r
@@ -913,6 +924,7 @@ SRCHB:      AOS     TAC,ERRCNT      ;BUMP ERROR COUNT
        CONO    DTS,770001      ;FUNCTION STOP\r
        JRST    SRCHXT          ;GO AWAY\r
 \r
+\r
        IFN CPBIT, <\r
 SRCHC: CONSZ   DTC,100000      ;GOING FORWARD?\r
        TLCA    TAC,400000      ;NO. SWITCH TURN AROUND TEST. ENSURE FORWARD\r
@@ -946,7 +958,6 @@ REKON:      SKIPN   IOWRIT          ;MONITOR BUFFER FULL?
        LDB     TAC1,PJOBN      ;ASSOCIATED JOB NUMBER\r
        HRRM    TAC1,MONB2      ;SAVE IN WD 2 OF MONITOR BUFFER\r
        HRLM    DEVDAT,MONB2    ;SAVE ADDRESS OF DTA\r
-\r
        CONSZ   DTC,200000\r
        IMULI   TAC,62          ;COMPUTE A TIME TO BLOCK\r
        CONSZ   DTC,100000      ;BASED ON 50 MSEC/BLOCK FORWARD\r
@@ -993,6 +1004,7 @@ NXTICK:    MOVE    TAC,TIMRQ2      ;COME BACK IN A JIFFY
 TIMREQ:        XWD     BACK,0\r
 TIMRQ2:        XWD     BACKA,1\r
 \r
+\r
 IFN    ALMACT,<\r
        EXTERN  PRIIN\r
 ;COME HERE ON THE CLOCK LEVEL TO BRING THE JOB ASSOCIATED WITH\r
@@ -1006,6 +1018,7 @@ ALMREQ:   XWD     .+1,1
        ANDCAM  TAC,DEVIOS(DEVDAT) ;ZAP BIT SO IT WONT BE SWAPPED OUT AGAIN\r
        POPJ    PDP,\r
 \r
+\r
 ;HERE WHEN SWAPPER DOES GET THE JOB BACK INTO CORE\r
 SWPBAK:        MOVE    IOS,DEVIOS(DEVDAT)\r
        SETM    MONB2           ;CLEAR JOB NO, FROM MON BUFFER\r
@@ -1035,7 +1048,6 @@ BACK2:    TRZ     TAC,10
        HLRZ    TAC1,IBLK(DEVDAT) ;BLOCK NEEDED\r
        DPB     TAC1,[POINT 10,BLOCK,35]\r
        HRRZ    TAC,CLOCK\r
-\r
        HRLI    TAC1,CPOPJ      ;FIND CLOCK-QUEUE REFERENVCE TO BACKC\r
 BACK3: CAIN    TAC,CIPWTM\r
        JRST    BACKD           ;NOT THERE, TAPE MUST HAVE BEEN STOPPED\r
@@ -1070,6 +1082,7 @@ BACKA:    SETOM   TAC             ;DISCON WILL GO TO -1
        EXCH    TAC,DISCON      ;UNIT TO CONNECT TO\r
        JRST    BACK2           ;GO RECONNECT\r
 \r
+\r
 ;IF WE GET HERE THERE IS A SLOW TAPE ON THE SELECTED DRIVE\r
 BACKC: CONO    PI,PIOFF ;CANT RISK CHANGING THE INTERRUPT ENABLES HRE\r
        CONI    DTS,TAC         ;READ IN ENABLE FLAGS\r
@@ -1096,6 +1109,7 @@ FOUND:    MOVEM   TAC1,FNDTMP     ;SAVE THOSE ACS THAT WILL BE USED
 FNDPDP:        XWD     -2,.\r
        0\r
 \r
+\r
        IFN CPBIT, <\r
 ;HERE WHERE DUMP-MODE POINTER RUNS OUT\r
 DMPADV:        0\r
@@ -1139,6 +1153,7 @@ DTAIN1:   TLZE    IOS,REWBIT      ;NO, FROM A REWIND MTAPE?
        CONSZ   DTS,670000      ;AND NO ERRORS?\r
        JRST    ERRS            ;NO. TOUGH LUCK\r
        SKIPGE  BLOCK           ;BAD BLOCK NUMBER ON TAPE?\r
+       JRST    DERR            ;YES, TURN ON IODERR\r
 DTAIN2:        TLNE    IOS,DMPMOD      ;DUMP MODE?\r
        JRST    DMPTHR          ;YES. GO ELSEWHERE\r
        TLNN    IOS,SINGL\r
@@ -1155,6 +1170,7 @@ DTAIN2:   TLNE    IOS,DMPMOD      ;DUMP MODE?
        JRST    OUTHRU          ;YES\r
 \fEXTERN        JBTSTS,PJOBN\r
 \r
+\r
 ;HERE ON END OF AN INPUT BLOCK\r
        HRROI   TAC1,177        ;MASK OUT 1ST-BLK DATA\r
        TRNN    IOS,UDSD        ;UNLESS IN NON-STD\r
@@ -1171,7 +1187,6 @@ DTAIN2:   TLNE    IOS,DMPMOD      ;DUMP MODE?
        JRST    THRUIN\r
        PUSHJ   PDP,ADVBFF      ;GET NEXT BUFFER\r
        JRST    THRUIN          ;EMPTY BUF NOT AVAILABLE\r
-\r
        SKIPLE  DISCON          ;TAPE TIMED OUT?\r
        JRST    BACKB           ;YES. GO RECONNECT\r
        SKIPE   BLK             ;EXIT  IF EOF OR BLOCK TOO LARGE\r
@@ -1181,6 +1196,7 @@ DTAIN2:   TLNE    IOS,DMPMOD      ;DUMP MODE?
        SKIPG   DTREQ           ;YES. ANYONE ELSE WANT IT?\r
        JRST    READBC          ;NO. READ NEXT BLOCK\r
 \r
+\r
 THRUIN:        HRRZ    TAC,OBLK(DEVDAT) ;TAPE ALSO BEING WRITTEN?\r
        JUMPN   TAC,THRUTP      ;YES. DONT CHANGE REVERSE BIT\r
        TLZ     IOS,RVERSE      ;NO. SET IOS BIT TO CORRECT DIRECTION\r
@@ -1203,6 +1219,7 @@ HUNGTP:   JUMPGE  IOS,THRUTP      ;GIVE UP CONTROL IF NOT DEAD-RECKONING
 ;WHEN THE TAPE TIMES OUT FNDBLK WILL RESET THE HUNG TIME, AND\r
 ;IF IT IS STILL HUNG AT ITS END THE ERROR MESSAGE WILL OCCUR\r
 \r
+\r
        INTERN  FTSWAP\r
        EXTERN  SHFWAT\r
 ;HERE ON END OF BLOCK WHEN THE JOB IS STILL SWAPPED OUT\r
@@ -1240,6 +1257,7 @@ OUTHRU:   PUSHJ   PDP,ADVBFE      ;GET NEXT BUFFER
        JRST    FILBUF          ;NO. GO WRITE NEXT BLOCK\r
        JRST    THRUTP          ;YES. GIVE UP TAPE\r
 \r
+\r
 ;TURN TAPE AROUND AFTER END-ZONE INTERRUPT\r
 TURN:  CONSZ   DTC,500         ;READ BLOCK NUMBERS?\r
        JRST    DIREOF          ;NO. END ZONE WHILE READING DATA\r
@@ -1295,6 +1313,7 @@ SVDMIN:   HLRZ    BLK,BUF         ;NEXT BLOCK NUMBER
        HRRM    BLK,IBLK(DEVDAT) ;SAVE IN DDB\r
        JRST    CPOPJ1\r
 \r
+\r
        IFN CPBIT, <\r
 ;HERE WHEN THROUGH DUMP-MODE DIRECTLY TO USER\r
 USDMTH:        MOVEI   TAC1,IBLK(DEVDAT)\r
@@ -1334,7 +1353,9 @@ RDNXT:    CAIG    BLK,TOPBLK      ;BLOCK LEGAL?
 ;EOF BEFORE ALL DATA IS IN - DUMP MODE\r
 DMPEOF:        TRO     IOS,IODEND      ;LIGHT EOF BIT\r
        JRST    DMPTH2          ;GIVE UP TAPE\r
-\fSVADER:       PUSHJ   PDP,DMPTH2      ;GIVE UP CONTROL\r
+\f\r
+\r
+SVADER:        PUSHJ   PDP,DMPTH2      ;GIVE UP CONTROL\r
        JRST    ADRERR          ;TYPE ERROR MESSAGE\r
 ;COME HERE ON ERROR\r
 ERRS:  AOS     TAC,ERRCNT      ;BUMP COUNT\r
@@ -1393,7 +1414,6 @@ ALMSWT:   0
        IFN CPBIT, <\r
 BLKCNT:        0\r
 SVPNTR:        0\r
-\r
 USPNTR:        0\r
 DIRCTN:        0\r
 >\r
index 8d0970e..c665ac5 100644 (file)
@@ -2,11 +2,11 @@ TITLE DTCSRN - NEW FORMAT DECTAPE SERVICE FOR 551 (PDP-6)
 SUBTTL DTA551 A.WACHS/TW/RCC 01 JUN 69  V012\r
        XP      VDTASR,012      ;GLOBAL VERSION NUMBER FOR LOADER STORAGE MAP.\r
 \r
+\r
        ENTRY   DTCSRN   ;ENTRY POINT FOR SELECTIVE LOAD BY BUILD\r
 DTCSRN:\r
 EXTERNAL       TPOPJ,TPOPJ1,DTCCHL,DCOUT,DCIN,DCON,DCOFF\r
 EXTERNAL       STOIOS,STOTAC,SETACT,CLRACT,OUT,DTCSAV,PIOMOD\r
-\r
 EXTERNAL       DTAVAL,DTREQ,SETIOD,THSDAT,PUNIT,GETDCDT\r
 EXTERNAL       ADVBFE,ADVBFF,ADRERR,WAIT1,CPOPJ,CPOPJ1,BADDIR\r
 EXTERNAL       COMCHK,PJOBN,RELEA9,UADCK1,DTTRY\r
@@ -23,6 +23,7 @@ NAMSTR=^D83   ;1ST NAME WORD IN DIRECTORY
 QUANT=5                ;NUMBER OF BLOCKS CAN READ BEORE GIVING UP DTC\r
 SPACE=6                ;NUMBER OF BLOCKS SEPERATING CONTIGUOUS BLKS OF A FILE\r
 \r
+\r
 ;DDB MAGIC CELLS\r
 FSTBLK=13\r
 DLOC=14\r
@@ -50,9 +51,8 @@ CPBIT=-1              ;CONDITIONAL ASSEMBLY PARAMETER FOR I/O DIRECTLY
                        ;TO USER.  IF -1 THE I/O IN DUMP MODE WITH\r
                        ;BIT 29 ON IN INIT WILL DO IO DIRECTLY TO USER\r
                        ;WIUTHOUT DIRECT CONSIDERATION OF BLOCK BOUNDRIES\r
-\f      EXTERN  JIFSEC\r
 \r
-       INTERN  DTCINT,DTCDDB,DTCINI,DTCDDS\r
+\f      INTERN  DTCINT,DTCDDB,DTCINI,DTCDDS\r
 \r
 DTCDDB:        SIXBIT  /DTA0/\r
        XWD     ^D60*HUNGST,200\r
@@ -60,18 +60,15 @@ DTCDDB:     SIXBIT  /DTA0/
        EXP     DTCDSP\r
        XWD     1107,154403\r
        EXP     0,0\r
-\r
        XWD     PROG,0\r
        XWD     PROG,0\r
        EXP     0,0,0\r
-\r
        EXP     DTCDIR\r
        EXP     0,0,0,0,0\r
-\r
-\r
 DTCDIR:        BLOCK   200\r
 DTCDDS=.-DTCDDB\r
 \r
+\r
        JRST    DTCINI\r
        JRST    THRUTP          ;HUNG DEVICE\r
 DTCDSP:        JRST    UREL\r
@@ -90,6 +87,7 @@ DTCDSP:       JRST    UREL
        JRST    UTPCLR\r
        POPJ    PDP,            ;MTAPE\r
 \r
+\r
 ;INITIALIZE DTC\r
 DTCINI:        CONO    DTC,0\r
        CONO    DC,0\r
@@ -160,7 +158,6 @@ RENAM1:     TLO     IOS,CHNGDR      ;DIRECTORY HAS CHANGED
 \r
 ;COME HERE TO RENAME TO A REAL NEW NAME\r
 RENAM2:        MOVE    DAT,TAC          ;SAVE LOC OF NAME IN DIRECTORY\r
-\r
        PUSHJ   PDP,DSERCH      ;SEARCH FOR NEW NAME\r
        SKIPA           ;NOT FOUND - GOOD\r
        JRST    RENER2          ;NAME ALREADY EXISTS - ERROR\r
@@ -185,7 +182,7 @@ DSER1:      PUSHJ   PDP,DIRCHK      ;ENSURE DIRECTORY IS IN CORE
        HRRZ    TAC,DLOC(DEVDAT) ;LOCAION OF DIRECTORY\r
        ADD     TAC,[XWD -26,NAMSTR] ;POINT TO START OF NAMES\r
 NMLOOK:        SKIPN   TAC1,@UUO       ;GET NAME\r
-       JRST    TPOPJ           ;NULL ARGUMENT - ERROR RETURN                   \r
+       JRST    TPOPJ           ;NULL ARGUMENT - ERROR RETURN\r
        MOVEM   TAC1,DEVFIL(DEVDAT)     ;STORE FOR RENAME AND SUPERSEDING\r
                                ; SHARED SEGMENTS\r
        CAMN    TAC1,(TAC)      ;TEST FOR MATCH\r
@@ -263,7 +260,6 @@ DECPTR:     JUMPL   DAT,.+5
        SOJA    DAT,CPOPJ\r
        HRLI    DAT,060500\r
        SOJA    DAT,CPOPJ\r
-\r
 \f;COME HERE TO DELETE THE FILE WHOSE INDEX IS INN TAC\r
 DLETE: MOVEI   TAC1,0          ;SET TO DELETE BLOCKS\r
        PUSHJ   PDP,BLKSRC      ;FIND A BLOCK BELONGING TO FILE\r
@@ -332,12 +328,12 @@ DRPTR:    SUBI    BLK,1           ;SET FOR ILDB OR IDPB
 \r
 ;HERE FOR NEW FILE NAME ON ENTER\r
 NEWENT:        SUB     TAC,[XWD 26,26];START AT BEGINNING OF DIRECT.\r
-\r
        SKIPN   (TAC)           ;FIND A FREE SLOT\r
        AOJA    UUO,ENTR2       ;RETURN WITH UUO POINTING TO WRD 2\r
        AOBJN   TAC,.-2\r
        POPJ    PDP,            ;NONE AVAILABLE.\r
 \r
+\r
 ;SET UP LENGTH OF FILE IN DIRECTORY FOR A SAVE FILE\r
 SETWD4:        HLRE    TAC1,@UUO       ;GET -LENGTH\r
        MOVNS   TAC1            ;+LENGTH\r
@@ -372,6 +368,7 @@ GETF:       PUSHJ   PDP,WAIT1       ;WAIT TILL BUFFERES EMPTY
        MOVE    TAC,BLK         ;TELL USER THE BLOCK NUMBER\r
        JRST    STOTAC\r
 \r
+\r
 ;GET NEXT (OR PREVIOUS) FREE BLOCK\r
 USRFRE:        MOVEI   TEM,SPACE       ;BLOCKS "SPACE" APART\r
        LDB     BLK,PIOMOD      ;EXCEPT DUMP AND SAVMOD FILES\r
@@ -397,6 +394,7 @@ USRLST:     SUBI    BLK,(TEM)       ;LOOK FOR FREE BLOCK N BEFORE
 USLSTA:        PUSHJ   PDP,LSTFRE      ;THIS ONE\r
        JRST    CALNXT+1\r
 \r
+\r
 ;NO FREE BLOCKS AVAILABLE. GIVE HIGH BLOCK,SET IOBKTL LATER\r
 NOBLKS:        MOVEI   BLK,TOPBLK+1    ;SET HIGH BLOCK\r
        POPJ    PDP,\r
@@ -444,7 +442,8 @@ UREL:       SETZM   FSTBLK(DEVDAT)  ;ZERO FSTBLK
        PUSHJ   PDP,GETDT       ;WAIT TILL DTC AVAILABLE\r
        MOVEI   BLK,DIRBLK      ;BLOCK NUMBER\r
        PUSHJ   PDP,WRTBLK      ;WRITE UT\r
-       PUSHJ   PDP,WAIT1       ;WAIT TILL IT HAS BEEN WRITTEN\r
+       JRST    WAIT1           ;DONT RETURN TO USER TILL DONE\r
+\r
 \r
 ;GET DEC TAPE CONTROLLER\r
 GETDT: PUSHJ   PDP,GETDCDT     ;GET DATA CONTROL. DECTAPE CONTROL\r
@@ -455,6 +454,7 @@ GETDT:      PUSHJ   PDP,GETDCDT     ;GET DATA CONTROL. DECTAPE CONTROL
        MOVEM   DEVDAT,USEWRD   ;SAVE ACS NEEDED ON INTERRUPT LEVEL\r
        JRST    SETACT          ;LIGHT IOACT AND RETURN\r
 \r
+\r
 ;HERE TO CLOSE A DUMP MODE FILE\r
 CLSDMP:        TLO     IOS,CLSDMP              ;SET SWITCHES\r
        PUSHJ   PDP,GETDT       ;GET CONTROL\r
@@ -479,7 +479,6 @@ UIN:        TLZ     IOS,IO
        PUSHJ   PDP,BLKCHK      ;CHECK LEGALITY OF BLOCK NUMBER\r
        TLNN    IOS,DMPMOD      ;DUMP MODE?\r
        CAIE    BLK,DIRBLK      ;TRYING TO READ DIRECTORY?\r
-\r
        JRST    READBF          ;NO. GO READ\r
 \r
 ;READING DIRECTORY - GIVE CORE IMAGE IF IT EXISTS\r
@@ -503,6 +502,7 @@ EOF:        TLO     IOS,IOEND       ;LIGHT EOF BIT
        JRST    STOIOS\r
        JRST    DMPEOF          ;GIVE UP CONTROL IF DUMP-MODE\r
 \r
+\r
 ;ZERO USER'S CORE ON SAVE-MODE INPUT\r
 ZERCOR:        MOVEI   TAC,JOBDDT(PROG) ;ZERO CORE\r
        HRLI    TAC,1(TAC)\r
@@ -532,7 +532,6 @@ UOUT:       TLO     IOS,IO
        JUMPE   BLK,FAKADV      ;DONT WRITE IF NO BLOCK GIVEN\r
        PUSHJ   PDP,BLKCHK      ;CHECK FOR LEGAL BLOCK\r
 UOUT2: TLNN    IOS,DMPMOD      ;ALREADY HAVE CONTROL IF DUMP-MODE\r
-\r
        PUSHJ   PDP,GETDT       ;GET DEC TAPE CONTROLLER\r
 FILBUF:\r
 DTOCHK:        TLNE    IOS,DMPMOD      ;DUMP MODE?\r
@@ -540,6 +539,8 @@ DTOCHK:     TLNE    IOS,DMPMOD      ;DUMP MODE?
        MOVSI   TAC,@DEVOAD(DEVDAT) ;LOCATION OF BUFFER\r
        ADD     TAC,[XWD 1,BUF];SET TO STORE IN MONITOR BUFFER\r
        BLT     TAC,BUF+177     ;GO BLT IT\r
+       SKIPN   BUF             ;GIVE UP TAPE IF\r
+       JRST    THRUTP          ;NO BUFFER TO OUTPUT\r
        TLZ     IOS,NOLINK\r
 \fOUFULL:       TRNE    IOS,UDSD        ;NON-STANDARD?\r
        JRST    OUTBL2          ;YES, NO FILE-STRUCTURED OPERATIONS\r
@@ -561,6 +562,7 @@ OUTBLK:     HRLM    BLK,BUF          ;SAVE LINK IN 1ST WORD OF BLOCK
 OUTBL2:        HRRZ    BLK,OBLK(DEVDAT)\r
        PUSHJ   PDP,STOIOS\r
 \r
+\r
 WRTBLK:        PUSHJ   PDP,FNDBLK      ;GO SEARCH FOR BLOCK\r
        MOVE    TAC1,[BLKO DTC,700] ;HERE WE ARE - GO WRITE\r
        JRST    RDWRT\r
@@ -577,8 +579,7 @@ COR2HM:     MOVEI   TAC,@DEVOAD(DEVDAT)  ;WHERE IT IS
        TLO     IOS,CHNGDR      ;REMEMBER TO WRITE IT OUT\r
        MOVSI   TAC1,DVDIRI\r
        ORM     TAC1,DEVMOD(DEVDAT) ;DIR. IS NOW IN CORE\r
-FAKADV:        TLZE    IOS,DMPMOD      ;DUMP MODE?\r
-       JRST    THRUTD          ;YES. GIVE UP CONTROL\r
+FAKADV:        TLZN    IOS,DMPMOD      ;DUMP MODE?\r
        PUSHJ   PDP,ADVBFE      ;ADVANCE BUFFERS\r
        JFCL\r
        TLZ     IOS,NOLINK      ;DIRECTORY BLOCK IS NOT LINKED\r
@@ -603,6 +604,7 @@ DMPST2:     SOS     UUO             ;NO. SAVE START OF LIST (-1)
 DMPTS1:        POP     PDP,TAC\r
        JRST    THRUTD\r
 \r
+\r
        IFN CPBIT, <\r
 ;HERE TO START DUMP-MODE INTO USER AREA DIRECTLY\r
 TOUSER:        JUMPE   AC2,NOBLK0      ;CANT READ BLK 0 IN NON-STD DUMP  MODE\r
@@ -618,6 +620,7 @@ TOUSER:     JUMPE   AC2,NOBLK0      ;CANT READ BLK 0 IN NON-STD DUMP  MODE
        MOVEM   TAC,DCLOC1      ;IOWD IS EXHAUSTED\r
        HRRZM   PROG,ADRPRG     ;SAVE JUST ADDRESS OF PROG\r
        TLO     IOS,NOBUF       ;INDICATE DIRECTLY TO USER\r
+       XCT     @1(PDP)         ;TURN ON/OFF IO\r
        TLNN    IOS,IO\r
        JRST    CPOPJ1          ;READING - CONTINUE\r
        POP     PDP,TAC         ;WRITING - THIS WILL SAVE LOTS OF TIME\r
@@ -673,11 +676,13 @@ NXTCM1:   HRRM    TAC,DMPLST(DEVDAT) ;STORE GO-TO ADDRESS
        JUMPG   TAC,NXTCM1      ;GO-TO WORD\r
        ADDI    TAC,(PROG)      ;REAL COMMAND - ADD RELOCATION\r
        AOJA    TAC,CPOPJ1      ;AND RETURN\r
+\r
 ;END OF DUMP-MODE LIST\r
 NXTCM2:        SETZM   SVDWRD(DEVDAT)  ;ZERO POINTERS\r
        SETZM   DMPLST(DEVDAT)\r
        POPJ    PDP,\r
 \r
+\r
 DMPFLC:        SKIPE   TAC,SVDWRD(DEVDAT)      ;IS THERE ANOTHER COMMAND\r
        JRST    DMPFLA          ;YES. GET IT\r
        JRST    DMPTH2          ;NO. THROUGH\r
@@ -715,7 +720,8 @@ IOGO:       IFN CPBIT, <
        CONO    PI,PION\r
        POPJ    PDP,            ;DISMISS INTERRUPT\r
 \r
-;HERE FOR AY DATA WORD WITH TAPE IN REVERSE\r
+\r
+;HERE FOR ANY DATA WORD WITH TAPE IN REVERSE\r
 RVERS: 0\r
 IOWD:  BLKI    DTC,PNTR        ;READ (WRITE) A WORD\r
        JRST    RVTHRU          ;POINTER RAN OUT\r
@@ -731,6 +737,7 @@ DTATHR:     0
        JSR     SHUTDN          ;SHUT DOWN DATA CONTROL\r
        JEN     @DTATHR         ;DISMISS\r
 \r
+\r
 SHUTDN:        0\r
        CONSZ   DC,10000        ;DATA MISSED?\r
        SETOM   ERRFLG          ;YES. SET SWITCH\r
@@ -757,7 +764,6 @@ FNDBL2:     SETZM   ERRFLG          ;RESET DATA MISSED FLAG
        MOVEM   TEM,DCLOC1      ;FOR FORWARD DATA OPERATIONS\r
        CONSZ   DTC,20000       ;IS TAPE ALREADY MOVING/\r
        JRST    FNDBL4          ;YES\r
-\r
        TRO     TAC,323200      ;NO, SET READ BLK NOS., START DELAY\r
        TLNN    IOS,RVERSE      ;MOVE TAPE BACKWARDS?\r
        TRO     TAC,10000       ;YES\r
@@ -770,6 +776,7 @@ FNDBL3:     IFN     CPBIT, <
        MOVEM   IOS,DEVIOS(DEVDAT)      ;RESTORE IOS IN CORE\r
        POPJ    PDP,            ;AND EXIT\r
 \r
+\r
 ;HERE TO INITIATE READ OF A TAPE THAT IS MOVING ALREADY\r
 FNDBL4:        CONSZ   DTC,10000       ;GOING BACKWARDS?\r
        TRO     TAC,10000       ;YES\r
@@ -860,13 +867,13 @@ DTCIN2:   TLNE    IOS,DMPMOD      ;DUMP MODE?
        MOVEM   TAC,IBLK(DEVDAT)  ;STORE IN DDB\r
        TLZE    IOS,IOW         ;NO. IN IO WAIT?\r
        PUSHJ   PDP,SETIOD      ;YES. TAKE OUT OF WAIT\r
-       TLZE    IOS,SINGL+RWDIR+DMPCLS ;DIRECTORY OPERATION OR\r
-                                       ;CLOSING DUMP FILE?\r
+       TLZE    IOS,SINGL+RWDIR ;DIRECTORY OPERATION?\r
        JRST    THRUTP          ;YES. LEAVE\r
        TLNE    IOS,IO          ;WRITING?\r
        JRST    OUTHRU          ;YES\r
 \fEXTERN        JBTSTS,PJOBN\r
 \r
+\r
 ;HERE ON END OF AN INPUT BLOCK\r
        HRROI   TAC1,177        ;MASK OUT 1ST-BLK DATA\r
        TRNN    IOS,UDSD        ;UNLESS IN NON-STD\r
@@ -883,7 +890,6 @@ DTCIN2:     TLNE    IOS,DMPMOD      ;DUMP MODE?
        JRST    THRUIN          ;YES. DONT ADVANCE BUFFERS\r
        PUSHJ   PDP,ADVBFF      ;GET NEXT BUFFER\r
        JRST    THRUIN          ;EMPTY BUF NOT AVAILABLE\r
-\r
        SKIPE   BLK             ;EXIT  IF EOF OR BLOCK TOO LARGE\r
        CAILE   BLK,TOPBLK      ;THE ERROR WILL BE CAUGHT ON THE\r
        JRST    THRUIN          ;UUO LEVEL NEXT TIME AROUND\r
@@ -891,6 +897,7 @@ DTCIN2:     TLNE    IOS,DMPMOD      ;DUMP MODE?
        SKIPG   DTREQ           ;YES. ANYONE ELSE WANT IT?\r
        JRST    READBC          ;NO. READ NEXT BLOCK\r
 \r
+\r
 THRUIN:        HRRZ    TAC,OBLK(DEVDAT) ;TAPE ALSO BEING WRITTEN?\r
        JUMPN   TAC,THRUTP      ;YES. DONT CHANGE REVERSE BIT\r
        TLZ     IOS,RVERSE      ;NO. SET IOS BIT TO CORRECT DIRECTION\r
@@ -917,7 +924,6 @@ THRUTD:     PUSHJ   PDP,THRUTA      ;GIVE UP DATA CONTROL
        CONO    DTC,0           ;SHUT DOWN DATA CONTROL\r
        HLLZS   DTCINT\r
        POPJ    PDP,            ;AND LEAVE\r
-\r
 \f      EXTERN  CLOCK\r
 \r
 ;HERE ON END OF OUTPUT BLOCK\r
@@ -932,6 +938,7 @@ OUTHRU:     PUSHJ   PDP,ADVBFE      ;GET NEXT BUFFER
        JRST    FILBUF          ;NO. GO WRITE NEXT BLOCK\r
        JRST    THRUTP          ;YES. GIVE UP TAPE\r
 \r
+\r
 ;TURN TAPE AROUND AFTER END-ZONE INTERUPT\r
 TURN:  MOVEM   TAC,TEMPA               ;SAVE TAC\r
        MOVE    TAC,UNIT        ;UNIT AND CHANNEL\r
@@ -952,6 +959,7 @@ TIMINT:     CONSO   DTS,20          ;TIME FLAG INTERRUPT ON?
        HLLZS   DTCINT\r
        JEN     @DTCCHL         ;AND LEAVE\r
 \r
+\r
 ;HERE WITH AN INTERRUPT WHILE SEARCHING FOR BLOCK NUMBERS\r
 BLKNUM:        CONSZ   DTS,2           ;END ZONE INTERRUPT?\r
        JRST    TURN            ;YES. TURN AROUND\r
@@ -966,7 +974,7 @@ SPRIUS:     CONI    DTC,TEMPA       ;READ DTC STATUS BITS
 \r
 TIMREQ:        XWD     .+1,3   ;E CLOCK TICKS\r
        SOSL    DTREQ   ;ALLOW OTHER JOBS\r
-       SETOM   DTAVAL  ;TO GET DT CONTROL NOW\r
+\f      SETOM   DTAVAL  ;TO GET DT CONTROL NOW\r
        POPJ    PDP,\r
 \f;COME HERE ON END OF DUMP MODE BLOCK\r
 SVDMTH:        IFN CPBIT, <\r
@@ -1006,6 +1014,7 @@ SVDMIN:   HLRZ    BLK,BUF         ;NEXT BLOCK NUMBER
        HRRM    BLK,IBLK(DEVDAT) ;SAVE IN DDB\r
        JRST    CPOPJ1\r
 \r
+\r
        IFN CPBIT, <\r
 ;HERE WHEN THROUGH DUMP-MODE DIRECTLY TO USER\r
 USDMTH:        MOVEI   TAC1,IBLK(DEVDAT)\r
@@ -1039,6 +1048,7 @@ RDNXT:    CAIG    BLK,TOPBLK      ;BLOCK LEGAL?
        JRST    READBC          ;GO READ BLOCK NUMBER\r
        TROA    IOS,IOBKTL      ;LIGHT ERROR BIT\r
 \r
+\r
 ;EOF BEFORE ALL DATA IS IN - DUMP MODE\r
 DMPEOF:        TRO     IOS,IODEND      ;LIGHT EOF BIT\r
        JRST    DMPTH2          ;GIVE UP TAPE\r
@@ -1061,7 +1071,6 @@ ERRS1:    CONSO   DTS,4           ;IF ILLEGAL OP - DONT RETRY
        JRST    FNDBL2          ;NO. TRY AGAIN\r
 \r
 ;PERMANENT ERROR\r
-\r
 PERMER:        CONSZ   DTS,10  \r
        TRO     IOS,IODTER      ;PARITY\r
        CONSO   DTS,100\r
@@ -1106,4 +1115,3 @@ DIRCTN:   0
 BUF:   BLOCK   200\r
 DTAEND:        END\r
 \f\r
-\0\0\0\0
\ No newline at end of file
index f8973aa..78e2109 100644 (file)
@@ -13,7 +13,7 @@ DDT ASSEMBLY INSTRUCTIONS
 \r
 THE SOURCE OF DDT,13 WILL ASSEMBLE INTO SEVERAL DIFFERENT\r
 VERSIONS; THE ASSEMBY IS CONTROLED BY THE VALUE ASSIGNED\r
-TO THE SYMBOL "EDDT". THE SYMBOL "EDDT" IS DECODED AS FOLLOWSR:\r
+TO THE SYMBOL "EDDT". THE SYMBOL "EDDT" IS DECODED AS FOLLOWS:\r
 \r
 BIT 35 =0:     ASSEMBLE USER MODE DDT\r
        =1:     ASSEMBLE AN EXECUTIVE MODE DDT\r
@@ -58,6 +58,7 @@ EXAMPLES OF "EDDT" DEFINTIONS:
 \r
 \r
 \r
+\r
 EXAMPLE OF A MACRO ASSEMBLY COMMAND:\r
 \r
 .^C\r
@@ -69,7 +70,6 @@ EDDT=0
 ^Z\r
 \r
 END OF PASS 1                  ;THIS LINE TYPED BY MACRO\r
-\r
 ^Z\r
 \r
 NO ERRORS DETECTED             ;TYPED BY MACRO\r
@@ -180,12 +180,12 @@ PID=0             ;=0 IF SYMBOL TABLE POINTER IS IN JOBSYM
 \r
 ITF=2  ;INSTRUCTION TYPED IF ITF=1\r
 OUTF=4 ;OUTPUT IF OUTF=1\r
-CF1=400                ;OUTPUT 1 REGISTER AS CONSTANT\r
+CF1=400                        ;OUTPUT 1 REGISTER AS CONSTANT\r
 LF1=2000               ;OUTPUT 1 REGISTER AS FORCED SYMBOLIC OR CONSTANT\r
 Q2F=1          ;NUMBER TYPED AFTER ALT MODE \r
-R20F=10        ;TEMP FLAG USED IN SETUP\r
+R20F=10                ;TEMP FLAG USED IN SETUP\r
 SBF=20\r
-NAF=200                ;NEGATIVE ADDRESSES PERMISSABLE\r
+NAF=200                        ;NEGATIVE ADDRESSES PERMISSABLE\r
 POWF=4000              ;ARGUMENT FOR EXPONENT COMING\r
 \r
 ;DEFINE SYMBOL TABLE SYMBOL TYPES\r
@@ -204,6 +204,7 @@ DDT:        INTERN DDTEND   ;DECLARE END OF DDT AS INTERNAL, FOR
                        DDTX=DDT\r
                        ENTRY DDTX              ;NEEDED BY MONITOR>\r
 \r
+\r
 ;DEFINE $ SYMBOLS INTERNAL TO DDT\r
 OPDEF DDTINT [Z 0,]            ;ADDRESS FLAG FOR INTERNAL REGISTERS\r
 \r
@@ -219,7 +220,6 @@ XP $M,MSK
 XP $I,SAVPI\r
 \r
 SETUWP=36\r
-\r
 \f;DEFINE I/O DEVICE MNEMONICS\r
 \r
 IFN EDDT&1,<\r
@@ -239,7 +239,6 @@ XP UTC,210B11
 XP UTS,214B11\r
 XP DCSA,300B11\r
 XP DCSB,304B11\r
-\r
 XP DF,270B11\r
 XP MTC,220B11\r
 XP MTS,224B11\r
@@ -257,6 +256,7 @@ XP JOV,2554B11
 XP JEN,2545B11\r
 XP HALT,2542B11\r
 \r
+\r
 \fIFE EDDT&10,<\r
 DDT:   JSR SAVE\r
        PUSHJ P,REMOVB\r
@@ -277,6 +277,7 @@ DDT:        JSR SAVE
        SKIPL PRGM              ;IF PRGM .GE. 0, THEN RE-INIT\r
 DDT0:  MOVEM W,PRGM            ;PRGM=C(JOBSYM)\r
 >\r
+\r
 \fIFN EDDT&10,<\r
 DDT:   CALLI\r
        MOVEI T,SYMSET\r
@@ -296,7 +297,6 @@ DDT:        CALLI
        SETOM CRASHS            ;FLAG CRASH.SAV EXISTS ON DSK\r
        USETI 1,1\r
        INPUT 1,RSILST\r
-\r
        STATZ 1,740000\r
        HALT .-3\r
        SETOM RSAVE             ;FORCE READING OF "CURRENT" BLOCK\r
@@ -331,7 +331,7 @@ HOW TO COPY MONITOR SYMBOL TABLE INTO FILDDT
 6) AFTER CARRIAGE RETURN IS TYPED FILDDT IS DONE.\r
 7) SAVE FILDDT WITH A NEW NAME SO AS NOT TO CONFUSE IT WITH THE\r
    ORIGINAL FILDDT.SAV\r
-\f\r
+\r
 THE MONITOR CAN BE LOADED IN ANY OF THREE WAYS(IN ORDER OF PREFERENCE):\r
    1. UNDER TIME SHARING WITH REGULAR LOADER AND COMMON\r
    2. UNDER REGULAR 10/30 MONITOR WITH REGULAR 10/30 LOADER & COMMON\r
@@ -388,9 +388,7 @@ TCOPY:      PUSHJ P,FETCH           ;GET A WORD
        JRST NOLPT              ;GO TRY IT\r
 DDTSTP:        Z                       ;SAVE POSSIBLE SYMBOL POINTER\r
 >\r
-\f\r
-\r
-DD1:   PUSHJ P,CRF\r
+\fDD1:  PUSHJ P,CRF\r
 DD1.5: TLZ F,ROF               ;CLOSE ANY OPEN REGISTER\r
        MOVE T,[XWD SCHM,SCH]\r
        BLT T,ODF               ;LOAD ACS\r
@@ -433,6 +431,7 @@ L21:        MOVE R,T
        LDB W,BDISP(R+1)        ;GET 12 BIT ADDRESS FROM DISPATCH TABLE\r
        CAIGE W,MULT-DDT        ;FIRST EVAL ROUTINE\r
        JRST DDT(W)\r
+\r
 \f      MOVE T,SYL\r
        TLZN F,LTF\r
        JRST POWER\r
@@ -515,7 +514,6 @@ UND1:       MOVE R,ESTUT            ;UNDEFINED SYM ASSEMBLER
        MOVE T,SYM\r
        TLO T,GLOBAL\r
        MOVEM T,(R)\r
-\r
        HRRZ T,LLOCO\r
        TLNE F,MF\r
        TLO T,400000\r
@@ -595,7 +593,6 @@ NM1A1:      TRZE W2,1
        SOJG W1,NM1A1\r
 NM1B:  MOVSI W1,211000(T)\r
        FMPR    R,W1            ;COMPUTE VALUE OF NEW DIGIT\r
-\r
        FADRB   R,FH            ;ADD VALUE INTO FLOATING NO.\r
        MOVEM R,SYL\r
        AOJA T,LE1A\r
@@ -673,7 +670,6 @@ EVAL3:      MOVE T,(R)
        TLNN T,340000\r
        JRST EVAL1\r
        MOVE T,1(R)\r
-\r
 CPOPJ1:        AOS (P)         ;FOUND SYMBOL, SKIP\r
 CPOPJ: POPJ P,\r
 \r
@@ -707,8 +703,15 @@ TEXI3:     LSHC T-1,-43
 \fSIXBI1:       PUSHJ P,TEXIN    ; INPUT TEXT (SIXBIT)\r
 SIXBIN:        CAMN T,SYL\r
        JRST SIXBI2\r
-       ANDI T,77\r
-       TRC T,40\r
+       CAIL T,"A"+40                   ;IS CHAR BETWEEN LOWER CASE "A" AND\r
+       CAILE T,"Z"+40                  ; LOWER CASE "Z"?\r
+       SKIPA                           ;NO\r
+       TRC T,40                        ;YES, CONVERT TO UPPER CASE\r
+       CAIL T," "                      ;IS CHAR IN SIXBIT SET?\r
+       CAILE T,"_"\r
+       JRST ERR                        ;NO\r
+       ANDI T,77                       ;YES, MASK TO 6 BITS\r
+       TRC T,40                        ;CONVERT TO SIXBIT FORM\r
        ROT T,-6\r
        LSHC T-1,6\r
        SOJA W1,SIXBI1\r
@@ -761,7 +764,6 @@ DEF1:       MOVN R,[XWD 2,2]
        HRL T,ESTU\r
        HRRM T,ESTU\r
        SKIPGE ESTU\r
-\r
        BLT T,-1(R)\r
 DEF2:  MOVE T,DEFV\r
        MOVEM T,1(R)            ;PUT IN NEW VALUE\r
@@ -784,6 +786,7 @@ DEF3:       JUMPGE R,RET            ;PATCH IN VALUE FOR UNDEF SYM ENTRY
        ADD S,T\r
        HRRM S,T\r
        PUSHJ P,DEP\r
+        JFCL\r
        POP P,R\r
        PUSHJ P,REMUN\r
 DEF4:  ADD R,[XWD 2,2]         ;REMOVE THE NOW DEFINED SYMBOL\r
@@ -836,7 +839,6 @@ ACCCF:      MOVSI T,.-.             ;LEFT HALF OF A,,B
        ADD T,R\r
        ADDB T,WRD\r
        JRST SPACE+1\r
-\r
 \fACCF1:        MOVEM T,WRD             ;SET LEFT HALF OF A,,B\r
        JRST SPACE+1\r
 \r
@@ -856,7 +858,6 @@ RPRN:       TLNN F,QF               ;)
        POP P,F\r
        TLNE F,PTF\r
        TLNE F,SF\r
-\r
        JRST RPRN1\r
        MOVEM T,SYL\r
        TLO F,QF+SF\r
@@ -909,7 +910,9 @@ CARR:       PUSHJ P,DEPRA           ;CLOSE REGISTER
        CAIN T,15\r
        JRST .-2\r
        JRST DD1.5>\r
-\fOCON: TROA F,LF1+CF1          ;OPEN AS CONSTANT\r
+\r
+\f\r
+OCON:  TROA F,LF1+CF1          ;OPEN AS CONSTANT\r
 OSYM:  TRZ F,CF1               ;OPEN SYMBOLICALLY\r
        TROA F,LF1\r
 SUPTYO:        TLOA F,STF              ;SUPPRESS TYPEOUT\r
@@ -1081,7 +1084,6 @@ LEAV1:    XWD 0,LEAV
        HRRZ T,@BCOM3\r
        HRRM T,PROC0            ;SETUP ADDRESS OF BREAK\r
        HLRZ T,@BCOM3\r
-\r
        JUMPE T,BREAK1          ;TEST FOR REGISTER TO EXAMINE\r
        PUSHJ P,LCT             ;PRINT TAB\r
        HLRZ T,@BCOM3\r
@@ -1210,7 +1212,6 @@ REMOV1:   MOVE T,B1INS-B1ADR(S)
        JRST REMOV1\r
        IFN EDDT&1,<JRST TTYRET>\r
        IFE EDDT&1,<POPJ P,>\r
-\r
 ;IN EXEC MODE, SAVE UP TTY STATUS      ;IN USER MODE, DONE BY SAVE\r
 \f;ALL $B COMMANDS GET HERE IN FORM: <A>$<N>B\r
 \r
@@ -1279,7 +1280,6 @@ DEPRS:    MOVEM T,LWT             ;DEPOSIT REGISTER AND SAVE AS LWT
 IFE EDDT&10,<\r
 DEP:   IFE EDDT&1,<\r
        JSP TT1,CHKADR          ;LEGAL ADDRESS?\r
-\r
        JRST DEP4               ;YES BUT IN HI SEGMENT>\r
        TRNN R,777760\r
        JRST DEPAC              ;DEPOSIT IN AC\r
@@ -1340,6 +1340,7 @@ MONPEK:   HRRZ T,4                ;REMOVE COUNT
        CALLI T,33              ;DO PEEK UUO\r
        JRST CPOPJ1             ;RETURN VALUE IN AC T\r
 >\r
+\r
 IFE EDDT&1,<   ;DO ADDRESS CHECKS ONLY IN USER MODE\r
 CHKADR:        HRRZ TT,JOBREL          ;GET HIGHEST ADDRESS IN LOW SEGMENT\r
        CAIL TT,(R)             ;CHECK FOR WITHIN LOW SEGMENT\r
@@ -1349,6 +1350,7 @@ CHKADR:   HRRZ TT,JOBREL          ;GET HIGHEST ADDRESS IN LOW SEGMENT
        CAIGE TT,(R)            ;IS THE ADR TO BIG FOR HIGH SEGMENT?\r
        POPJ P,                 ;NO, YES- ILL. ADR.\r
        JRST 0(TT1)\r
+\r
 >      ;END OF IFE EDDT&1\r
 \r
 IFN EDDT&1,<CHKADR==CPOPJ>     ;NO ADDRESS CHECKS IN EXEC MODE\r
@@ -1371,7 +1373,6 @@ LOOK:     SKIPL R,PRGM    ;LOOK UP SYMBOL
        MOVEM T,TEM\r
 \r
 LOOK1: TDNE W2,(R)\r
-\r
        JRST LOOK3\r
        MOVE T,(R)\r
        TLNN T,PNAME    ;NAME\r
@@ -1467,7 +1468,6 @@ PAD:      ANDI T,-1
        JRST @AR                ;PADSO OR PAD1\r
 PADSO: JUMPE T,FP7B            ;PRINT A ZERO\r
        PUSHJ P,LOOK\r
-\r
 PADS1: POPJ P,0\r
        MOVE W2,1(W1)\r
        CAIGE T,100\r
@@ -1488,8 +1488,7 @@ PADS3A:   TRNE F,NAF
 PADS3B:        MOVNM T,TEM\r
        MOVEI T,"-"\r
        JRST PADS1A\r
-\r
-INOUT: TDC T,[XWD -1,400000]   ;IO INSTRUCTION OR NEG NUM\r
+\fINOUT:        TDC T,[XWD -1,400000]   ;IO INSTRUCTION OR NEG NUM\r
        TDCN T,[XWD -1,400000]\r
        JRST PADS3B             ;TYPE AS NEG NUM\r
        LDB R,[POINT 7,T,9]     ;PICK OUT IO DEVICE BITS\r
@@ -1535,7 +1534,6 @@ NWORD:    ADDI R,326000+40*T      ;JUMPN T,
 SEAR1: PUSHJ P,FETCH\r
        JRST SEAR2A\r
        TLNE F,LTF      ;CHECK FOR EFFECTIVE ADDRESS SEARCH\r
-\r
        JRST EFFEC0\r
        EQV T,WRD\r
        AND T,MSK\r
@@ -1600,7 +1598,6 @@ IFN EDDT&1,<HRRZ T,@SYMP  ;NO, GET 1ST ADR SYM TABLE>
 ZERO:  TLNN F,CCF\r
        JRST ERR\r
        PUSHJ P,SETUP\r
-\r
        HRRZ S,@SYMP    ;GET 1ST ADR OF SYMBOL TABLE\r
        HLRE W1,@SYMP   ;GET LENGTH OF SYM TABLE\r
        SUB W1,S        ;GET NEG OF LAST ADR\r
@@ -1633,17 +1630,20 @@ TOC:    HRRZ W1,ODF
        JRST TOCA               ;YES, DO NOTHING SPECIAL\r
        HRRM T,TOCS             ;NO, TYPE AS HALF WORD CONSTANT\r
        HLRZS T                 ;GET LEFT HALF\r
-       PUSHJ P,TOCA            ;TYPE LEFT HALF\r
+       PUSHJ P,TOC0            ;type left half\r
        MOVSI W1,(ASCII /,,/)\r
        PUSHJ P,TEXT2           ;TYPE ,,\r
 TOCS:  MOVEI T,.-.             ;GET RIGHT HALF BACK\r
-TOCA:  LSHC T,-43\r
+TOCA:  HRRZ W1,ODF             ;IS OUTPUT RADIX DECIMAL?\r
+       CAIN W1,12\r
+       JRST TOC4               ;YES,TYPE SIGNED WITH PERIOD\r
+TOC0:  LSHC T,-43\r
        LSH W1,-1               ;W1=T+1\r
-TOC1:  DIVI T,@ODF\r
+       DIVI T,@ODF\r
        HRLM W1,0(P)\r
-       JUMPE T,TOC2\r
-       PUSHJ P,TOCA\r
-TOC2:  HLRZ T,0(P)\r
+       SKIPE T\r
+       PUSHJ P,TOC0\r
+       HLRZ T,0(P)\r
        ADDI T,"0"\r
        JRST TOUT\r
 \r
@@ -1702,7 +1702,6 @@ FP1A:     MOVEI C,0
 \r
 FP3:   MULI A,400\r
        ASHC B,-243(A)\r
-       MOVE A,B\r
        SETZM TEM1              ;INIT 8 DIGIT COUNTER\r
        SKIPE A,B               ;DON'T TYPE A LEADING 0\r
        PUSHJ P,FP7             ;PRINT INTEGER PART OF 8 DIGITS\r
@@ -1959,6 +1958,9 @@ LOADE:    XWD LOADB-.,LOADB
 >      ;END OF IFN EDDT$1&<EDDT>B36\r
        ;FOR PAPER TAPE IO\r
 \r
+\r
+\r
+\r
 \fSAVE: 0               ;SAVE THE ACS AND PI SYSTEM\r
        SKIPN SARS\r
        JRST SAV1\r
@@ -1978,7 +1980,6 @@ SAV5:
 ;      CALLIU T,SETUWP                 ;REQUEST TO CLEAR UWP\r
 ;      HRROS SAVUWP                    ;FAILED, UWP (BIT 0) STILL 1\r
 ;      SKIPN SARS                      ;USER'S SATE SAVED ALREADY?\r
-\r
 ;      HRRM T,SAVUWP>                  ;NO, SAVE STATE OF UWP\r
 \r
        SETOM,SARS                      ;FLAG PROTECTING SAVED REGISTERS\r
@@ -2081,7 +2082,6 @@ TEXIN:    PUSHJ P,TIN     ;INPUT SUBROUTINE FOR TEXT MODES
 \fIFE EDDT&1,<  ;USER MODE TELETYPE I/O\r
   IFN EDDT&4,< ;ASSEMBLE WITH OLD DDT MODE IO\r
 \r
-\r
 TIN:   MOVE T,POUTBF           ;GET NEXT CHARACTER ROUTINE\r
        CAME T,[POINT 7,INBFF]\r
        PUSHJ P,FINOUT\r
@@ -2132,7 +2132,9 @@ TTYRET:   MOVE T,[POINT 7,INBFF]
 \r
 TEXIN=TIN      ;USE NORMAL INPUT FOR TEXT WHEN IN USER MODE\r
 >\r
-\f  IFE EDDT&4,< ;ASSEMBLE WITH TTCALL TELETYPE IO\r
+\f\r
+\r
+  IFE EDDT&4,< ;ASSEMBLE WITH TTCALL TELETYPE IO\r
 \r
 OPDEF TTCALL [51B8]\r
 \r
@@ -2149,7 +2151,6 @@ IFN EDDT&10,<     PUSHJ P,INCHR >
        JRST WRONG              ;TYPE XXX FOR A RUBOUT          \r
        POPJ P,\r
 \r
-\r
 TOUT:\r
 \r
 IFN EDDT&10,<  SKIPE COMAND            ;IS THERE A COMMAND FILE?\r
@@ -2207,6 +2208,7 @@ PUTOK:
 \r
 >      ;END OF IFN EDDT&10\r
 >      ;END OF IFE EDDT&1\r
+\r
 \fBDISP:        POINT 12,DISP(R),11\r
        POINT 12,DISP(R),23\r
        POINT 12,DISP(R),35\r
@@ -2226,7 +2228,6 @@ D ERR,CARR,ERR
 D ERR,ERR,ERR\r
 D PUNCH,ERR,ERR\r
 D ERR,ERR,ERR\r
-\r
 D ERR,ERR,ERR\r
 D CONTROL,ERR,ERR\r
 D ERR,ERR,SPACE\r
@@ -2254,7 +2255,8 @@ D OSYM,VARRW,PSYM
 \r
 ;THIS TABLE DOES NOT HAVE ENTRIES FOR CHARS .GE. 140; THESE\r
 ; ARE DETECTED AS ERRORS NEAR L21:\r
-\fBITO: MOVEI   R,BITT  ;BYTE OUTPUT SUBROUTINE\r
+\f\r
+BITO:  MOVEI   R,BITT  ;BYTE OUTPUT SUBROUTINE\r
        HRRZI   AR,TOC\r
        TRZN    F,Q2F\r
        JRST    ERR\r
@@ -2385,7 +2387,7 @@ SVBT2:    0
 ;\r
 ;          THE TABLE IS ALSO USED GOING FROM SYMBOLIC TO BINARY BUT A\r
 ;      TREE SEARCH METHOD IS USED.\r
-\f\f\f\f\fREPEAT 0,<\r
+\fREPEAT 0,<\r
 \r
 DEFINE REDEF (XX)<\r
 DEFINE INFO (AA,BB)<\r
@@ -2506,8 +2508,6 @@ BYT9 <U703:02^CLOS,E/RELEA,S/MTAP,E/UGET,F/>
 REPEAT BINC,<BINRY=BINRY*400+BINRY*400>\r
 IFN BINRY,<EXP BINRY>\r
 >      ;END OF REPEAT 0\r
-\r
-\r
 \fIFN EDDT&10,<                 ;FILDDT STUFF\r
 CRASH: SIXBIT .CRASH.          ;CANONICAL NAME FOR CRASH\r
        SIXBIT .SAV.\r
@@ -2534,7 +2534,6 @@ RSAVE:    IOWD 1000,RSIDT         ;INDEX OF THE CUFRRENT BLOCK, 0,1,...
 CURLST:        IOWD 4000,CURENT\r
        Z\r
 >\r
-\r
 \fSUBTTL        OP DECODER\r
 \r
 DEFINE BYT9 (A) <IRP A,<\r
@@ -2716,7 +2715,6 @@ OPEVAL:   MOVEI T,0               ;EVALUATE FOR AN OP CODE
 OPTYPE:        TRO F,OUTF              ;TYPE AN OPCODE SYMBOLICALLY\r
        LSH T,-33\r
        MOVEM T,INST            ;GET OPCODE INTO RIGHT 9 BITS\r
-\r
        MOVE T,[XWD 440700,TXT]\r
        MOVEM T,CHP             ;FOR OPEVAL,SETUP POINTER TO INPUT TEXT\r
        TRZ F,ITF               ;CLEAR INSTRUCTION TYPED FLAG\r
@@ -2810,4 +2808,4 @@ DDTEND:           ;ONLY STARTING ADDRESS FOR FILDDT
                ;BUT STILL WANTS TO BE STARTED AT ITS OWN STARTING ADDRESS\r
                ;USER DDT IS LOADED LAST. - T.H.\r
 IFN EDDT&10,<END DDT>\r
-       END                                                                                                                                                                                                                                                                                                                                                                                                                    \r
+       END\r
index 0338ed0..87d85da 100644 (file)
@@ -396,7 +396,7 @@ PRTDIG:     IDIVI TAC,12    ;DIVIDE BY 10
        HRLM TAC1,(PDP)         ;RT ON PD LIST\r
        JUMPE TAC,.+2           ;FINISHED?\r
        PUSHJ PDP,PRTDIG        ;NO, CALL S OR F\r
-       HRLZ TAC,(PDP)          ;YES, GET LAST NUMBER\r
+       HLRZ TAC,(PDP)          ;YES, GET LAST NUMBER\r
 PRTNUM:        ADDI TAC,"0"            ;CONVERT TO ASCIZ\r
 IFN FTTTYSER,<\r
 EXTERN OUTCHS\r
index 89b786d..ff9c5bf 100644 (file)
@@ -41,7 +41,7 @@ LINKSR:       0                       ;CALLED WITH JSR FROM SYSINI
        MOVSI T,JOBPFI          ;SET LH OF XJBPFI WITH JOBPFI\r
        MOVEM T,XJBPFI          ;LOADER DORES NOT HANDLE GLOBALS IN LH\r
 IFN FT2REL,<\r
-       JSP TSTREG              ;GO TEST IF TWO RELOC REGISTERS EXIST\r
+       JSR TSTREG              ;GO TEST IF TWO RELOC REGISTERS EXIST\r
 >\r
                                ;HIGHEST LOC. IN JOB AREA PROTECTED FROM IO\r
 \f;MOVE SYMBOL TABLE UP IN MEMORY\r
@@ -72,7 +72,7 @@ IFN FT2REL,<
        HRL TAC,TAC1            ;XWD LENGTH,LENGTH+FIRST ADDRESS        \r
        SUBI DAT,1(TAC)         ;NEW LAST+1-OLD LAST+1\r
        HRRM DAT,STO1           ;DIST, TO MOVE\r
-       MOVE TAC1,UUO           ;L-N,FIRST ADD.\r
+       MOVE TAC1,UUO           ;-N,FIRST ADD.\r
        ADDI TAC1,1(DAT)        ;FROM NEW S.T. POINTER\r
        MOVEM TAC1,DDTSYM       ;STORE IN LOWER CORE\r
        MOVE TAC1,-1(TAC)\r
@@ -94,17 +94,16 @@ INTLOP:     HLRZ DAT,INTTAB(TAC)    ;GET NEXT PI NUMBER
        ANDI DAT,7              ;MASIC OUT NUMBER OF DDB'S\r
        LSH DAT,1               ;SHIFT LEFT ONE SO MATCH PI LOCATIONS\r
        JUMPE DAT,NOPICH        ;DOES THIS DEVICE HAVE A PI CHANNEL (PTY)?\r
-       MOVE DAT,ITEM           ;YES, PICK UP JSR CH'N FROM LOWER CORE\r
+       MOVE ITEM,40(DAT)       ;YES, PICK UP JSR CH'N FROM LOWER CORE\r
 INTLP1:        MOVE DAT,ITEM           ;SAVE IT IN DAT (EITHER A JRST DEV'NT OR\r
                                ; JEN @CH'N\r
        MOVE ITEM,1(DAT)        ;PICK UP INSTR. FOLLOWING INTERRUPT CONSO\r
-\r
-       TLNN ITEM,00740         ;IS IT A JEN?\r
+       TLNN ITEM,000740        ;IS IT A JEN?\r
        JRST INTLP1             ;NO, KEEP LOOKING\r
        MOVE TAC1,INTTAB(TAC)   ;YES, LAST DEVICE SO FAR, GET DEV'NT\r
        HRLI TAC1,(JRST)        ;MAKE JRST INSTR.\r
        MOVEM TAC1,1(DAT)       ;CHANGE JEN @CH'N TO JRST DEV'NT\r
-       MOVEM ITEM,1(TAC)       ;MAKE DEV'NT+1 BE JEN @CH'N\r
+       MOVEM ITEM,1(TAC1)      ;MAKE DEV'NT+1 BE JEN @CH'N\r
 NOPICH:        AOBJN TAC,.+1           ;PICKUP EVERY OTHER WORD?\r
        AOBJN TAC,INTLOP        ;ANY MOVE INTERRUPT SERVICE ROUTINES?\r
 ALRCHN:\r
@@ -150,7 +149,6 @@ UUOTRP:     JSR UUO0                ;TO UUO HANDLER
        0               ;LOC 60/61 TRAPPED TO FOR UNIMPLEMENTED OP CODES ON PDP-10\r
                        ;OP CODE 100 IS USED TO DISMISS USER MODE INTERRUPTS(SEE TRPSET UUO)\r
        JSR UUO2        ;GO SEE IF OP CODE 100 OR SOME OTHER ONE\r
-\r
 \fIFN FT2REL,<\r
 ;SET LOC TWOREG TO -1 IF MACHINE HAS TWO RELOC REG,0 IF ONLY ONE RELOC REG\r
        EXTERN TWOREG,SEGN,SEGPTR,AND2RG,JOBN\r
@@ -181,11 +179,10 @@ TSTAPR:   0                       ;PLACE TO SIDE JSR PC
        CONO APR,ILM            ;CLEAR APR FLAGS AGAIN\r
        MOVEI TAC,AND2RG        ;=0 IF SOFTWARE CANNOT HANDLE 2 SEG(NULSEG LOADED)\r
        ANDM TAC,TWOREG         ;=-1 IF IT CAN(SEGCON LOADED)\r
-                               ;TWOSEG SET TO AND OF SOFTWARE AND HARDWARE CAPABILITES\r
+                               ;TWOSEG SET TO AND OF SOFTWARE AND HARDWARE CAPABILITIES\r
        MOVNI TAC,SEGN          ;SET LH OF POINTER TO FIRST SEG IN JBTXX TABLES\r
        HRLI TAC,JOBN           ;SET RH OF POINTER TO FIRST HIGH SEG\r
                                ;THIS MUST BE DONE HERE BECAUSE SEGPTR APPEARS IN FIRST\r
-\r
                                ; WHICH BUILD FORBITS FROM HAVING EXTERNALS\r
        MOVSM TAC,SEGPTR        ;POINTER USED FOR AOBJN LOOPS\r
        CONO PI,10000           ;CLEAR PI SYSTEM\r
@@ -243,6 +240,7 @@ PATSYM:     JSR MOVSTP              ;MOVE DDT SYMBOL TABLE POINTER SO EXEC DDT WILL
 \f\r
 ;ONCE ONLY CODE - OPERATOR SETUP DIALOGUE\r
 \r
+\r
 IFN    FTRC10, <\r
 ENTRY  RCXWNZ                  ;THIS SYMBOL IS SOLELY TO PERMIT THE SYSTEM\r
 RCXWNZ:                                ; BUILDER TO RETRIEVE THE CORRECT BINARY FILE.\r
@@ -258,7 +256,6 @@ INTERN FTTTYSER
 IFE FTTTYSER,<\r
        DEFINE SETTYO <MOVE DAT,LINEP>\r
        DEFINE TYPE <IDBP CHREC,DAT>\r
-\r
        DEFINE NEXTC <ILDB CHREC,TAC>>\r
 IFN FTTTYSER,<\r
        DEFINE SETTYO <PUSHJ PDP,OTSET>\r
@@ -361,6 +358,7 @@ TIMLOP:     SETZM TIME
        IMULI   TAC,JIFMIN      ;JIFFIES SINCE MIDNIGHT\r
        MOVEM   TAC,TIME        ;TIME=JIFFIES SINCE MIDNIGHT\r
 \r
+\r
        JUMPGE  ITEM,QUICK      ;SKIP NEXT PART OF DIALOGUE UNLESS THE LAST ITEM\r
                                ; TYPED IN (NAMELY TIME OF DAT) WAS TERMINATED BY\r
                                ; AN "ALT MODE". (ACCUMULATOR "ITEM" IS SET UP\r
@@ -479,9 +477,10 @@ ONCE2:     MOVEI TAC,SYSDM
 \r
 EXTERNAL CNTDB\r
 \r
-ONCE3: PUSHJ PDP,SYSSIZ ;SAVE CURRENT VALUE\r
-       JSP TAC,CNTDB    ;UPDATE SYSSIZ BY SPACE USED\r
+ONCE3: PUSH PDP,SYSSIZ ;SAVE CURRENT VALUE\r
+       JSP TAC,CNTDB   ;UPDATE SYSSIZ BY SPACE USED\r
                                ; FOR DEVICE DATA BLOCKS FOR DSK,DTA,MTA,TTY,PTY)\r
+\r
 \f;PRINT OCTAL SIZE OF MONITOR\r
 \r
        MOVEI TAC,EXECIS\r
@@ -517,19 +516,23 @@ IFN FTTTYSER,<PUSHJ PDP,SKIPS>
                                ; IF NOT PATCHED, LEAVE COMMON'S VALUE\r
 ONCE5A:\r
 \r
+\r
 INTERNAL       FTDISK\r
 IFN FTDISK,<\r
        PUSHJ PDP,REF           ;GO THROUGH THE REFRESH DIALOG.\r
 >\r
 \r
+\r
 QUICK:                 ;THIS IS THE SHORT-CUT EXIT TO BY-PASS MOST OF THE DIALOGUE\r
 \r
+\r
 INTERNAL       FTCHECK\r
 \r
 IFN FTCHECK,<\r
        PUSHJ PDP,OK    ;CHECKSUM MONITOR AND SAVE THE ANSWER.\r
 >\r
 \r
+\r
        JRST @ONCE              ;***EXIT FROM THE "ONCE-ONLY CODE"***\r
 \fIFN FTDISK,<\r
 EXTERNAL OCTIN,MFDBLK,SATXWD,NUMBLK,SYSPP,REFLAG\r
@@ -550,7 +553,6 @@ REF2:                       ;YES
        MOVEI TAC,REF4M         ;TYPE LOGICAL DISK ADDRESS OF MFD RETR, INFO\r
        PUSHJ PDP,ICONM\r
        PUSHJ PDP,OPOUT\r
-\r
        PUSHJ PDP,GETLIN\r
        JRST REF2\r
        IFN FTTTYSER,<PUSHJ PDP,SKIPS>\r
@@ -592,10 +594,12 @@ REF3A:
        PUSHJ PDP,REFRES        ;REFRESH.\r
        JRST REF5               ;ERROR\r
 \r
+\r
        MOVEI TAC,REF6M         ;REFRESHING SUCCESSFULLY COMPLETED !\r
        PUSHJ PDP,ICONM\r
        PUSHJ PDP,OPOUT         ;TYPE "REFRESHED !"\r
 \r
+\r
        MOVE    TAC,SYSPP\r
        MOVEM   TAC,REFLAG      ;TO PERMIT AUTOMATIC LOG-IN UNDER\r
                                ; PROJ-PROG NUMBER [1,1] EVEN\r
@@ -603,7 +607,6 @@ REF3A:
        PUSHJ   PDP,ICONM       ; ON THE NEWLY REFRESHED DISK.\r
        PUSHJ   PDP,OPOUT\r
        POPJ PDP,\r
-\r
 \fIFE   FTRC10, <\r
 REF4:  POP PDP,TAC1\r
        MOVEI TAC,REF5M\r
@@ -624,8 +627,9 @@ REF5:       PUSH PDP,TAC            ;ERROR. ON COMMING HERE, TAC HAS LOGICAL BLOCK
 \r
 \r
 REF1M: ASCIZ /DO YOU WANT TO REFRESH THE DISK ? (Y OR CR)\r
+\r
 /\r
-REF2M: ASCIZ /ARE YOU SURE(Y OR CR)?\r
+REF2M: ASCIZ /ARE YOU SURE(Y OR CR)? \r
 /\r
 REF3M: ASCIZ /DO YOU WANT TO CHANGE THE LOCATION OF THE MFD(Y OR CR)?\r
 /\r
@@ -692,7 +696,7 @@ IFE FTTTYSER,<
        ADD TAC,[XWD 070000,0]  ;NO, BACK UP BYTE POINTER\r
        TLNE TAC,400000         ;FINISHED THIS WORD YET?\r
        ADD TAC,[XWD 347777,-1] ;YES, BACK UP ADDRESS>\r
-       MOVEI CHREC,134\r
+       MOVEI CHREC,134         ;OUTPUT BACK SLASH\r
        PUSHJ PDP,TYO\r
        SOJA ITEM,GET1\r
 \r
@@ -813,7 +817,7 @@ IOCONF:     ASCIZ /
 IO CONFIGURATION\r
 /\r
 OPRM:  ASCIZ /\r
-TYPE NAME OF OPR CONSOLE.\r
+TYPE NAME OF OPR CONSOLE\r
 /\r
 \fSYSM: ASCIZ /\r
 DO YOU WANT SYSMAK (TYPE Y IF YES, CR IF NO)?\r
@@ -830,6 +834,7 @@ DESMES: ASCIZ /TYPE DESIRED MAX,(DEC), CR IF OK AS IS
 /\r
 CRLFMS:        ASCIZ /\r
 /\r
+\r
 \f;INITIALIZE SAT SEARCH ENTRIES\r
 \r
 ;THIS "DFWUNS" ROUTINE IS CALLED BY MANDATORY ONCE ONLY CODE(LINKSR)\r
@@ -849,15 +854,15 @@ EXTERNAL WLBIT,NUMBIT,DSKCNT
 DFWUNS:\r
 IFN    FTRC10, <\r
        PUSHJ   PDP,WRITLK      ;FORCE THE WRITE-LOCK SWITCH SETTINGS  TO BE ZERO.\r
-\r
        PUSHJ   PDP,RDSTAT      ;READ VITAL DISK STATISTICS BLOCK, STORE PARAMETERS\r
        PUSHJ   PDP,CAPCTY      ;DETERMINE CURRENT SYSTEM CAPACITY (HOW MANY DISKS).\r
        CAMN    TAC,LBHIGH      ;HAS CAPACITY CHANGED SINCE LAST REFRESH ?\r
        JRST    DFWNZ1          ;NO, EVERYTHING APPPEARS TO BE OKAY.\r
-       SETTYO                  ;YES, PRINT WARNING MESSAGE...\r
+       SETTYO                          ;YES, PRINT WARNING MESSAGE...\r
        PUSHJ   PDP,INLMES\r
        ASCIZ   /DISK CAPACITY HAS CHANGED SINCE LAST REFRESHING.\r
 EITHER RESTORE PREVIOUS DISK CONFIGURATION OR REFRESH.\r
+\r
 /\r
        PUSHJ   PDP,OPOUT       ;START TTY\r
        PUSHJ   PDP,REF         ;GO THROUGH THE REFRESH DIALOGUE\r
@@ -907,19 +912,21 @@ IFE       FTRC10, <
        CAIL DAT,NUMBIT         ;BLOCK FULL?\r
        JRST SETS8\r
        PUSHJ PDP,DFGETF        ;NO. GET A FREE BLOCK\r
-\r
        PUSHJ PDP,SETS7         ;WRITE\r
        PUSHJ PDP,SETFRE        ;FREE THE BLOCK\r
 >\r
 \r
+\r
 SETS5B:        MOVEI TAC1,SENTSZ       ;PREPARE TO BUMP SATPTR\r
        POP PDP,TAC\r
        AOBJN TAC,SETS1         ;DO ALL SAT BLOCKS\r
 \r
+\r
 IFE    FTRC10, <\r
        JRST SAT05              ;RETURN\r
 >\r
 \r
+\r
 IFN    FTRC10, <\r
        HRRZ    TAC,SATPTR\r
 SETS5X:        CAIL    TAC,SATTOP\r
@@ -932,6 +939,7 @@ SETS5X:     CAIL    TAC,SATTOP
 \fSETS6:        POP PDP,TAC             ;ERROR, TRY AGAIN\r
        JRST SETS2\r
 \r
+\r
 IFE    FTRC10, <\r
 \r
 ;WRITE-LOCK DETERMINATION ON THE OLD PDP-6 (DATA PRODUCTS) DISK --\r
@@ -960,6 +968,7 @@ SETS8:      MOVEI TAC,SETS9         ;BLOCK FULL, READ FIRST ONE
        HRRM TAC,DSKBUF(DEVDAT) \r
        JRST SETS5B\r
 \r
+\r
 SETS9: BLOCK 204\r
 \r
 >              ;CLOSE THE IFE FTRC10\r
@@ -1089,7 +1098,6 @@ REFR2:    MOVE TAC1,[XWD -200,NULBLK]     ;SAT BLOCKS
        AOS TAC                 ;SAT RETREIVAL INFORMATION\r
        ADD TAC,MFDBLK\r
        SETZB IOS,DEVIOS(DEVDAT)\r
-\r
        MOVE TAC1,[XWD -200,SATRET]\r
        MOVEM TAC1,DSKBUF(DEVDAT)\r
        PUSHJ PDP,MQOUT\r
@@ -1145,6 +1153,8 @@ NULBLK:   ZEROES 5400/44-1                ;NULL SAT BLOCK
        XWD 001777,-1\r
        ONES 200+NULBLK-.\r
 \r
+\r
+\r
 >              ;END OF THE REFRESHER FOR THE OLD PDP-6 DISK.\r
 \f\r
 IFN    FTRC10, <\r
@@ -1221,6 +1231,7 @@ RESETB=1B32       ;RESET THE DONE FLAG (CORRESPONDING CONI BIT) TO CLEAR INTERRUPT
 ;BITS 26 - 27  DISK SELECTED BY BITS 18-19 OF LAST CONO\r
 ;BITS 28 - 35  CURRENT SECTOR POSITION OF SELECTED DISK (FOR LATENCY OPTIMIZATION!)\r
 \r
+\r
 ;DATAO FORMAT FOR THE MODEL RC-10 DISK SYNCHRONIZER --\r
 \r
 ;BITS 00 - 17  DISK ADDRESS ELECTION\r
@@ -1230,7 +1241,7 @@ RESETB=1B32       ;RESET THE DONE FLAG (CORRESPONDING CONI BIT) TO CLEAR INTERRUPT
 ;BITS 18 - 23  INITIAL PARITY REGISTER SETTING 9ZERO EXCEPT FOR DIAGNOSTIC PROGRAMS)\r
 DDSKPE=1B24    ;DISABLE DISK PARITY ERROR STOP\r
 DCHNPE=1B25    ;DISABLE CHANNEL DATA PARITY ERROR STOP\r
-WRBIT=1B16     ;SET MEANS WRITE ON DISK, RESET MEANS READ FROM DISK\r
+WRBIT=1B26     ;SET MEANS WRITE ON DISK, RESET MEANS READ FROM DISK\r
 ;BITS 27 - 34  ;CORRESPONDING BITS OF INITIAL CHANNEL CONTROL ADDRESS, HENCE,\r
                ; THIS ADDRESS MUST BE EVEN AND IN THE FIRST 1K OF CORE MEMORY!\r
 ;BIT 35                ;WRITE EVEN PARITY DATA INTO MEMORY (DIAGNOSTICS ONLY!)\r
@@ -1251,7 +1262,7 @@ IFN FTSWAP,<
        CAIG    TAC1,STATBK     ;SWAPPING AREA MUST NOT OVERLAY THE\r
        JRST    RFRSHE          ; VITAL STATISTICS BLOCK.\r
 >\r
-       IDIVI   TAC1,NUMBLK\r
+       IDIVI   TAC,NUMBLK\r
        MOVN    TAC1,TAC        ;SET SATXWD TO SHOW ONLY THE NUMBER OF\r
        HRLM    TAC1,SATXWD     ; SAT BLOCKS ACTUALLY IN EXISTENCE.\r
        HRRZ    TAC1,MFDBLK\r
@@ -1270,13 +1281,13 @@ RFRSHE: MOVEI   TAC,RFSHME
        POP     PDP,TAC         ; DIALOGUE TO AK THE PARAMETER SPECIFICATION\r
        JRST    REF6            ; QUESTIONS AGAIN.\r
 \r
-RFSHME:        ASCIZ   /PARAMETER SPECIFICATION ERROR. TRY AGAIN.\r
+RFSHME:        ASCIZ   /PARAMETER SPECIFICATION ERROR.  TRY AGAIN.\r
+\r
 /\r
-\f\r
 \r
 RFRSH1:        PUSHJ   PDP,WRSTAT      ;WRITE OUT THE VITAL STATISTICS BLOCK ON THE DISK.\r
        JRST    REFERR          ; AN ERROR ON THIS WRITE IS BAD TROUBLE !!\r
-\r
+\f\r
 ;NEXT WRITE THE MFD (MASTER FILE DIRECTORY) ONTO THE DISK\r
 \r
        PUSHJ   PDP,WNZCLR      ;CLEAR THE OUTPUT BUFFER\r
@@ -1295,7 +1306,6 @@ RFRSH1:   PUSHJ   PDP,WRSTAT      ;WRITE OUT THE VITAL STATISTICS BLOCK ON THE DISK.
        HRRZS   TAC\r
        ADDI    TAC,1           ;COMPUTE LOGICAL BLOCK NUMBER OF THE MFD.\r
        PUSHJ   PDP,WNZWR       ;WRITE THE MFD OUT ONTO THE DISK.\r
-       \r
        JRST    REFERR          ;ERROR\r
 \r
        MOVE    TAC,[XWD -200,WNZBUF]\r
@@ -1381,8 +1391,7 @@ REFST5:   PUSH    PDP,TAC
 REFST6:        POP     PDP,TAC         ;LOOP THROUGH THE WHOLE SET OF SPECIAL BLOCKS\r
        AOBJN   TAC,REFST5      ; WHICH MUST BE MARKED UNAVAILABLE.\r
 \r
-REFST7:        MOVE    TAC,[XWD -200,WNZBUF]\r
-\r
+REFST7:        MOVE    TAC,[XWD -200,WNZBUF]                                                   \r
        PUSHJ   PDP,CHKSUM      ;COMPUTE CHECKSUM\r
        MOVE    TAC,SATPTR\r
        HRRZM   TAC1,1(TAC)     ;STORE IT TEMPORARILY IN THE SATENT TABLE.\r
@@ -1446,6 +1455,7 @@ REFSRL:   HRRZ    AC1,TAC1        ;GET LOGICAL BLOCK NUMBER OF SAT BLOCK.
 \f\r
 ;ROUTINE TO WRITE THE FIXED BLOCK OF VITAL STATISTICS ONTO THE DISK.\r
 \r
+\r
 WRSTAT:        PUSHJ   PDP,WNZCLR              ;CLEAR THE OUTPUT BUFFER\r
        MOVE    TAC,[XWD -WRSTSZ,0]\r
 WRSTA1:        MOVE    TAC1,@WRSTA9(TAC)       ;STORE KEY QUANTITIES IN THE OUTPUT BUFFER\r
@@ -1486,11 +1496,13 @@ IFE FTSWAP,<
        XWD     0,LOWSWP        ;LOWSWP DOES DOUBLE DUMMY DUTY IN\r
                                ; NON-SWAPPING SYSTEM\r
 >\r
+\r
        WRSTSZ=.-WRSTA9\r
 \f\r
 ;ROUTINE TO READ IN THE FIXED BLOCK OF "VITAL STATISTICS" FROM\r
 ;  THE DISK AND DISTRUBUTE THEM TO THE APPROPRIATE CORE LOCATIONS.\r
 \r
+\r
 RDSTAT:        MOVEI   TAC,STATBK\r
        PUSHJ   PDP,WNZRD       ;READ IN THE VITAL STATISTICS BLOCK.\r
        JRST    RDSTA2          ;ERROR\r
@@ -1514,6 +1526,7 @@ RDSTA2:   MOVEI   TAC,RDSTM1
        JRST    RDSTAT          ;NOW TRY AGAIN.\r
 \r
 RDSTM1:        ASCIZ   /VITAL DISK STATISTICS LOST, SUGGEST REFRESHING!\r
+\r
 /\r
 \f\r
 ;ROUTINE TO DETERMINE THE CURRENT SYSTEM'S DISK CAPACITY. I.E., THE NUMBER OF\r
@@ -1528,7 +1541,7 @@ CAPCTY:   MOVEI   TAC,NUMSAT
        MOVEM   TAC,LBHIGH      ;TEMPORARILY CHANGE THIS VALYUE SO THAT THE VALIDITY\r
                                ; CHECK IN "DSKINT" WILL NOT FAIL SPURIOUSLY.\r
 \r
-       MOVEI   TAC,3\r
+       MOVEI   TAC,0\r
 CPCT1: PUSH    PDP,TAC\r
        PUSHJ   PDP,WNZRD       ;ATTEMPT TO READ FIRST BLOK OF EACH SUCCESSIVE DISK.,\r
        JRST    CPCT3           ;ERROR\r
@@ -1554,6 +1567,7 @@ CPCT3:    POP     PDP,TAC
        POP     PDP,LBHIGH\r
        JRST    CAPCTY          ;TRY AGAIN\r
 CPCTM1:        ASCIZ   /DISK READ ERROR DURING CAPACITY SEARCH INITIALIZATION\r
+\r
 /\r
 \f\r
 ;ROUTINE TO ASSURE THAT THE STATUS OF THE WRITE-LOCK SWITCHES ON THE\r
@@ -1574,7 +1588,6 @@ WRITLK:   CONI    DSK,TAC
        MOVE    TAC,[252525252525]\r
        MOVEM   TAC,WNZBUF\r
        MOVE    TAC,[XWD WNZBUF,WNZBUF+1]\r
-\r
        BLT     TAC,WNZBUF+177\r
        MOVEI   TAC,0\r
        PUSHJ   PDP,WNZWR       ;WRITE PATTERN IN BLOCK 0.\r
@@ -1593,10 +1606,12 @@ WRLK9:  PUSHJ   PDP,ICONM       ;PRINT ERROR MESSAGE
        JRST    WRITLK          ;GO TRY AGAIN\r
 \r
 WRLKM1:        ASCIZ   /DISK BLOCK 0 WRITE ERROR DURING WRITE-LOCK CHECK.\r
+\r
 /\r
 WRLKM2:        ASCIZ   /"MAINTENANCE SEGMENT" SWITCH MUST BE OFF. AND\r
 DISK WRITE PROTECTION SWITCHES MUST BE SET TO 0000 AND "LESS THAN",\r
 FIX THEM ! !\r
+\r
 /\r
 \f\r
 ;DISK READING ROUTINE FOR USE ONLY DURING ONCE-ONLY CODE.\r
@@ -1707,10 +1722,10 @@ MDTMOT: PUSH    PDP,TAC
        POPJ    PDP,            ;SUBROUTINE EXIT............\r
 \r
 \r
+\r
 ;ERROR EXIT FROM "REFRESH" WHEN A BAD WRITE ON THE DISK OCCURS DURING REFREHSING.\r
 \r
 REFER1:        POP     PDP,TAC         ;CORRECT PDP IF EXTRA PUSH HAD OCCURRED.\r
-\r
 REFERR:        MOVE    TAC,LBSAVE      ;GET BLOCK NUMBER FOR THE ERROR MESSAGE AT REF4.\r
        POPJ    PDP,            ;THIS NO-SKIP RETURN RE-ENTERS THE REFRESH DIALOGUE.\r
 \r
index 16c0de7..d23cdcb 100644 (file)
@@ -8,6 +8,7 @@ SUBTTL  CLKCSW R,KRASIN/AF/TH/RCC  TS  02 JUNE 69  V421
 XP VSCHED,421\r
                ;PUT VERSION NUMBER IN GLOB LISTING AND LOADER STORAGE MAP\r
 \r
+\r
 INTERNAL       FTRC10  ;THIS SOURCE FILE MAY BE ASSEMBLED TO USE EITHER THE\r
                ; NEW PDP-10 DISK (MODEL RC-10) OR THE OLD PDP-6 DISK (DATA\r
                ; PRODUCTS DISK FILE) FOR SWAPPING.\r
@@ -21,6 +22,7 @@ IFE   FTRC10, <
 ENTRY  XCKCSW\r
 >\r
 \r
+\r
 EXTERNAL JOB,JBTSTS\r
 EXTERNAL JBTQ,PJBSTS\r
 EXTERNAL PJBSTS,TIMEF,MJOBN\r
@@ -48,6 +50,7 @@ NXTINI:       MOVEI TAC,MAXQ          ;MAX. NO. OF QUEUES
        SETZM XJOB              ;CLEAR NO. OF JOBS NEEDING EXPANDING\r
        SETZM JOBQUE            ;CLEAR JOB NO. TO BE REQUEUED\r
        POPJ PDP,\r
+\r
 \f,NXTJOB DECREMENTS CURRENT JOB'S QUANT. AND PROTECT\r
 ,TIMES AND REQUEUES IT IF QUANT. TIME GONE TO 0\r
 ,SERVINCES ANY JOB REQUEING REQUESTED AT OTHER PRIORITY\r
@@ -55,6 +58,7 @@ NXTINI:       MOVEI TAC,MAXQ          ;MAX. NO. OF QUEUES
 ,MAKES NO ASSUMPTIONS RE. ACS\r
 ,RETURSN NEXT JOB TO RUN IN J.\r
 \r
+\r
 EXTERNAL JBTSWP,POTLST\r
 \r
 NXTJOB:        SKIPN TIMEF             ;CLOCK TIC?\r
@@ -66,7 +70,6 @@ NXTJOB:       SKIPN TIMEF             ;CLOCK TIC?
        JRST .+3\r
        SKIPL JBTSWP(J)\r
        ADDM SW,JBTSWP(J)\r
-\r
        AOBJN J,.-4\r
 \r
 NXTJB1:        SKIPN J,JOB             ;CURRENT JOB NO., IS IT NULL JOB?\r
@@ -140,8 +143,7 @@ IFE FTSWAP,<        EXTERNAL CHKSHF
        PUSHJ PDP,CHKSHF\r
 >\r
 IFN FTSWAP,<\r
-       PUSHJ PDP,SWAP\r
->\r
+       PUSHJ PDP,SWAP>\r
 \r
 ;SCHEDULAR--SEARCH THRU QUEUES ACCORDING TO SSCAN TABLE\r
 ;FOR 1ST JOB IN CORE--RETURN ITS NO. IN J\r
@@ -164,6 +166,7 @@ SCHD1:      SETZ J,                 ;RETURN NULL JOB
        POPJ PDP,\r
 \r
 \r
+\r
 ;TEMPORARY EXPERIMENTAL SCHEDULING CHANGE TO PERMIT TTY-I/O-WAIT-SATISFIED JOBS ON\r
 ; THE DISK TO DISPLACE I/O BOUND JOBS IN CORE.... R.CLEMENTS/D.PLUMER 9 MAY 68\r
 CKJB10:        SKIPE   INFLG\r
@@ -207,7 +210,8 @@ INTERNAL QXFER,QSCAN,FTSWAP,FTDISK
 ,BOTH ROUTINES ARE "TABLE DRIVEN" IN THE SENSE THAT THE\r
 ,CALLING ROUTINE PROVIDES THE ADDRESS OF A TABLE WHICH\r
 ,DEFINES THE SPECIFIC OPERATIONS TO BE PERFORMED.\r
-\f;QUEUE INITIALIZATION\r
+\f\r
+;QUEUE INITIALIZATION\r
 ;PUT ALL JOBS IN NULL QUEUE(JOB NO. NOT ASSIGNED)\r
 ;CALLED ON RESTART AT LOC 143\r
 \r
@@ -225,7 +229,6 @@ QINI:       MOVNI TAC,MXQUE         ;MAKE ALL QUEUE HEADERS POINT TO THEMSELVES
        MOVSM TAC,JBTQP1        ;BACK POINTER FOR JOB 1\r
        MOVEI ITEM,JOBMAX       ;MAX. JOB NO.\r
        MOVEM TAC,JBTQ(ITEM)    ;FOR. POINTER OF JOBMAX JOB NO.\r
-\r
        HRLM ITEM,JBTQMN        ;SET NULQ HEADER TO POINT TO JOB1\r
        MOVEI TAC,1             ;AND JOBMAX\r
        HRRM TAC,JBTQMN ;FORWARD POINTER\r
@@ -234,7 +237,8 @@ QINI1:      HRRM ITEM,JBTQM1(ITEM)  ;JOB I-1 POINT TO JOB I
        SOJLE ITEM,CPOPJ        ;FINISHED?\r
        HRLM ITEM,JBTQP1(ITEM)  ;BACK POINTER JOB I+1 POINTS TO JOB I\r
        JRST QINI1\r
-\f,DELETES A JOB FROM ITS "SOURCE-Q", DETERMINES A "DEST-Q"\r
+\f\r
+,DELETES A JOB FROM ITS "SOURCE-Q", DETERMINES A "DEST-Q"\r
 ,ACCORDING TO ONE OF 3 FUNCTIONS, AND INSERTS THE JOB AT\r
 ,THE BEGINNING OR END OF THIS DEST-Q. IN ADDITION IT MAY\r
 ,RESET THE JOB'S QUANTUM TIME (RH JBTSTS).\r
@@ -280,7 +284,6 @@ QINI1:      HRRM ITEM,JBTQM1(ITEM)  ;JOB I-1 POINT TO JOB I
 , <QUANT-TAB>: EXP <QUANT1>    ;CORRES. TO <Q-TAB>+0\r
 ,              ...\r
 ,              EXP <QUANTN>    ;CORRES. TO <Q-TAB>+N-1\r
-\r
 ,              Z\r
 ,\r
 , UPON A CALL TO QXFER FOR THESE 2 CODES, AC T2 CONTAINES\r
@@ -291,6 +294,7 @@ QINI1:      HRRM ITEM,JBTQM1(ITEM)  ;JOB I-1 POINT TO JOB I
 , <QUANT-TAB> TABLE.\r
 , IF NO MATCH FOUND..NO TRANSFER TAKES PLACE.\r
 \r
+\r
 ,DEST-Q AS A FUNCTION OF JOB SIZE\r
 ,BQJSIZ INSERT AT BEG OF DEST-Q\r
 ,EQJSIZ INSERT AT END\r
@@ -315,7 +319,7 @@ QINI1:      HRRM ITEM,JBTQM1(ITEM)  ;JOB I-1 POINT TO JOB I
 \f,CALLING SEQUENCE:\r
 ,      MOVE  J,[JOB NUMBER]\r
 ,      MOVE T2,[CURRENT Q]     ;BQLINK AND EQLINK ONLY\r
-;      MOVEI TT,TRANS TABLE ADDRESS\r
+,      MOVEI TT,TRANS TABLE ADDRESS\r
 ,      PUSHJ PDP,QXFER\r
 ,      ...             ;RETURN\r
 ,  ON RETURN J IS UNALTERED; LH(Q)=-1  IF QUANT, TIME OUT\r
@@ -354,7 +358,8 @@ QX2:        MOVS T2,Q               ;T2 IS ADDR. OF QUANT.TIME(IF REQUESTED)
        HRRO Q,(Q)              ;RH(Q)=DEST-Q;LH=-1(NO QUANT.TIME REQ.)\r
        SKIPL 1(TT)             ;WAS QUANT. TIME REQUESTED?\r
        HRL Q,(T2)              ;YES--GET IT\r
-\f,FIXED DEST-Q\r
+\f\r
+,FIXED DEST-Q\r
 QFIX:  MOVE T1,JBTQ(J)         ;DELETE JOB FROM SOURCE-Q\r
        MOVS T2,T1              ;T1=FORW. LINK, T2=BACK LINK\r
        HRRM T1,JBTQ(T2)        ;FORW, LINK PAST JOB\r
@@ -372,7 +377,6 @@ QFIX:       MOVE T1,JBTQ(J)         ;DELETE JOB FROM SOURCE-Q
 \r
        JUMPL Q,QX3             ;RETURN IF QUANT. TIME NOT REQ.\r
        HLRM Q,JBTSTS(J)        ;SET QUANT. TIME\r
-\r
        MOVEI TT,RNQ            ;SET JOB STATUS WAIT\r
        DPB TT,PJBSTS           ;CODE TO RUN QUEUE (0).\r
 QX3:   POPJ PDP,\r
@@ -466,6 +470,7 @@ A'AVAL: 0
 >\r
 \r
 INTERNAL AVALTB\r
+\r
 AVALTB:        QUEUES  ;GENERATE THE AVAL FLAGS\r
 LOC=.-AVALTB\r
 >\r
@@ -492,7 +497,8 @@ LOC=LOC+1
 PQ3=LOC\r
 LOC=LOC+1\r
 CMQ=LOC                ;COMMAND DELAY QUEUE\r
-\f;CORRESPONDENCE TABLE BETWEEN JOB STATUS CODES AND QUEUE TRANSFER TABLES\r
+\f\r
+;CORRESPONDENCE TABLE BETWEEN JOB STATUS CODES AND QUEUE TRANSFER TABLES\r
 ;USED BY SCHEDULER\r
 ;RUNCSS SETS JOB STATUS WORD TO NEW STATE CODE.\r
 ;SCHEDULER SETS UP QUEUE TRANSFER TABLE ADDRESS FROM\r
@@ -555,6 +561,7 @@ EXTERNAL XJOB
 >>\r
 IFE FTCHECK+FTMONP,<\r
 \r
+\r
 INTERNAL JOBQUE\r
 JOBQUE:        0       ;JOBS TO BE REQUEUED ON CLOCK INTERRUPT\r
 \r
@@ -623,11 +630,6 @@ QTIME:     PTTAB EQLINK,QTTAB,QQSTAB       ;MOVE JOB TO LOWER Q
 QSTAB: XWD 4,-PQ1      ;PQ1 IF     SIZE .LE. 4K\r
        XWD ^D16,-PQ2   ;PQ2 IF  4K .L. SIZE .LE. 16K\r
        XWD ^D256,-PQ3  ;PQ3 IF 16 .L. SIZE\r
-\r
-,PUT JOB DOWN A Q IF EXCEEDS QUANT. TIME\r
-QQTAB: XWD -PQ1,-PQ2\r
-       XWD -PQ2,-PQ3\r
-       XWD -PQ3,-PQ2           ;BACK TO PQ2 TO COMPETE WITH IOWS JOBS\r
        Z\r
 \r
 ,PUT JOB DOWN A Q IF EXCEEDS QUANT. TIME\r
@@ -693,6 +695,7 @@ OSCAN:      ;SCAN FOR OUTPUT
        Z\r
        Z                       ;FINAL ZERO TO FLAG END\r
 >\r
+\r
 \fSUBTTL        SWAP R. KRASIN/AF TS4.34  03 FEB 69  V406\r
 \r
 ,SWAPPER CALLED EVERY CLOCK TIC.\r
@@ -712,7 +715,6 @@ OSCAN:      ;SCAN FOR OUTPUT
 , IF ONE--WILL LOW(HIGH) SEG FIT IN LARGEST HOLE IN CORE?\r
 ,   YES--START INPUT AND RETURN\r
 ,   NO--IS TOTAL FREE CORE(CORTAL) ENOUGH TO ACCOMMODATE LOW(HIGH) SEG?\r
-\r
 ;      YES--CALL CORE SHUFFLER\r
 ;        IS SHUFFLER WAITING FOR IO TO STOP?\r
 ;          YES--RETURN AND DO NOTHING\r
@@ -825,7 +827,7 @@ IFN PROG-JDAT,<
 IFN FT2REL,<\r
        EXTERN FINOT\r
        PUSHJ PDP,FINOT         ;IS THIS A HIGH SEG WHICH WAS JUST SWAPPED OUT?\r
-                               ;YES, J SET TO LOW SEG NO, GO TRY SWAP IT OUT\r
+       JRST FORCEL             ;YES, J SET TO LOW SEG NO, GO TRY SWAP IT OUT\r
                                ; NO, THIS WAS A LOW SEG, ALL SWAPPING FOR THIS USER\r
                                ; IS FINISHED.\r
 >\r
@@ -887,7 +889,8 @@ SWPREC:     MOVE    TAC,SERA        ;ERROR FLAGS
        LDB     TAC,IMGOUT\r
        TLO     TAC,1\r
        ADDM    TAC,SWPERC\r
-       JRST    SWAPO           ;GO TRY AGAIN\r
+       JRST SWAPO              ;GO TRY AGAIN\r
+\r
 \r
 ;NO INPUT TO DD, CHECK FOR EXPANDING JOBS\r
 CHKXPN:        SKIPG XJOB              ;ANY JOBS TO EXPAND\r
@@ -895,7 +898,6 @@ CHKXPN:     SKIPG XJOB              ;ANY JOBS TO EXPAND
                                ; YES, FALL INTO SCNOUT WHICH WILL SWAP OUT EXPANDING\r
                                ; JOB SINCE THERE IS ONE\r
 ;INPUT TO DO, CHECK TO SEE IF ANY JOBS JUST HAPPEN TO WANT TO EXPAND\r
-\r
        EXTERN HIGHJB,JBTSTS,ERROR,MAXSIZ,MAXJBN,SUMCOR\r
 SCNOUT:        SKIPG XJOB              ;ANY JOBS WAITING TO EXPAND?\r
        JRST SCNJOB             ;NO, SCAN ALL JOBS IN PRIORITY ORDER LOOKING\r
@@ -905,7 +907,8 @@ SCNOUT:     SKIPG XJOB              ;ANY JOBS WAITING TO EXPAND?
        TDNN T,JBTSTS(J)        ;IS THIS JOB EXPANDING?\r
        SOJG J,.-1              ;NO, KEEP LOOKING\r
        IFN FTRCHK,<\r
-       JUMPG J,SCNOK           ;CLEAR XJOB SO MESSAGE WILL PRINT\r
+       JUMPG J,SCNOK\r
+       SETZM XJOB              ;CLEAR XJOB SO MESSAGE WILL PRINT\r
        JSP DAT,ERROR           ;ERROR IF NONE FOUND\r
 >\r
 SCNOK: SOS XJOB                ;DECREMENT COUNT OF EXPANDING JOBS\r
@@ -929,7 +932,7 @@ SCNJOB:     MOVE T,CORTAL           ;INITIALIZE FREE CORE COUNTER
                                ; PROTECT TIME IS DECREMENTED ONLY WHEN\r
                                ; A JOB IS RUNABLE, SO LOOK AT IT\r
                                ; ONLY IF RUN BIT STILL ON\r
-       TLNE T,NSWP+SWP         ;NO, IS THIS JOB NOT TO BE SWAPPED OR ALREADY SWAPPED?\r
+       TLNE T,NSWP+SWP         ;NO, IS THIS JOB NOT TO BE SWAPPED OR ALREADY SWAPPED?     \r
                                ; (DISPLAY, REAL TIME)?\r
        JRST (TAC1)             ;YES,CONTINUE SCAN TO FIND ANOTHER\r
        HLRZ T,JBTADR(J)        ;PICK UP SIZE OF JOB\r
@@ -969,7 +972,6 @@ IFN FT2REL,<
                                ; 5. HIGH SEG NOT ON DISK YET\r
                                ; 6. THIS HIGH SEG IS NOT THE SAME ONE AS JOB\r
                                ;    BEING FITTED IN IS GOING TO WANT\r
-\r
                                ; RETURN HIGH SEG NO. IN J IF YES, OTHERWISE\r
                                ; RETURN LOW SEG NO.\r
                                ; IF JOB JUST HAS LOW SEG. SHF BIT IS SET IN JBTSTS\r
@@ -1048,7 +1050,6 @@ FULL1A:   PUSHJ   PDP,GXSAT       ;GET SOME SWAPPING SPACE
        POP     PDP,DAT         ;RESTORE AMT GOTTEN\r
        HRLM    DAT,(AC3)       ;SAVE AMOUNT IN TABLE\r
        SUB     T,DAT           ;AMOUNT STILL NEEDED\r
-\r
        JUMPE   T,FULSET        ;THROUGH IF NEED 0 K NOW\r
        PUSHJ   PDP,BMPAC3      ;STEP TO NEXT TABLE LOCATION\r
        MOVE    DAT,T           ;TRY TO GET ALL WE NEED NOW IN 1 CHUNK\r
@@ -1173,7 +1174,6 @@ CHG1:     ADDM TAC1,VIRTAL        ;INCREASE SIZE OF VIRTUAL CORE AVAILABLE IN SYSTEM
 \r
        PUSH PDP,DAT            ;SAVE TTY OUTPUT BYTE POINTER(COMMAND DECODER)\r
        LDB DAT,IMGOUT          ;*SIZE ON DISK(1K BLOCKS)\r
-\r
        JUMPE DAT,CHG3          ;DID SEG HAVE ANY DISK SPACE?\r
        HLRZ TAC,JBTSWP(ITEM)   ;*YES, LOGICAL DISK BLOCK+FRGSEG BIT\r
        PUSHJ PDP,FXSAT         ;*FREE THE DISK BLOCKS NO LONGER NEEDED\r
@@ -1215,7 +1215,6 @@ XPAND:    LSH TAC,-12             ;CONVERT HIGHEST DESIRED ADDRESS
 ;ROUTINE TO FLAG JOB TO BE STOPPED AND SWAPPED OUT\r
 ;BECAUSE IT HAS JUST BEEN CONNECTED TO A HIGH SHARABLE SEG WHICH IS ON DISK\r
 ;OR ON ITW WAY IN OR OUT.  THE SIZE OF THE HIGH SEG IS UNCHANGED\r
-\r
 ;THE JOB MUST BE STOPPED UNTIL HIGH SEG SWAPPED IN JUS AS IF JOB HAS\r
 ;EXPANDED HIGH SEG(MUST BE CALLED FROM UUO LEVEL FOR CURRENT JOB IF HIGH SEG)\r
 ;CALL: MOVE ITEM,HIGH SEG NUMBER\r
@@ -1262,6 +1261,7 @@ SQOUT:    MOVEM TAC,SERA          ;STORE THE BLOCK NUMBER
        EXCH TAC,DFBUSY \r
        JUMPN TAC,CPOPJ         ;YES IF JUMP\r
 \r
+\r
 ERATRY=3       ;NO. OF TIMES TO READ AND WRITE ON ERRORS\r
 \r
 ;START UP DEVICE WITH SWAPPING REQUEST. THIS ROUTINE\r
@@ -1299,7 +1299,6 @@ FRGIO1:   HLRE    DAT,(TAC)       ;NO OF K IN THIS  DISK CHUNCK
        ORM TAC,SERA            ;INSERT NEW ADDRESS\r
        JRST FRGIO1\r
 \r
-\r
 FRGIO2:        LSH     DAT,12          ;CONVERT FROM K TO WORDS\r
        ADDM DAT,SQLEN          ;ADD TO PREVIOUSLY TRANSFERRED AMOUNT\r
        MOVNS DAT               ;-N WORDS\r
@@ -1374,7 +1373,6 @@ GXSAT:    MOVE AC1,XSAT1          ;SAVE AC1, SET IT TO TABLE LOC.
        MOVE AC2,XSAT2  ;\r
        LSH DAT,CONVMD          ;CONVERT TO 128 WORD DISK BLOCKS\r
        PUSH PDP,ITEM           ;SAVE C(ITEM)\r
-       \r
        MOVE ITEM,DAT           ;GETBIT EXPECTS PARAMETER IN ITEM\r
        PUSHJ PDP,GETBIT        ;FIND A HOLE BIG ENOUGH\r
        JRST IPOPJ              ;NONE, RESTORE ITEM AND ERROR RETURN\r
@@ -1408,7 +1406,6 @@ FXSAT:    LSH TAC,CONVMD          ;RESTORE SHIFTED DISK ADDRESS.
        JRST IPOPJ              ;RETURN, AND RESTORE ITEM\r
 \r
 ;INITIALIZE SWAPPER DISK STORAGE TABLE\r
-\r
 INTERNAL SWPINI\r
 \r
 SWPINI:        MOVE TAC,XSAT2\r
@@ -1480,7 +1477,6 @@ SWPSIZ=XSAT6-XSAT4+1              ;SIZE OF TABLE
 HISWAP=17*BLOCKS               ;LOGICAL BLOCK NUMBER OF FIRST\r
                                ; BLOCK ON DISK\r
 DIFF=HISWAP-BLOCKS-1\r
-\r
 XP CONVMD,3    ;CONVERSION FROM 1K CORE BLOCKS TO 128 WORD\r
                ;DISC BLOCKS(SHIFT COUNT)\r
 \r
@@ -1543,7 +1539,6 @@ GXSAT:    PUSH    PDP,ITEM        ;THIS ROUTINE SAVES AND RESTORES ACCUMULATOR "ITEM".
 \r
 FXSAT: TRZN    TAC,FRGSEG      ;FRAGMENTED?\r
        JRST    FXSAT1          ;NO. DO IN REGULAR WAY\r
-\r
 FRAGBK:        HRRZ    AC3,TAC         ;YES. LOC OF TABLE IN AC3\r
 FRGBK1:        HRRZ    TAC,(AC3)       ;LOC OF NEXT DISK ADDRESS\r
        HLRE    DAT,(AC3)       ;NUMBER OF K\r
@@ -1576,6 +1571,8 @@ FXSAT1:   PUSH    PDP,ITEM        ;THIS ROUTINE SAVES AND RESTORES ACCUMULATOR "ITEM".
 FXSATC:        PUSHJ   PDP,CLRBIT      ;THE "CLRBIT" SUBROUTINE IN "DSKSER" ACTUALLY DOES\r
                                ; THE WORK OF CLEARING THE BITS.\r
        JRST IPOPJ              ;RESTORE ITEM AND RETURN\r
+\r
+\f\r
 ;ROUTINE TO RE-INITIALIZE THE SWAPPING AVAILABILITY TABLE. CALLED AT\r
 ; SYSTEM INITIALIZATION TIME.\r
 \r
@@ -1647,4 +1644,3 @@ SQLEN:    0                       ;AMOUNT TRANSFERRED SO FAR FOR FRAGMENTED JOB
 >\r
 >      ;END OF SWPSER LOGIC FOR THE NEW PDP-10 DISK.\r
 \fSCHEND:       END\r
-\0\r
index 56a0e9e..76fda9d 100644 (file)
@@ -86,7 +86,6 @@ IFNDEF FTHDPX,<FTHDPX=-1>     ;NON-ZERO TO INCLUDE HALF-DUPLEX CODE
 IFNDEF FTDDTM,<FTDDTM=-1>      ;NON-ZERO TO IUNCLUDE CALLI DDTIN,OUT\r
 \r
 FTTTYSER=-1    ;DEFINE THIS SYSTEM TO HAVE SCNSRF\r
-\r
 INTERN FTTTYSER        ;ASSURE MULT DEF GLOBALS IF WRONG APSER\r
 \f;                     RIGHT HALF BITS (USER MODE0\r
                        FCS=100         ;FULL CHARACTER SET. PASS\r
@@ -138,7 +137,6 @@ TTYRMT=4000         ;REMOTE TTY LINE
 \r
 TLKRNG=1               ;THIS LINE CURRENTLY IN A TALK RING\r
 XON=2                  ;^Q TYPED, PAPER TAPE INPUT\r
-\r
 FULTWX=4               ;SELF ECHOING FULL DUPLEX\r
 T35=10                 ;MODEL 35\r
 T37=20                 ;MODEL 37\r
@@ -216,6 +214,7 @@ TOIP=400000 ;SIGN OF TTYPTR(DDB) - TYPE-OUT IN PROGRESS
 ;        DATA BLOCKS.\r
 ;      4)SETS TTYUSE#1 IN ALL TTY DDBS IN THE TRANSLATOR TABLE.\r
 \r
+\r
 EXTERNAL SCNCHN,MLTTYL,MTTYLN,TTYTAB,SCNINI\r
 \r
 TTYINI:        MOVEI TAC,SCNCHN\r
@@ -224,7 +223,6 @@ TTYINI:     MOVEI TAC,SCNCHN
        MOVSI TAC1,MLTTYL       ;NO. OF TTY DEV. DATA BLOCKS. NOT LINES\r
        MOVSI IOS,TPMON+IOFST   ;VIRGIN STATUS\r
        MOVEI DDB,TTYLST        ;FIRST TTY DDB ADDRESS\r
-\r
 SCN1:  MOVSI DAT,TTYUSE        ;TTY DDB IN USE BIT\r
        TDNN DAT,DEVMOD(DDB)    ;IS THIS TTY DDB IN USE?\r
        SETZM DEVNAM(DDB)       ;NO, SET PHYSICAL NAME TO 0.\r
@@ -360,6 +358,7 @@ PUTCHO:     SOSGE   TOFCTR(DDB)             ;RETURN IMMEDIATELY IF NO ROOM
 PUTCO1:        IDPB    CHREC,TOPUTR(DDB)       ;PUT CHARACTER INTO BUFFER\r
        CONO    PI,PION                 ;GET PI BACK ON\r
        POPJ    PDP,\r
+\r
 \f;ROUTINE TO CHECK IF A CHARACTER IS SPECIAL(ASCII 0-37, 175-177)\r
 ;CALL  MOVE    CHREC,CHAR. TO BE CHECKED\r
 ;      PUSHJ   PDP,SPCHEK\r
@@ -381,7 +380,7 @@ SPCHK1:     MOVE    TAC,SPCTAB(CHREC)
 ;FORMAT XWD BITS+CHAR,ADRESS OF ROUTINE\r
 ;HIGH ORDER BITS IN LH:\r
 \r
-SPACTN=40000           ;SPECIAL ACTION TO BE TAKEN\r
+SPACTN=400000          ;SPECIAL ACTION TO BE TAKEN\r
 SPOUT=100000           ;SPECIAL HANDLING ON UUO OUTPUT\r
 BREAKB=20000           ;BREAK CHARACTER\r
 SPHPOS=10000           ;CHARACTER AFFECTS HORIZONTAL POSITION\r
@@ -436,6 +435,7 @@ INTERNAL DDTIN
 EXTERNAL WSYNC,IADRCK,ADRERR\r
 EXTERNAL PTYOW\r
 \r
+\r
 DDTIN: PUSHJ PDP,TTYFNU        ;SET UP DEVDAT,LINE\r
        MOVE    IOS,[XWD TTYIOW+DDTM,IOACT]\r
        IORB IOS,DEVIOS(DDB)    ;PUT INTO I/O WAIT\r
@@ -444,7 +444,6 @@ DDTIN:      PUSHJ PDP,TTYFNU        ;SET UP DEVDAT,LINE
        PUSHJ   PDP,TWSYNC      ;NO, WAIT FOR SOME\r
 DDTIW: MOVE    IOS,[XWD TTYIOW,IOACT]\r
        ANDCAB IOS,DEVIOS(DDB)\r
-\r
        MOVSI TAC,IOFST+DDTM\r
        IORM TAC,DEVIOS(DEVDAT) ;STOP ALL IO\r
        HRRZ TAC,@UUO           ;CONTENTS OF USER (DDT) AC\r
@@ -737,7 +736,6 @@ SCNDDB:     SIXBIT  /TTY0/          ;DEVNAME
 \f      XP      TOBF,.-ZZ\r
        REPEAT STTYBF,<0>\r
 ;NO. OF CHAR. IN MON. BUF.\r
-\r
        XP      TTYCHR,<<STTYBF>*5>\r
        XP      SCNDDS,.-ZZ     ;SIZE OF SCN DDB\r
 \r
@@ -791,7 +789,6 @@ MONUS1:     PUSHJ   PDP,GETCHR              ;GET A CHAR, FROM IT
        IDPB    CHREC,AC1               ;PLACE CHAR. IN USER BUFFER\r
        PUSHJ   PDP,SPCHEK              ;SPECIAL CHARACTER?\r
        JRST    MONUS2                  ;NO\r
-\r
        TLNE    TAC,FCSBRK+BREAKB       ;A BREAK CHARACTER?\r
        SOSA    TISYNC(DDB)             ;SOME BREAK, COUNT IT DOWN\r
 MONUS2:        SOJG    AC2,MONUS1              ;NO, USER BUFFER FULL?\r
@@ -845,13 +842,13 @@ TTYOUT:   MOVSI   IOS,IOBEG
        MOVSI   IOS,IO+IOFST\r
        IORB    IOS,DEVIOS(DDB)\r
 \r
+\r
        PUSHJ   PDP,STLNAC      ;GET LINE CHARACTERISTICS\r
        PUSH    PDP,LINE                ;SAVE INFO\r
        PUSHJ   PDP,USRMON      ;MOVE USER'S BUFFER TO TTO BUFFER\r
        PUSHJ   PDP,ADVBFE              ;ADVANCE USER'S HEADERS\r
        SKIPA\r
        JRST .+3                        ;MOVE BUFFERS AVAILABLE\r
-\r
        MOVEI   IOS,IOACT               ;NO MORE BUFFERS\r
        ANDCAB  IOS,DEVIOS(DDB)         ;CLEAR ACTIVE IN IOS\r
        POP     PDP,LINE                ;RESTORE LINE INFO\r
@@ -915,10 +912,10 @@ TTYUUO:   PUSHJ   PDP,TTYFNU
        PUSHJ   PDP,UADCK1\r
        JRST    @TTUUOT(UCHN)           ;DISPATCH TO UUO ROUTINES\r
 \r
+\r
 TTUUOT:        EXP     INCHRW                  ;(0)INPUT CHAR. WAIT TILL TYPED\r
        EXP     ONEOUT                  ;(1)OUTPUT A CHARACTER\r
        EXP     INCHRS                  ;(2)INPUT A CHAR. & SKIP\r
-\r
        EXP     OUTSTR                  ;(3)OUTPUT A STRING\r
        EXP     INCHWL                  ;(4)INPUT CHAR, WAIT.LINE MODE\r
        EXP     INCHSL                  ;(5)INPUT CHAR, SKIP. LINE MODE\r
@@ -991,7 +988,6 @@ INCHRW:     PUSHJ   PDP,INCHRS              ;GET ACHAR IF ONE IS THERE
 ONEOUT:        PUSHJ   PDP,GETWDU              ;PICK UP CHAR FROM USER\r
        MOVE    CHREC,TAC               ;PUT IT IN PROPER AC\r
        ANDI    CHREC,177       ;MASK ANY JUNK\r
-\r
        JUMPE   CHREC,CPOPJ     ;DONT STORE NULLS\r
        PUSHJ   PDP,OUTCHR              ;PLACE IT IN TTO BUFFER\r
        JUMPN   CHREC,DDTUTT    ;IF IT STORED, RETURN\r
@@ -1022,6 +1018,7 @@ SETLIN:   MOVSI   TAC,LGLSET              ;MAKE MASK OF ALL OF THEM
        AND     TAC,@UUO                ;SET ONLY THOSE BITS USER WANTS SET\r
        IORM    TAC,LINTAB(LINE)        ;SET RESULTANT\r
        POPJ    PDP,\r
+\r
 \f;ROUTINE TO ATTACH TTY TO A JOB\r
 ;CALL: MOVE DEVDAT,ADDRESS OF TTY DEVICE DATA BLOCK\r
 ;      MOVE ITEM,JOB NUMBER\r
@@ -1037,6 +1034,7 @@ SETLIN:   MOVSI   TAC,LGLSET              ;MAKE MASK OF ALL OF THEM
 ;                OR SIXBIT /CTY/,\r
 ;              5)SETS DEVOPR IF IT IS NON-ZERO.\r
 \r
+\r
 INTERNAL TTYATT,TTYATI\r
 EXTERNAL PUNIT,PJOBN,TTYTAB\r
 \r
@@ -1200,6 +1198,7 @@ TBYTEP:   PUSH    PDP,TAC1                ;SAVE LINE
        HLL     TAC,TLHBYT(TAC1)\r
        POP     PDP,TAC1                ;RESTORE LINE\r
        POPJ    PDP,0\r
+\r
 \f;ROUTINE TO FIND TTY FOR A JOB\r
 ;CALL: MOVE ITEM,JOB NUMBER\r
 ;      PUSHJ PDP, TTYFND\r
@@ -1321,7 +1320,6 @@ TTYSRA:   HRRZ DEVDAT,TTYTAB(LINE)
        JRST    TTYF9           ;FOUND\r
 TTYF0: AOBJN LINE,TTYSRA\r
 TTYF1: MOVSI TAC,576062        ;LOOK FOR DEVICE "OPR"\r
-\r
        PUSHJ PDP,DEVPHY        ;SEARCH PHYSICAL DEVICE NAMES FOR OPR\r
        SKIPA TAC,DEVOPR        ;NOT FOUND.\r
        JRST    TTYF9\r
@@ -1444,6 +1442,7 @@ TTYUSR:   MOVSI IOS,USRB          ;SET BIT TO SWITCH TTY TO USER MODE
 INTERNAL CTYINT\r
 EXTERNAL SCNSAV,SCNCHN,TCONLN\r
 \r
+\r
 CTYINT:        CONSO TTY,50            ;TTI OR TTO FLAG?\r
        JRST CTYINT                     ;NO\r
        JSR     SCNSAV                  ;YES, SAVE AC'S\r
@@ -1823,7 +1822,6 @@ CNTLEC:   HRRI    TAC,100(CHREC)  ;SAVE UN-CNTL CHARACTER
 \r
 CRLF:  MOVEI   HPOS,0  ;HERE ON INPUT OF A CARRIAGE RETURN\r
        TLNE    LINE,XON        ;IF PAPER TAPE, NO FREE LF\r
-\r
        JRST    TTIPUT          ;JUST STORE THE CR\r
        PUSHJ   PDP,TTIPUT      ;ORDINARILY, STORE AND GO ON HERE\r
        MOVEI   CHREC,12        ;BY ADDING A LF\r
@@ -1879,7 +1877,6 @@ DCPUTR:   LDB     TAC,PLSTLC              ;CHECK FOR NONE TO DELETE
        ADD     TAC,PUTR(DAT)           ;*\r
        TLNE    TAC,400000\r
        ADD     TAC,[XWD 347777,-1]\r
-\r
        MOVEM   TAC,PUTR(DAT)\r
        AOS     FCTR(DAT)\r
        AOS     TAC,PCTR(DAT)\r
index 271ac1b..5bbd1b2 100644 (file)
Binary files a/src/segcon.mac and b/src/segcon.mac differ
index 6c899ed..a8ee847 100644 (file)
Binary files a/src/sysini.mac and b/src/sysini.mac differ