Fixed typos in PDP6 dectape controller.
authorRichard Cornwell <rcornwell@github.com>
Sun, 2 Jun 2019 04:48:59 +0000 (00:48 -0400)
committerRichard Cornwell <rcornwell@github.com>
Sun, 2 Jun 2019 04:48:59 +0000 (00:48 -0400)
src/dtcsrn.mac
src/mtcsr6.mac
src/sysini.mac

index c665ac5..64eaa93 100644 (file)
@@ -50,7 +50,7 @@ NOBUFC=737777         ;-NOBUF
 CPBIT=-1               ;CONDITIONAL ASSEMBLY PARAMETER FOR I/O DIRECTLY\r
                        ;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
+                       ;WITHOUT DIRECT CONSIDERATION OF BLOCK BOUNDRIES\r
 \r
 \f      INTERN  DTCINT,DTCDDB,DTCINI,DTCDDS\r
 \r
@@ -298,7 +298,7 @@ ENTRA:      SUBI    UUO,2           ;NO. POINT TO NAME
                                ;IS A SAVE FILE (UGETF DONE)\r
        MOVEI   BLK,DIRBLK      ;NO. GET 1ST BLOCK CLOSE TO\r
        TLO     IOS,RVERSE      ;DIRECTORY. GOING IN REVERSE\r
-       POPJ    PDP,USLSTA\r
+       PUSHJ   PDP,USLSTA\r
        CAILE   BLK,TOPBLK      ;BLOCK LEGAL?\r
        POPJ    PDP,            ;NO. ERROR RETURN\r
 ENTRC: MOVEM   BLK,FSTBLK(DEVDAT) ;SAVE AS 1ST BLOCK\r
@@ -527,7 +527,7 @@ UOUT:       TLO     IOS,IO
        JRST    UOUT2           ;YES\r
        PUSHJ   PDP,DIRCHK      ;NO. MAKE SURE DIRECTORY IS IN CORE\r
        HRRZ    BLK,OBLK(DEVDAT)\r
-       CAIN    BLK,DIRBLKK     ;CHECK IF WRITING DIRECTORY\r
+       CAIN    BLK,DIRBLK      ;CHECK IF WRITING DIRECTORY\r
        JRST    COR2HM          ;YES, WRITE CORE IMAGE\r
        JUMPE   BLK,FAKADV      ;DONT WRITE IF NO BLOCK GIVEN\r
        PUSHJ   PDP,BLKCHK      ;CHECK FOR LEGAL BLOCK\r
@@ -547,7 +547,7 @@ DTOCHK:     TLNE    IOS,DMPMOD      ;DUMP MODE?
        HLRE    BLK,BUF         ;IS IT?\r
        JUMPL   BLK,LSTBLK      ;YES, - LAST BLOCK OF FILE\r
        JUMPN   BLK,OUTBLK      ;IF NON-0 - YES\r
-       TLNE    IOS,DMPCLS      ;NO. LAST BLOCK OF A DUMPO FILE?\r
+       TLZE    IOS,DMPCLS      ;NO. LAST BLOCK OF A DUMPO FILE?\r
        JRST    OUTBLK          ;YES. LINK MUST STAY 0\r
 OUCOMP:        PUSHJ   PDP,USRFRE      ;COMPUTE NEXT BLOCK\r
        TLO     IOS,NOLINK      ;THIS BLOCK NOT LINKED\r
@@ -564,7 +564,7 @@ OUTBL2:     HRRZ    BLK,OBLK(DEVDAT)
 \r
 \r
 WRTBLK:        PUSHJ   PDP,FNDBLK      ;GO SEARCH FOR BLOCK\r
-       MOVE    TAC1,[BLKO DTC,700] ;HERE WE ARE - GO WRITE\r
+       MOVE    TAC1,[BLKO DC,700] ;HERE WE ARE - GO WRITE\r
        JRST    RDWRT\r
 \f;WRITE LAST BLOCK\r
 LSTBLK:        MOVEI   BLK,0           ;LINK=0\r
@@ -577,9 +577,9 @@ COR2HM:     MOVEI   TAC,@DEVOAD(DEVDAT)  ;WHERE IT IS
        MOVEI   TAC1,177(TAC)\r
        BLT     TAC,(TAC1)\r
        TLO     IOS,CHNGDR      ;REMEMBER TO WRITE IT OUT\r
