-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