Google
 

Trailing-Edge - PDP-10 Archives - de-10-omona-v-mc9 - monmk0.ctl
There are 2 other files named monmk0.ctl in the archive. Click here to see a list.
; %1(22) VERSION OF MONMK0.CTL   26 OCT 78  /MS
;
;THIS FILE COPIES ALL THE NECESSARY FILES FOR BUILDING A SOUPED MONITOR
;TO BLKA:[10,511] FROM THEIR PERMANENT STORAGE AREAS ON THE
;"BLACK PACKS".  IT RETRIEVES THE FIELD IMAGE VERSIONS OF ALL THE CUSPS
;WHICH IT MAY NEED, IT CHANGES ALL .CT FILES INTO .CTL FILES, AND PRINTS
;A SORTED CHECKSUMMED DIRECTORY OF THESE FILES.  FINALLY, IT RUNS VCHK
;AND DATDMP (IF NEEDED).
;
;SUBMIT THIS BATCH JOB WHILE LOGGED IN UNDER SOME PPN WHICH HAS A QUOTA ON
; STRUCTURE BLKA: THE COMMAND TO START THE JOB IS SIMPLY
;		.SUBMIT MONMK0/TIME
;
M0GO::
.CHKPNT M0GO
.SET WATCH VERSION
.IF (ERROR) ;O.K.
;AVOID USING VIRTUAL MEMORY
.SET PHYSICAL 256
.IF (ERROR)  ;OK, WE MUST BE ON A KA10
;
.MOUNT BLKA:
.IF (NOERROR) .GOTO M002
.PLEASE COULD NOT MOUNT BLKA: --MONMK0 ABORTING
.KJOB/F
M002::
;USE A PIP INDIRECT FILE TO SPECIFY WHICH FILES TO COPY FROM BLKA:
.RUN DEC:PIP
*/X/B_BLKA:[7,5111]MONFIL.CCL
*MONFIL@
.IF (ERROR) .PLEASE TROUBLE COPYING FILES FROM BLKA: --PROCEEDING
;
SOUP::
.CHKPNT SOUP
.SET WATCH VERSION
.IF (ERROR) ;O.K.
.MOUNT BLKA:
;NOW OVERWRITE ALL THE MAC FILES FROM THE SOUPED AREA.
.RUN DEC:PIP
*BLKA:/X/B=BLKA:[7,5111]*.MAC,*.CT,*.CTL,*.CMD,*.CCL,MONGEN.EXE,FGEN.HLP
.IF (ERROR) .PLEASE ERROR COPYING THE SOUPED STUFF OFF BLKA: [7,5111]
;
M0FIM::
.CHKPNT M0FIM
.SET WATCH VERSION
.IF (ERROR) ;O.K.
.RUN DEC:PIP
*/X/B_DEC: COMPIL.*,FILDDT.*
.IF (ERROR) .PLEASE COULD NOT COPY FIELD IMAGE FILES FROM DEC:--PROCEEDING
*/X/B_BLKA:[7,5111]JOBDAT.MAC,JOBDAT.REL,DDT.MAC
.IF (ERROR) .PLEASE COULD NOT COPY FILES FROM BLKA:--PROCEEDING
;
TECO::  ;
.CHKPNT TECO
.SET WATCH VERSION
.IF (ERROR) ;O.K.
;
;NEXT WE NEED TO KNOW WHAT THE VERSION NUMBER OF THIS MONITOR WILL
; BE SO THAT IT CAN BE PLUGGED INTO ALL THE .CTL FILES WHICH
; RUN MONGEN.  USE TECO TO INTERROGATE THE OPERATOR....
.OPERATOR T
.RUN DEC:TECO
*!START! TYPE 3-CHAR MONITOR VERSION NUMBER, E.G., 214 FOR 60214.
*0U1HK!GET! ^^TUT QT-^^^^0"LOERR'QT-^^^^9-1"LOPUT'
* Q1"EOERR'QT-^^^^A"LOERR'QT-^^^^Z-1"GOERR'
*!PUT!QTI%1-3"LOGET'^^TUT QT-13"E^^TUT QT-10"E
* EWVER.TMPEX''
* !ERR!QT-10"N^^TUTOERR' TRY AGAIN...
= OSTART
.NOOPERATOR
.RUN DEC:DIRECT
*CT=*.CT/F
.RUN DEC:TECO
*ERVER.TMPYHXV
*BJI60EWMONITR.VERHPEF  !      MONITR.VER  IS USED BY  TWICE.CTL      !
*ERCT.DIRY<ZUZ A QZ-Z;>BJ
*<S.;-DI >BJ
*<SCT;0XAL.,ZXBHKGAZJ2RI.BJ<S^S.;-C-DBJ>
*BJHT
* IERZJ@I//HXMMM 1JDIWZJRILHXMMM
*Y0U6<N###;-3DGV%6>Q6=EF
*HKGBBJ>
;
;AT THIS POINT, ALL THE .CT FILES HAVE BEEN CHANGED INTO .CTL FILES BY
; HAVING THE CURRENT VERSION # SUBSTITUTED FOR ### THROUGHOUT.
;.DELETE VER.TMP
;.DELETE *.CT
;.IF (ERROR) ;TOUGH
;
GET::  ;
.CHKPNT GET
.SET WATCH VERSION
.IF (ERROR)  ;O.K.
;SOMETIMES WE MAKE SPECIAL CASE SUBSTITUTIONS BY HAND.
;PAUSE TO LET THIS HAPPEN.
.PLEASE  COPY ANY SPECIAL CASE FILES (JOBDAT,DDT,MACRO,LINK), THEN PROCEED
;THIS WAITS FOR OPERATOR TO CONTINUE......
;
;NOW MAKE CHECKSUMMED DIR....
.RUN DEC:DIRECT
*MONFIL=/SORT/CHECKSUM
.IF (ERROR) ;TOUGH
;
SORT::
.CHKPNT SORT
.SET WATCH VERSION
.IF (ERROR) ;O.K.
.RUN DEC:SORT
*MONFIL.DSF=MONFIL.DIR/KEY:1:11:A/RECORD:80
.IF (ERROR) ;TOUGH
.QUEUE MONFIL.DSF
;
;At this point the main work of MONMK0 is done and we are
; ready to begin assembling the monitor, but before leaving MONMK0
; we start up some other parallel tasks.....
;
;IN PARALLEL TO MONITOR ASSEMBLIES LET'S CHECK ALL MONITOR SOURCE FILES TO
; DETERMINE IF THEY PROPERLY MATCH <'S AND >'S.  USE VCHK.CTL FOR THIS.
.Q I:=VCHK/UNIQ:0/TIME:1::,/DISP:DEL
.IF (ERROR)  .PLEASE COULDN'T RUN VCHK.CTL
;
;ALSO CREATE ANOTHER FILE WHICH DEPENDS ON THE MONITOR SOURCES,
; NAMELY, DATDMP......
;	;We no longer make DATDMP, but here is how we used to do so in MONMKB...
;	;CREATE DATDMP.SAV FROM COMMOD.REL
;	.RUN DEC:LOADER
;	=JOBDAT,COMMOD/P
;	.IF (ERROR)  ;IT'S OKAY, UNDEFINED GLOBALS ARE EXPECTED.
;	.SAV MON:DATDMP
;
.PLEASE MONMK0 IS FINISHED--BEGIN MONITOR ASSEMBLIES (MONMKA,I,V,L,W,G, AND H)
.GOTO M0XIT
%ERR:: .GOTO M0ERR
%CERR:: .GOTO M0ERR
M0ERR:: .PLEASE ERROR IN MONMK0--EXAMINE .LOG FILE
.QUEUE MONMK0.LOG/DISPOSE:PRESERVE
.GOTO M0XIT
M0XIT::
%FIN::
.KJOB/F
;[END OF MONMK0.CTL]