-       MOVSI   TAC1,DVDIRI\r
+       MOVSI   TAC1,400000\r
        ORM     TAC1,DEVMOD(DEVDAT) ;DIR. IS NOW IN CORE\r
-FAKADV:        TLZN    IOS,DMPMOD      ;DUMP MODE?\r
+FAKADV:        TLZN    IOS,DMPMOD\r
        PUSHJ   PDP,ADVBFE      ;ADVANCE BUFFERS\r
        JFCL\r
        TLZ     IOS,NOLINK      ;DIRECTORY BLOCK IS NOT LINKED\r
@@ -591,7 +591,7 @@ DMPSET:     TLO     IOS,DMPMOD      ;LIGHT BIT
        HRLI    UUO,PROG\r
        PUSHJ   PDP,COMCHK      ;CHECK VALIDITY OF LIST\r
        JRST    SVADER          ;NG. GIVE ADRESS ERROR\r
-       SKIPL   TAC,@UUO        ;OK. NULL LIST?\r
+       SKIPN   TAC,@UUO        ;OK. NULL LIST?\r
        JRST    DMPTS1          ;YES. RETURN\r
        IFN CPBIT, <\r
        TRNE    IOS,UDSD        ;NO. NON-STD MODE?\r
@@ -616,7 +616,7 @@ TOUSER:     JUMPE   AC2,NOBLK0      ;CANT READ BLK 0 IN NON-STD DUMP  MODE
        MOVEM   UUO,SVPNTR\r
        ADDI    TAC,(PROG)      ;RELOCATE ADDRESS OF 1ST IOWD\r
        MOVEM   TAC,PNTR        ;AND SAVE IT\r
-       MOVE    TAC,[JSP DMPADV] ;SET UP LOC FOR WHEN\r
+       MOVE    TAC,[JSR DMPADV] ;SET UP LOC FOR WHEN\r
        MOVEM   TAC,DCLOC1      ;IOWD IS EXHAUSTED\r
        HRRZM   PROG,ADRPRG     ;SAVE JUST ADDRESS OF PROG\r
        TLO     IOS,NOBUF       ;INDICATE DIRECTLY TO USER\r
@@ -694,7 +694,7 @@ READBF:     TLNN    IOS,DMPMOD      ;HAVE CONTROL IF DUMP-MODE
        PUSHJ   PDP,GETDT       ;GET DT CONTROL\r
 \r
 READBC:        PUSHJ   PDP,FNDBLK      ;SEARCH FOR RIGHT BLOCK\r
-       MOVE    TAC1,[BLKI DTC,300] ;FOUND IT - START READING\r
+       MOVE    TAC1,[BLKI DC,300] ;FOUND IT - START READING\r
 \r
 ;HERE WITH BLK=BLOCK NUMBER, TAC1=FUNCTION, START SEARCH\r
 RDWRT: PUSH    PDP,TAC\r
@@ -711,9 +711,9 @@ IOGO:       IFN CPBIT, <
        OR      TAC1,UNIT       ;UNIT AND PI CHAN\r
        MOVEM   TAC1,COMAND     ;SAVE COMMAND FOR READ OR WRITE\r
        POP     PDP,TAC         ;RESTORE SEARCH COMMAND\r
-       CONO    DC,DCIN         ;SET DATA CONTROL TO REAF\r
+       CONO    DC,DCIN         ;SET DATA CONTROL TO READ\r
        CONO    PI,DCON         ;TURN ON DC PI CHANNEL\r
-       HLRI    TAC,37\r
+       HRLI    TAC,37\r
        CONO    PI,PIOFF\r
        CONO    DTC,(TAC)       ;START TAPE MOVING\r
        HLRM    TAC,DTCINT\r
@@ -723,7 +723,7 @@ IOGO:       IFN CPBIT, <
 \r
 ;HERE FOR ANY DATA WORD WITH TAPE IN REVERSE\r
 RVERS: 0\r
-IOWD:  BLKI    DTC,PNTR        ;READ (WRITE) A WORD\r
+IOWD:  BLKI    DC,PNTR         ;READ (WRITE) A WORD\r
        JRST    RVTHRU          ;POINTER RAN OUT\r
        SOS     PNTR            ;POINTER HAS TO BACK UP\r
        SOS     PNTR\r
