Fixed copy command to match binary.
[retro-software/dec/tops10/v4.5.git] / src / jobdat.mac
index 2d8dc0e..c73431e 100644 (file)
-TITLE  JOBDAT - JOB DATA AREA (FIRST 140 LOC OF USER AREA)
-SUBTTL T. HASTINGS/RAP TS3.19 24 SEP 68  V003
-       XP      VJOBDT,003      ;DEFINE GLOBAL VERSION NUMBER FOR LOADER MAP.
-
-ENTRY DATJOB
-DATJOB:
-
-;THIS AREA PROVIDES STORAGE OF ITEMS OF INTEREST TO BOTH
-;THE MONITOR AND THE USER
-
-;MACRO TO DEFINE SYMBOLS FOR MONITOR USE ONLY
-;THESE MAY BE CHANGED TO SUIT MONITOR
-
-DEFINE M(SYMBOL,VALUE,LENGTH)
-<SYMBOL=VALUE
-INTERNAL SYMBOL
-LOC=VALUE+LENGTH>
-
-;MACRO TO DEFINE SYMBOLS FOR USER USE
-;THESE CANNOT BE CHANGED WITHOUT INVALIDATING OLD SAVED FILES
-
-DEFINE U(SYMBOL,VALUE,LENGTH)
-<SYMBOL=VALUE
-ENTRY SYMBOL
-LOC=VALUE+LENGTH>
-
-;MACRO TO DEFINE PARAMETERS OF INTEREST TO MONITOR ONLY
-;THESE MAY BE CHANGED TO SUIT MONITOR
-;MUST ASSEMBLE WITH SYSPAR TAPE FIRST
-
-DEFINE XP(SYMBOL,VALUE)
-<INTERNAL SYMBOL
-SYMBOL=VALUE>
-\f
-M JOBAC,0,20
-                       ;PLACE WHERE USER ACS ARE STORED ON UUO CALLS
-                       ;IE RELATIVE 0-17 IN USER AREA
-M JOBDAC,LOC,17
-                       ;PLACE WHERE HARDWARE ACS(0-16) ARE STORED
-                       ;WHEN JOB IS INACTIVE. THESE ARE EITHER THE
-                       ;USERS AC IF JOB WAS STOPPED IN USER MODE
-                       ;OR ARE THE EXEC IF STOPED IN EXEC MODE
-                       ;0-16 ALSO STORED HERE ON CLK INTERRUPTS
-XP JOBDPD,JOBDAC+PDP
-                       ;AC PDP DUMPED HERE
-XP JOBDPG,JOBDAC+PROG
-                       ;AC PROG DUMPED HERE
-XP JOBD14,JOBDAC+14
-                       ;AC 14 DUMPED HERE
-XP JOBD15,JOBDAC+15
-                       ;AC 15 DUMPED HERE
-XP JOBD16,JOBDAC+16
-                       ;AC 16 DUMPED HERE
-XP JOBD17,JOBDAC+17
-                       ;AC 17 DUMPED HERE
-U JOBUUO,40,1
-                       ;USER UUO TRAP LOC.(UUO STORED HERE)
-U JOB41,41,1
-                       ;USER UUO JSR LOCATION
-U JOBERR,42,1
-                       ;LH UNUSED-SAVE FOR LATER THINGS, SO USER PROGRAMS
-                       ;SHOULD IGNORE LH IN ALL PROGRAMS
-                       ;RH=COUNT OF NO. OF ERRORS IN RPG(RAPID PROGRAM
-                       ;GENERATION) SEQUENCE OF CUSPS.
-                       ;NOT CHANGED FROM GET TO GET.
-M JOBENB,43,1
-                       ;LH=UNUSED
-                       ;RH=APR CONSO FLAGS FOR USER APR TRAPPING
-                       ;SET BY CALL [SIXBIT /APRENB/]
-U JOBREL,44,1
-                       ;LH=0,RH=HIGHEST REL. ADR. IN USER AREA(IE LOW SEGMENT)
-                       ;SET BY MONITOR EACH TIME JOB RUNS OR CHANGES CORE SIZE
-M JOBPD1,LOC,0
-                       ;FIRST LOC. OF SYSTEM UUO PUSHDOWN LIST
-XP JOBPDL,JOBPD1-1
-                       ;FIRST LOC.-1
-U JOBBLT,JOBPD1,3
-                       ;3 WORDS USED BY LINKING LOADER TO MOVE PROGRAM DOWN
-                       ;BEFORE CALLING EXIT.
-                       ;OK TO USE EXEC PD LIST BEFORE EXECUTING UUO
-\fLOC=72
-XP MJOBPD,JOBPDL-LOC
-                       ;MINUS LENGTH OF PUSHDOWN LIST
-XP MJOBP1,MJOBPD+1
-                       ;-LENGTH+1
-XP JOBPRT,LOC
-                       ;FIRST LOC PROTECTED BY BEING COPIED INTO MONITOR
-XP JOBPR1,JOBPRT+1
-                       ;FIRST LOC+1
-M JOBHCU,LOC,1
-                       ;HIGHEST USER IO CHANNEL IN USE
-                       ;ONLY JOBJDA...JOBJDA+C(JOBHCU) ARE COPIED INTO
-                       ;MONITOR WHEN JOB IS RUN. 0 MEANS NONE OR
-                       ;CHAN. 0 IN USE, -1 MEANS SAVEGET HAS ACTIVE IO
-M JOBPC,LOC,1
-                       ;JOB PC WHEN JOB INACTIVE
-U JOBDDT,74,1
-                       ;LH UNUSED,RH=STARTING ADDRESS OF USER DDT
-XP JOBSAV,JOBDDT-1
-                       ;FIRST LOC.-1 WRITTEN BY SAVE COMMAND
-M JOBJDA,LOC,20
-                       ;JOB DEVICE ASSIGNMENT TABLE
-                       ;LH=UUOS DONE SO FAR,RH=ADR. OF DEVICE DATA BLOCK IN MONITOR
-XP JOBJMH,JOBHCU-JOBJDA
-                       ;JOBHCU-JOBJDA
-                       ;USED BY ANYACT ROUT. IN CORE1
-XP JOBPFI,JOBJDA+17
-                       ;HIGHEST LOC. IN JOB DATA AREA PROTECTED FROM IO
-XP MJOBCK,JOBPFI-JOBDAC
-                       ;AREA CHECKSUMMED DURING SWAPPING
-U JOBHRL,115,1         ;LH IS ANALOGOUS TO LH OF JOBSA, IE FIRST
-                       ;FREE LOC IN HIGH SEG, SET BY LINKING LOADER
-                       ;USED BY SAVE.
-                       ;RH ANALOGOUS TO JOBREL, IE HIGHEST LEGAL
-                       ;USER ADDRESS IN HIGH SEG. SET BY MONITOR EVERY TIME
-                       ;USER RUNS.  IF JOBHRL=0, JOB DOES NOT HAVE A HIGH SEG
-                       ;USER PROGRAMS SHOULD BE WRITTEN SO THAT
-                       ;THEY CAN BE ONE OR TWO SEGMENT PROGRAMS. JOBHRL
-                       ;CAN BE TESTED FOR NON-ZERO TO SEE IF HIGH SEG EXISTS
-U JOBSYM,116,1
-                       ;POINTER TO LOADER AND DDT SYMBOL TABLE POINTER
-U JOBUSY,117,1
-                       ;POINTER TO UNDEFINED SYMBOL TABLE
-                       ;SET BY LOADER, NOT YET USED BY DDT
-U JOBSA,120,1
-                       ;LH=FIRST LOC NOT LOADED BY RELOCATING LOADER
-                       ;RH=STARTING ADDRESS OF USER PROGRAM
-U JOBFF,121,1
-                       ;FIRST FREE LOCATION IN USER AREA
-                       ;USED BY MONITOR TO ASSIGN I/O BUFFERS IN TOP
-                       ;OF USER AREA
-\fU JOBS41,122,1
-                       ;C(JOB41) SAVED HERE ON SAVE COMMAND
-                       ;RESTORE FROM HERE ON GET
-M JOBEXM,LOC,1
-                       ;LAST LOC EXAMINED OR DEPOSITED USING 
-                       ;D OR E COMMANDS
-                       ;LH=-1 IF LAST COM WAS AN E, 0 IF IT WAS A D
-U JOBREN,124,1
-                       ;REENTER ADDRESS FOR REENTER COMMAND
-U JOBAPR,125,1
-                       ;PLACE TO TRAP TO IN USER AREA ON APR TRAP
-                       ;ENABLED BY APRENB UUO
-U JOBCNI,126,1
-                       ;APR IS CONIED INTO C(JOBCNI) ON APR TRAP
-U JOBTPC,127,1
-                       ;PC IS STORED HERE ON USER APR TRAP
-U JOBOPC,130,1
-                       ;OLD PC IS STORED HERE ON START,DDT,REENTER,
-                       ;STARTC COMMANDS
-U JOBCHN,131,1
-                       ;LH=FIRST LOC AFTER FIRST FORTRAN 4 LOADED PROGRAM
-                       ;RH=FIRST LOC AFTER FIRST FORTRAN 4 BLOCK DATA
-                       ;TO BE USED FOR JOB CHAINING
-M JOBFDV,LOC,1
-                       ;DEV. DATA BLOCK ADR. FOR FINISH COMMAND
-U JOBCOR,133,1
-                       ;SIZE OF CORE FOR JOB ON RUN,SAVE,GET COM.
-;134-136 UNUSED
-U JOBVER,137,1 
-                       ;CONTAINS VERSION NO.(OCTAL) OF CUSP BEING RUN
-                       ;GET LOADS FROM SAVE FILE.  NEVER CONVERTED
-                       ;TO DECIMAL BY MAN OR MACHINE. E 137 WILL PRINT VERSION NO.
-                       ;SET BY LOC 137 IN CUSP SOURCE
-XP JOBDA,140
-                       ;FIRST LOC NOT USED BY JOB DATA AREA
-
-       END,
+TITLE  JOBDAT - JOB DATA AREA (FIRST 140 LOC OF USER AREA) V407\r
+SUBTTL T. HASTINGS/TH  TS  15 MAR 69\r
+IFNDEF UJOBDAT,<VJOBDT=407\r
+INTERN VJOBDT          ;PUT VERSION NUMBER IF NOT JSER VERSION\r
+>\r
+;TO ELIMINATE MOST OF UNWANTED GLOBALS USERS\r
+;ASSEMBLING INSTRUCTIONS TO MAKE USER VERSION FOR CUSP:\r
+;DSK:JOBDAT_TTY:,DSK:JOBDAT\r
+;UJOBDAT=1\r
+;^Z\r
+IFDEF DEVDAT,<PRINTX PLEASE REASSEMBLE WITHOUT S.MAC\r
+>\r
+\r
+IFNDEF UJOBDAT,<\r
+ENTRY DATJOB\r
+DATJOB:\r
+>\r
+\r
+;THIS AREA PROVIDES STORAGE OF ITEMS OF INTEREST TO BOTH\r
+;THE MONITOR AND THE USER\r
+\r
+;MACRO TO DEFINE SYMBOLS FOR MONITOR USE ONLY\r
+;THESE MAY BE CHANGED TO SUIT MONITOR\r
+\r
+DEFINE M(SYMBOL,VALUE,LENGTH)\r
+<              SYMBOL=VALUE\r
+IFNDEF UJOBDAT,<INTERNAL SYMBOL> ;MAKE GLOBAL ONLY IF ASSEM FOR MONITOR\r
+LOC=VALUE+LENGTH>\r
+\r
+;MACRO TO DEFINE SYMBOLS FOR USER USE\r
+;THESE CANNOT BE CHANGED WITHOUT INVALIDATING OLD SAVED FILES\r
+\r
+DEFINE U(SYMBOL,VALUE,LENGTH)\r
+<              SYMBOL=VALUE\r
+ENTRY SYMBOL\r
+LOC=VALUE+LENGTH>\r
+\r
+;MACRO TO DEFINE PARAMETERS OF INTEREST TO MONITOR ONLY\r
+;THESE MAY BE CHANGED TO SUIT MONITOR\r
+;MUST ASSEMBLE WITH SYSPAR TAPE FIRST\r
+\r
+DEFINE XP(SYMBOL,VALUE)\r
+<              SYMBOL==VALUE\r
+IFNDEF UJOBDAT,<INTERN SYMBOL>> ;MAKE GLOBAL ONLY IF ASSEM FOR MONITOR\r
+\r
+;DEFINE MONITOR ACS AS LOCALS SO JOBDAT DOES NOT NEED TO BE ASEMBLED WITH S.MAC\r
+;THIS IS SO THE USER IS NOT FACED WITH A LOT OF INTERNAL SYMBOLS\r
+;WHICH MAY CONFLIT WITH HIS AND GIVE HIM MULTIPLY DEFINED GLOBALS\r
+\r
+PDP=3\r
+PROG=7\r
+\f\r
+M JOBAC,0,20\r
+                       ;PLACE WHERE USER ACS ARE STORED ON UUO CALLS\r
+                       ;IE RELATIVE 0-17 IN USER AREA\r
+M JOBDAC,LOC,17\r
+                       ;PLACE WHERE HARDWARE ACS(0-16) ARE STORED\r
+                       ;WHEN JOB IS INACTIVE. THESE ARE EITHER THE\r
+                       ;USERS AC IF JOB WAS STOPPED IN USER MODE\r
+                       ;OR ARE THE EXEC IF STOPED IN EXEC MODE\r
+                       ;0-16 ALSO STORED HERE ON CLK INTERRUPTS\r
+XP JOBDPD,JOBDAC+PDP\r
+                       ;AC PDP DUMPED HERE\r
+XP JOBDPG,JOBDAC+PROG\r
+                       ;AC PROG DUMPED HERE\r
+XP JOBD14,JOBDAC+14\r
+                       ;AC 14 DUMPED HERE\r
+XP JOBD15,JOBDAC+15\r
+                       ;AC 15 DUMPED HERE\r
+XP JOBD16,JOBDAC+16\r
+                       ;AC 16 DUMPED HERE\r
+XP JOBD17,JOBDAC+17\r
+                       ;AC 17 DUMPED HERE\r
+U JOBUUO,40,1\r
+                       ;USER UUO TRAP LOC.(UUO STORED HERE)\r
+U JOB41,41,1\r
+                       ;USER UUO JSR LOCATION\r
+U JOBERR,42,1\r
+                       ;LH UNUSED-SAVE FOR LATER THINGS, SO USER PROGRAMS\r
+                       ;SHOULD IGNORE LH IN ALL PROGRAMS\r
+                       ;RH=COUNT OF NO. OF ERRORS IN RPG(RAPID PROGRAM\r
+                       ;GENERATION) SEQUENCE OF CUSPS.\r
+                       ;NOT CHANGED FROM GET TO GET.\r
+M JOBENB,43,1\r
+                       ;LH=UNUSED\r
+                       ;RH=APR CONSO FLAGS FOR USER APR TRAPPING\r
+                       ;SET BY CALL [SIXBIT /APRENB/]\r
+U JOBREL,44,1\r
+                       ;LH=0,RH=HIGHEST REL. ADR. IN USER AREA(IE LOW SEGMENT)\r
+                       ;SET BY MONITOR EACH TIME JOB RUNS OR CHANGES CORE SIZE\r
+M JOBPD1,LOC,0\r
+                       ;FIRST LOC. OF SYSTEM UUO PUSHDOWN LIST\r
+XP JOBPDL,JOBPD1-1\r
+                       ;FIRST LOC.-1\r
+XP JOBPD3,JOBPDL+3\r
+                       ;PLACE FOR SSTORING FIRST PUSH IN A UUO ROUTINE(THIRD ENTRY)\r
+                       ; USED BY RUN AND GETSEG UUOS\r
+U JOBBLT,JOBPD1,3\r
+                       ;3 WORDS USED BY LINKING LOADER TO MOVE PROGRAM DOWN\r
+                       ;BEFORE CALLING EXIT.\r
+                       ;OK TO USE EXEC PD LIST BEFORE EXECUTING UUO\r
+\r
+\fLOC=72\r
+XP MJOBPD,JOBPDL-LOC\r
+                       ;MINUS LENGTH OF PUSHDOWN LIST\r
+XP MJOBP1,MJOBPD+1\r
+                       ;-LENGTH+1\r
+XP JOBPRT,LOC\r
+                       ;FIRST LOC PROTECTED BY BEING COPIED INTO MONITOR\r
+XP JOBPR1,JOBPRT+1\r
+                       ;FIRST LOC+1\r
+M JOBHCU,LOC,1\r
+                       ;HIGHEST USER IO CHANNEL IN USE\r
+                       ;ONLY JOBJDA...JOBJDA+C(JOBHCU) ARE COPIED INTO\r
+                       ;MONITOR WHEN JOB IS RUN. 0 MEANS NONE OR\r
+                       ;CHAN. 0 IN USE, -1 MEANS SAVEGET HAS ACTIVE IO\r
+M JOBPC,LOC,1\r
+                       ;JOB PC WHEN JOB INACTIVE\r
+U JOBDDT,74,1\r
+                       ;LH UNUSED,RH=STARTING ADDRESS OF USER DDT\r
+XP JOBSAV,JOBDDT-1\r
+                       ;FIRST LOC.-1 WRITTEN BY SAVE COMMAND\r
+M JOBJDA,LOC,20\r
+                       ;JOB DEVICE ASSIGNMENT TABLE\r
+                       ;LH=UUOS DONE SO FAR,RH=ADR. OF DEVICE DATA BLOCK IN MONITOR\r
+XP JOBSV,JOBJDA+1\r
+                       ;FIRST LOC READ INTO OR WRITTEN FROM BY NEW SAVGET\r
+                       ; WHICH ZERO COMPRESSES ON ALL DEVICES\r
+                       ; THIS LOC CONTAINS THE FIRST IOWD WITH NO-NO. OF DATA WORDS\r
+                       ; IN LH, FIRST ADR-1 IN RH\r
+                       ; MONITOR SUPPRESSES STORING IN RH OF JOBHRL DURING\r
+                       ; SAVEGET(USRCHU NEG.)\r
+                       ; SO THAT OLD ZERO COMPRESSED DECTAPE FILES WILL\r
+                       ; ALWAYS FIT IN CORE (JOBHRL USERD TO BE 0)\r
+                       ; THIS CHECK COULD HAVE BEEN ELIMINATED, IF JOBSV HAD BEEN\r
+                       ; DEFINED AS JOBHRL+1(JOBSYM), HOWEVER JOBSYM ALMOST\r
+                       ; ALWAYS HAS NON-ZERO DATA, SO SAVEGET WOULD HAVE  TO\r
+                       ; BE WRITTEN TO EXPAND DOWN OR UP RATHER THEN JUST UP\r
+XP JOBSVM,JOBSV-1\r
+                       ;FIRST LOC-1, USED FOR SETTING UP DUMPE MODE\r
+                       ; COMMAND LIST FOR SAVGET\r
+XP JOBSV3,JOBSV+3\r
+                       ;LOC WHICH SHOULD NOT CONTAIN 0 UNLESS FILE WAS\r
+                       ; CREATED BY CONVERTING OLD FORMAT TO NEW FORMAT\r
+                       ; DECTAPE USING CONVRT PROGRAM\r
+XP JOBSVD,JOBSVM-JOBSAV\r
+                       ;NO. OF LOCATIONS TO MOVE DOWN OLD (NON-COMPRESSED DSK)\r
+                       ; SAVE FILES WHICH WERE ALWAYS WRITTEN FROM JOBSAV+1\r
+XP JOBSDP,JOBSV-JOBSAV\r
+                       ;NO. OF LOCATION TO MOVE DOWN CONVERTED SAVE FILES\r
+                       ; WHICH ARE ALWAYS WRITTEN FORM JOBSAV+1 AND HAVE\r
+                       ; AN IOWD ADDED ON FRONT SO IT LOOKS LIKE A COMPRESSED FILE\r
+\r
+\fU JOBCN6,JOBJDA+11\r
+                       ;6 TEMP LOCATIONS USED BY CHAIN TO HOLD ERROR ROUTINE\r
+                       ; WHEN IT LOADS NEXT CHAIN LINK.(JOBJDA+11...16)\r
+                       ; THESE LOCATIONS ARE OK TO USE SINCE CHAIN RELEASES ALL\r
+                       ; USER CHANNELS AND MONITOR WILL NOT DESTROY THEM\r
+                       ; WHEN JOB CONTEXT IS SWITCHED\r
+XP JOBSDD,JOBJDA+17\r
+                       ;PLACE TO SAVE JOBDDT ON SAVE SO ZERO EXPANSION ON GET\r
+                       ;ALWAYS MOVES UP\r
+XP JOBSD1,JOBSDD-1\r
+                       ;FOR COMPUTING IOWD'S\r
+XP JOBJMH,JOBHCU-JOBJDA\r
+                       ;JOBHCU-JOBJDA\r
+                       ;USED BY ANYACT ROUT. IN CORE1\r
+XP JOBPFI,JOBJDA+17\r
+                       ;HIGHEST LOC. IN JOB DATA AREA PROTECTED FROM IO\r
+XP MJOBCK,JOBDAC-JOBPFI\r
+                       ;AREA CHECKSUMMED DURING SWAPPING\r
+U JOBHRL,115,1\r
+                       ;LH IS ANALOGOUS TO LH OF JOBSA, IE FIRST\r
+                       ;LH IS FIRST FREE LOC IN HIGH SEG RELATIVE TO ITS ORIGIN\r
+                       ;ANALOGOUS TO LH OF JOBSA FOR LOW SEG\r
+                       ; (IN OTHER WORDS LH=LENGTH TO SAVE ON SAVE COMMAND)\r
+                       ; SET BY LINKING LOADER\r
+                       ;RH ANALOGOUS TO JOBREL, IE HIGHEST LEGAL\r
+                       ;USER ADDRESS IN HIGH SEG. SET BY MONITOR EVERY TIME\r
+                       ;USER RUNS.  IF JOBHRL=0, JOB DOES NOT HAVE A HIGH SEG\r
+                       ;USER PROGRAMS SHOULD BE WRITTEN SO THAT\r
+                       ;THEY CAN BE ONE OR TWO SEGMENT PROGRAMS. JOBHRL\r
+                       ;CAN BE TESTED FOR NON-ZERO TO SEE IF HIGH SEG EXISTS\r
+U JOBSYM,116,1\r
+                       ;POINTER TO LOADER AND DDT SYMBOL TABLE POINTER\r
+U JOBUSY,117,1\r
+                       ;POINTER TO UNDEFINED SYMBOL TABLE\r
+                       ;SET BY LOADER, NOT YET USED BY DDT\r
+U JOBSA,120,1\r
+                       ;LH=INITIAL FIRST FREE LOCATION IN LOW SEG (SET BY LINKING LOADER)\r
+                       ;RH=STARTING ADDRESS OF USER PROGRAM\r
+\f\r
+U JOBFF,121,1          ;(SET FROM HIGH DATA AREA ON GET IF NO LOW FILE)\r
+                       ;CURRENT FIRST FREE LOCATION IN LOW SEG\r
+                       ;USED AND UPDATED BY MONITOR TO ASSIGN I/O BUFFERS IN TOP\r
+                       ;OF USER AREA\r
+                       ; USER MAY CHANGE CONTENTS IN ORDER TO AFFECT PLACEMENT OF\r
+                       ; BUFFERS BY MONITOR\r
+U JOBS41,122,1\r
+                       ;C(JOB41) SAVED HERE ON SAVE COMMAND\r
+                       ;RESTORE FROM HERE ON GET\r
+M JOBEXM,LOC,1\r
+                       ;LAST LOC EXAMINED OR DEPOSITED USING \r
+                       ;D OR E COMMANDS\r
+                       ;LH=-1 IF LAST COM WAS AN E, 0 IF IT WAS A D\r
+U JOBREN,124,1\r
+                       ;REENTER ADDRESS FOR REENTER COMMAND\r
+U JOBAPR,125,1\r
+                       ;PLACE TO TRAP TO IN USER AREA ON APR TRAP\r
+                       ;ENABLED BY APRENB UUO\r
+U JOBCNI,126,1\r
+                       ;APR IS CONIED INTO C(JOBCNI) ON APR TRAP\r
+U JOBTPC,127,1\r
+                       ;PC IS STORED HERE ON USER APR TRAP\r
+U JOBOPC,130,1\r
+                       ;OLD PC IS STORED HERE ON START,DDT,REENTER,\r
+                       ;STARTC COMMANDS\r
+U JOBCHN,131,1\r
+                       ;LH=FIRST LOC AFTER FIRST FORTRAN 4 LOADED PROGRAM\r
+                       ;RH=FIRST LOC AFTER FIRST FORTRAN 4 BLOCK DATA\r
+                       ;TO BE USED FOR JOB CHAINING\r
+M JOBFDV,LOC,1\r
+                       ;DEV. DATA BLOCK ADR. FOR FINISH COMMAND\r
+\fU JOBCOR,133,1\r
+                       ;(SET FROM HIGH DATA AREA ON GET IF NO LOW FILE)\r
+                       ;LH=HIGHEST LOCATION LOADED(LOW SEG) WITH PROG OR DATA\r
+                       ; SET BY LOADER(BLOCK STATEMENTS DO NOT COUNT HERE)\r
+                       ; SAVE WILL NOT WRIT THE LOW SEG OF A TWO SEG PROG.\r
+                       ; IF LH IS 137 OR LESS AND GET WILL NOT READ\r
+                       ;RH=SIZE OF CORE FOR LOW SEG ON RUN,SAVE,GET COM.\r
+                       ;(SET FROM HIGH DATA AREA ON GET IF NO LOW FILE)\r
+                       ;SET BY SAVE TO CORE ASSIGNMENT TO BE USED ON GET\r
+                       ; (UNLESS USER TYPES A LARGER ARG TO GET)\r
+                       ; TO FIRST FREE LOC-1(OR TOP IF USER DDT) OR\r
+                       ; TO USER'S CORE RG TO SAAVE IF BIGGER\r
+                       ;GET ALWAYS SETS RH TO INITIAL CORE ASSIGNMENT SO THAT PROG\r
+                       ; CAN RESTORE CORE TO ORIGINAL ASSIGNMENT ON RESTARTING\r
+                       ;134-136 UNUSED\r
+U JOBVER,137,1 \r
+                       ;CONTAINS VERSION NO.(OCTAL) OF CUSP BEING RUN IN RH\r
+                       ;PROGRAMMER NUMBER IN LH OF PROGRAMMER MAKING LAST CHANGE\r
+                       ;GET LOADS FROM SAVE FILE.  NEVER CONVERTED\r
+                       ;TO DECIMAL BY MAN OR MACHINE. E 137 WILL PRINT VERSION NO.\r
+                       ;SET BY LOC 137 IN CUSP SOURCE\r
+                       ;(SET FROM HIGH DATA AREA ON GET IF NO LOW FILE)\r
+XP JOBDA,140\r
+                       ;FIRST LOC NOT USED BY JOB DATA AREA\r
+\f; HIGH SEGMENT DATA AREA\r
+; LOCATIONS ARE RELATIVE TO BEGINNING OF HIGH SEGMENT, SINCE\r
+; THE HIGH SEGMENT CAN BEGIN AT 400000 OF HIGHER\r
+; THIS AREA IS USED TO INITIALIZE CERTIAN LOCATIONS IN THE LOW SEG JOB DATA AREA\r
+; IN CASE THER WAS NO LOW SEG SAVED,(LH JOBCOR 137 OR LESS AS SET BY LOADER)\r
+; LOW SEG JOB DATA AREA LOCATIONS SET FROM HIGH SEG DATA AREA ARE INDICATED ABOVE BY:\r
+;(SET FROM HIGH SEG IF NEC)\r
+; THESE LOCATIONS ARE SET FORM LOW JOB DATA AREA ONLY IF HIGH SEG IS NON-SHARABLE\r
+; AT THE TIME THE SAVE IS PREFORMED (SHRSEG=0 IN JBTSTS)\r
+\r
+XP JOBHSA,0\r
+                       ;USED TO RESTORE JOBSA\r
+XP JOBH41,1\r
+                       ;USED TO RESTORE JOB41\r
+XP JOBHCR,2\r
+                       ;USED TO RESTORE JOBCOR(BOTH HALVES)\r
+XP JOBHRN,3\r
+                       ;LH RESTORES LH OF JOBHRL(FIRST REL. FREE LOC. IN HIGH)\r
+                       ;RH RESTORES JOBREN,LH SET TO 0 FOR FUTURE\r
+XP JOBHVR,4\r
+                       ;RESTORE BOTH HALVES OF JOBVER\r
+       XP JOBPOP,4\r
+                       ;HIGHEST LOC TO BE RESTORED(POPPED) BY GET\r
+XP JOBHDA,10\r
+                       ;FIRST LOC NOT USED BY HIGH SEG DATA AREA\r
+                       ;LOADER WILL LOAD FIRST WORD HERE\r
+                       ;VALUE CANNOT BE CHNGED WITHOUT\r
+                       ;CHANGING LOADER AND RELOADING TO MAKE NEW SAVE FILES\r
+       END\r