cdc:nos2.source:opl871:ldi
Table of Contents
LDI
Table Of Contents
- [00009] LDI - LOAD JOBS TO INPUT QUEUE.
- [00011] LOAD JOBS TO INPUT QUEUE.
- [00078] FETS AND COMMON DATA.
- [00091] TDSP - *DSP* PARAMETER BLOCK.
- [00112] TFUN - FAMILY NAME, USER NAME TABLE.
- [00165] SUBROUTINES.
- [00167] CPY - COPY FILE.
- [00209] PRESET PROCESSING.
- [00211] PRS - PRESET PROGRAM.
- [00396] ERR - ISSUE COMMAND ERROR MESSAGE.
- [00405] FND - FIND NON-BLANK CHARACTER.
- [00443] TARG - ARGUMENT EQUIVALENCE TABLE.
Source Code
- LDI.txt
- IDENT LDI,FETS
- ABS
- ENTRY LDI
- ENTRY RFL=
- SST
- SYSCOM B1
- *COMMENT LDI - LOAD JOBS TO INPUT QUEUE.
- COMMENT COPYRIGHT CONTROL DATA SYSTEMS INC. 1992.
- TITLE LDI - LOAD JOBS TO INPUT QUEUE.
- SPACE 4
- *** LDI - LOAD JOBS TO INPUT QUEUE.
- * G. R. MANSFIELD. 70/10/25.
- * R. M. DESSEL. 81/10/26.
- SPACE 4
- *** *LDI* COPIES A SPECIFIED FILE TO THE INPUT QUEUE.
- SPACE 4,10
- *** *LDI* COMMAND.
- *
- * LDI(LFN,ID,OP,DC,UN,FM)
- *
- * LDI(FN=LFN,ID=ID,OP=OP,DC=DC,UN=UN,FM=FM)
- *
- * *LDI* COMMAND PARAMETERS ARE DEFINED
- * AS THE FOLLOWING.
- *
- * LFN NAME OF FILE TO BE COPIED.
- *
- * ID *ID* CODE (NUMERIC). TWO FORMS ARE PERMITTED -
- * ID = NN SELECT LOCAL DEVICE.
- * ID IMPLICIT CENTRAL SITE ROUTING.
- *
- * OP IF OP IS SPECIFIED, JOBNAME OF EACH JOB LOADED
- * WILL BE ISSUED TO THE CONTROL POINT DAYFILE.
- *
- * DC DISPOSITION CODE. VALID CODES INCLUDE -
- * IN - INPUT QUEUE TYPE.
- * NO - INPUT QUEUE TYPE - NO OUTPUT.
- * TO - INPUT QUEUE TYPE - TERMINAL OUTPUT.
- *
- * UN USER NAME. TWO FORMS ARE PERMITTED -
- * UN = XXXXXXX USER NAME.
- * UN IMPLICIT REMOTE ROUTING.
- *
- * FM FAMILY NAME. TWO FORMS ARE PERMITTED -
- * FM = XXXXXX FAMILY NAME.
- * FM IMPLICIT REMOTE ROUTING.
- SPACE 4,10
- *** DAYFILE MESSAGES.
- *
- * * ARGUMENT ERROR.*
- * ARGUMENT ERROR DETECTED ON COMMAND.
- *
- * * INCORRECT ID CODE.*
- * *ID* CODE SPECIFIED ON THE COMMAND IS AN
- * INCORRECT VALUE FOR A BATCH *ID* CODE.
- *
- * * INCORRECT DC CODE.*
- * DISPOSITION CODE SPECIFIED ON COMMAND
- * IS AN INCORRECT VALUE.
- *
- * * LDI ID AND FM/UN CONFLICT.*
- * BOTH *ID* AND *FM*/*UN* WERE SPECIFIED ON THE CONTROL
- * COMMAND. *ID* MAY NOT BE SPECIFIED WITH EITHER
- * *FM* OR *UN*.
- SPACE 4
- **** ASSEMBLY CONSTANTS.
- BUFL EQU 100B
- IBUFL EQU 2001B
- OBUFL EQU 2001B
- ****
- SPACE 4
- *CALL COMCMAC
- *CALL COMSDSP
- *CALL COMSIOQ
- *CALL COMSSSJ
- TITLE FETS AND COMMON DATA.
- FETS SPACE 4
- ORG 110B
- FETS BSS 0
- I BSS 0
- LOAD FILEB IBUF,IBUFL
- O BSS 0
- SCR FILEB OBUF,OBUFL,(FET=8)
- TDSP SPACE 4,10
- ** TDSP - *DSP* PARAMETER BLOCK.
- *
- *T W0 42/ FILE NAME,18/
- *T, W1 24/ ,12/ DC,6/ ,18/ FLAGS
- *T, W2 36/ ,24/ DA
- *T, W3 60/
- *T, W4 60/
- *T, W5 60/
- *T, W6 60/
- *
- * DC - DISPOSITION CODE.
- * DA - *TID* OR POINTER TO *FM*/*UN*.
- TDSP BSS 0
- VFD 42/0LSCR,18/0
- VFD 12/,12/,12/0LIN,6/,18/FRDC+FRCS
- VFD 36/0,24/-0
- BSSZ 4
- TFUN SPACE 4,10
- ** TFUN - FAMILY NAME, USER NAME TABLE.
- *
- *T W0 42/ FAMILY NAME,18/
- *T,W1 42/ USER NAME,18/
- TFUN BSSZ 2 FAMILY NAME - USER NAME
- SPACE 4,10
- * INTERNAL FLAGS.
- PDID CON 0 DEVICE CODE PROCESSED
- PFUN CON 0 FM - UN PROCESSED
- LDI TITLE MAIN PROGRAM.
- LDI SB1 1 (B1) = 1
- RJ PRS PRESET PROGRAM
- LDI1 READ I
- READW I,BUF,BUFL
- NG X1,LDI2 IF EOF
- SX7 X1-BUF
- ZR X7,LDI2 IF EMPTY RECORD
- BX5 X1 SAVE (X1)
- SA1 O+1 ASSIGN FILE TO INPUT DEVICE
- MX0 12
- BX6 -X0*X1
- SX1 2RIN
- LX1 59-11
- BX7 X6+X1
- SA7 A1
- REQUEST O,U,N REQUEST EQUIPMENT WITH NO DAYFILE MESSAGE
- BX1 X5 RESTORE (X1)
- RJ CPY COPY FILE
- RECALL O
- ROUTE TDSP,RECALL
- SA1 O RESTORE FILE NAME IN *DSP* BLOCK
- MX0 42
- BX6 X0*X1
- SA1 TDSP
- SA2 LDIB
- SA6 A1
- NZ X2,LDI1 IF JOBNAME OPTION NOT SELECTED
- BX7 X0*X1
- SX2 2RS
- BX6 X7+X2
- LX6 48
- SA6 LDIA+1
- MESSAGE LDIA,3,R
- EQ LDI1 LOOP
- LDI2 ENDRUN
- LDIA DATA C* JOBNAME IS*
- LDIB CON 1
- TITLE SUBROUTINES.
- CPY SPACE 4
- ** CPY - COPY FILE.
- *
- * ENTRY (X1) = FILE STATUS.
- *
- * MACROS READ, RECALL, WRITE, WRITEF, WRITER.
- CPY SUBR ENTRY/EXIT
- EQ CPY3
- CPY1 READ I
- RECALL O
- CPY2 READW I,BUF,BUFL
- CPY3 NG X1,CPY5 IF EOF
- NZ X1,CPY4 IF EOR
- WRITEW O,BUF,BUFL
- EQ CPY2
- CPY4 WRITEW O,BUF,X1-BUF
- WRITER O END RECORD
- EQ CPY1
- CPY5 WRITEF O END FILE
- EQ CPY RETURN
- SPACE 4
- * COMMON DECKS.
- *CALL COMCCIO
- *CALL COMCLFM
- *CALL COMCRDW
- *CALL COMCSYS
- *CALL COMCWTW
- BUFFERS SPACE 4
- * BUFFER ASSIGNMENTS.
- USE BUFFERS
- BUF EQU *
- IBUF EQU BUF+BUFL
- OBUF EQU IBUF+IBUFL
- RFL= EQU OBUF+OBUFL
- TITLE PRESET PROCESSING.
- PRS SPACE 4
- ** PRS - PRESET PROGRAM.
- *
- * USES X - ALL.
- * A - 1, 2, 3, 5, 6, 7.
- * B - 2, 3, 4, 5, 6, 7.
- *
- * CALLS ARM, CPA, DXB, FNB, USB.
- *
- * MACROS LABEL, RETURN.
- ORG BUF
- PRS SUBR ENTRY/EXIT
- RETURN O
- SB2 CCDR UNPACK COMMAND
- RJ USB
- SA1 A6 ASSURE TERMINATOR CHARACTER
- SX6 1R.
- SA6 X1+B1
- SA2 PRSA SET SEPARATOR MASK
- SB2 60
- SB7 ERR SET EXIT FOR TERMINATOR CHARACTER
- RJ FNB FIND NON-BLANK CHARACTER
- * SKIP PROGRAM NAME.
- SB7 PRS4 SET EXIT FOR TERMINATOR CHARACTER
- PRS1 RJ FNB FIND NON-BLANK CHARACTER
- SB4 B5-B2
- LX4 X2,B5
- PL B4,PRS2 IF SEPARATOR CHARACTER
- PL X4,PRS1 IF NOT SEPARATOR CHARACTER
- PRS2 SB3 TARG FWA OF ARGUMENT TABLE
- SB2 TARGL LENGTH OF ARGUMENT TABLE
- SB4 PRSK ADDRESS TO PLACE DATA
- RJ CPA CONVERT POSITIONAL ARGUMENTS
- NG B5,ERR IF ARGUMENT ERROR
- PL X1,PRS4 IF NO ARGUMENTS PROCESSED
- SX6 B5 SET LWA OF ARGUMENTS
- SA6 USBC
- SB6 PRSK FWA OF ARGUMENTS
- RJ ARM PROCESS ARGUMENTS
- NZ X1,ERR IF ERROR
- * PROCESS FILE NAME.
- PRS3 SA1 FN
- SX4 -B1
- BX2 X4-X1
- ZR X2,PRS4 IF NULL ARGUMENT
- MX0 42 SET FILE NAME IN FET
- BX1 X0*X1
- SX2 3
- IX6 X1+X2
- SA6 I
- EQ PRS5 PROCESS *ID* CODE
- PRS4 LABEL I REQUEST LOCAL FILE
- * PROCESS *ID* CODE.
- PRS5 SA5 ID
- SX4 -B1
- BX2 X4-X5
- ZR X2,PRS7 IF *ID* CODE NOT SET
- SX7 B1+ SET *ID* FLAG
- SA7 PDID
- SA2 PRSG
- MX0 42 GET *ID* CODE
- BX5 X0*X5
- BX2 X5-X2
- ZR X2,PRS6 IF CENTRAL SITE SPECIFIED
- SB7 0 SET OCTAL CONVERSION
- RJ DXB CONVERT TO DISPLAY CODE
- SB7 PRSC * INCORRECT ID CODE.*
- NZ X4,ERR1 IF CONVERSION ERROR
- SX2 X6-IDLM
- PL X2,ERR1 IF ID .GE. IDLM
- SA6 TDSP+2 SET *ID* CODE IN *DSP* BLOCK
- SX2 FRTI
- PRS6 SA1 TDSP+1
- SX6 FRCS
- BX6 X1+X6 SET CENTRAL SITE ROUTING FLAG
- BX6 X2+X6 OPTIONALLY SET *ID* FLAG
- SA6 A1+
- * PROCESS *OP* OPTION.
- PRS7 SA1 OP
- SX4 -B1
- BX2 X4-X1
- ZR X2,PRS8 IF JOBNAME MESSAGE NOT SELECTED
- SX3 FRFN FLAG JOB NAME OPTION
- MX0 -18
- BX2 -X0*X3
- SA1 TDSP+1
- BX7 X1+X2
- SA7 A1
- SX6 B0+ ZERO LAST WORD OF MESSAGE BUFFER
- SA6 LDIB
- * PROCESS *DC* OPTION.
- PRS8 SA1 DC
- BX2 X4-X1
- ZR X2,PRS10 IF *DC* OPTION NOT SELECTED
- SB7 PRSD * INCORRECT DC CODE.*
- MX0 12
- BX5 X0*X1
- LX0 -12 CHECK IF CODE .GT. TWO CHARACTERS
- BX2 X0*X1
- NZ X2,ERR1 IF INCORRECT *ID* CODE
- LX5 12
- SX2 X5-2RIN
- SX3 X5-2RNO
- SX1 X5-2RTO
- ZR X2,PRS9 IF VALID CODE
- ZR X3,PRS9 IF VALID CODE
- NZ X1,ERR1 IF INCORRECT *DC* CODE
- PRS9 SA2 TDSP+1
- SX7 FRDC
- LX0 -12 POSITION MASK
- LX5 24 POSITION PARAMETER
- BX3 -X0*X2
- BX3 X3+X5 ENTER *DC* PARAMETER
- BX7 X3+X7 ENTER FLAG BIT
- SA7 TDSP+1
- * PROCESS *UN* PARAMETER.
- PRS10 SA1 UN
- BX2 X4-X1
- ZR X2,PRS11 IF *UN* OPTION NOT SPECIFIED
- SA2 PDID
- SB7 PRSE * LDI ID AND FM/UN CONFLICT.*
- NZ X2,ERR1 IF CONFLICT
- SX7 FRTI SET *FM*/*UN* FLAG
- SA7 PFUN
- MX0 42 GET USER NAME
- BX6 X0*X1
- SA2 PRSI CHECK IF CENTRAL SITE SPECIFIED
- BX2 X6-X2
- ZR X2,PRS11 IF IMPLICIT REMOTE ROUTING
- SA6 TFUN+1 SET USER NAME
- * PROCESS *FM* PARAMETER.
- PRS11 SA1 FM
- BX2 X4-X1
- ZR X2,PRS12 IF *FM* OPTION NOT SPECIFIED
- SA2 PDID
- SB7 PRSE * LDI ID AND FM/UN CONFLICT.*
- NZ X2,ERR1 IF CONFLICT
- SX7 FRTI SET *FM*/*UN* FLAG
- SA7 PFUN
- MX0 42
- BX7 X0*X1
- SA2 PRSJ CHECK IF CENTRAL SITE SPECIFIED
- BX2 X7-X2
- ZR X2,PRS12 IF IMPLICIT REMOTE ROUTING
- SA7 TFUN SET FAMILY NAME
- * COMPLETE BUILDING THE *DSP* PARAMETER BLOCK.
- PRS12 SA1 PDID
- SA3 PFUN
- BX6 X3+X1
- ZR X6,PRSX IF NOT REMOTE ROUTING
- SX4 FRTI
- SX3 FRCS CLEAR CENTRAL SITE FLAG
- SA1 TDSP+1
- BX7 X4+X1
- BX7 X7-X3
- SA7 A1 SET *ID* FLAG
- SA1 TFUN
- SA2 A1+B1
- BX2 X2+X1
- ZR X2,PRSX IF IMPLICIT REMOTE ROUTING
- SX3 A1 SET ADDRESS OF FAMILY/USER NAME BLOCK
- MX0 36
- BX3 -X3
- BX6 -X0*X3
- SA6 TDSP+2
- EQ PRSX RETURN
- ERR SPACE 4,15
- ** ERR - ISSUE COMMAND ERROR MESSAGE.
- *
- * ENTRY (B7) = ERROR MESSAGE ADDRESS, IF ENTRY AT *ERR1*.
- ERR SB7 PRSB * ARGUMENT ERROR.*
- ERR1 MESSAGE B7 ISSUE ERROR MESSAGE
- ABORT
- FNB SPACE 4,10
- ** FND - FIND NON-BLANK CHARACTER.
- *
- * ENTRY (B6) = NEXT CHARACTER ADDRESS.
- * (B7) = EXIT ADDRESS IF TERMINATOR ENCOUNTERED.
- *
- * EXIT (X1) = (B5) = NEXT NON BLANK CHARACTER.
- * (B6) = NEXT CHARACTER ADDRESS (UPDATED).
- * EXIT IS MADE TO B7, IF TERMINATOR ENCOUNTERED.
- *
- * USES X - 1, 4.
- * A - 1.
- * B - 5, 6.
- FNB SUBR ENTRY/EXIT
- FNB1 SA1 B6 GET NEXT CHARACTER
- SB6 B6+B1
- SX4 X1-1R
- ZR X4,FNB1 IF BLANK CHARACTER
- SB5 X1+
- SX4 X1-1R.
- ZR X4,FNB2 IF TERMINATOR CHARACTER
- SX4 X1-1R)
- NZ X4,FNBX IF NOT TERMINATOR CHARACTER, RETURN
- FNB2 JP B7 TERMINATE CHARACTER
- SPACE 4,10
- * WORKING STORAGE.
- PRSA CON 40000000000033127777B SEPARATOR MASK
- PRSB DATA C* ARGUMENT ERROR.*
- PRSC DATA C* INCORRECT ID CODE.*
- PRSD DATA C* INCORRECT DC CODE.*
- PRSE DATA C* LDI ID AND FM/UN CONFLICT.*
- PRSG DATA 2LID
- PRSI DATA 2LUN
- PRSJ DATA 2LFM
- PRSK BSSZ 100
- TARG SPACE 4,10
- ** TARG - ARGUMENT EQUIVALENCE TABLE.
- TARG BSS 0
- FN ARG FN,FN,0,0 FILE TO BE COPIED
- ID ARG ID,ID,0,0 ID CODE
- OP ARG OP,OP,0,0 INDICATES IF JOBNAME ISSUED TO DAYFILE
- DC ARG DC,DC,0,0 DEVICE CODE
- UN ARG ZR,UN,0,0 USER NAME
- FM ARG FM,FM,0,0 FAMILY
- ARG
- TARGL EQU *-TARG-1
- FN CON -1
- ID CON -1
- OP CON -1
- DC CON -1
- UN CON -1
- FM CON -1
- ZR CON 0 DEFAULT ARGUMENT VALUE
- SPACE 4
- * COMMON DECKS.
- *CALL COMCARM
- *CALL COMCCPA
- *CALL COMCCPM
- *CALL COMCDXB
- *CALL COMCPOP
- *CALL COMCUSB
- SPACE 4
- END
cdc/nos2.source/opl871/ldi.txt ยท Last modified: 2023/08/05 17:24 by Site Administrator