@@ -742,7 +742,7 @@ SHUTDN:     0
        CONSZ   DC,10000        ;DATA MISSED?\r
        SETOM   ERRFLG          ;YES. SET SWITCH\r
        CONSO   DTC,400         ;READING?\r
-       CONO    DC,0            ;YES. TERN OFF DC\r
+       CONO    DC,0            ;YES. TURN OFF DC\r
        CONO    PI,DCOFF        ;TURN OFF DC PI\r
        JRST    @SHUTDN\r
 \f;COME HERE TO START READING BLOCK NUMBERS\r
@@ -785,7 +785,7 @@ FNDBL4:     CONSZ   DTC,10000       ;GOING BACKWARDS?
 \f;INTERRUPT HERE TO READ A BLOCK NUMBER\r
 SRCH:  0       \r
        MOVEM   TAC,TEMP        ;SAVE TAC\r
-       DATAI   DTC,TAC         ;NO. READ A BLOCK NUMBER\r
+       DATAI   DC,TAC          ;NO. READ A BLOCK NUMBER\r
        SUB     TAC,BLOCK       ;;PRESENT BLOCK - TARGET BLOCK\r
        IFN CPBIT, <\r
        SKIPE   DIRCTN          ;IF DIRECT IO\r
@@ -842,7 +842,7 @@ IORVRS:     MOVEI   TAC,10000       ;SET IO FOR REVERSE
 \f;INTERRUPT HERE FOR FLAG CHANNEL\r
 DTCINT:        CONSO   DTS,37          ;INTERRUPT FOR DECTAPE?\r
        JRST    .               ;NO, GO AWAY\r
-       CONSZ   DTS,40000       ;YES. JOB DONE ENABLED?\r
+       CONSO   DTC,40000       ;YES. JOB DONE ENABLED?\r
        JRST    BLKNUM          ;NO. READING BLOCK NUMBERS\r
        CONSZ   DTC,4000        ;YES. TIME FLAG ENABLED?\r
        JRST    TIMINT          ;YES. CHECK IF THIS IS A TIME INTERRUPT\r
@@ -883,8 +883,8 @@ DTCIN2:     TLNE    IOS,DMPMOD      ;DUMP MODE?
        MOVEI   TAC1,177(TAC)\r
        BLT     TAC,(TAC1)      ;TRANSFER IT\r
        HLRZ    BLK,BUF         ;NEXT BLOCK TO READ\r
-       TRNE    IOS,UDSD        ;IF NON-STD\r
-       AOSA    BLK,IBLK(DEVDAT);READ SEQUENTIAL BLOCKS\r
+       TRNE    IOS,UDSD\r
+       AOSA    BLK,IBLK(DEVDAT) ;READ SEQUENTIAL BLOCKS\r
        HRRM    BLK,IBLK(DEVDAT) ;SAVE IN DDB\r
        TRNE    IOS,IODTER+IODERR+IOIMPM ;WAS THERE AN INPUT ERROR?\r
        JRST    THRUIN          ;YES. DONT ADVANCE BUFFERS\r
@@ -901,18 +901,18 @@ DTCIN2:   TLNE    IOS,DMPMOD      ;DUMP MODE?
 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
-       CONSZ   DTC,100000\r
+       CONSZ   DTC,10000\r
        TLO     IOS,RVERSE\r
 \f;HERE WHEN TAPE IS DONE\r
-THRUTP:        CONSO   DTC,200000      ;ON INTERRUPT LEVEL?\r
+THRUTP:        CONSO   DTC,20000       ;ON INTERRUPT LEVEL?\r
        JRST    THRUTD          ;NO. TAPE IS NOT MOVING\r
        MOVE    TAC,UNIT        ;SET TO STOP TAPE\r
        CONSZ   DTC,10000       ;GOING REVERSE?\r
        TRO     TAC,10000       ;YES\r
        CONO    DTC,245000(TAC) ;STOP TAPE, WITH TIME FLAG INTERRUPT ON\r
                                ;ENABLE JOB DONE AS A FLAG FOR DTCINT\r
