From 602b67d7b4606f6f3e3f048ffae122cf6d4ce185 Mon Sep 17 00:00:00 2001 From: Lars Brinkhoff Date: Tue, 30 Apr 2019 07:44:54 +0200 Subject: [PATCH] Add some old .INFO. files. --- doc/_info_/?.info | 2 + doc/_info_/^ddt.histry | 15 + doc/_info_/its.info | 1382 ++++++++++++++++++++++++++++++++++++++++ 3 files changed, 1399 insertions(+) create mode 100644 doc/_info_/?.info create mode 100644 doc/_info_/^ddt.histry create mode 100644 doc/_info_/its.info diff --git a/doc/_info_/?.info b/doc/_info_/?.info new file mode 100644 index 00000000..e3171223 --- /dev/null +++ b/doc/_info_/?.info @@ -0,0 +1,2 @@ +TYPE IN A SYSTEM'S NAME. +  \ No newline at end of file diff --git a/doc/_info_/^ddt.histry b/doc/_info_/^ddt.histry new file mode 100644 index 00000000..271e63dd --- /dev/null +++ b/doc/_info_/^ddt.histry @@ -0,0 +1,15 @@ + +Historical footnote: DDT was developed at MIT for the +PDP-1 computer in 1961. At that time DDT stood for "DEC +Debugging Tape". Since then, the idea of an on-line +debugging program has propagated throughout the computer +industry. DDT programs are now available for all DEC +computers. Since media other than tape are now frequently +used, the more descriptive name "Dynamic Debugging Technique" +has been adopted, retaining the DDT acronym. Confusion +between DDT-10 and another well-known pesticide, dichloro- +diphenyl-trichloroethane (C H Cl ), should be minimal since + 14 9 5 +each attacks a different, and apparently mutually exclusive, +class of bugs. +  \ No newline at end of file diff --git a/doc/_info_/its.info b/doc/_info_/its.info new file mode 100644 index 00000000..3e226b43 --- /dev/null +++ b/doc/_info_/its.info @@ -0,0 +1,1382 @@ +WHILE ITS IS RUNNING, IT USUALLY DISPLAYS, ON THE BOTTOM BAY OF +LIGHTS ON THE PDP-10, WHICH JOB IS BEING RUN. THE NUMBER OF THE LIT +UP BIT IS WHICH JOB IS CURRENTLY RUNNING. + +ALL IMPLEMENTED SYMBOLIC +SYSTEM CALLS (SUCH AS OPEN AND DELETE) +ARE LISTED AS SIXBIT NAMES IN ITS AT THE TABLE CALLED SYSCTB:. THE APPROPRIATE +LOCATIONS WHERE EACH OF THESE CALLS ARE EXECUTED ARE LISTED IN THE TABLE +CALLED SYSCTD:. MOST OF THE CALLS HAVE SOME DOCUMENTATION IN THE ITS +LISTING VERY CLOSE TO THE ROUTINE THAT EXECUTES THE CALL. + +THE ITS CODE THAT EXECUTES USER UUOS USUALLY STARTS WITH A TAG BEGINNING +WITH THE LETTER "A" AND AUGMENTED WITH THE NAME OF THE UUO. FOR EXAMPLE, +TO LOOK AT THE CODE THAT HANDLES A .IOT, LOOK UP THE SYMBOL "AIOT". OCCASIONALLY +THE SYMBOL STARTS WITH "N" RATHER THAN "A". DISK ROUTINE PROCEDURES ALMOST +ALWAYS BEGIN WITH "Q", AND TELETYPE CODE WITH "TT". + +USER VARIABLES ARE STORED SUCH THAT ALL THE VARIABLES FOR A SINGLE JOB +ARE TOGETHER. THE SYMBOL "L" IS DEFINED EQUAL TO THE TOTAL SIZE +OF THE VARIABLE BLOCK. HENCE, FOR EXAMPLE, THE UNAME OF THE JOB +WITH INDEX 30 IS STORED IN LOCATION UNAME+30*L. +WHILE ITS IS RUNNING THE JOB WITH INDEX N, ACCUMULATOR +U CONTAINS N*L. WHEN ITS WANTS TO SCHEDULE(RUN) A CERTAIN JOB, +FIRST THAT JOB'S USTP MUST BE 0. THEN, THAT JOBS FLSINS(FLUSH INSTRUCTION) +IS EXECUTED, AND THE JOB DOES NOT RUN UNLESS THE INSTRUCTION SKIPS. + THE FORMAT FOR EXECUTING A NEW SYSTEM CALL IS: + +CALL: .CALL CALBLK ;THE CALL ITSELF + ;ERROR RETURN IS TO CALL+1 + ;SUCCESSFUL RETURN IS TO CALL+2 + + + ... + +CALBLK: SETZ ;ALWAYS + SIXBIT /NAME/ ;WHERE "NAME" IS ANY IMPLEMENTED CALL + ARG1 ;ARGUMENTS START HERE + ARG2 + + ... + + SETZ ARGN ;BIT 4.9 ON MEANS THIS ARG IS THE LAST ONE + +A LIST OF ALL IMPLEMENTED SYSTEM CALLS MAY BE SEEN +IN DSK:SYSENG;ITS > STARTING AT SYSCTB:. THE ACTUAL ADDRESSES WITHIN ITS +WHERE EACH CALL IS EXECUTED MAY BE FOUND FROM THE TABLE +STARTING AT SYSCTD:. + +TYPES OF ARGS: + + THERE ARE THREE MAIN TYPES OF ARGS: INPUT, RESULT AND CONTROL BIT. +THEY ARE DISTINGUISHED BY BITS 4.2 AND 4.3 OF THE ARGUMENT WORD: + 4.3, 4.2 = 0 -- INPUT + =1 -- RESULT + =2 -- CONTROL BIT. + THE ORDER OF THE INPUT ARGS MATTERS; SO DOES THE ORDER +OF THE RESULT ARGS. OTHER THAN THAT, THE ORDER IS IRRELEVANT. + +INPUT ARGS: MAY OR MAY NOT BE IMMEDIATE, ACCORDING TO BIT 4.1 . + IN EITHER CASE, AN EFFECTIVE ADDRESS IS CALCULATED +FROM THE R.H., INDEX AND INDIRECT FIELDS. +IF THE ARG IS IMMEDIATE, THAT ADDRESS IS ACTUALLY PASSED TO THE +SYSTEM CALL; OTHERWISE, THE WORD AT THAT ADDRESS IS PASSED. +(EXCEPTION: SOME SYSTEM CALLS UPDATE THEIR INPUT ARGS. +THOSE ARGS USUALLY MAY NOT BE IMMEDIATE.) +THE VALUES OF THE INPUT ARGS GIVEN ARE PASSED IN ORDER TO +THE SYSTEM CALL, WHICH MAY NOT USE ALL OF THEM. +IF MORE THAN 8 INPUT ARGS ARE GIVEN, AN ERROR WITH STATUS CODE 15 +IS INDICATED. FEWER ARGS THAN THE PARTICULAR CALL REQUIRES +RESULTS IN AN ERROR WITH CODE 30 . + +RESULT ARGS: + CANNOT BE IMMEDIATE. THE EFFECTIVE ADDRESS IS CALCULATED +AS USUAL, AND THE VALUE RETURNED BY THE SYSTEM CALL +IS STORED IN THE WORD AT THAT ADDRESS. +IF THERE ARE SEVERAL RESULT ARGS, EACH WILL GET THE NEXT +SUCCESSIVE VALUE RETURNED BY THE SYSTEM CALL. IF THERE ARE +MORE RESULT ARGS THAN THE SYSTEM CALL RETURNS VALUES, +JUNK WILL BE STORED IN THE EXCESS RESULT ARGS. +IF MORE VALUES ARE RETURNED THAN THERE ARE RESULT ARGS, +THE EXTRA VALUES WILL BE IGNORED. +MORE THAN 8 RESULT ARGS CAUSES AN ERROR RETURN. + +CONTROL BIT ARGS: MAY OR MAY NOT BE IMMEDIATE. + THE VALUES OF ALL CONTROL BIT ARGS GIVEN +ARE XOR'ED TOGETHER, AND THE RESULT MAY OR MAY NOT BE USED +BY THE SYSTEM CALL. ONLY THE RIGHT HALF OF A NON-IMMEDIATE +CONTROL BUT ARG IS SIGNIFICANT. +FAILURE-CODES RETURNED BY NEW SYSTEM CALLS (AND .OPEN'S, ETC.) + + THE FAILURE CODE FROM A NEW SYSTEM CALL THAT DOESN'T SKIP +CAN BE OBTAINED BY READING THE .BCH USET VARIABLE TO FIND THE +NUMBER OF THE CHANNEL ON WHICH THE CODE WAS RETURNED, AND THEN +READING THAT CHANNEL'S .IOC VARIABLE TO GET A WORD WITH THE ERROR +CODE IN BITS 3.1 - 3.6 . + +CODE MESSAGE + +1 NO SUCH DEVICE +2 WRONG DIRECTION +3 TOO MANY TRANSLATIONS +4 FILE NOT FOUND +5 DIRECTORY FULL +6 DEVICE FULL +7 DEVICE NOT IN READY STATUS +10 DEVICE NOT AVAILABLE +11 ILLEGAL FILE NAME +12 MODE NOT AVAILABLE +13 FILE ALREADY EXISTS (RENAME) +14 BAD CHANNEL NUMBER +15 TOO MANY ARGUMENTS (CALL) +16 PACK NOT MOUNTED +17 DIRECTORY NOT AVAIL NOW (ALL DIREC CHNLS IN USE) +20 USER DOESN'T EXIST +21 LOCAL DEVICE ONLY +22 SELF CONTRADICTORY OPEN COMMAND +23 ATT MODIFY WRITE ON FILE OPEN FOR READ +24 MFD FULL +25 DEVICE NOT ASSIGNABLE TO THIS PROCESSOR +26 DEVICE WRITE-LOCKED +27 LINK DEPTH EXCEEDED +30 TOO FEW ARGUMENTS (CALL) +31 CAN'T MODIFY JOB. +32 CAN'T GET ACCESS TO PAGE. +33 SELF-CONTRADICTORY ARGS (CALL) +34 WRONG TYPE DEVICE. +35 NO JOB WITH THAT NUMBER. +36 VALID CLEAR OR STORED SET (JOBRET, JOBGET) +37 NO CORE AVAILABLE. +40 NOT TOP LEVEL. + THIS FILE LISTS ALL SYSTEM CALLS AND UUO'S. EACH CALL IS LABELED +WITH ITS NAME. THE LABELS IN PARENTHESIS ARE THE LOCATIONS OF +THE ACTUAL ROUTINES. THE NUMBERS FOLLOWING THE SYSTEM LABELS ARE +THE PAGE AND LINE NUMBERS OF THE LABEL IN SYSENG;. A PAGE NUMBER +WITH NO SPECIAL CHARACTER IN FRONT OF IT MEANS THAT IT IS IN ITS > +(CURRENTLY 819); AN '!' IN FRONT OF THE PAGE NUMBER MEANS THAT THE +LABEL IS IN TS2TTY > (CURRENTLY 45); AND A '"' IN FRONT OF THE PAGE +NUMBER MEANS THAT THE LABEL IS IN MTAPE > (CURRENTLY 51). +REFERENCES TO 'ITS REF MAN' ARE TO THE ITS 1.5 REFERENCE MANUAL +(MEM0 NO. 161A). SECTION NUMBERS ARE INCLUDED. + + + +RANGET: (ARANGT:!001 049) + .CALL ADR + RETURN + ADR: SETZ + SIXBIT /RANGET/ + 402000,,FOO + FOO: 0 + RETURNS 4.9=1 => DOES NOT HAVE TTY NOW + 1.1-1.6 CONSOLE TTY # + 1.7-2.3 USER # + + + +ATTY: (AATTY:!006 004) .OPER 11 + .ATTY USR, + SEE ITS REF MAN 3.2.1.1 + + + +DTTY: (ADTTY:!008 002) .OPER 12 + SEE ITS REF MAN 3.2.1.1 + + + +TTYGET: (ATTYGT:!009 036) + GETS TTYST1, TTYST2 AND TTYSTS WHEN THE USER HAS THE TTY + HANGS UNTIL HE GETS IT + ALSO RETURNS HIS TTYTYP, TCTYP AND TCECL. + THE RH OF TTYSTS AS RETURNED IS PRE-DIVIDED BY LUBLK + + + +TTYSET: (ATTYST:!009 004) + SETS TTYST1, TTYST2 TTYSTS AND SCNBTM WHEN THE USER HAS THE TTY + HANGS UNTIL HE GETS IT + + + +RCPOS: (ARCPOS:!010 036) + RCPOS SYSTEM CALL. (READ CURSOR POSITION) + 1 ARG - TTY OR STY CHNL. + 1ST VALUE ,, + 2ND VALUE
,,
+ 1ST VALUE IRRELEVANT IF NO ECHO LINES. + + + +SCML: (ASCML:!010 049) + SCML SYSTEM CALL. + SET # COMMAND LINES + 1ST ARG TTY OR STY CHNL, + 2ND ARG IS DESIRED # COMMAND LINES + (FOR ECHOING AT BOTTOM OF SCREEN) + 2ND ARG 0 => NO ECHO REGION. + + + +CNSSET: (NCNSSET:!011 018) + CNSSET SYSTEM CALL. + 1ST ARG TTY OR STY CHNL. NEXT ARGS SET + VERT SIZE, HORIZ SIZE, TCTYP, TTYCOM, TTYTYP VARS RESPECTIVELY. + TCTYP CAN'T BE SET TO A NONSENSE VALUE, + SOME TTYCOM VARS CAN'T BE SET. + IF 2ND (3RD) ARG NEGATIVE, VERT SIZE (HORIZ SIZE) NOT CHANGED. + + + +RSSIZE: +CNSGET: (ARSSIZ:!011 005) (NCNSGET:!011 004) + CNSGET OR RSSIZE SYSTEM CALL. + READ SCREEN SIZE + 1 ARG - TTY OR STY CHNL. + RETURNS THE SAME VARS THAT CNSSET SETS, IN THE SAME ORDER. + RETURN PERMANENT AND SEMIPERMANENT TTY INFO. + + + +UNMORE: (NUNMORE:!012 007) + UNMORE SYSTEM CALL. + LEAVE **MORE** STATE, ECT. + 1ST ARG IS TTY OR STY CHNL, + 2ND (OPTIONAL) USED TO SET SCNBTM VAR. + CTL BIT 1.1 => FLUSH NEXT INPUT CHAR (WITHOUT ECHOING IT) + CTL BIT 1.2 => REENTER MORE STATE, LOOKING AGAIN FOR AN INPUT CHAR. + RETURNS SCNBTM VAR AS IT IS AFTER ACTIONS. + + + +LISTEN: (ALISTEN:!021 021) (NLISTE:!021 040) .OPER 2 + SEE ITS REF MAN 3.2.1.2 + + + + +ITYIC: (AITYIC:!021 002) .OPER 60 + SEE ITS REF MAN 2.7.3 + + + +ITYI: (AITYI:021 007) .OPER 1 + READ INTERRUPT LEVEL CHARACTERS FROM OPEN TTY DEVICE, IF ANY. + BEING REPLACED BY ITYIC + + + +MTAPE: (AMTAPE:"017 006) .OPER 107 + .MTAPE AC, + AC/ CHNM,COMMAND + COMMAND/ COUNT,,FUNCTION + + + +SWAP: (ASWAP:032 137) .OPER 106 + AC/ 4.9 =>1 SWAP OUT USER + 4.8 => 1 ALL PAGES + 4.7=1 => LOOP FOR A WHILE + 3.6-3.1 USER # SELF IF 0 + RH => USER VIRTUAL PG # + OR 4.9=0, 4.8=0, 4.7=0 SWAP OUT RH # OF PAGES + IF 4.9=0, 4.8=1 AND 4.7=0, HACK PCLSR TEST FEATURE ON CURRENT USER + RH =0 LEAVE PCLSR TEST MODE + =1 ENTER IN ADVANCE MODE + =-1 ENTER IN HOLD MODE + =2 ENTER IN ADVANCE BUT DON'T ^Z + + + +UTRAP: (AUTRAP:062 035) UUO 51 + GET UUO TRAP INT BIT + + + +ILUUO: (AILUUO:062 034) UUO 50 + ILLEGAL SYSTEM UUO + + + +ACCESS: (NACCES:063 055) (AACCES:063 048) UUO 47 + SET ACCESS POINTER + SEE ITS REF MAN 2.7.4 + + + +IOT: (NIOT:063 027) (AIOT:063 035) UUO 40 + SEE ITS REF MAN 5.3.2 + + + +BREAK: (ABREAK:063 021) UUO 45 + INTERRUPT TO SUPERIOR + SEE ITS REF MAN 5.3.2 + + + +UIOT: (AUIOT:064 004) UUO 52 + ROUTINES TO SIMULATE SOME USER EXECUTED I/O INSTRUCTIONS + + + +USET: (AUSET:065 016) UUO 44 + .USET CH,[N,,LOC] + IF N&200000=1, BLOCK MODE + IF N&400000=0, READS USER VAR SPECIFIED BY REST OF N + FOR INFERIOR OR FOREIGN USER OPEN ON CHANNEL CH + INTO USER LOCATION LOC + IF N&400000.NE.0, SETS USER VAR SPECIFIED BY REST OF N + FOR DIRECTLY INFERIOR USER OPEN ON CHANNEL CH + FROM USER LOCATION LOC + SEE ITS REF MAN 5.2.3 + + + +SUSET: (ASUSET:065 004) .CALL 13, + .SUSET [N,,LOC] + SAME AS .USET, BUT REFERS TO SELF + SEE ITS REF MAN 4.5 + + + +HANG: (AHANG:073 006) .OPER 47 + + .HANG + USER INSTRUCTION HANG ROUTINE + DOESN'T WORK FOR SWAPPED OUT USER MEMORY,BUT LEAVE IN FOR DEMON + TO HANG ON EXEC CORE NEVER SWAPPED OUT + GET USER'S FLUSH INSTRUCTION (PREVIOUS INSTRUCTION) + CHECK FOR CAMX,TDNX,TSNX,SKIPX,XCT,OR CONSX INSTRUCTIONS + AOS & SOS ARE ILLEGAL + SO ARE SKIP INSTRUCTIONS WITH NON-ZERO AC FIELD + MAKE IT THE JOB FLUSH INSTRUCTION + (IE. RUN JOB ONLY IF SKIPS) + THIS OPER HAS DELETED THE .RD710 OPER + + + +OPEN: (AOPEN:075 024) (NOPEN:078 001) UUO 41 + .OPEN CH,ADR + ERROR RETURN + NORMAL RETURN + ARGS 1 RH HAS CHANNEL NUMBER, + LH IS XOR'ED TOGETHER WITH CONTROL-BIT ARGS TO + DETERMINE THE MODE TO OPEN IN + 2 LEFT-JUSTIFIED DEVICE NAME + 3 FN1 + 4 FN2 + 5 SNAME, IF LESS THAN 5 ARGS, IT DEFAULTS TO JOB'S SNAME + NO VALUES RETURNED (RESULT ARGS WILL BE IGNORED) + J + ADR: MODE,,(SIXBIT /DSK/) + FN1 + FN2 + + ADR: MODE,,(SIXBIT /JOB/) + FN1 + FN2 + + ADR: MODE,,(SIXBIT /USR/) + UNAM + JNAME + + ADR: MODE,,(SIXBIT /NET/) + LOCAL SOCKET NUMBER (1.1-4.5) + FOREIGN SOCKET NUMBER (1.1-4.5) + FOREIGN HOST NUMBER (1.1-1.8) + SPECIAL MODE BITS FOR NET + 3.4 = 1 => GENERATE UNIQUE LOCAL RECEIVE (SEND) + SOCKET NUMBER + 3.4 = 0 => USE LOCAL SOCKET NUMBER SPECIFIED IN BLK+1 + 3.5 => OPEN SOCKET IN LISTEN MODE + 3.6 => IF IMAGE MODE, USE BYTE SIZE IN 4.1-4.6 + IF ASCII MODE, USE 8 BIT BYTES RATHER THAN 7 + 4.1-4.6 = BYTE SIZE IN IMAGE MODE + + GENERAL MODE BITS + 3.1=0 => INPUT =1 OUTPUT + 3.2=0 => UNITS =1 BLOCK + 3.3=0 => ASCII =1 IMAGE + 4.9-4.7 OPERATION FIELD + 0=> NORMAL READ OR WRITE + 1=> WRITE OVER MODE + 2=> MAKE LINK + 3=> "COPY OVER" MODE + 4=> DELETE OR RENAME (INTERNAL) + SEE ITS REF MAN 2.2 + + + +FDELETE: (AFDELE:075 004) .CALL 11, + .FDELE FILBLK + DELETE OR RENAME FILE SPECIFIED AT FILBLK + SEE DELETE + + + +RENAME: (NRNAM:078 055) + RENAMES THE FILE WITH THE "OLD" NAMES ON SPECIFIED + DEVICE AND DIRECTORY TO HAVE THE "NEW" NAMES + ARGS 1 LEFT-JUSTIFIED DEVICE NAME + 2 OLD FN1 + 3 OLD FN2 + 4 SNAME + 5 NEW FN1 + 6 NEW FN2 + NO RESULT ARGS + + + +MLINK: (NMLINK:078 044) + MAKE LINK + ARGS 1 LEFT-JUSTIFIED FROM-DEVICE + 2 FROM-FN1 + 3 FROM-FN2 + 4 FROM-SNAME + 5 TO-SNAME + 6 TO-FN1 + 7 TO-FN2 + NO VALUES RETURNED + + + +RENMWO: (NRNWO:078 061) + CHANGES THE NAME UNDER WHICH A FILE IS BEING WRITTEN + TO THE "NEW" NAMES. THE PREVIOUS NAMES ARE IRRELEVANT. + ARGS 1 CHANNEL NUMBER OF FILE BEING WRITTEN + 2 NEW FN1 + 3 NEW FN2 + NO RETURNED VALUES + + + +DELETE: (NDEL:078 052) + DELETES A FILE (LIKE .FDELE) + ARGS 1 LEFT JUSTIFIED DEVICE NAME + 2 1ST FILE NAME + 3 2ND FILE NAME + 4 SNAME, DEFAULTS TO JOB'S SNAME + NO VALUES RETURNED + MAY FAIL IF FILE DOESN'T EXIST, ECT. + + + +RCHST: (ARCHST:080 002) .OPER 103 +? CHNL IN LH OF AC+ IF UTAPE THEN TAPE NAME IN LH +? SUPPLY SYM DEVICE IN AC(RH) +? AC+1 GETS 0 IF NOT A FILE DEVICE +? ELSE AC+1 GETS FILE NAME 1 +? AC+2 GETS FNM 2 +? AC+3 GETS SYS NAME OR 0 IF NOT APPLICABLE +? AC+4(RH) GETS WORD ADR (ACCES POINTER) IN FILE +? OR -1=> NOT RANDOMLY ADDRESSABLE +? AC+4 (LH) GETS CHR BYTE PNTR IF IN CHR MODE + + ABOVE INFO PERHAPS WRONG...FOLLOWING DOES WORK: + MOVE AC,[CHNL,,ADDR] + .RCHST AC, + . + . +ADDR: 0 ;DEVICE OPEN ON + 0 ;FNAM1 + 0 ;FNAM2 + 0 ;SNAME + 0 ;'AC+4' AS EXPLAINED ABOVE + + + + +STATUS: (ASTATUS:085 005) UUO 46 + .STATUS CH,LOC + STORE IN LOC THE STATUS OF CHANNEL CH + AND OF THE DEV OPEN ON IT IF ANY + SEE ITS REF MAN 2.5 + + + +RESET: (ARESET:086 006) .OPER 37 + .RESET CH, + RESET BUFFERED INFO ON CHANNEL CH + NOT IMPLEMENTED FOR MANY DEVICES + HAS SPECIAL EFFECTS ON "USR" DEVICE + SEE ITS REF MAN 2.7.3 + + + +OPER: (AOPER:088 004) UUO 42 + OPER DISPATCH + SEE ITS REF MAN 1.2.1 + + + +CALL: (ACALL:088 016) (NCALL:091 019) UUO 43 + CALL DISPATCH + SEE ITS REF MAN 1.2.1 + + +SSTATU: (ASSTATUS:085 052) + GET VARIOUS SYS STATUS + + + +SHUTDN: (ASHUTDN:089 003) .OPER 67 + SHUT DOWN SYSTEM + ILLEGAL FOR DISOWNED PROCEDURE + SEE ITS REF MAN 6.5.2.1 + + + +DIETIME: (ADIETIM:089 025) .OPER 66 + READ TIME TILL SYSTEM DOWN + SEE ITS REF MAN 6.5.2.2 + + + +REVIVE: (AREVIVE:089 032) .OPER 65 + REVIVE SYS + THIS OPER HAS DELETED THE .HANGU OPER, WHICH WOULD HANG UP A + PHONE LINE + + + +SYSCALL: (ASYSC:091 013) .CALL 0, + .CALL ADR + ERROR RETURN + NORMAL RETURN + ADR: SETZ + SIXBIT // + REPEAT #ARGS,BITS,,
+ BITS 4.9 => LAST ARG + 4.3 - 4.1 0 = NORMAL ARG + 1 = IMMEDIATE + 2 = OUTPUT ARG + 4 = WORD OF CONTROL BITS + 5 = IMMEDIATE CONTROL BITS + + + +PDUMP: (PDUMP:094 012) + .PDUMP ADR + ERROR RETURN + NORMAL RETURN + ADR: SETZ + SIXBIT /PDUMP/ + POINTER TO INFERIOR CHANNEL + POINTER TO DISK CHANNEL + POINTER TO STATE WORD + STATE WORD: 0 (INITIALLY) + 4.9 + N => READY TO DUMP PAGE N + JOB SPEC'D MUST BE OUR INFERIOR + + + +LOAD: (NLOAD:097 028) + PURE LOAD + .CALL ADR + ADR: SETZ + SIXBIT /LOAD/ + [] + SETZ [DSKCHN] + PAGE WORD + 4.9=1 ABSOLUTE + 4.8=1 SHARED WITH OTHER PAGES AT LEAST ONE OF WHICH IS WRITE + 4.7=1 LINK WITH VIRT PG IN RH 1.8-1.1 + 2.7=1 WORD ALREADY PROCESSED + + + +PAGEID: (APGID:105 022) + .CALL ADR + ADR: SETZ + SIXBIT /PAGEID/ + ARG1 + ARG2 + 402000,,ARG3 + ARG1/ N ;VIRTUAL PAGE NUMBER (MUST NOT BE ZERO) + ARG2/ ID ;SIX BITS OF IDENTIFIER (1.1-1.6) + ARG3/ ;SET TO -1 IF NEW PAGE CREATED, + ;0 IF LINKED TO EXISTING PAGE + INSERTS A PUBLIC PAGE WITH IDENTIFIER -ID- IN USERS MAP + AS PAGE SPECIFIED BY FIRST ARGUMENT. IF A PUBLIC PAGE + WITH IDENTIFIER -ID- ALREADY EXISTS, THAT PAGE WIL BE + INSERTED IN THE USERS MAP. IN THE FIRST CASE ARG3 WILL + BE SET TO -1, IN THE SECOND CASE IT WILL BE SET TO 0. + SKIPS UNLESS BAD ARGUMENTS OR RANDOMNESS. + + + +SUPSET: (ASUPSET:107 002) .OPER 53 + SEE ITS REF MAN 6.5.1 + + + +GUN: (AGUN:107 011) .OPER 21 + DESTROY PROCEDURE TREE WHOSE TOP INDEX SUPPLIED BY USER + ILLEGAL FOR DISOWNED PROCEDURE + SEE ITS REF MAN 5.4 + + + +REALTIME: (AREALT:108 021) .OPER 34 + + REAL TIME USER FEATURE + .REALT AC, + SKIPS ONLY IF REAL TIME FACILITY REQUESTED AND SEIZED + AC= 4.9=>TURN OFF OLD CLOCK RATE + FLUSHING REAL TIME FACILITY AND REMAINDER + OF CURRENT TICK AND ZEROING TICK COUNT + 4.8=>TURN ON NEW CLOCK RATE + 4.7=>TRY TO SEIZE REAL TIME USER FACILITY + 4.6=>DON'T SETTLE FOR PSEUDO-REAL TIME STATUS + 4.5 =>ONLY WANT PSEUDO + 4.4=>PROGRAM TO BE BLOCKED EXCEPT FOR HIGH PRIORITY + PHASE OR INT. LEVEL + 4.3=>READ INTO WD3+4 AS DESCRIBED BELOW + (BEFORE ANY OTHER BITS INTERPRETED) + 3.1-4.2=RESERVED FOR EXPANSION, SHOULD BE ZERO + 1.1-2.9 (RH) POINTER TO 4 WORD BLOCK + WD1 FRAME TIME IN 60'THS (MUST BE <2**18.) + WD2 PRIORITY TIME IN 60'THS (MUST BE <7 AND C(TIME) + SEE ITS REF MAN 6.8.1 + + + +DISMIS: (NDISMIS:111 008) (ADISMIS:111 033) .CALL 1, + DISMIS SYSTEM CALL. + 1ST ARG INT PDL PTR + (WILL BE DECREMENTED IF NOT AN IMMEDIATE ARG) + 2ND ARG OPTIONAL PC TO DISMIS TO (OVERRIDES THAT IN INT PDL) + 3RD ARG OPTIONAL NEW .DF1 VALUE " " " " + 4TH ARG OPTIONAL NEW .DF2 VALUE ... + IF 4 ARGS GIVEN, 1ST IGNORED EXCEPT FOR POSSIBLY DECREMENTING + SEE ITS REF MAN 4.2.2 + + + +LOGIN: (NLOGIN:112 002) .OPER 6 + SKIP IF ALREADY LOGGED IN OR BAD NAME + SEE ITS REF MAN 6.1 + + + +RSYSI: (ARSYSI:112 034) .OPER 52 + SEE ITS REF MAN 6.6.3 + + + +RDSW: (ARDSW:112 052) .OPER 20 + BEING REPLACED BY DATAI + SEE ITS REF MAN 6.2.1 + + + +RDTIME: (ARDTIME:112 051) .OPER 17 + SEE ITS REF MAN 6.3.1 + + + +SETMSK: (ASETMSK:112 039) .OPER 4 + SET OPWN USER VARIABLE MSKST + BEING REPLACED BY A SUSET + + + +SETM2: (ASETM2:112 037) .OPER 5 + SEE ITS REF MAN 4.2.1 + + + +DETACH: (NDETAC:113 014) + .CALL ADR + ERROR RETURN + NORMAL RETURN + ADR: SETZ + SIXBIT /DETACH/ + SETZ [] + DISOWN JOB'S ENTIRE TREE AND FREE CONSOLE. IF TREE HAS NO + CONSOLE, JUST MAKES IT DISOWNED. NO ARG => THIS JOB'S TREE + ALWAYS SKIPS IF THE JOB SPEC IS REASONABLE. + + + +ATTACH: (NATTAC:114 009) + .CALL ADR + ERR RET + NORMAL RET + ADR: SETZ + SIXBIT /ATTACH/ + 400000,[] + + + +DISOWN: (ADISOWN:115 004) .OPER 27 + .DISOWN CH, + MAKES DIRECTLY INFERIOR PROCEDURE OPEN ON CHANNEL CH, THE + TOP LEVEL JOB OF A DISOWNED JOB + SEE ITS REF MAN 5.2.2 + + + +LOGOUT: (ALOGOUT:117 006) .OPER 33 + ROUTINE TO LOG OUT USER WITH TOP PROCEDURE INDEX IN U + SEE ITS REF MAN 6.1 + + + +ASSIGN: (AASSIGN:118 024) .OPER 43 + ASSIGN UTAPE + SEE ITS REF MAN 3.1.2.2 + + + +EOFC: (AEOFC:118 049) .OPER 50 + READ END OF FILE CHARACTER + OBSOLETE + SEE ITS REF MAN 2.3.1 + + + +DESIGN: (ADESIGN:118 038) .OPER 44 + DEASSIGN UTAPE + SEE ITS REF MAN 3.1.2.2 + + + +RTIME: (ARTIME:119 026) .OPER17 + .RTIME AC, + RETURNS SIXBIT HHMMSS (24 HOUR TIME) IN AC + SEE ITS REF MAN 6.3.2 + + + +RYEAR: (ARYEAR:119 046) .OPER 100 + .RYEAR AC, + PUSHJ'S TO RYEAR AND MOVEM'S E TO AC + + + +RDATE: (ARDATE:119 018) .OPER 46 + .RDATE AC, + RETURNS SIXBIT YYMMDD IN AC + SEE ITS REF MAN 6.3.3 + + +PDTIME: (APDTIME:119 007) .OPER 54 + .OPERS RELEVANT TO REAL TIME + .PDTIME AC, + RETURNS 60.*<# SECS SINCE BEGINNING OF YEAR> + + + +RDATIME: (ARDATI:119 034) .OPER 102 + .RDATIM AC, + DOES .RTIME TO AC, .RDATE TO AC+1 + + + +RLPDT: (ARLPDT:119 052) .OPER 101 + .RLPDT AC, + DOES .RYEAR AC+1, AND ALSO MOVEM'S A TO AC + + + +IOTLSR: (AIOTLS:125 035) .OPER 51 + OPER TO REQUEST OR FLUSH RUNNING IN IOT USER MODE + SEE ITS REF MAN 6.8.3 + + + +TRANS: (NTRNS:128 002) .CALL 2, + TRANS SYSTEM CALL. + DEFAULT 5 ARGS TO 0. + FAIL IF TOO MANY TRANSL + SEE ITS REF MAN 2.2.2.1 + + + +TRANEX: (NTRNEX:129 008) + TRANEX CALL -- READ IN A JOB'S TRANSL LIST. + 1ST ARG RH - JOB SPEC. BIT 4.8 - IF SET, TRNLS1 NOT TRNLST. + 2ND ARG AOBJN -> PLACE TO STORE LIST INTO. + UPDATED AOBJN PTR IS OUTPUT ARG. + SKIPS IF ENTIRE LIST FIT IN BUFFER. + EACH ENTRY TAKES 9 WDS OF SPACE: MODE,, IN 1ST, + INPUT DEV, FN1, FN2, SNAME; THEN OUTPUT DEV, FN1, FN2, SNAME. + + + +TRANDL: (NTRNDL:130 007) (ATRNDL:133 006) .CALL 7, + TRANDL CALL -- DELETE ENTRY FROM TRANSL LIST. + 1ST ARG RH JOB SPEC. OF JOB WHICH IS OK TO MODIFY. + 1ST ARG LH MODE BITS AS FOR .TRANAD, ALSO 4.8 BIT SAYS TRNLS1 + (SPEC'D JOB AND INFS, RATHER THAN JUST SPEC'D JOB) + 2ND ARG AOBJN -> INPUT DEV, FN1, FN2, SNAME. (ONLY DEV NEC.). + SKIPS IF SOMETHING WAS DELETED. + SEE ITS REF MAN 2.2.2.3 + + + +TRANAD: (NTRNAD:131 005) (ATRANA:133 002) .CALL 3, + TRANAD CALL. -- ADD AN ENTRY TO A TRANSL LIST. + 1ST 2 ARGS AS FOR TRANDL. + 3RD ARG LIKE 2ND BUT GIVES OUTPUT NAMES. + SKIPS UNLESS ALL ENTRIES WERE IN USE. + SEE ITS REF MAN 2.2.2.2 + + + +TRANCL: (NTRNCL:132 006) + TRANCL CALL -- RESET A ONE OR BOTH TRANSL LISTS FOR A JOB. + 1ST ARG RH HAS JOB SPEC OF MODIFYABLE JOB. + BIT 4.8 CLEAR TRNLS1 VAR. (TRANSL FOR THIS JOB & INFS). + BIT 4.7 CLEAR TRNLST VAR. (TRANSL FOR THIS JOB ONLY). + ALWAYS SKIPS IF VALID. + + + +JOBGET: (NJBGT:152 036) + .CALL ADR + ERROR RETURN + NORMAL RETURN + ADR: SETZ + SIXBIT /JOBGET/ + [BOJCHNL] + 2000,,WD1 + 2000,,WD2 + UP TO SIX WDS RETURNED + WD1 BITS: + 4.9-4.7 => IMAGE/ASCII, BLOCK/UNIT, OUTPUT/INPUT + 4.6 => INPUT CLOSE + 4.5 => OUTPUT CLOSE + 1.4-1.1 => TYPE OF SYSTEM CALL + 0 OPEN + 1 IOT + 2 STATUS + 3 RESET + 4 RCHST + 5 ACCESS + 6 FDELE (DELETE OR RENAME) + 7 FDELE (RENAME WHILE OPEN) + WD2 SET ONLY FOR BLOCK IOT POINTER, + ACCESS POINTER, NEW FN1 FOR FDELE + WD3 FN1 + WD4 FN2 + WD5 SYS NAME + WD6 LEFT ADJUSTED DEVICE NAME + WD7 NEW FN2 FOR FDELE. + IGNORE ALL RETURNED INFO ON AN ERROR RETURN + IF 4.5 OR 4.6 IS SET THEN ALL ELSE IS MEANINGLESS + + + +JOBRET: (NJBRT:153 011) + .CALL ADR + ERROR RETURN + NORMAL RETURN + ADR: SETZ + SIXBIT /JOBRET/ + [BOJCHNL] + SETZ [OPEN LOSS #(IF RH = 0),,# TIMES FOR CREATING JOB TO SKIP] + + + +SETIOC: (NSTIOC:156 015) + .CALL ADR + WON'T SKIP + ADR: SETZ + SIXBIT /SETIOC/ + ARG1 + SETZ ARG2 + ARG1: CHANNEL JOB OR BOJ DEVICE IS OPEN ON + ARG2: TYPE OF IOCER TO CAUSE + THIS CALL CAUSES THE NEXT IOT EXECUTED BY THE + PROCEDURE ON THE OTHER END OF THE CHANNEL TO GET + THE SPECIFIED IO CHANNEL ERROR + + + +JOBINT: (NJBINT:157 010) + .CALL ADR + SKIPS UNLESS JOB END OF CHNL NOT THERE + ADR: SETZ + SIXBIT /JOBINT/ + 401000,,BOJCH + GIVE CREATOR A SECOND WORD INT ON CHANNEL CORRESP TO BOJCH + + + +DEMON; (ADEMON:163 035) + + + +DEMSIG: (ADEMSIG:163 052) + + + +IOPUSH: (AIOPUSH:166 006) .OPER 13 + IO CHANNEL PUSH DOWN LIST ROUTINES + LOOK AT LH OF RESET TABLE TO SEE IF DEVICES HAVE ROUTINES + (FOR INTERRUPTS ETC) + C(I) =0 AT DSP => IOPUSH =1 => IOPOP + SEE ITS REF MAN 2.6.1 + + + +IOPDL: (AIOPDL:166 040) .OPER 57 + LIKE IOPOP + SEE ITS REF MANJ 2.6.2 + + + +IOPOP: (AIOPOP:166 025) .OPER 14 + CLOSE WHATEVER MAY BE OPEN ON CHANNEL POPPING INTO + SEE ITS REF MAN 6.2.1 + + + +GETSYS: (AGETSYS:167 005) .OPER 23 + .GETSYS AC, + TRANSFERS SYSTEM AREA SPECIFIED BY C(AC+1) + TO USER AREA STARTING AT R.H. C(AC) OF LENGTH MINUS L.H. C(AC) + SEE ITS REF MAN 6.6.1 + + + +GETLOC: (AGETLOC:169 004) .OPER 25 + GET AN ABSOLUTE LOCATION + .GETSYS AC, + C(A)=FROM(ABS),,TO(RELATIVE) + SEE ITS REF MAN 6.6.2 + + + +SETLOC: (ASETLOC:169 014) .OPER 26 + SET AN ABSOLUTE LOCATION + .SETLOC AC, + C(AC)=FROM(RELATIVE),,TO(ABS) + SEE REF MAN 6.8.4 + + + +IFSET: (AIFSET:169 020) .OPER 75 + SET AN ABSOLUTE LOCATION ONLY IF C(ABS)=C(TEST) + SKIP IF SUCCESSFUL + .IFSET AC, + C(AC)=,,TO ADR(ABS) + WORD 1=TEST + WORD 2=NEW C(ABS) + SEE ITS REF MAN 6.8.4 + + + +REDEF: (AREDEF:170 021) .OPER 74 + REDEFINE ITS SYMBOL + .REDEF AC, + C(AC)=POINTER TO 2 WORD BLOCK + WORD 1 = SYMBOL + WORD 2 = VALUE + DELETE SYM IF ALL 4 FLAG BITS SET + ADD SYM IF NOT FOUND + SKIPS IF SUCCESSFUL + FAIL ONLY IF NOT ENOUGH ROOM + ILLEGAL IF DISOWNED + SEE ITS REF MAN 6.8.6 + + + +EVAL: (AEVAL:170 005) .OPER 73 + LOOK UP ITS SYMBOL + .EVAL AC, + C(AC)=SQUOZE SYMBOL + REPLACES SYMBOL BY VALUE & SKIPS IF SUCCESSFUL + SEE ITS REF MAN 6.6.4 + + + +UPISET: (AUPISET:171 025) .OPER 36 + SET OWN USER VARIABLE PICLR + BEING REPLACED BY A SUSET + + + +WSNAME: (AWSNAME:171 021) .OPER 35 + SET OWN USER VARIABLE USYSNM + BEING REPLACED BY A SUSET + + + +GENSYM: (AGENSYM:172 004) .OPER 32 + GENERATE A UNIQUE SYM + .GENSYM AC, + LOADS AC WITH SYM + SEE ITS REF MAN 6.8.2 + + + +CORE: (ACORE:173 006) (UACORE:173 005) .CALL 6, + CORE ALLOCATOR + SEE ITS REF MAN 4.3.1 + + + +CORTYP: (NCORTY:174 019) + CORTYP SYSTEM CALL. + IF 2 ARGS,1ST ARG IS JOB SPEC, LIKE CORBLK'S 2ND AND 4TH ARGS. + 2ND ARG IS PAGE NUMBER IN THAT JOB. + IF ONLY 1 ARG, IT IS THE PAGE NUMBER IN THE EXECUTING JOB. + RETURNED VALUES: + 1ST VALUE BIT 4.9 => PAGE IS WRITEABLE, 4.8 => PAGE EXISTS. + FOR NON EX PAGE, ALL THE REST ARE 0. + 2ND IS 0 => PAGE IS ABSOLUTE, -1 => UNSHARED, + ELSE IS JOB NUMBER OF NEXT JOB IN CIRCULAR LIST. + 3RD IF ABSOLUTE PAGE, HAS PAGE NUMBER. + IF PAGE IS SHARED, HAS PAGE NUMBER IN THE JOB + WHOSE NUMBER IS THE 2ND VALUE. ELSE, 0. + 4TH BIT 4.9 => PAGE IS IN CORE. + BIT 4.8 => PAGE IS PUBLIC. + RH IS NUMBER OF TIMES PAGE IS SHARED + (WILL BE 0 FOR ABS PAGE OR IF NO PAGE, + OTHERWISE WILL BE >= 1) + DON'T LET PAGE MAPS CHANGE. + + + +CORBLK: (NCORBL:175 033) + CORBLK CALL + 1ST ARG FLAG BITS (RH XOR'D INTO LH BEFORE DECODING) + 4.9 GET WRITE ACCESS IF OK, DON'T FAIL IF NOT. + 4.8 GET READ ACCESS + 4.7 GET WRITE ACCESS, FAIL IF CAN'T + 4.6 MAKE PAGE PUBLIC + 4.5 MAKE IT PRIVATE (BOTH FAIL IF COULDN'T GET WRITE ACCESS) + 4.4 FAIL IF CAN'T GET READ ACCESS.(COPYING NONEXISTANT PAGE) + 4.3 COPY ON WRITE(CURRENTLY ONLY IMPLEMENTED FOR PAGE OF FILE) + IF ALL 0, DELETE. + 2ND ARG SPECIFIES JOB TO PUT PAGE IN + IS EITHER CHNL NUM, -1 FOR SELF, OR 400000+USRNUM + JOB SPECIFIED MUST BE CURRENT JOB OR INFERIOR. + 3RD ARG RH. IS PAGE NUM. IN IT. + LH. IF NEGATIVE, BLOCK MODE, REPEAT THAT MANY TIMES, + INCREMENTING BOTH PAGE NUMS EACH TIME. + IN BLOCK MODE, REWRITES 3RD AND 5TH ARGS EACH TIME. + 4TH ARG IS SOURCE OF PAGE, + EITHER 0,,-1 OR -1 FOR SELF, CHNL NUM, 400000+USRNUM + 400000 FOR ABS PAGE (SYS JOB), + 400377 FOR SUPERIOR, + OR 400001 FOR FRESH PAGE (CORE JOB). + OR DSK CHNL GET NTH PG IN FILE + IF NO 4TH ARG, SAME AS 2ND + 5TH ARG IS PAGE NUM IN SOURCE (IGNORED FOR FRESH PAGE) + IF NO 5TH ARG, SAME AS 3RD IF 4TH ARG SPECIFIES JOB. + IF 4TH ARG SPECS FILE, USE CURRENT ACCESS PNTR + IF INSERTING DISK PAGES, THE ACCESS PTR WILL + BE POSITIONED AT THE BEGINNING OF THE PAGE AFTER THE + LAST PAGE INSERTED. + + + +CBLK: (ACBLK:183 026) .OPER 42 + .CBLK AC, + AC 4.9 MUST BE ZERO + 4.7 USED INTERNALLY IN CODE (W RQ ON PDP6) + 4.3-4.1 = 0 GET PAGE FROM SELF + = 1 GET ABSOLUTE PAGE + = 2 GET PAGE FROM USER OPEN ON CH # 3.1-3.8 + = 3 GET PAGE FROM USER NUMBER 3.1-3.8 + = 4 GET PAGE + = 5 GET PAGE (PUBLIC) + = 6 MAKE PAGE PRIVATE + = 7 MAKE PAGE PUBLIC + 3.9=1 REQUEST WRITE PERMISSION (IGNORED ON FRESH PAGE, + OTHERWISE VALID ONLY FOR SELF OR DIRECT INFERIOR OPEN + ON CH OR PUBLIC PAGE) + 3.1-3.8 USER NUMBER OR CH # (377 => CREATOR IF JOB DEVICE) + 2.9=1 INSERT PAGE, 0 DELETE + (IGNORES 4.3-4.1 EXCEPT FOR 6 OR 7 WHEN IT IS IGNORED) + 2.1-2.8 VIRTUAL PAGE TO BE AFFECTED + 1.1-1.9 BLOCK # IN ABSOLUTE OR OTHER USER + (OR SELF IF 4.3-4.1 = 0) + NEW .CBLK CODE, PASSES THE BUCK TO CORBLK. + SAME AS FAR AS CALLER IS CONCERNED. + THIS OPER HAS DELETED THE .RRTIM OPER, WHICH HAS BEEN + REPLACED BY A SUSET TO READ OWN USER VARIABLE UTRNTM + + + +ARMOVE: (AARMOV:206 004) .OPER 40 + DONT ALLOW ARM TO RUN WITHOUT TIPBRK + SEE ITS REF MAN 3.3.2.1 + + + +ARMOFF: (AARMOFF:209 012) .OPER 70 + SEE ITS REF MAN 3.3.2.1 + + + +ARMRS: (AARMRS:209 020) .OPER 55 + RESET ARM LOCK FLAGS + + + +POTSET: (APOTSE:211 002) .CALL 16, + SEE ITS REF MAN 3.3.3.1 + + + +DSTART: (ADSTART:219 021) .CALL 10, + ROUTINES TO START 340 DISPLAY WITH DIS BUFF IN USERS CORE + + + +DSTRT: +DSTL: (ADSTL:219 022) .CALL 12, + SEE ITS REF MAN 3.4.1.1 + + + +NDIS: (ANDIS:219 037) .OPER 71 + DISPLAY N TIMES AND THEN STOP + SEE ITS REF MAN 3.4.1.5 + + + +DCLOSE: (ADCLOSE:220 037) .OPER 15 + SEE ITS REF MAN 3.4.1.3 + + + +LTPEN: (ALTPEN:220 054) .CALL 14, + SEE ITS REF MAN 3.4.1.2 + + + +DSTOP: (ADSTOP:220 002) .OPER 16 + SEE ITS REF MAN 3.4.1.4 + + + +VSTST: (AVSTST:241 001) .OPER 62 + READ CURRENT DISPLAY STATE + SEE ITS REF MAN 3.3.1.1 + + + +VSCAN: (AVSCAN:242 001) .CALL 15, + SEE ITS REF MAN 3.3.1.1 + + + +NETBLK: (ANETBLK:255 073) + JRST ILUUO ;FOR NOW + + + +NETINT: (ANETINT:255 054) + .NETINT CH, + SEND NETWORK INTERRUPT "INR" OR "INS" + INR FROM RECEIVER TO SENDER (LOCAL SOCKET EVEN, FOREIGN ODD) + INS FROM SND TO RCV ( -", -") + + + +NETS: (ANETS:255 037) .OPER 64 + SEND BUFFER NOW + .NETS CH, + RETURN + THIS OPER HAS DELETED THE .DIALW OPER + + + +NETAC: (ANETAC:255 006) .OPER 63 + ACCEPT CONNECTION + .NETAC CH, + ERROR RETURN + NORMAL RETURN + THIS OPER HAS DELETED THE .DIAL OPER, WHICH WAS USED TO + REQUEST DIALING ON A DATAPHONE LINE + + + +RBTC: (ARBTC:305 004) .OPER 104 + ROBOT CONSOLE READ SWITCHES + + + +FEED: (AFEED:318 044) .OPER 72 + SEE ITS REF MAN 3.2.4.1 + + + +UBLAT: (AUBLAT:338 038) .OPER 56 + UTAPE CONTINUOUS NON-FILE IO + GET TAPE NUM, C(AC), SKIP IF NEG OR ZERO + SEE ITS REF MAN 3.1.2.3 + + + +UINIT: (AUINIT:339 032) .OPER 77 + INITIALIZE UTAPE DIRECTORY + .UINIT AC, + C(AC)=TAPE # + TAPE MUST BE ASSIGNED + SEE ITS REF MAN 3.1.2.5 + + + +UTNAM: (AUTNAM:339 004) .OPER 76 + SET UTAPE NAME + .UTNAM AC, + LH(AC)=6BIT NAME, RH(AC)=TAPE # + SEE ITS REF MAN 3.1.2.4 + + + +UDISMT: (AUDISM:340 004) .OPER 22 + UTAPE DISMOUNT + SEE ITS REF MAN 3.1.2.1 + + + +FLAP: (NFLAP:340 005) + SAME AS UDISMT + + + +SRDATE: (ASRDAT:394 024) + SET REFERENCE DATE + + + +SFDATE: (ASFDAT:394 032) + SET FILE CREATION DATE WORD + + + +FILLEN: (NFILLEN:394 068) + GETS FILE LENGTH + + + +FILBLK: (AFILBL:394 061) + READ ALL 5 PARAMETERS OF NAME AREA + + + +RDMPBT: (ARDMPB:394 038) + READ FILE DUMPED BIT + + + +DMPCH: (ADMPCH:394 002) .OPER 105 + SET OR READ STATUS OF DUMP BIT OF FILE OPEN ON CHNL IN AC(RH) + + + +RFDATE: (ARFDAT:394 016) + READ FILE CREATION DATE WORD + + + +RESRDT: (ARESRD:394 028) + RESTORE REFERENCE DATE + + + +SDMPBT: (ASDMPB:394 042) + SET FILE DUMPED BIT + + + +IPDP: (AIPDP:442 006) .OPER 24 + .IPDP CH, + INTERRUPT THE PDP6, I/O CH SHOULD HAVE PDP6 OPEN AS INFERIOR + THIS CALL DOESNT SKIP OR INTERRUPT TO THE USER + THIS OPER HAS DELETED THE .RD500 OPER, WHICH READ A CLOCK + +5/29/73 PROGRAMMING THE PDP-10 TO PDP-11 INTERFACE + +THE INTERFACE LETS THE PDP-10 PROGRAMMER DIRECTLY ACCESS THE MEMORIES +OF UP TO EIGHT PDP-11'S. PDP-10 PAGES ARE MAPPED INTO SEGMENTS OF +VARIABLE SIZE IN THE PDP-11'S MEMORY. THE PDP-10 PAGE MAP IS ALSO +DIRECTLY ADDRESSABLE IN MEMORY (IT CURRENTLY LIVES IN LOCATIONS +776000-776777)**. THERE IS ONE ENTRY IN THE MAP FOR EACH PDP-10 PAGE. +** SEE ALSO BELOW + +PAGE TABLE ENTRY: + 4.9 VALID + 4.8 WRITE ENABLE + 4.3-4.7 (5 BITS) NOT USED (0) + 3.9-4.2 (3 BITS) PDP-11 NUMBER + 2.2-3.8 (16 BITS) RELOCATION + ORIGIN OF SEGMENT OF IN PDP-11 ADDRESS SPACE + PDP-11 ADDRESS=4*RELOCATION + 1.1-2.1 (10 BITS) PROTECTION (PDP-11 PROTECTION=4*PROTECTION + IF PROTECTION=0 THEN ONLY ONE 16 BIT WORD IS ACCESSIBLE) + +WRITE REFERENCE FORMAT + 3.3-4.9 (16 BITS) WORD 0, LOW ORDER WORD + 1.5-3.2 (16 BITS) WORD 1, HIGH ORDER WORD + 1.4 DON'T WRITE WORD 0 + 1.3 DON'T WRITE WORD 1 + 1.1-1.2 (2 BITS) NOT USED + +READ REFERENCE FORMAT + 3.3-4.9 (16 BITS) WORD 0, LOW ORDER WORD + 1.5-3.2 (16 BITS) WORD 1, HIGH ORDER WORD + 1.1-1.4 (4 BITS) 0 + +NOTE -- SPLIT CYCLES WILL DO THE RIGHT THING; HENCE, ILDB AND IDPB WORK. + +CAUTION -- WHEN USING BYTE INSTRUCTIONS, A 16 BIT BYTE SIZE IS +RECCOMMENDED. SUCCESSIVE INCREMENTS OF BYTE POINTERS WITH AN 8 BIT BYTE +SIZE DO NOT ADDRESS CONSECUTIVE BYTES IN THE PDP-11! + +ITS SYSTEM CALL TO PUT 11 MAP ENTRY IN YOUR 10 MAP + + .CALL [SETZ + SIXBIT /T11MP/ + 10PGNO ;PTR TO 10 PG NO + SETZ PGENT] ;PTR TO ENTRY (FORMAT ABOVE) +10PGNO: 3 +PGENT: <_34.>+<_26.>+<_10.>+ + </4> + FOR ABOVE 10 ADDRESSES 6000-7777 ARE MAPPED INTO + 11 ADDRESSES 10000-17776. BOTH READ AND WRITE ARE ENABLED. +  \ No newline at end of file