X-Git-Url: http://git.sky-visions.com/cgi-bin/gitweb.cgi/retro-software/dec/tops10/v4.5.git/blobdiff_plain/d693caac75dd25e668e43e85c29205bfc8dea06e..bb920f47d2b4fd2ac0c46c72df890dfe6931e943:/src/onceb.mac diff --git a/src/onceb.mac b/src/onceb.mac index 0ad5215..89b786d 100644 --- a/src/onceb.mac +++ b/src/onceb.mac @@ -58,6 +58,7 @@ IFN FT2REL,< CONSO APR,NXM ;NON-EXISTENT? SOJG TAC, .-3 ;NO,KEEP LOOKING AS LONG AS NOT TOP OF MEMORY SUBI DAT,700 ;MAKE ROOM FOR TENDUMP AT TOP OF CORE + JSR MOVSTP ;MOVE DDT SYMBOL TABLE POINTER TO LOWER CORE ; (DDTSYM=36) WHERE EXEC DDT EXPECTS IT. ; IF NOT ALREADY MOVED THERE. RETURN POINTER IN UUO HLRE TAC1,UUO ;-LENGTH OF S. T. @@ -112,7 +113,6 @@ IFN FTDISK,< ;INITIALIZE DISK EXTERN NULPDL,DSKINI - MOVEI PDP,NULPDL PUSHJ PDP,DSKINI ;INITIALIZE THE DISK ; AFTER SETTING UP CHANNEL LOC @@ -150,6 +150,7 @@ UUOTRP: JSR UUO0 ;TO UUO HANDLER 0 ;LOC 60/61 TRAPPED TO FOR UNIMPLEMENTED OP CODES ON PDP-10 ;OP CODE 100 IS USED TO DISMISS USER MODE INTERRUPTS(SEE TRPSET UUO) JSR UUO2 ;GO SEE IF OP CODE 100 OR SOME OTHER ONE + IFN FT2REL,< ;SET LOC TWOREG TO -1 IF MACHINE HAS TWO RELOC REG,0 IF ONLY ONE RELOC REG EXTERN TWOREG,SEGN,SEGPTR,AND2RG,JOBN @@ -184,6 +185,7 @@ TSTAPR: 0 ;PLACE TO SIDE JSR PC MOVNI TAC,SEGN ;SET LH OF POINTER TO FIRST SEG IN JBTXX TABLES HRLI TAC,JOBN ;SET RH OF POINTER TO FIRST HIGH SEG ;THIS MUST BE DONE HERE BECAUSE SEGPTR APPEARS IN FIRST + ; WHICH BUILD FORBITS FROM HAVING EXTERNALS MOVSM TAC,SEGPTR ;POINTER USED FOR AOBJN LOOPS CONO PI,10000 ;CLEAR PI SYSTEM @@ -202,14 +204,14 @@ TSTAPR: 0 ;PLACE TO SIDE JSR PC ; 2. JUNK JUNK(NON-NEG) S.T.PTR ; 3. S.T.PTR S.T.PTR JUNK -;CALL: JSP MOVSTR +;CALL: JSP MOVSTP ; RETURN WITH AC UUO SET TO SYMBOL TABLE POINTER ;CALLED FROM MANDATORY ONCE ONLY CODE AND 141 START CODE(WHICHEVER OCCURS FIRST) - INTERN MOVSTR + INTERN MOVSTP EXTERN T30SYM,JOBSYM,DDTSYM,DDTX,SYSDDT -MOVSTR: 0 ;JSR HERE FROM MANDATORY ONCE ONLY CODE AND +MOVSTP: 0 ;JSR HERE FROM MANDATORY ONCE ONLY CODE AND ; FIRST JUMP TO EXEC DDT IF BEFORE MONITOR STARTED MOVJMP: JRST .+1 ;PATCHED TO SETUUO AFTER FIRST EXECUTION MOVE UUO,T30SYM ;ASSUME LOADED BY REGULAR 10/30 @@ -228,14 +230,14 @@ REGT30: MOVEM UUO,DDTSYM ;STORE THE SYMBOL TABLE POINTER FOR EXEC DDT SETUUO: MOVE UUO,DDTSYM ;RETURN THE CORRECT(MAYBEUPDATED IF ; EXEC DDT PATCHES MADE BEFORE MONITOR SAVED OR ; STARTED) SYMBOL TABLE POINTER - JRST @MOVSTR ;RETURN + JRST @MOVSTP ;RETURN ;HERE IF EXEC DDT IS STARTED UP BEFORE MONITOR(TO MAKE A PATCH FOR EXAMPLE) INTERN PATSYM EXTERN DDTX -PATSYM: JSR MOVSTR ;MOVE DDT SYMBOL TABLE POINTER SO EXEC DDT WILL +PATSYM: JSR MOVSTP ;MOVE DDT SYMBOL TABLE POINTER SO EXEC DDT WILL ; FIND IT AND PATCH 141 TO GO DIRECTLY TO EXEC DDT JRST DDTX ;AND GO DIRECTLY TO EXEC DDT @@ -349,7 +351,6 @@ TIMLOP: SETZM TIME JRST TIMLOP ;ILLEGAL CHARACTER MOVE TAC,TAC1 IDIVI TAC,^D100 ;TAC=HRS.TAC1=MINS - SKIPL TAC ;HRS NEGATIVE? CAILE TAC,^D23 ;OR .G. 23? JRST TIMLOP ;OUT OF BOUNDS @@ -378,7 +379,7 @@ IFN FT2REL,< MOVEI TAC,2 PUSHJ PDP,RADX10 ;NO. SECOND REG EXISTS. PUSHJ PDP,INLMES - ASCIZ /RELOC. REG. + ASCIZ / RELOC. REG. / PUSHJ PDP,OPOUT > @@ -396,7 +397,7 @@ CONFLP: SKIPN AC1,INTTB1(PROG) ;INT LOC HAVE DEV DATA BLOCK? ASCIZ / / HLLZ TAC1,DEVNAM(AC1) ;DEVICE NAME PUSHJ PDP,PRNAME ;PRINT IT - SOJLE UUO,SINGLE ;IS THIS JUST A SIGNLE DEVICE? + SOJLE UUO,SINGLE ;IS THIS JUST A SINGLE DEVICE? PUSHJ PDP,INLMES ;NO, APPEND 'S TO DEVICE NAME ASCIZ /'S/ SINGLE: PUSHJ PDP,CRLF ;PRINT CR LF @@ -687,7 +688,7 @@ IFE FTTTYSER,< MOVE TAC,LINEP ;RESET BYTE POINTER> DELETE: IFN FTTTYSER,< PUSHJ PDP,DCPUTR JRST DELET1> IFE FTTTYSER,< - JUMPE ITEM,DELET1 ;AT BEGINNING OF LINE?> + JUMPE ITEM,DELET1 ;AT BEGINNING OF LINE? ADD TAC,[XWD 070000,0] ;NO, BACK UP BYTE POINTER TLNE TAC,400000 ;FINISHED THIS WORD YET? ADD TAC,[XWD 347777,-1] ;YES, BACK UP ADDRESS> @@ -799,7 +800,7 @@ LINBUF: BLOCK 30 ;MESSAGES -TSEXEC: ASCIZ /MONITOR JUST LOADED +TSEXEC: ASCIZ / MONITOR JUST LOADED / TODATE: ASCIZ / TYPE TODAY'S DATE AS MM-DD-YY @@ -921,7 +922,7 @@ IFE FTRC10, < IFN FTRC10, < HRRZ TAC,SATPTR -SETS5X: CAIL TAC,SATTOP +SETS5X: CAIL TAC,SATTOP JRST SAT05 ;EXIT FROM DFWUNS BACK TO DSKINI IN DSKSER........ ADDI TAC,SENTSZ MOVEI TAC1,411000 ;ON THE NEW PDP-10 DISK SYSTEM SET THE SAT ENTRY @@ -1540,7 +1541,7 @@ CPCT2: SUBI TAC,1 POP PDP,LBHIGH ;RESTORE PREVIOUSLY EXISTING VALUE OF THE HIGHEST ; LEGAL LOGICAL DISK BLOCK NUMBER. POPJ PDP, ;***SUBROUTINE EXIT***....... -i + CPCT3: POP PDP,TAC CONSZ DSK,NRDY ;NON-EXISTENT DISK? @@ -1594,7 +1595,7 @@ WRLK9: PUSHJ PDP,ICONM ;PRINT ERROR MESSAGE WRLKM1: ASCIZ /DISK BLOCK 0 WRITE ERROR DURING WRITE-LOCK CHECK. / WRLKM2: ASCIZ /"MAINTENANCE SEGMENT" SWITCH MUST BE OFF. AND -DIS WRITE PROTECTION SWITCHES MUST BE SET TO 0000 AND "LESS THAN", +DISK WRITE PROTECTION SWITCHES MUST BE SET TO 0000 AND "LESS THAN", FIX THEM ! ! /