Cleanup typos.
[retro-software/dec/tops10/v4.5.git] / src / eddt.mac
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