-THRUTA:        SOSL    DTREQ            ;GIVE UP DATA CONTROL (DECTAPE CONTROL\r
-       SETOM   DTAVAL           ;WILL BE GIVEN UP AT NEXT INTERRUPT\r
+THRUTA:        SOSL    DCREQ            ;GIVE UP DATA CONTROL (DECTAPE CONTROL\r
+       SETOM   DCAVAL           ;WILL BE GIVEN UP AT NEXT INTERRUPT\r
        TLZ     IOS,DMPMOD+NOBUF ;RESET DUMP-MODE BIT\r
        JRST    CLRACT  ;RESET IOACT AND RETURN\r
 \r
@@ -940,10 +940,10 @@ OUTHRU:   PUSHJ   PDP,ADVBFE      ;GET NEXT BUFFER
 \r
 \r
 ;TURN TAPE AROUND AFTER END-ZONE INTERUPT\r
-TURN:  MOVEM   TAC,TEMPA               ;SAVE TAC\r
+TURN:  MOVEM   TAC,TEMPA       ;SAVE TAC\r
        MOVE    TAC,UNIT        ;UNIT AND CHANNEL\r
-       CONSO   DTC,10000               ;IN REVERSE?\r
-       TRO     TAC,10000               ;NO. NO WILL BE\r
+       CONSO   DTC,10000       ;IN REVERSE?\r
+       TRO     TAC,10000       ;NO. NO WILL BE\r
        CONO    DTC,322200(TAC);READ BLOCK NOS IN OPPOSITE DIRECTION\r
        MOVE    TAC,TEMPA       ;RESTORE TAC\r
        JEN     @DTCCHL         ;AND EXIT THE INTERRUPT\r
@@ -1087,9 +1087,9 @@ NOBLK0:   TRO     IOS,IOIMPM      ;ILLEGAL OP
        TLZN    IOS,RWDIR+SINGL ;DIRECTORY OPERATION?\r
        JRST    THRUTP          ;NO. RETURN TO USER\r
        PUSHJ   PDP,THRUTP      ;YES. STOP TAPE\r
-       MOVSI   TAC,DVDIRIN     ;CLEAR DIRECTORY IN CORE BIT\r
+       MOVSI   TAC,400000      ;CLEAR DIRECTORY IN CORE BIT\r
        ANDCAM  TAC,DEVMOD(DEVDAT)\r
-BDDIR: LDB     ITEM,PJOBN      ;NUMBER OF OFFENDING JOB\r
+BDDIR: LDB     BLK,PJOBN       ;NUMBER OF OFFENDING JOB\r
        JRST    BADDIR          ;GO PRINT ERROR MESSAGE\r
 \fBFPNTR:       IOWD    200,BUF+1\r
 ONEONE:        XWD     1,1\r
@@ -1107,8 +1107,8 @@ COMAND:   0
 ERRFLG:        0\r
        IFN CPBIT, <\r
 BLKCNT:        0\r
-SVPNTR:        0\r
 USPNTR:        0\r
+SVPNTR:        0\r
 ADRPRG:        0\r
 DIRCTN:        0\r
 >\r
index 019128a..6eeeaf3 100644 (file)
@@ -396,7 +396,7 @@ REW0:       PUSHJ   PDP,STOIOS      ;RESET HUNG COUNT IF STILL REWINDING
 REW1:  AOS MTREWN              ;INCREMENT COUNT OF REW WAIT UNITS\r
 REW2:  HLRZ DEVDAT,DEVSER(DEVDAT)              ;DEVDAT TO NEXT DDB\r
        JUMPE DEVDAT,REW3               ;LAST ONE?\r
-       HRLZ DAT,DEVNAM(DEVDAT)         ;NO,GET LH OF NAME\r
+       HLRZ DAT,DEVNAM(DEVDAT)         ;NO,GET LH OF NAME\r
        CAIN DAT,(SIXBIT /MTA/)         ;STILL A MAGTAPE?\r
        JRST REWLP              ;YES, CONTINUE\r
 REW3:  POP PDP,DEVDAT\r
index 3fdfbf0..060894e 100644 (file)
@@ -76,6 +76,10 @@ IFN FTDISK,<
        PUSHJ PDP,ACCINI        ;AT ONCE ONLY TIME) USED BY DISK DEVICE DATA BLOCKS\r
                                ; (IF THIS IS RESTART)\r
 >\r
+IFN FTSWAP,<\r
+        EXTERN SWPINI\r
+        PUSHJ PDP,SWPINI        ;INIT SWAPPING SPACE ALLOCATION\r
+>\r
        MOVEI 1,IOGO\r
        HRRM 1,SYSDSP           ;FALL INTO IOGO\r
 \f;INITIALIZE ALL IODEVICES\r