Trailing-Edge
-
PDP-10 Archives
-
bb-d868e-bm_tops20_v41_2020_dist_1of2
-
language-sources/ornmac.mac
There are 44 other files named ornmac.mac in the archive. Click here to see a list.
UNIVERSAL ORNMAC Symbol File for ORION AND OPR
SUBTTL Murray Berkowitz/PJT 1-Jan-82
;
;
; COPYRIGHT (c) 1975,1976,1977,1978,1979,1980,1981,1982
; DIGITAL EQUIPMENT CORPORATION
;
; THIS SOFTWARE IS FURNISHED UNDER A LICENSE AND MAY BE USED
; AND COPIED ONLY IN ACCORDANCE WITH THE TERMS OF SUCH LICENSE
; AND WITH THE INCLUSION OF THE ABOVE COPYRIGHT NOTICE. THIS
; SOFTWARE OR ANY OTHER COPIES THEREOF MAY NOT BE PROVIDED OR
; OTHERWISE MADE AVAILABLE TO ANY OTHER PERSON. NO TITLE TO
; AND OWNERSHIP OF THE SOFTWARE IS HEREBY TRANSFERRED.
;
; THE INFORMATION IN THIS SOFTWARE IS SUBJECT TO CHANGE
; WITHOUT NOTICE AND SHOULD NOT BE CONSTRUED AS A COMMITMENT
; BY DIGITAL EQUIPMENT CORPORATION.
;
; DIGITAL ASSUMES NO RESPONSIBILITY FOR THE USE OR RELIABILITY
; OF ITS SOFTWARE ON EQUIPMENT WHICH IS NOT SUPPLIED BY
; DIGITAL.
SEARCH GALCNF ;GET GALAXY OPTIONS
SEARCH GLXMAC
SALL ; CLEAN LISTINGS
TOPS10 <
IF1,<PRINTX BUILDING A GALAXY-10 ORNMAC>
SEARCH UUOSYM>
TOPS20 <
IF1,<PRINTX BUILDING A GALAXY-20 ORNMAC>
SEARCH MONSYM>
XP FTRJE,FTRJE ;SETUP RJE VALUE
XP FTDN60,FTDN60 ;SETUP DN60 VALUE
;Define TOPS20 OPR priv bits until formally defined
TOPS20 <
ND .OBSOP,1 ;SYSTEM OPR PRIV
ND .OBLOP,2 ;LOCAL OPR PRIV
ND .OBROP,3 ;REMOTE OPR PRIV
> ;End TOPS20
%%.OPR==33 ;ORNMAC VERSION NUMBER
SUBTTL Table of Contents
; TABLE OF CONTENTS FOR ORNMAC
;
;
; SECTION PAGE
; 1. Table of Contents......................................... 2
; 2. Operating system dependent definitions.................... 3
; 3. KEYMAIN,KEYOBJ,OBJORN and KEYWORD symbol definitions...... 4
; 4. SWITCH Symbol definitions for switches................... 5
; 5. TABAPL Syntax table macros............................... 6
; 6. GALCNF parameters......................................... 7
; 7. ORNKEY, ORNDSP,ORNSDP and ORNSWI command syntax macros.... 8
; 8. General message format.................................... 8
; 9. OPR/ORION message types................................... 9
; 10. Special AC assigments..................................... 10
; 11. The object block.......................................... 11
; 12. COMMAND message........................................... 12
; 13. HELLO message............................................. 13
; 14. START,PAUSE,CONTINUE and SHUTDOWN messages................ 14
; 15. SETUP message............................................. 15
; 16. SETUP REPLY message....................................... 16
; 17. HELLO message for applications (NSP)...................... 17
; 18. HELLO ACKNOWLEDGEMENT message for applications (NSP)...... 18
; 19. SET message............................................... 19
; 20. FORWARDSPACE and BACKSPACE message........................ 20
; 21. HOLD and RELEASE message.................................. 21
; 22. MODIFY message............................................ 22
; 23. ROUTE message............................................. 23
; 24. DELETE message............................................ 25
; 25. SEND message.............................................. 26
; 26. NOTIFY message............................................ 27
; 27. SUPPRESS message.......................................... 28
; 28. CANCEL message............................................ 29
; 29. REQUEUE message........................................... 30
; 30. DEFINE message............................................ 31
; 31. TAPE and DISK messages.................................... 32
; 32. SHOW messages for tapes................................... 33
; 33. SWITCH message............................................ 34
; 34. DISMOUNT message.......................................... 35
; 35. RECOGNIZE message (TOPS10)................................ 35
; 36. SET TAPE and DISK messages................................ 36
; 37. SET STRUCTURE message for disks........................... 37
; 38. SET TAPE INITIALIZE message............................... 38
; 39. ENABLE and DISABLE message for tapes...................... 39
; 40. MOUNT message for tape and disk........................... 40
; 41. IDENTIFY message for tapes................................ 41
; 42. RESPONSE message.......................................... 42
; 43. LOCK/UNLOCK message....................................... 43
; 44. USAGE ACCOUNTING MESSAGES................................. 44
; 45. Standard message format................................... 45
; 46. DN60 command message...................................... 46
; 47. WTO,WTOR and ACK formats for all programs................. 47
; 48. ALIGN message............................................. 48
; 49. STATUS message............................................ 49
; 50. SHOW CONTROL-FILE message................................. 50
; 51. SHOW STATUS message....................................... 51
; 52. SHOW STATUS IBM-NODE message.............................. 52
; 53. SHOW PARAMTERS IBM-NODE message........................... 52
; 54. MODIFY SYSTEM-LISTS message............................... 53
; 55. SHOW SYSTEM-LIST message.................................. 54
; 56. SHOW ALLOCATION message................................... 55
; 57. LOGOUT Message - Function 27 (sent by IPCC)............... 56
; 58. ORION Error codes and messages.......................... 57
; 59. PARSET Parser setup macros............................... 58
; 60. Node/Operator Data Base................................... 59
; 61. OPR list entry............................................ 60
; 62. OPR table database structure.............................. 60
; 63. OPERATOR message list entry............................... 61
; 64. Parser storage allocation definitions..................... 62
; 65. PDB Parser data block definitions..................... 63
; 66. Parser flag values........................................ 63
; 67. Parser argument block description......................... 64
; 68. Parser action routine argument block description.......... 65
; 69. Parser return block definition............................ 66
; 70. Parser keyword table descriptions......................... 67
; 71. Message resend list database description.................. 68
; 72. Message send failure database description................. 69
; 73. Interrupt system definitions.............................. 70
; 74. DN200 OPR definitions..................................... 71
; 75. SRV: Database for TOPS20.................................. 72
; 76. Error tables for OPR...................................... 73
SUBTTL Revision History
COMMENT \
1 4/28/81 Add a revision history.
Add an error message CLO
2 5/6/81 Add P$TAKE,P$ACCT & P$NPRO to parset for completness.
3 5/21/81 Add an error message INT
30 11/12/81 Remove definitions for LOGOUT messages.
32 3/18/82 Add support for MOUNT FOO:/WRITE-LOCKED. GCOs 1272 and 1273
33 7/18/82 Add WT.SND bit in .OFLAG word. GCO 1451
\ ; End of revision history
SUBTTL Operating system dependent definitions
;DEFINE TAPE AND TTY FLAGS FOR DEVICE DESIGNATORS
SYSPRM DV%MTA,DV.MTA,.DVMTA ;TAPE VALUE
SYSPRM DV%TTY,DV.TTY,.DVTTY ;TTY VALUE
SUBTTL KEYMAIN,KEYOBJ,OBJORN and KEYWORD symbol definitions
;THE VALUES HERE ARE USED TO PASS WHICH KEYWORD THE PARSER SAW
; TO THE EVENT PROCESSOR
;THERE WILL BE 3 KEYWORD TABLES
; KEYMAIN - MAIN KEYWORDS THAT START COMMANDS
; KEYOBJ - KEYWORDS THAT ARE OBJECTS
; OBJORN - ORION OBJECTS ..DEVICES BAT,LPT,CDP,CDR
; KEYWORD - ALL OTHER KEYWORDS
DEFINE KEYMAIN,<
X ALIGN,ALI ;;ALIGN
X BACKSPACE,BKS ;;BACKSPACE
X CANCEL,CNC ;;CANCEL
X CLOSE,CLO ;;CLOSE
X CONTINUE,CNT ;;CONTINUE
X DELETE,DEL ;;DELETE COMMAND
IFN FTDN60,<
X DEFINE,DEF ;;DEFINE
> ;END FTDN60
X DISABLE,DIS ;;DISABLE
X DISMOUNT,DSM ;;DISMOUNT COMMAND
X ENABLE,ENA ;;ENABLE
X ENTER,ENT ;;ENTER
X EXIT,EXT ;;EXIT
X FORWARDSPACE,FWS ;;FORWARDSPACE
X HELP,HLP ;;HELP COMMAND
X HOLD,HLD ;;HOLD
X IDENTIFY,IDN ;;IDENTIFY
X MODIFY,MOD ;;MODIFY COMMAND
X MOUNT,MTN ;;MOUNT COMMAND
X PAUSE,PAU ;;PAUSE
TOPS20< X PUSH,PUS> ;;PUSH COMMAND
X PRINT,PRT ;;PRINT COMMAND
TOPS10< X RECOGNIZE,REC > ;;RECOGNIZE COMMAND
X RELEASE,REL ;;RELEASE
X REPORT,RPT ;;REPORT
X REQUEUE,REQ ;;REQUEUE
X RESPOND,RSP ;;RESPOND
X RETURN,RTN ;;RETURN
X ROUTE,RTE ;;ROUTE (ROUTE COMMAND FOR QUASAR)
X SEND,SND ;;SEND
X SET,SET ;;SET
X SHOW,SHW ;;SHOW
X SHUTDOWN,SHD ;;SHUTDOWN
X START,STA ;;STARTUP
X SUBMIT,SUB ;;SUBMIT COMMAND
X SUPPRESS,SUP ;;SUPPRESS
X TAKE,TAK ;;TAKE
X UNLOAD,UNL ;;UNLOAD COMMAND
X WAIT,WAI ;;WAIT COMMAND
;;COMMANDS FOR TAPE AND DISK
X SWITCH,SWI ;;SWITCH COMMAND
;;COMMANDS FOR MDA ON -10
X LOCK,LOC ;;LOCK COMMAND
X UNLOCK,ULC ;;UNLOCK
;;ADD NEW COMMANDS AT THE END OF THIS TABLE
X <\"32>,CTZ ;;Control-Z (TOPS-10 style exit)
X NEXT,NXT ;;[NXT] NEXT COMMAND
> ;END OF KEYMAIN
DEFINE KEYOBJ,<
X JOB,JOB ;;JOB
X OPERATOR,OPR ;;OPERATOR
X TERMINAL,TRM ;;TERMINAL
> ;END KEYOBJ
; *** THE OBJORN ENTRIES MUST BE IN ALPHABETICAL ORDER. ***
DEFINE OBJORN,<
X (<BATCH>,BAT) ;;BATCH-STREAM
X (<CARD-PUNCH>,CDP) ;;CARD-PUNCH
X <CARD-READER-INTERPRETER>,BIN ;;READER INTERPRETER
IFN FTFTS,<
X <FAL>,FAL ;;FAL-STREAM
> ;End of FTFTS conditional
TOPS20 <
X <FILE-RETRIEVAL>,RET ;;RETREIVAL REQUESTS
> ;END TOPS20
IFN FTFTS,<
X <FTS>,FTS ;;FTS Messages
> ;End of FTFTS conditional
X <MOUNT>,MNT ;;MOUNT REQUESTS
X (<PAPER-TAPE-PUNCH>,PTP) ;;PAPER-TAPE-PUNCH
X PLOTTER,PLT ;;PLOTTER
X PRINTER,LPT ;;PRINTER
X READER,RDR ;READER
> ;END OBJORN
DEFINE KEYWORD,<
X AFTER,AFT ;;AFTER
X ALL,ALL ;;ALL
X <ALL-MESSAGES>,ALM ;;ALL-MESSAGES
X <ALL-NODES>,ALG ;;ALL-NODES
X ASK,ASK ;;ASK
X ATTRIBUTE,ATR ;;ATTRIBUTE
X(<BEGINNING-OF>,BEG) ;;BEGINNING-OF
X <CONTROL-FILE>,CTL ;;CONTROL-FILE
X COPY,CPY ;;COPY
X(<CURRENT-POSITION>,CUR) ;;CURRENT-POSITION
X <CURRENT-REQUEST>,ACR ;;AFTER-CURRENT-REQUEST
X DAYTIME,DAY ;;DAYTIME
X <ERROR-MESSAGES>,ERM ;;ERROR-MESSAGES
X <EVERY-REQUEST>,AER ;;AFTER-EVERY-REQUEST
X FILE,FIL ;;FILE
X (<FORMS-TYPE>,FOT) ;;FORMS-TYPE
X IGNORE,IGN ;;IGNORE
X IMMEDIATELY,IMM ;;IMMEDIATELY
X <JOB-MESSAGES>,JOM ;;JOB MESSAGES
X KEYPAD,KPD ;;KEYPAD
X (<LIMIT-EXCEEDED-ACTION>,LEA) ;;LIMIT-EXCEEDED-ACTION
X LINE,LIN ;;LINE....LINE NUMBER
X LOG,LOG ;;LOG
X LOGGING,LGG ;;LOGGING
X (<MEMORY-LIMITS>,MEM) ;;MEMORY-LIMITS
X MESSAGES,MSG ;;MESSAGES
X NODE,NOD ;;NODE
X NOKEYPAD,NKP ;;NOKEYPAD
X(<NOOPR-INTERVENTION>,NOI) ;;NOOPR-INTERVENTION
X <OPR-ACTION-MESSAGES>,OAM ;;OPERATOR ACTION MESSAGES
X <ONLINE>,ONL ;;ONLINE
X(<OPR-INTERVENTION>,OIA) ;;OPR-INTERVENTION
X OTHER,OTH ;;OTHER MESSAGES
X <OUTPUT-DISPLAY>,OPD ;;OUTPUT-DISPLAY
X(<OUTPUT-LIMITS>,OPL) ;;OUTPUT-LIMITS
X (<PAGE-LIMITS>,PGL) ;;PAGE-LIMITS
X PARAMETERS,PRM ;;PARAMETERS
X PRIORITY,PRI ;;PRIORITY
X (<PRIORITY-LIMITS>,PRL) ;;PRIORITY-LIMITS
X REQUEST,RQN ;;REQUEST NUMBER
X QUEUE,QUE ;;QUEUE
X SITGO,SIT ;;SITGO
X STATUS,STS ;;STATUS
X SYSTEM,SYS ;;SYSTEM
X <TAKE-COMMANDS>,TAC ;;TAKE-COMMANDS
X (<TIME-LIMITS>,TIM) ;;TIME-LIMITS
X TO,TO ;;TO (USED IN ROUTE COMMAND)
X TYPE,TYP ;;TYPE (TERMINAL TYPE)
;DN60 KEYWORDS
IFN FTDN60,<
X <BYTES-PER-MESSAGE>,BPM ;;BYTES PER MESSAGE
X <CLEAR-SEND-DELAY>,CSD ;;CLEAR TO SEND DELAY
X <DATA-TERMINAL-READY>,DTR ;;DATA TERMINAL READY
X <EMULATION>,EMU ;;EMULATION
X HASP,HSP ;;HASP
X OFF,OFF ;;OFF
X ON,ON ;;ON
X <RECORDS-PER-MESSAGE>,RPM ;;RECORDS PER MESSAGE
X SECONDARY,SEC ;;SECONDARY PROTOCOL
X <SILO-WARNING-LEVEL>,SWL ;;SILO WARNING LEVEL
;; SYMBOL DEFINED BUT VALUE O.K.
;;X <TERMINATION>,TRM ;;TERMINATION
X <TIMEOUT-CATEGORY>,TOU ;;TIMEOUT CATEGORY
X <TRANSPARENCY>,TRA ;;TRANSPARENCY
X 2780,278 ;;2780
X 3780,378 ;;3780
> ;END FTDN60
;;TAPE AND DISK KEYWORDS
X <ACKNOWLEDGED>,ACK ;;ACKNOWLEDGED
X <ALL-TAPE-DRIVES>,ATP ;;ALL TAPE DRIVES
X <ANSI>,ANS ;;ANSI LABELS
X <AUTOMATIC-VOLUME-RECOGNITION>,AVR ;;AVR
X <AVAILABLE>,AVA ;;AVAILABLE
X <CHANNEL>,CHN ;;CHANNEL
X <DRIVE>,DRV ;;DRIVE
X <DISK-DRIVE>,DSK ;;DISK DRIVE
X <DOMESTIC>,DOM ;;DOMESTIC
X <EBCDIC>,EBC ;;EBCDIC
X <FOREIGN>,FOR ;;FOREIGN
X <INITIALIZE>,INI ;;INITIALIZE
X NO,NO ;;NO
X <REGULATED>,REG ;;REGULATED
X <SCRATCH>,SCR ;;SCRATCH
X <STRUCTURE>,STR ;;STRUCTURE
X <TAPE-DRIVE>,TAP ;;TAPE-DRIVE
X <TOPS20>,T20 ;;TOPS-20 LABELS
X <UNAVAILABLE>,UAV ;;UNAVAILABLE
X UNIT,UNI ;;UNIT (DISK UNIT)
X <ACTIVE-SWAPPING-LIST>,ASL ;;DISK UNITS ON WHICH TO SWAP
X <CRASH-DUMP-LIST>,CDL ;;STRS ON WHICH TO DUMP
X <SYSTEM-SEARCH-LIST>,SSL ;;STRS IN SSL:
;;VALUE ALREADY DEFINED SO NO NEED TO DEFINE AGAIN
;X <UNLABELED>,UNL ;;UNLABELED
X <UNREGULATED>,URG ;;UNREGULATED
X <VOLUME-ID>,VID ;;VOLUME-ID
X YES,YES ;;YES
X 200,200 ;;DENSITY OF 200
X 556,556 ;;DENSITY OF 556
X 800,800 ;;DENSITY OF 800
X 160,160 ;;DENSITY OF 1600
X 625,625 ;;DENSITY OF 6250
;;TOPS20 COMMANDS
X <BIAS-CONTROL>,BIA ;;BIAS CONTROL
X <SCHEDULER>,SCH ;;SCHEDULER
X <NONE>,NON ;;NONE
X <BACKGROUND>,BCK ;;BACKGROUND
X <CLASS>,CLS ;;CLASS
X <ACCOUNTS>,ACT ;;ACCOUNTS
X <ALLOCATED>,ALO ;;ALLOACTED
X <WITHHELD>,WHD ;;WITHHELD
X <POLICY-PROGRAM>,PPR ;;POLICY PROGRAM
;;MDA COMMANDS
X <AUTOMATIC-STRUCTURE-RECOGNITION>,ASR ;;ASR
X <SYSTEM-LISTS>,SLS ;;FOR SHOW SYSTEM-LISTS
X <INCLUDE>,INC ;;INCLUDE (SYSTEM LISTS)
X <EXCLUDE>,EXC ;;EXCLUDE (SYSTEM LISTS)
X <ALLOCATION>,ALC ;;FOR SHOW ALLOCATION
X <BATCH-REQUEST>,BRQ ;;BATCH REQ FOR SHOW ALLOCATION
;;USAGE COMMANDS
X <USAGE>,USG ;;USAGE
X <BILLING-CLOSURE>,UBC ;;BILLING-CLOSURE
X <FILE-CLOSURE>,UFC ;;FILE-CLOSURE
X <EVERY>,WKY ;;WEEKLY
X <NOW>,NOW ;;NOW
X <DAILY>,DLY ;;DAILY
> ;END OF DEFINITION OF KEYWORDS
;NOW DEFINE THE X MACRO TO GENERATE THE NEEDED SYMBOLS
DEFINE X(A,B),<
IF1,<IFDEF .KY'B,< PRINTX ? DUPLICATE KEYWORD CODE -- .KY'B>>
.KY'B==..Z
..Z==..Z+1
>
;INITIALIZE THE COUNTER AND CALL KEYWORD TO GENERATE THE SYMBOLS
..Z==100000
KEYMAIN
..Z==200000
KEYWORD
DEFINE X(A,B),<
IF1,<IFDEF .KY'B,< PRINTX ? DUPLICATE KEYWORD CODE -- .KY'B>>
.KY'B=.OT'B
SUPPRESS .OT'B
> ;END X
KEYOBJ
OBJORN
.KYUSR==0 ;USER MESSAGE **MUST BE ZERO**
SUBTTL SWITCH Symbol definitions for switches
;THESE SYMBOLS ARE USED TO INDICATE WHAT SWITCH WAS SEEN BY THE PARSER
;TO THE EVENT PROCESSOR
DEFINE SWITCH,<
X <ALL>,ALL ;;/ALL
X <APPEND>,APD ;;/APPEND
X <AVAILABLE>,AVA ;;/AVAILABLE
X <CHARACTERISTICS>,CHR ;;/CHARACTERISTICS
X <COPIES:>,CPY ;;/COPIES:
X <CREATE>,CRE ;;/CREATE
X <DEVICE:>,DEV ;;/DEVICE:
X <FILE:>,FIL ;;/FILE:
X <FREE>,FRE ;;/FREE
X <LINES>,LNS ;;/LINES
X <PAGES:>,PAG ;;/PAGES:
X <JOBNAME:>,JOB ;;/JOBNAME:
X <MOUNTED>,MNT ;;/MOUNTED
X <NODE:>,NOD ;;/NODE
X <NO-SIGNON-REQUIRED>,NSN;NO-SIGNON-REQUIRED
X <NOUNLOAD>,NUL ;;/NOUNLOAD
X <PAUSE:>,PAU ;;/PAUSE
X <REQUEST-ID:>,REQ ;;/REQUEST-ID:
X <REPEAT-COUNT:>,RPT ;;/REPEAT
X <SEQUENCE:>,SEQ ;;/SEQUENCE:
X <SHORT>,SHT ;;/SHORT
X <STOP>,STP ;;/STOP
X <JOB>,JBX ;;/JOB
X <SIGNON-REQUIRED>,SON ;;SIGNON-REQUIRED
X <SUPERSEDE>,SPR ;;/SUPERCEDE
X <PURGE>,PUR ;;/PURGE (FOR JOB ERROR )
X <ERROR-PROCESSING>,ERR ;;/ERROR-PROCESSING
X <NOERROR-PROCESSING>,NER;/NOERROR-PROCESSING
X <REASON:>,RSN ;;/REASON
X <REMOVE>,REM ;;/REMOVE A STR ON DISMOUNT
X <DISPLAY>,DSP ;;/DISPLAY
X <NODISPLAY>,NDP ;;/NODISPLAY
X <OPR-ACTION-MESSAGE>,OAM ;;/OPR-ACTION MESSAGES
X <OTHER>,OTH ;;/OTHER
X <USERS>,USR ;;/USER (ON SHO STA STR)
X <WRITE-LOCKED>,WLK ;;/WRITE-LOCKED ON A STR MOUNT
;;TAPE AND DISK -20 COMMAND SWITCHES
X <COUNT:>,CNT ;;/COUNT:
X <DENSITY:>,DEN ;;/DENSITY:
X <INCREMENT:>,INC ;;/INCREMENT:
X <LABEL-TYPE:>,LBT ;;/LABEL-TYPE
X <OVERIDE-EXPIRATION:>,OVR ;;/OVERIDE-EXPIRATION
X <OWNER:>,OWN ;;;/OWNER:
X <PROTECTION>,PRO ;;/PROTECTION:
X <STARTING-VOLUME-ID:>,SVI;/START-VOLUME-ID:
X <TAPE-DISPOSITION:>,TDP ;;/TAPE-DISPOSITION
X <VOLUME-ID>,VID ;;/VOLUME-ID
;;-20 SCHEDULER SWITCHES
X <WINDFALL:>,WFL ;;/WINDFALL:
X <CLASS-ASSIGNMENTS:>,CAS ;;/CLASS-ASSIGNMENTS:
X <NOCHECK>,NCK ;;DISMOUNT str:/NOCHECK
X <NO-SESSION-ENTRIES>,NOS ;;/NO-SESSION-ENTRIES
>
DEFINE X(A,B),<
IF1,<IFDEF .SW'B,< PRINTX ? DUPLICATE SWITCH CODE -- .SW'B>>
.SW'B==..Z
..Z==..Z+1
>
..Z==400000
SWITCH
SUBTTL TABAPL Syntax table macros
;THESE MACROS ARE USED TO GET THE DATA FROM GALGEN AND BUILD
;THE NECESSARY DATA NEEDED BY OPR AND ORION
;DEFINE APPLICATION TABLES
DEFINE TABAPL,<
;THIS TABLE MUST BE IN ALPAHABETICAL ORDER BY THE FIRST ARGUMENT
; X NAME,CODE,TABLE NAME
G$$ATB ;GET TABLE VALUES
> ;END TABAPL
APLBEG==700000 ;START APPLICATION CODES
OP.AAP==0 ;ALL APLLICATION MESSAGES
DEFINE X(A,B,C),<.ZZ==.ZZ+1
IF1,<IFDEF .KY'B,< PRINTX ? DUPLICATE APPLICATION CODE -- .KY'B>>
IF1,<IFDEF OP.'B,< PRINTX ? DUPLICATE MESSAGE FLAG -- OP.'B>>
.KY'B==APLBEG+.ZZ
OP.'B==1B<.ZZ>
OP.AAP==OP.AAP!OP.'B
> ;END OF X
.ZZ==0
TABAPL ;EXPAND APPLICATION TABLES
NUMAPL==.ZZ ;NUMBER OF TABLES
IFG <NUMAPL-^D18>,
<<PRINTX NUMBER OF APPLICATIONS IS GREATER THAN 18 COMPILE ABORTED>
<PRINTX PLEASE CORRECT THE GALGEN PROCEDURE AND RECOMPILE>
END>
%CHKTM==1 ;CHECKPOINT LOG INTERVAL
SUBTTL GALCNF parameters
XP O.LENA,G.OLOG
DEFINE O$LOGN,< G$$LGN >;GET LOG NAME
DEFINE X(A),<> ;NULL X EXPANSION
O$LOGN ;COPY IN MACRO
SUBTTL ORNKEY, ORNDSP,ORNSDP and ORNSWI command syntax macros
;THESE MACROS ARE USED TO DEFINE KEYWORD AND SWITCH TABLES
;THEY USE THE SOFTWARE HALF OF THE TABLE TO POINT TO A WORD
; CONTAINING .KYXXX OR .SWXXX IN THE LH AND THE ADDRESS OF THE
; NEXT PDB CHAIN IN THE RH
;
;TO GENERATE A TABLE, YOU NEED ONE OF THESE MACROS PER ENTRY.
;THEY MUST BE IN ALPHABETICAL ORDER
DEFINE ORNDSP(NXT,KEY,CODE,FLAGS),<
DSPTAB(NXT,.KY'CODE,KEY,FLAGS)
> ;END ORNDSP
DEFINE ORNKEY(KEY,CODE,FLAGS),<
KEYTAB(.KY'CODE,KEY,FLAGS)
> ;END ORNKEY
DEFINE ORNSWI(SWITCH,CODE,FLAGS),<
KEYTAB(.SW'CODE,SWITCH,FLAGS)
> ;END ORNSWI
DEFINE ORNSDP(NXT,SWITCH,CODE,FLAGS),<
DSPTAB(NXT,.SW'CODE,SWITCH,FLAGS)
> ;END ORNSWI
SUBTTL General message format
COMMENT $
All ORION messages consist of a message header, at least one object
area, an ORNMAC version number, and a pointer to an argument length
word.
$
SUBTTL OPR/ORION message types
;The following codes are placed into the message header field, MS.TYP to
; indicate what type of message follows.
.OMOFF==200000 ;OFFSET OF FIRST ORION MESSAGE
.OMSTA==200002 ;START MESSAGE
.OMSHT==200003 ;SHUTDOWN MESSAGE
.OMPAU==200004 ;PAUSE MESSAGE
.OMCON==200005 ;CONTINUE MESSAGE
.OMSHS==200006 ;SHOW STATUS MESSAGE
.OMAHL==200007 ;APPLICATION HELLO MESSAGE
.OMSTS==200010 ;STATUS MESSAGE
.OMWTO==200011 ;WRITE TO OPERATOR MESSAGE
.OMRSP==200012 ;RESPONSE TO WTO MESSAGE (SENT BY ORION)
.OMWTR==200013 ;WTOR MESSAGE
.OMACK==200014 ;ACKNOWLEDGEMENT MESSAGE
.OMOHL==200015 ;OPR HELLO MESSAGE
.OMOST==200016 ;OPR SETUP MESSAGE
.OMOSR==200017 ;OPR SETUP REPLY
.OMHAC==200020 ;HELLO ACK FOR APPLICATIONS
.OMQHL==200021 ;QUASAR HELLO MESSAGE
.OMREQ==200025 ;REQUEUE MESSAGE
.OMCAN==200026 ;CANCEL MESSAGE
.OMSET==200027 ;SET MESSAGE
.OMFWS==200031 ;FORWARDSPACING MESSAGE
.OMALI==200032 ;ALIGN MESSAGE
.OMSUP==200033 ;SUPPRESS MESSAGE
.OMBKS==200034 ;BACKSPACE COMMAND
.OMSND==200035 ;SEND COMMAND
.OMSHC==200036 ;SHOW CONTROL FILE(EXAMINE)
.OMSHP==200037 ;SHOW PARAMETERS MESSAGE
.OMRTE==200040 ;ROUTE COMMAND (TOPS20 REL 4.0)
.OMSHQ==200041 ;SHOW QUEUES COMMAND
.OMHLD==200042 ;HOLD COMMAND
.OMREL==200043 ;RELEASE COMMAND
.OMSHR==200044 ;SHOW ROUTE TABLES COMMAND
.OMACS==200045 ;ACK FOR SHOW MESSAGES
.OMTKE==200046 ;END OF TAKE FILE FLAG
.OMCMD==200050 ;OPR COMMAND MESSAGE
.OMDSP==200051 ;DISPLAY MESSAGE TO PASS A DISPLAY TO OPR
.OMSHM==200052 ;SHO MOUNT REQUESTS
.OMLOG==200053 ;LOG MESSAGE TYPE
.OMNFY==200054 ;NOTIFY MESSAGE FROM QUASAR
.OMDEL==200055 ;DELETE COMMAND
.OMSUB==200056 ;SUBMIT COMMAND
.OMPRT==200057 ;PRINT COMMAND
.OMMOD==200060 ;MODIFY COMMAND
.OMQUE==200061 ;QUEUE REQUEST ENABLE/DISABLE
.OMENA==200062 ;ENABLE MESSAGE
.OMDIS==200063 ;DISABLE MESSAGE
.OMDEF==200064 ;DEFINE COMMAND
.OMD60==200065 ;DN60 COMMAND MESSAGE
.OMSSN==200066 ;SHOW STATUS NETWORK-NODE
.OMSPN==200067 ;SHOW PARAMETERS NETWORK-NODE
.OMRTD==200070 ;DEVICE ROUTING COMMAND
.OMNXT==200071 ;[NXT] NEXT COMMAND
.OMHGH==.OMNXT ;[NXT] HIGHEST DEFINE ORION MESSAGE
.OMTXT==MT.TXT ;TEXT MESSAGE SYMBOL ***
;MESSAGE CODES USED FOR TAPE AND DISK COMMANDS IN RELEASE 4
.ODMES==201000 ;OFFSET FOR TAPE AND DISK MESSAGES
.ODSHT==201001 ;SHOW STATUS TAPE
.ODSHD==201002 ;SHOW STATUS DISK DRIVES
.ODENA==201003 ;ENABLE TAPE COMMAND
.ODDIS==201004 ;DISABLE MOUNT COMMAND
.ODMTS==201005 ;MOUNT STRUCTURE COMMAND
.ODDSM==201006 ;DISMOUNT COMMAND
.ODSDK==201007 ;SET DISK COMMAND
.ODSTP==201010 ;SET TAPE COMMAND
.ODSST==201011 ;SET STRUCTURE COMMAND
.ODREC==201012 ;RECOGNIZE COMMAND FOR -10
.ODUNL==201013 ;UNLOAD COMMAND
.ODIDN==201014 ;IDENTIFY MOUNT REQUEST MESSAGE
.ODDMT==201015 ;DELETE MOUNT REQUESTS
.ODSWI==201016 ;SWITCH COMMAND FOR TAPE REQUESTS
.ODSTR==201017 ;SHOW STATUS STRUCTURES
.ODLOC==201020 ;LOCK COMMAND
.ODULC==201021 ;UNLOCK COMMAND
.ODCSL==201022 ;CHANGE SYSTEM-LISTS
.ODSSL==201023 ;SHOW SYSTEM-LISTS
.ODSAL==201024 ;SHOW ALLOCATION
SUBTTL Special AC assigments
;CHANGE MI TO 15 AND MO TO 14 FROM 16 AND 15
MI==15 ;POINTER TO MESSAGE RECEIVED
MO==14 ;POINTER TO MESSAGE TO SEND
; PB==14 ;POINTER TO FIELD IN MESSAGE RECEIVED
FLAG==13 ;FLAG AC
;P4 WILL BE USED AS A FLAG REGISTER FLAG AND THEREFORE SHOULD
;NOT BE USED ANYWHERE ELSE
SUBTTL The object block
;THIS AREA IS USED TO DEFINE WHAT OBJECT OR OBJECTS A PARTICULAR
;MESSAGE APPLIES TO. AT LEAST ONE OF THESE IS IN EVERY MESSAGE.
;THIS AREA IS AN EXACT COPY A GALAXY DEVICE-OBJECT DESIGNATOR DESCRIBED
;IN GLXMAC
;SEE GLXMAC FOR A DESCRIPTION OF ITS CONTENTS
PHASE MSHSIZ
.OBJTY==.+OBJ.TY ;OBJECT TYPE WORD
.OBJUN==.+OBJ.UN ;OBJECT UNIT NUMBER WORD
.OBJND==.+OBJ.ND ;NODE NAME
BLOCK OBJ.SZ ;SAVE THE SPACE SO LATER AREAS ARE
;CORRECTLY PLACED
OBJSIZ:! ;SIZE OF OBJECT AREA
DEPHASE
.OBJLN==OBJ.SZ+1 ;SIZE OF OBJECT ARGUMENT BLOCK
;THE ARGUMENT COUNT WORD
PHASE OBJSIZ
.ARGLN:! BLOCK 1 ;ARGUMENT COUNT POINTER
DEPHASE
SUBTTL COMMAND message
;THE FOLLOWING IS A DESCRIPTION OF THE LAYOUT OF ALL MESSAGES
;SENT TO AN OBJECT PROCESSOR SIGNING ON WITH THE STANDARD HELLO
;MESSAGE AS WELL AS RESPOND MESSAGES FOR WTO
; !=======================================================!
; \ \
; \ THE MESSAGE HEADER \
; \ \
; !-------------------------------------------------------!
; ! FLAG WORD !
; !-------------------------------------------------------!
; ! ARGUMENT COUNT WORD !
; !=======================================================!
;
; ARGUMENT DATA BLOCKS
;
; !=======================================================!
; ! LENGTH OF THE ARGUMENT ! TYPE OF ARGUMENT !
; !-------------------------------------------------------!
; \ \
; \ ARGUMENT DATA \
; \ \
; !=======================================================!
; All of this stuff is now defined in GLXMAC. Check there
; under General Message Format for the latest stuff.
; PHASE MSHSIZ
;.OFLAG:! BLOCK 1 ;FLAG WORD FOR MESSAGE
;.OARGC:! BLOCK 1 ;ARGUMENT COUNT WORD
;.OHDRS:! ;SIZE OF THE HEADER
; DEPHASE
;DESCRIPTION OF THE ARGUMENT BLOCK
; PHASE 0
;ARG.HD:! BLOCK 1 ;ARGUMENT HEADER WORD
; AR.LEN==-1,,0 ;LENGTH OF THE BLOCK
; AR.TYP==0,,-1 ;TYPE OF BLOCK
;ARG.DA:! BLOCK 1 ;START OF DATA AREA
;ARG.SZ:! ;MINIMUM SIZE OF THE BLOCK
; DEPHASE
;GENERAL DATA TYPES FOR ALL MESSAGES
;.OROBJ==100 ;OBJECT BLOCK
;.ORTYP==101 ;OBJECT TYPE FIELD
;.ORJBN==102 ;JOBNAME TYPE FIELD
;.ORSEQ==103 ;SEQUENCE NUMBER FIELD
;.ORREA==104 ;REASON TYPE FIELD
;.ORDSP==105 ;OPR DISPLAY ARGUMENT
;.ORREQ==106 ;REQUEST NUMBER FIELD
;.ORNOD==107 ;NODE BLOCK FOR QUASAR VALIDATION
;.ORD60==110 ;DN60 BLOCK OF DATA
;.ORTIM==111 ;TIME BLOCK (UDT)
;.ORJNU==112 ;JOB NUMBER FIELD
;THE FOLLOWING ARE THE COMMAND TYPES CURRENTLY USED AS
;GENERAL ARGUMENT TYPES
;
;.CMNOD FOR NODE NAME TYPE
;.CMTXT FOR TEXT ASCIZ DATA
;.CMIFI FOR INPUT FILE SPEC
;.CMUSR FOR USER ID INFORMATION
;.CMDEV FOR DEVICE DESIGNATOR
SUBTTL HELLO message
; THIS MESSGE IS SENT BY AN OPR TO ORION IDENTIFYING WHAT
; NODE THE OPR IS AT.
; !=======================================================!
; \ \
; \ THE MESSAGE HEADER \
; \ \
; !-------------------------------------------------------!
; ! FLAG WORD !
; !-------------------------------------------------------!
; ! ARGUMENT COUNT WORD !
; !=======================================================!
;
; ARGUMENT DATA BLOCKS
;
; !=======================================================!
; ! LENGTH OF THE ARGUMENT ! TYPE OF ARGUMENT !
; !-------------------------------------------------------!
; \ \
; \ ARGUMENT DATA \
; \ \
; !=======================================================!
; THIS MESSAGE USES THE STANDARD ARGUMENT HEADER LAYOUT
; AND REQUIRES ONE ARGUMENT BLOCK AT THIS TIME
;
; THIS ARGUMENT BLOCK CONTAINS FOUR WORDS
;
; 1. NODE NAME WHERE OPR LOCATED
; 2. OPR VERSION NUMBER
; 3. ORNMAC VERSION NUMBER
;THE FOLLOWING FLAGS WILL BE TURNED ON BY AN OPR ON THE -20
;WITH REMOTE PRIVILEGES.
OP.RMT==1B0 ;REMOTE OPERATOR HELLO
.OPHEL==100 ;OPR HELLO BLOCK TYPE
PHASE ARG.DA
OPH.ND:! BLOCK 1 ;OPR HELLO NODE LOCATION
OPH.VN:! BLOCK 1 ;VERSION NUMBER OF THE OPR
OPH.OV:! BLOCK 1 ;ORNMAC VERSION NUMBER
OPH.SZ:! ;LENGTH OF THE BLOCK
DEPHASE
SUBTTL START,PAUSE,CONTINUE and SHUTDOWN messages
;THE FORMAT FOR THESE MESSAGES IS JUST AN OBJECT BLOCK
;EXCEPT THAT THE START COMMAND FOR PRINTERS WILL TAKE
;AN OPTIONAL ARGUMENT FOR DEVICE
; !=======================================================!
; \ \
; \ THE MESSAGE HEADER \
; \ \
; !-------------------------------------------------------!
; ! FLAG WORD !
; !-------------------------------------------------------!
; ! ARGUMENT COUNT WORD !
; !=======================================================!
;
; ARGUMENT DATA BLOCKS
;
; !=======================================================!
; ! LENGTH OF THE ARGUMENT ! TYPE OF ARGUMENT !
; !-------------------------------------------------------!
; \ \
; \ ARGUMENT DATA \
; \ \
; !=======================================================!
; THE MESSAGES ALL CONTAIN AN OBJECT BLOCK .OROBJ
; AND FOR START OF PRINTERS AND OPTIONAL .CMDEV
;
;
;THE START AND SHUTDOWN COMMANDS CAN CONTAIN JUST A .ORNOD BLOCK FOR
;THE SHUTDOWN/START NODE COMMAND
;THE STOP COMMAND HAS THE FOLLOWING BITS DEFINED IN .OFLAG:
ST.IMM==1B0 ;STOP THE DEVICE IMMEDIATELY
ST.ACR==1B1 ;STOP THE DEVICE AFTER THE CURRENT REQUEST
ST.AER==1B2 ;STOP THE DEVICE AFTER EVERY REQUEST
SUBTTL SETUP message
;THIS MESSAGE IS SENT BY ORION TO AN OPR IN RESPONSE TO
;THE HELLO MESSAGE. THIS MESSAGE IS USED TO SYNCRONIZE
;ALL OPRS WITH THE CURRENT APPLICATION TABLE SETTINGS
; !=======================================================!
; \ \
; \ THE MESSAGE HEADER \
; \ \
; !-------------------------------------------------------!
; ! FLAG WORD !
; !-------------------------------------------------------!
; ! ARGUMENT COUNT WORD !
; !=======================================================!
;
; ARGUMENT DATA BLOCKS
;
; !=======================================================!
; ! LENGTH OF THE ARGUMENT ! TYPE OF ARGUMENT !
; !-------------------------------------------------------!
; \ \
; \ ARGUMENT DATA \
; \ \
; !=======================================================!
;THIS MESSAGE WILL CONTAIN APPLICATION NAMES TO BE ADDED
;TO TABLES IN OPR.
;
; .APNAM ASCIZ BLOCK OF NAME TO ADD
.APNAM==10000 ;DEFINE APPLICATION NAME CODE
SUBTTL SETUP REPLY message
;THIS MESSAGE IS SENT TO ORION BY OPR IN RESPONSE TO
;A SETUP MESSAGE. AFTER THIS MESSAGE IS SENT THE OPR
;CAN NOW INPUT COMMANDS TO ORION IF SUCCESSFUL
;
; !=======================================================!
; \ \
; \ THE MESSAGE HEADER \
; \ \
; !-------------------------------------------------------!
; ! FLAG WORD !
; !-------------------------------------------------------!
; ! ARGUMENT COUNT WORD !
; !=======================================================!
;
; ARGUMENT DATA BLOCKS
;
; !=======================================================!
; ! LENGTH OF THE ARGUMENT ! TYPE OF ARGUMENT !
; !-------------------------------------------------------!
; \ \
; \ ARGUMENT DATA \
; \ \
; !=======================================================!
;THE ARGUMENT BLOCK CONSISTS OF THE FOLLOWING
;OPR WILL RETURN WITH A CODE FOR SUCCESS OR FAILURE
;
;.ORSUC FOR SUCCESS TYPE....LENGTH OF 1
;.ORFAL FOR FAILURE TYPE....LENGTH OF 1
.ORSUC==10100 ;SUCCESS IF ZERO
.ORFAL==10101 ;FAILURE IF 1
SUBTTL HELLO message for applications (NSP)
;THIS MESSAGE IS SENT BY AN APPLICATION PROGRAM WISHING
;TO USE AN ALTERNATE SET OF COMMAND TABLES AS SPECIFIED
;AT ORION STARTUP. THE STRING SPECIFIED WILL
;BE USED AS THE PROMPT IF YOU ENTER THE APPLICATION LEVEL
;OR AS THE KEYWORD TO IDENTIFY THE APPLICATION COMMAND
;THE MESSAGE FORMAT USES THE NEW MESSAGE HEADER AND THE STANDARD
;ARGUMENT BLOCK FORMAT AS DESCRIBED UNDER ORION COMMAND MESSAGES
; !=======================================================!
; \ \
; \ THE MESSAGE HEADER \
; \ \
; !-------------------------------------------------------!
; ! FLAG WORD !
; !-------------------------------------------------------!
; ! ARGUMENT COUNT WORD !
; !=======================================================!
;
; ARGUMENT DATA BLOCKS
;
; !=======================================================!
; ! LENGTH OF THE ARGUMENT ! TYPE OF ARGUMENT !
; !-------------------------------------------------------!
; \ \
; \ ARGUMENT DATA \
; \ \
; !=======================================================!
;CURRENTLY THE FOLLOWING ARE THE DEFINED APPLICATION
;TYPES THAT CAN BE INCLUDED IN THE MESSAGE
;APPLICATION HELLO TYPES
.AHNAM==10200 ;TYPE FOR THE APPLICATION NAME STRING
;THE ARGUMENT BLOCK WILL CONTAIN THE NAME STRING
;IN THE ARGUMENT DATA AREA.
;THE ARGUMENT LENGTH INCLUDES THE ARGUMENT HEADER
;AND THE APPLICATION NAME STRING.
;THE NAME MUST BE ASCIZ.
;THE ARGUMENT COUNT WORD IN THE HEADER SHOULD
;CONTAIN A 1.
SUBTTL HELLO ACKNOWLEDGEMENT message for applications (NSP)
;THIS MESSAGE IS SENT BY ORION TO AN APPLICATION IN RESPONSE
;TO THE APPLICATION HELLO MESSAGE CONTAINING THE INTERNAL TYPE
;CODE ASSIGNED TO THIS APPLICATION PROCESSOR. THIS CODE WILL BE
;USED TO IDENTIFY ALL REQUESTS FROM ORION TO THE APPLICATION.
;
;THE FORMAT OF THE MESSAGE IS THE STANDARD ORION MESSAGE HEADER
;FOR COMMANDS WITH AN ARGUMENT BLOCK
; !=======================================================!
; \ \
; \ THE MESSAGE HEADER \
; \ \
; !-------------------------------------------------------!
; ! FLAG WORD !
; !-------------------------------------------------------!
; ! ARGUMENT COUNT WORD !
; !=======================================================!
;
; ARGUMENT DATA BLOCKS
;
; !=======================================================!
; ! LENGTH OF THE ARGUMENT ! TYPE OF ARGUMENT !
; !-------------------------------------------------------!
; \ \
; \ ARGUMENT DATA \
; \ \
; !=======================================================!
;CURRENTLY THE FOLLOWING ARE THE DEFINED APPLICATION
;TYPES THAT CAN BE INCLUDED IN THE MESSAGE
;APPLICATION HELLO ACKNOWLEDGEMNT TYPES
.AHTYP==10300 ;THIS CODE IS USED TO DESCRIBE THE FIELD
;CONTAINING THE APPLICATION TYPE CODE
;RETURNED BY ORION. THE CODE IS A FULL WORD.
;THE ARGUMENT BLOCK WILL CONSIST OF A HEADER
;AND ONE DATA WORD FOR A LENGTH OF 2
;THE ARGUMENT COUNT WILL HAVE A 1
SUBTTL SET message
;THE SET MESSAGE IS USED TO SET SCHEDULING PARAMETERS FOR AN OBJECT
;ONLY ONE PARAMETER CAN BE SET AT A TIME
; !=======================================================!
; \ \
; \ THE MESSAGE HEADER \
; \ \
; !-------------------------------------------------------!
; ! FLAG WORD !
; !-------------------------------------------------------!
; ! ARGUMENT COUNT WORD !
; !=======================================================!
;
; ARGUMENT DATA BLOCKS
;
; !=======================================================!
; ! LENGTH OF THE ARGUMENT ! TYPE OF ARGUMENT !
; !-------------------------------------------------------!
; \ \
; \ ARGUMENT DATA \
; \ \
; !=======================================================!
;ARGUMENT TYPES AND VALUES
;FOR ARGUMENTS WHERE THE TYPE IS SUFFICENT THE BLOCK WILL
;HAVE A LENGTH OF ONE, OTHERWISE THE BLOCK WILL CONTAIN THE
;APPROPRIATE DATA ELEMENT AND INCLUDE ITS LENGTH IN THE BLOCK
;HEADER.
;THE MESSAGE WILL ALWAYS CONTAIN AN OBJECT BLOCK TO DESCRIBE THE
;OBJECT
; .OROBJ OBJECT BLOCK ARGUMENT TYPE
.STPGL==10400 ;PAGE LIMITS..HEADER..MIN..MAX
.STOPL==.STPGL ;SET OUPUT-LIMIT
.STFRM==10401 ;FORMS TYPE..HEADER..SIXBIT FORMS TYPE
.STMEM==10402 ;CORE LIMITS..HEADER..MIN..MAX
.STTIM==10403 ;TIME LIMITS..HEADER..MIN..MAX
.STPRI==10404 ;PRIORITY LIMITS..HEADER..MIN..MAX
.STOIA==10405 ;OPR INTERVENTION..HEADER
.STNOI==10406 ;NOOPR-INTERVENTION..HEADER
.STLEA==10407 ;LIMIT EXCEED ACTION HEADER..DATA
.STCAN==1 ;CANCEL
.STASK==2 ;ASK
.STIGN==3 ;IGNORE
;DN60 SET PARAMETERS
.STCSD==10410 ;CLEAR TO SEND DELAY
.STDTR==10411 ;DATA TERMINAL READY
ST.ON==1 ;ON
ST.OFF==2 ;OFF
.STRPM==10412 ;RECORDS PER MESSAGE
.STSWL==10413 ;SILO WARNING LEVEL
.STTOU==10414 ;TIMEOUT CATEGORY
ST.PRI==1 ;PRIMARY
ST.SEC==2 ;SECONDARY
.STTRA==10415 ;TRANSPARENCY (ST.ON OR ST.OFF)
.STBPM==10416 ;BYTES PER MESSAGE
.STSON==10417 ;SIGNON-REQUIRED
.STNSN==10420 ;NO-SIGNON-REQUIRED
;GENERAL SET PARAMETERS
.STATR==10421 ;SET ATTRIBUTES
.STEND==.STATR ;LAST SYMBOL
SUBTTL FORWARDSPACE and BACKSPACE message
;THESE TWO COMMANDS ARE IDENTICAL EXCEPT THAT THE MESSAGE TYPE
;WILL DESCRIBE THE DESIRED ACTION
; !=======================================================!
; \ \
; \ THE MESSAGE HEADER \
; \ \
; !-------------------------------------------------------!
; ! FLAG WORD !
; !-------------------------------------------------------!
; ! ARGUMENT COUNT WORD !
; !=======================================================!
;
; ARGUMENT DATA BLOCKS
;
; !=======================================================!
; ! LENGTH OF THE ARGUMENT ! TYPE OF ARGUMENT !
; !-------------------------------------------------------!
; \ \
; \ ARGUMENT DATA \
; \ \
; !=======================================================!
;THE FOLLOWING ARE THE DEFINED ARGUMENT TYPES FOR FORWARDSPACE
;AND BACKSPACE. IN ALL CASES THE ARGUMENT BLOCK WILL HAVE
;A LENGTH OF 2 AND THE POSTIONING AMOUNT WILL APPEAR IN THE
;ARGUMENT DATA WORD.
;ALL MESSAGES WILL CONTAIN AN OBJECT BLOCK DESCRIBING
;THE PARTICULAR UNIT
;
; .OROBJ OBJECT BLOCK TYPE
;
.SPPAG==10500 ;SPACING NUMBER OF PAGES
.SPCPY==10501 ;SPACING NUMBER OF COPIES
.SPFIL==10502 ;SPACING NUMBER OF FILES
SUBTTL HOLD and RELEASE message
;THE FORMAT OF THE HOLD AND RELEASE COMMANDS ARE IDENTICAL
;EXCEPT FOR THE MESSAGE TYPE
;THE MESSAGE STRUCTURE IS THE STANDARD MESSAGE HEADER AND
;A NUMBER OF ARGUMENT BLOCKS DESCRIBING THE JOB(S) TO HOLD OR
;RELEASE
; !=======================================================!
; \ \
; \ THE MESSAGE HEADER \
; \ \
; !-------------------------------------------------------!
; ! FLAG WORD !
; !-------------------------------------------------------!
; ! ARGUMENT COUNT WORD !
; !=======================================================!
;
; ARGUMENT DATA BLOCKS
;
; !=======================================================!
; ! LENGTH OF THE ARGUMENT ! TYPE OF ARGUMENT !
; !-------------------------------------------------------!
; \ \
; \ ARGUMENT DATA \
; \ \
; !=======================================================!
;THE FOLLOWING ARE THE DEFINED ARGUMENTS FOR THE HOLD AND
;RELEASE COMMAND
;
; .ORTYP THE QUEUE AFFECTED BY THE HOLD
; .CMUSR THE USERS JOBS IN THAT QUEUE TO AFFECT
; .ORRQN THE REQUEST NUMBER OF THE JOB
;
; IF ONLY THE .ORTYP FIELD IS SPECIFIED THEN ALL JOBS IN THE
; SPECIFIED QUEUE ARE TO BE HELD. OTHERWISE EACH ARGUMENT WILL
; FURTHER QUALIFY THE JOB(S) TO HOLD/RELEASE.
SUBTTL MODIFY message
;THE MODIFY MESSAGE IS USED TO MODIFY THE PARAMETERS OF A
;JOB REQUEST
;THIS COMMAND IS ALSO USED TO USED TO CHANGE THE SYSTEM LISTS
;THOSE FORMATS AR DESCIRBED ELSEWHERE. THE MESSAGE TYPE
;IS .ODCSL
; !=======================================================!
; \ \
; \ THE MESSAGE HEADER \
; \ \
; !-------------------------------------------------------!
; ! FLAG WORD !
; !-------------------------------------------------------!
; ! ARGUMENT COUNT WORD !
; !=======================================================!
;
; ARGUMENT DATA BLOCKS
;
; !=======================================================!
; ! LENGTH OF THE ARGUMENT ! TYPE OF ARGUMENT !
; !-------------------------------------------------------!
; \ \
; \ ARGUMENT DATA \
; \ \
; !=======================================================!
;THE FOLLOWING ARE THE DEFINED ARGUMENTS TO DESCRIBE THE ENTRY
;TO BE MODIFIED
;
; .ORTYP THE QUEUE AFFECTED BY THE HOLD
; .CMUSR THE USERS JOBS IN THAT QUEUE TO AFFECT
; .ORRQN THE REQUEST NUMBER OF THE JOB
;
; IF ONLY THE .ORTYP FIELD IS SPECIFIED THEN ALL JOBS IN THE
; SPECIFIED QUEUE ARE TO BE MODIFIED. OTHERWISE EACH ARGUMENT WILL
; FURTHER QUALIFY THE JOB(S) TO MODIFY.
;THE FOLLOWING ARE THE VALID PARAMTERS FOR ALL QUEUES
.MOPRI==11600 ;MODIFY PRIORITY..BLOCK WITH PRIORITY IN IT
SUBTTL ROUTE message
;THE ROUTE COMMAND WILL ROUTE THE OUTPUT FROM ONE NODE TO
;ANOTHER
; !=======================================================!
; \ \
; \ THE MESSAGE HEADER \
; \ \
; !-------------------------------------------------------!
; ! FLAG WORD !
; !-------------------------------------------------------!
; ! ARGUMENT COUNT WORD !
; !=======================================================!
;
; ARGUMENT DATA BLOCKS
;
; !=======================================================!
; ! LENGTH OF THE ARGUMENT ! TYPE OF ARGUMENT !
; !-------------------------------------------------------!
; \ \
; \ ARGUMENT DATA \
; \ \
; !=======================================================!
;THE ROUTE COMMAND SUPPORTS THE FOLLOWING BLOCK TYPES
;
.ORRTN==11500 ;ROUTE NODE BLCOK
.ORRTJ==11501 ;ROUTE JOB BLOCK
;
;THE .ORRTN HAS THE FOLLOWING FIELDS
;
.SNODE==ARG.DA
.DNODE==ARG.DA+1
;WHERE .SNODE IS THE SOURCE NODE TO ROUTE AND
;.DNODE IS THE DESTINATION NODE TO ROUTE
;THE OPR ISSUING THE COMMAND MUST HAVE AUTHORIZATION FOR THE
;SOURCE NODE FOR THE COMMAND TO BE VALID
;===========================================================================
;CONTINUED ON THE NEXT PAGE
;MESSAGE FOR DEVICE ROUTING (TYPE .OMRTD)
; !=======================================================!
; \ \
; \ THE MESSAGE HEADER \
; \ \
; !-------------------------------------------------------!
; ! FLAG WORD !
; !-------------------------------------------------------!
; ! ARGUMENT COUNT WORD !
; !=======================================================!
;
;ARGUMENT BLOCKS
.RTEFM==1 ;SOURCE OBJECT BLOCK
; !-------------------------------------------------------!
; ! 4 ! .RTEFM !
; !-------------------------------------------------------!
; \ \
; \ SOURCE OBJECT BLOCK \
; \ \
; !-------------------------------------------------------!
.RTETO==2 ;DESTINATION OBJECT BLOCK
; !-------------------------------------------------------!
; ! 4 ! .RTETO !
; !-------------------------------------------------------!
; \ \
; \ DESTINATION OBJECT BLOCK \
; \ \
; !-------------------------------------------------------!
SUBTTL DELETE message
;THE DELETE COMMAND WILL PASS THE QUEUE AND THE REQUEST NUMBER IN
;A REQUEST ID BLOCK
; !=======================================================!
; \ \
; \ THE MESSAGE HEADER \
; \ \
; !-------------------------------------------------------!
; ! FLAG WORD !
; !-------------------------------------------------------!
; ! ARGUMENT COUNT WORD !
; !=======================================================!
;
; ARGUMENT DATA BLOCKS
;
; !=======================================================!
; ! LENGTH OF THE ARGUMENT ! TYPE OF ARGUMENT !
; !-------------------------------------------------------!
; \ \
; \ ARGUMENT DATA \
; \ \
; !=======================================================!
; THE BLOCKS ARE THE SAME FOR HOLD EXCEPT THAT THERE MUST BE A USER OR
; REQUEST NUMBER BLOCK
; .ORTYP ;QUEUE TYPE
; .ORREQ ;REQUEST NUMBER
; .ORUSR ;USER NUMBER OR PPN
; FOR DELETE OF MOUNT REQUEST THE FOLLOWING BLOCKS ARE POSSIBLE
;.ORREQ ;REQUEST NUMBER OF REQUEST TO DELETE
; - OR -
;.STRDV ;STRUCTURE BLOCK FOR DELETING ALL ON A STRUCTURE
; FLAG BITS FOR OPR MOUNT AND DISMOUNT COMMANDS
.DMRMV==1B0 ;IF OPR SAID DISMOUNT FOO:/REMOVE
.DMNCK==1B1 ;IF OPR SAID DISMOUNT FOO:/NOCHECK
.MTWLK==1B2 ;IF OPR SAID MOUNT FOO:/WRITE-LOCKED
;.ORREA ;OPTIONAL REASON IF SPECIFIED
SUBTTL SEND message
;THIS MESSAGE IS USED TO SEND TEXT TO A PARTICULAR BATCH STREAM
;OR USER IDENTIFIED BY TERMINAL NUMBER OR JOB NUMBER.
; !=======================================================!
; \ \
; \ THE MESSAGE HEADER \
; \ \
; !-------------------------------------------------------!
; ! FLAG WORD !
; !-------------------------------------------------------!
; ! ARGUMENT COUNT WORD !
; !=======================================================!
;
; ARGUMENT DATA BLOCKS
;
; !=======================================================!
; ! LENGTH OF THE ARGUMENT ! TYPE OF ARGUMENT !
; !-------------------------------------------------------!
; \ \
; \ ARGUMENT DATA \
; \ \
; !=======================================================!
;THE BLOCK WILL CONTAIN A STANDARD ORION OBJECT BLOCK TO DESCRIBE
;THE OBJECT THE MESSAGE IS BEING SENT TO.
;
; .OROBJ OBEJCT BLOCK TYPE
;
;AT THE CURRENT TIME THE OTHER ARGUMENT IS TEXT
;AND USES THE STANDARD ORION TEXT TYPE
;
; .CMTXT ;THE TEXT TYPE FOR MESSAGE
;
;THE DATA WILL BE ASCIZ TEXT WITH THE LENGTH INCLUDING ALL
;TEXT AND THE HEADER
SUBTTL NOTIFY message
;THIS MESSAGE IS USED BY QUASAR TO HAVE ORION DISPLAY A MESSAGE
;ABOUT A USERS JOB
; !=======================================================!
; \ \
; \ THE MESSAGE HEADER \
; \ \
; !-------------------------------------------------------!
; ! FLAG WORD !
; !-------------------------------------------------------!
; ! ARGUMENT COUNT WORD !
; !=======================================================!
;
;FLAG WORD BITS
NT.MLU==1B0 ;NOTIFY USER VIA MAIL
; ARGUMENT DATA BLOCKS
;
; !=======================================================!
; ! LENGTH OF THE ARGUMENT ! TYPE OF ARGUMENT !
; !-------------------------------------------------------!
; \ \
; \ ARGUMENT DATA \
; \ \
; !=======================================================!
;THIS MESSAGE HAS FOUR ARGUMENTS
.JOBID==200 ;THE USER'S TERMINAL NBR & LOGIN TIME
.NTSUB==201 ;SUBJECT STRING FOR MAIL
; .CMDIR ;THE USER DIRECTORY NUMBER
; .CMTXT ;THE MESSAGE BODY
;THE JOB ID BLOCK CONTAINS THE FOLLOWING DATA
PHASE ARG.DA
JBI.JB:! BLOCK 1 ;JOB NUMBER
JBI.LI:! BLOCK 1 ;JOB LOGGED IN TIME
JBI.SZ:! ;SIZE OF THE BLOCK
;IF THE INFO MATCHES THE CURRENT JOB ON SYSTEM A MESSAGE WILL BE
;DISPLAYED TO THE TERMINAL IF LOGGED IN.. PITCHED IF NOT OR DETACHED
SUBTTL SUPPRESS message
; !=======================================================!
; \ \
; \ THE MESSAGE HEADER \
; \ \
; !-------------------------------------------------------!
; ! FLAG WORD !
; !-------------------------------------------------------!
; ! ARGUMENT COUNT WORD !
; !=======================================================!
;
; ARGUMENT DATA BLOCKS
;
; !=======================================================!
; ! LENGTH OF THE ARGUMENT ! TYPE OF ARGUMENT !
; !-------------------------------------------------------!
; \ \
; \ ARGUMENT DATA \
; \ \
; !=======================================================!
;THE SUPPRES COMMAND WILL ALWAYS CONTAIN AN ORION OBEJCT BLOCK
;TO DESCRIBE THE OBJECT
;
; .OROBJ OBJECT BLOCK TYPE
;THE SUPRRESS COMMAND SUPPORTS THE FOLLOWING ARGUMENT TYPES
;
.SUPFL==10600 ;SUPRRESS CURRENT FILE
.SUPJB==10601 ;SUPPRESS CURRENT JOB
.SUPST==10602 ;STOP DOING SUPPRESSION
;ALL ARGUMENTS ARE JUST THE ARGUMENT HEADER WITH THE APPROPRIATE
;TYPE AND A LENGTH OF 1
;THIS MESSAGE WILL ALWAYS CONTAIN AN ARGUMENT COUNT OF 2
SUBTTL CANCEL message
;THIS MESSAGE IS USED TO CANCEL A PARTICULAR JOB RUNNING ON A
;PARTICULAR OBJECT
; !=======================================================!
; \ \
; \ THE MESSAGE HEADER \
; \ \
; !-------------------------------------------------------!
; ! FLAG WORD !
; !-------------------------------------------------------!
; ! ARGUMENT COUNT WORD !
; !=======================================================!
;
; ARGUMENT DATA BLOCKS
;
; !=======================================================!
; ! LENGTH OF THE ARGUMENT ! TYPE OF ARGUMENT !
; !-------------------------------------------------------!
; \ \
; \ ARGUMENT DATA \
; \ \
; !=======================================================!
;THE CANCEL COMMAND WILL ALWAYS CONTAIN A ORION OBJECT BLOCK
;TO DESCRIBE THE OBJECT WHERE JOB IS TO BE CANCELED.
;
; .OROBJ ORION OBJECT BLOCK
;
;THE FOLLOWING ARE THE VALID ARGUMENT TYPES FOR THIS MESSAGE
.CANTY==10700 ;CANCEL TYPE WITH THE FOLLOWING DATA
.CNERR==1 ;CANCEL WITH ERROR PROCESSING
.CNNER==2 ;CANCEL NO ERROR-PROCESSING
.CNPRG==3 ;CANCEL AND PURGE THE REQUEST
;THE FOLLOWING ARGUMENT TYPES ARE OPTIONAL AND WILL
;BE INCLUDED IF SPECIFIED
;
; .ORRQN ;REQUEST NUMBER
; .ORREA ;REASON FOR CANCEL..EXPLANATION IF GIVEN
; ;DATA IS THE TEXT
SUBTTL REQUEUE message
;THIS MESSAGE IS TO REQUEUE A JOB ON A PARTICULAR OBJECT
; !=======================================================!
; \ \
; \ THE MESSAGE HEADER \
; \ \
; !-------------------------------------------------------!
; ! FLAG WORD !
; !-------------------------------------------------------!
; ! ARGUMENT COUNT WORD !
; !=======================================================!
;
; ARGUMENT DATA BLOCKS
;
; !=======================================================!
; ! LENGTH OF THE ARGUMENT ! TYPE OF ARGUMENT !
; !-------------------------------------------------------!
; \ \
; \ ARGUMENT DATA \
; \ \
; !=======================================================!
;THE REQUEUE COMMAND WILL ALWAYS CONTAIN AN OBJECT BLOCK
;
; .OROBJ OBJECT BLOCK
;
;THE FOLLOWING ARE THE VALID ARGUMENT TYPES FOR REQUEUE
;
.REQTY==11000 ;REQUEUE TYPE OF OPERATION
.RQBJB==1 ;BEGINNING OF JOB
.RQBFL==2 ;BEGINNING OF FILE
.RQBCP==3 ;BEGINNING OF CURRENT COPY
.RQCUR==4 ;CURRENT POSITION
;THE FOLLOWING ARGUMENT TYPES ARE OPTIONAL AND MAY BE INCLUDED
;IN THE COMMAND IF SPECIFIED.
;
; .ORRQN REQUEST NUMBER OF JOB
; .ORREA REASON FOR CANCEL..EXPLANATION IF GIVEN
; THE DATA IS THE TEXT
SUBTTL DEFINE message
;THIS MESSAGE IS USED FOR DN60 TO DEFINE A NODE TO A PARTICULAR
;PORT , LINE AND PROTOCOL
; !=======================================================!
; \ \
; \ THE MESSAGE HEADER \
; \ \
; !-------------------------------------------------------!
; ! FLAG WORD !
; !-------------------------------------------------------!
; ! ARGUMENT COUNT WORD !
; !=======================================================!
;
; ARGUMENT DATA BLOCKS
;
; !=======================================================!
; ! LENGTH OF THE ARGUMENT ! TYPE OF ARGUMENT !
; !-------------------------------------------------------!
; \ \
; \ ARGUMENT DATA \
; \ \
; !=======================================================!
;THIS MESSAGE CURRENTLY SUPPORTS ONLY ONE BLOCK
.DFBLK==11100 ;THE DEFINE BLOCK TYPE
PHASE ARG.DA
DEF.TY:! BLOCK 1 ;TYPE OF NODE
DF.TPP==0,,-1 ;Type of node
DF.378==1 ;3780
DF.278==2 ;2780
DF.HSP==3 ;HASP
DF.FLG==-1,,0 ;Flag, i.e. if signon required
DF.NSN==1 ;Signon not required
DF.SON==2 ;Signon required
DEF.MD:! BLOCK 1 ;MODE OF NODE
DF.TRM==1 ;TERMINATION
DF.EMU==2 ;EMULATION
DEF.PT:! BLOCK 1 ;PORT
DEF.LN:! BLOCK 1 ;LINE
DEF.SZ:!
DEPHASE
SUBTTL TAPE and DISK messages
;THESE COMMANDS ALL HAVE THE STANDARD ORION HEADER
;WITH THE MESSAGE CODES IN THE .MSTYP WORD MS.TYP FIELD
;TAPE AND DISK DEVICE INFO BLOCKS
.TAPDV==20000 ;TAPE DRIVE DEVICE BLOCK
;THE BLOCK WILL CONTAIN A STRING FOR THE DEVICE WHICH ONE
;CAN THEN CONVERT TO A DEVICE DESIGNATOR IF VALID. IF IT MUST BE
;VALID OPR WILL NOT SET CM%PO AND FORCE OPR TO TYPE IN VALID NAME
;BUT THE BLOCK WILL STILL CONTAIN A STRING
; *** THE STRING WILL NOT END IN A COLON ***
.DSKDV==20001 ;DISK DEVICE BLOCK
;THIS BLOCK WILL CONSIST OF 3 WORDS INCLUDING THE HEADER WITH
;THE FIRST DATA WORD BEING THE CHANNEL NUMBER AND THE SECOND
;BEING THE DRIVE NUMBER
.STRDV==20002 ;STRUCTURE BLOCK
;THIS BLOCK WILL CONTAIN THE STRING TYPED BY THE OPERATOR AND
;IT WILL BEGIN AFTER THE HEADER. THE LENGTH OF BLOCK WILL
;INCLUDE THE WHOLE ASCIZ STRING
;
; !=======================================================!
; ! LENGTH OF THE ARGUMENT ! TYPE OF ARGUMENT !
; !-------------------------------------------------------!
; \ \
; \ ARGUMENT DATA \
; \ \
; !=======================================================!
SUBTTL SHOW messages for tapes
;THESE COMMANDS ARE PROCESSED BY MTCON ON THE -20 FOR THIS
;RELEASE
; .ODSHS ;SHOW STATUS FOR TAPE AND DISKS
; .ODSHP ;SHO PARAMTERS FOR TAPES AND DISKS
;THERE ARE THREE POSSIBLE BLOCKS THAT CAN BE IN THE MESSAGE
;.TAPDV BLOCK FOR TAPE TO SHOW
.ALTAP==20010 ; BLOCK FOR ALL TAPES LENGTH OF 1
.ALDSK==20011 ; BLCOK FOR ALL DISKS LENGTH OF 1
.ALSTR==20012 ;BLOCK FOR ALL STRUCTURES (MDA ONLY)
;FLAGS IN .OFLAG TO DESCRIBE OPTIONS OF DISPLAY(FOR TAPE AND DISK)
ST.ALL==1B0 ;ALL
ST.AVA==1B1 ;AVAILABLE DRIVES(FREE)
ST.CHR==1B2 ;CHARACTERISTICS
ST.MNT==1B3 ;MOUNTED
;FOR STRUCTURES THERE MAY ALSO BE A.STRDV FOR THE PARTICULAR STRUCTURE
ST.USR==1B0 ;SHOW THE USERS OF THE FILES STRUCTURES
SUBTTL SWITCH message
;THIS COMMAND IS USED BY MOUNTR ON THE -20 TO DETERMINE WHERE
;THE NEXT VOLUME IS TO BE FOUND FOR A GIVEN REQUEST
;THE MESSAGE CONSISTS OF THE FOLLOWING BLOCKS
;.ORREQ REQUEST NUMBER
;.VOLID VOLUME ID
;.TAPDV TAPE DEVICE BLOCK (OPTIONAL)
SUBTTL DISMOUNT message
;DISMOUNT STRUCTURE COMMAND CONTAINS A DEVICE BLOCK .CMDEV
; FOR THE DEVICE TO DISMOUNT
;THE ARGUMENTS WILL BE
; .STRDV
;OPTIONAL FLAGS
;.DMRMV REMOVE STRUCTURE ON DISMOUNT
;.DMNCK TRY NOT TO TOUCH STRUCTURE DURING DISMOUNT (/NOCHECK)
;THE DISMOUNT TAPE COMMAND WILL CONTAIN A
; .TAPDV
; BLOCK FOR TAPE DRIVE
SUBTTL RECOGNIZE message (TOPS10)
;THE RECOGNIZE COMMAND WILL CONTAIN A .TAPDV FOR TAPE
;DRIVE TO RECOGNIZE
SUBTTL SET TAPE and DISK messages
;THIS COMMAND WILL CONTAIN EITHER A TAPE BLOCK OR A DISK BLOCK
;AS THE FIRST ARGUMENT AND THEN
.DVAVL==20100 ;DEVICE AVAILABLE BLOCK LENGTH 1
.DVUAV==20101 ;DEVICE UNAVAILABLE BLOCK LENGTH 1
.DVINI==20102 ;DEVICE INITIALIZE MODE
SUBTTL SET STRUCTURE message for disks
;THIS COMMAND WILL HAVE A STRUCTURE BLOCK AS THE FIRST ARGUMENT
;AND THEN A CHARACTERISTIC BLOCK WITH ONE OF THE FOLLOWING
;SYMBOLS
.STCHR==20200 ;STRUCTURE CHARACHTERISTICS
S.ACKN==1 ;ACKNOWLEDGED
S.AVAL==2 ;AVAILABLE
S.DOMS==3 ;DOMESTIC
S.FORN==4 ;FOREIGN
S.IGNO==5 ;IGNORED
S.REGU==6 ;REGULATED
S.UAVL==7 ;UNAVAILABLE
S.UREG==10 ;UNREGULATED
SUBTTL SET TAPE INITIALIZE message
;THIS COMMAND IS TO SETUP A TAPE-DRIVE FOR INITIALIZING VOLUMES
;THE MESSAGE WILL CONSIST OF A SET OF BLOCKS WITH THE FIRST ONE
;BEING
; .TAPDV TAPE DRIVE BLOCK
;THEN THERE WILL BE THE OPTIONS FOR THE INITIALIZE
;.DVINI FOR INITIALIZE STATE
;.VOLID FOR VOLUME ID
.SILBT==20501 ;LABEL TYPE
;%TFxxx defined in QSRMAC
.SIDEN==20502 ;DENSITY
;.TFDnn defined in QSRMAC
.SIOWN==20503 ;OWNER...USER ID OR PPN
.SIPRO==20504 ;OCTAL NUMBER FOR PROTECTION
.SIUNL==20505 ;UNLOAD TAPE WHEN DONE
.SIHLD==20506 ;HOLD TAPE WHEN DONE
.SIOVR==20507 ;OVERIDE EXPIRATION
.SINOV==20510 ;NO OVERIDING OF EXPIRATIONS
.SISVI==20511 ;STARTING VOLUME ID (DECIMAL NUMBER)
.SIINC==20512 ;INCREMENT FOR VOLUMES (DECIMAL NUMBER)
.SICTR==20513 ;COUNT OF TAPES TO DO (DECIMAL NUMBER)
TOPS10< .SIABO==20514 ;ABORT THE INITIALIZATION >
SUBTTL ENABLE and DISABLE message for tapes
;THIS COMMAND WILL CONTAIN THE FOLLOWING POSSIBLE BLOCKS
.AVREC==20300 ;AUTOMATIC VOLUME RECOGNITION BLOCK
;AND EITHER A .TAPDV BLOCK FOR A TAPE DEVICE OR
; .ALTAP BLOCK FOR ALL TAPE DRIVES
.ASREC==20301 ;AUTOMATIC STRUCTURE RECOGNITION
SUBTTL MOUNT message for tape and disk
;THIS COMMAND IS ONLY USED FOR STRUCTURE MOUNTING
;
; THIS MESSAGE CONTAINS A .STRDV FOR THE STRUCTURE DEVICE
; BLOCK
; AND OPTIONALLY AN ALIAS BLOCK OF .STALS
.STALS==20401
;IF ALIAS IS NOT SPECIFIED IT IS ASSUMED TO BE THE SAME AS THE
;STRUCTURE DEVICE BLOCK
SUBTTL IDENTIFY message for tapes
;THIS MESSAGE WILL ASSOCIATE A TAPE DRIVE WITH A PARTICULAR TAPE
;REQUEST OR TAPE
;THERE WILL ALWAYS BE A TAPE DEVICE BLOCK
; .TAPDV
;THE SECOND PART OF THE COMMAND CAN BE ONE OF THE FOLLOWING
.SCRTP==20402 ;SCRATCH TAPE BLOCK (LEN 1)
.VOLID==20403 ;VOLUME ID BLOCK SPECIFYING
;THE PARTICULAR VOLUME ID
;.ORREQ ;TO SPECIFY THE REQUEST THE TAPE IS TO BE
;ASSIGNED TO
SUBTTL RESPONSE message
;THE RESPONSE MESSAGE USES THE STANDARD ORION HEADER
;AND ARGUMENT BLOCKS WITH VALID TYPES DESCRIBED BELOW
; !=======================================================!
; \ \
; \ THE MESSAGE HEADER \
; \ \
; !=======================================================!
; ! FLAG WORD !
; !-------------------------------------------------------!
; ! ARGUMENT COUNT !
; !=======================================================!
;THE VALID RESPONSE TYPES ARE
; .CMTXT ;FOR TEXT DATA
;AT THE CURRENT TIME THE ONLY VALID ARGUMENTS FOR A RESPONSE
;IS ASCIZ TEXT AND ACK ID CODE.
;THIS CODE IS THE OPR HANDLE TO SEND ACK TO IF DESIRED.
.ACKID==12000 ;ACK FOR OPR ID
;ORIGIN OF ANSWER (TERMINAL # OR NODE
;NAME IN SIXBIT
;THIS BLOCK HAS TWO WORDS OF DATA
;
;1 ACK ID FOR OPR
;2 NODE OR TERMINAL NUMBER
;IN THE FUTURE, WHEN ANSWER BLOCKS ARE SUPPORTED
;OTHER COMMAND FUNCTION CODES WILL BE ALLOWED.
SUBTTL LOCK/UNLOCK message
;THIS MESSAGE CONTAINS THE FOLLOWING BLOCKS
;.STRDV ;STRUCTURE BLOCK
;.ORTIM ;TIME BLOCK
;THE TIME BLOCK IS OPTIONAL
;THE FOLLOWING BITS ARE DEFINED IN THE .OFLAG WORD:
LC.NUL==1B0 ;LOCK /NOUNLOAD
SUBTTL USAGE ACCOUNTING MESSAGES
;THE USAGE ACCOUNT MESSAGE GO TO THE ACTDAE. THEY ARE GALAXY FORMATED
;MESSAGES WITH AN ACTDAE MESSAGE TYPE.
;THE MESSAGES (FILE CLOSURE AND BILLING CLOSURE) HAVE ONLY 1 BLOCK
;DEFINED - .ORTIM - WHICH CONTAINS THE UDT WHEN THE ACTION IS TO
;TAKE PLACE. THERE ARE ALSO BITS DEFINED FOR .OFLAG:
US.NOW==1B0 ;DO IT NOW !!!
US.DLY==1B1 ;DO IT DAILY !!!
US.WKY==1B2 ;DO IT WEEKLY !!!
US.NOS==1B3 ;/NO-SESSION-ENTRIES
US.DAY==0,,-1 ;DAY OF THE WEEK 1 - 7 (SUNDAY IS 1)
SUBTTL Standard message format
;THIS MESSAGE CONSISTS OF THE STANDARD MESSAGE HEADER FOLLOWED BY A PARSER
;BLOCK AS DEFINED BELOW
; !=======================================================!
; \ \
; \ THE MESSAGE HEADER \
; \ \
; !=======================================================!
; ! FLAG WORD !
; !-------------------------------------------------------!
; ! ARGUMENT COUNT !
; !=======================================================!
; !-------------------------------------------------------!
; ! COMMAND OBJECT TYPE !
; !-------------------------------------------------------!
; ! SOURCE NODE !
; !-------------------------------------------------------!
; ! OFFSET TO PARSER BLOCK !
; !-------------------------------------------------------!
; ! OFFSET TO TEXT OF COMMAND !
; !=======================================================!
PHASE .OHDRS
COM.TY:! BLOCK 1 ;OBJECT TYPE CODE
;VALID FOR APPLICATIONS ONLY
COM.SN:! BLOCK 1 ;SOURCE NODE OF COMMAND
COM.PB:! BLOCK 1 ;POINTER TO THE PARSER BLOCK
COM.CM:! BLOCK 1 ;POINTER TO MESSAGE TEXT
COM.SZ:! ;SIZE OF HEADER
DEPHASE
COM.AL==COM.SZ-COM.SN ;SIZE OF ARGUMENT BLOCK
;VALID FLAGS FOR THE COMMAND MESSAGE
CM.NPR==1B0 ;NO PROCESSING REQUIRED..SENT TO
;ORION TO LOG
COMMENT \
THE PARSER DATA BLOCKS WILL BE SIMILIAR TO THE OTHER
DATA STRUCTURES USED IN OPR AND ORION. EACH FIELD PARSED
WILL GENERATE A BLOCK WITH THE LENGTH IN THE LEFT HALF
AND COMMAND CODE TYPE IN THE RIGHT HALF.
THE LENGTH OF THE BLOCK INCLUDES THE HEADER WORD.
\
SUBTTL DN60 command message
;THIS MESSAGE FOR CDRIVE TO SEND ORION AN OPR COMMAND
;TO BE PARSED.
;THIS MESSAGE CONTAINS THE FOLLOWING BLOCKS
; .ORNOD ;NODE BLOCK
; .ORD60 ;D60 BLOCK
; (DATA WORD 1) PORT LINE INFO
; (DATA WORD 2) DN60 CHARACTERISTICS DEFINED IN QSRMAC
;
; .CMTXT ;TEXT BLOCK (MUST HAVE CR,LF)
SUBTTL WTO,WTOR and ACK formats for all programs
;THE FOLLOWING IS A DESCRIPTION OF THE NEW FORMAT FOR WTO,
;WTOR AND ACK MESSAGES TO BE SENT BY ANY PROGRAM AND ORION.
;THE FORMAT CONSISTS OF A HEADER, FLAG WORD, ARGUMENT COUNT
;WORD AND AN ARGUMENT BLOCK. THE ARGUMENT COUNT WORD REFLECTS
;THE NUMBER OF ARGUMENT BLOCKS INCLUDED IN THE MESSAGE.
;THE LENGTH ASSOCIATED WITH EACH BLOCK INCLUDES THE ARGUMENT
;BLOCK HEADER WORD.
;THE HEADER IS THE STANDARD GALAXY MESSAGE HEADER DEFINED
;IN ORNMAC.
; !=======================================================!
; \ \
; \ THE MESSAGE HEADER \
; \ \
; !=======================================================!
; ! FLAG WORD !
; !-------------------------------------------------------!
; ! ARGUMENT COUNT WORD !
; !=======================================================!
;
;
; ARGUMENT DATA BLOCK
;
;
;
; !-------------------------------------------------------!
; ! LENGTH OF ARGUMENT BLOCK ! TYPE OF ARGUMENT !
; !-------------------------------------------------------!
; \ \
; \ DATA FOR THE ARGUMENT \
; \ \
; !=======================================================!
PHASE MSHSIZ
;THE HEADER DATA USES THE STANDARD ORION MESSAGE BLOCK
;WITH MESSAGE HEADER, .OFLAG, AND .OARGC
;THE ARGUMENT BLOCK IS THE STANDARD ARGUMENT BLOCK USED IN
;ORION MESSAGES
;VALID ARGUMENT TYPES FOR WTO MESSAGE
;NOTE THAT ON THE -10, THE QUEUE. UUO PASSES A WHOLE OTHER SET
;OF BLOCK TYPES (QC%xxx) DEFINED IN UUOSYM.
;THE CODE IN GOPHMS TURNS THOSE BLOCKS INTO DUMMIES (.WTNOP)
;OR TRADITIONAL BLOCKS .WTxxx AS KNOWN HEREIN.
.WTTXT==0 ;TEXT MESSAGE
.WTOBJ==1 ;GALAXY OBJECT BLOCK FOR USE BY GALAXY
;COMPONENTS..MUST BE PRIVILEDGED
.WTDES==2 ;DESTINATION VALUE
.WTJOB==3 ;JOB NUMBER OF USER OR OTHER USER
;PRIVILEGED
.WTERR==4 ;ERROR CODE FOR ERROR DISPLAY
.WTRTE==5 ;ROUTE CODE FOR FUNCTION SETUP OPRS
.WTTYP==6 ;TYPE FIELD TEXT ..PRIVILEGED
.WTANS==7 ;ANSWER BLOCK FOR WTOR ONLY
.WTACD==10 ;APPLICATION CODE BLOCK
.WTOCD==11 ;OBJECT TYPE BLOCK
.WTNOP==12 ;NOOP (DUMMY) BLOCK FOR MONITOR WTO MESSAGES
.WTLST==.WTNOP ;LAST VALID TYPE ASSIGNED
;VALID FLAGS FOR WTO MESSAGE IN .OFLAG
WT.KIL==1B0 ;KILL THE WTOR REQUEST USING .MSCOD HANDLE
WT.MOR==1B1 ;MORE DISPLAY PAGES ARE COMMING.
WT.NFY==1B2 ;NOTIFY IF PID GOES AWAT VIA TTMSG(-10 TRMOP)
WT.JOB==1B5 ;JOB MESSAGE..PRIVILEGED
WT.SJI==1B6 ;SUPPRESS JOB INFO ON DISPLAY
WT.NFO==1B7 ;NO FORMATING OF DISPLAY
WT.NDA==1B8 ;NO DASHES ON TYPE MESSAGE
WT.KAL==1B9 ;KILL ALL MESSAGES FOR THE JOB
WT.SND==1B10 ;SEND MSG TO CENTRAL AND SPECIFIED NODE
WT.PRV==WT.JOB!WT.SJI!WT.NFO!WT.MOR!WT.NDA!WT.SND ;PRIVILEGE FLAGS
WTOMAX==^D450 ;LARGEST WTO MESSAGE ALLOWED
TYPMAX==^D26 ;LARGEST TYPE BLOCK IN WORDS
TYPMIN==^D7 ;STANDARD TYPE SIZE MAXIMUM IN WORDS
TYPAPL==^D9 ;SIZE OF APPLICATION TYPE MESSAGES
SYSPRM OB.WTO,OB.WTO,OB%WTO ;WTO FLAGS IN BATCH JOB TABLE
SYSPRM OB.BSS,OB.BSS,OB%BSS ;BATCH-STREAM NUMBER IS SET
SUBTTL ALIGN message
;THIS MESSAGE IS SENT TO DESCRIBE THE ALIGNMENT OPTIONS AND
;FILE TO USE
; !=======================================================!
; \ \
; \ THE MESSAGE HEADER \
; \ \
; !-------------------------------------------------------!
; ! FLAG WORD !
; !-------------------------------------------------------!
; ! ARGUMENT COUNT WORD !
; !=======================================================!
;
; ARGUMENT DATA BLOCKS
;
; !=======================================================!
; ! LENGTH OF THE ARGUMENT ! TYPE OF ARGUMENT !
; !-------------------------------------------------------!
; \ \
; \ ARGUMENT DATA \
; \ \
; !=======================================================!
;THE ALIGN MESSAGE WILL ALWAYS CONTAIN AN OBJECT BLOCK
;
; .OROBJ OBJECT BLOCK
;
;THE FOLLOWING OPTIONS ARE ALSO VALID
;
; .CMIFI INPUT FILE SPEC TO USE
.ALPAU==11100 ;ALIGN PAUSE AMOUNT BETWEEN REPEATS
;THE ARGUMENT DATA WILL CONTAIN TIME
.ALRPT==11101 ;THE REPEAT COUNT ON THE FILE
;THE DATA WILL CONTAIN THE COUNT
.ALSTP==11102 ;STOP THE ALIGNMENT..NO DATA FOR THIS FIELD
SUBTTL STATUS message
;THIS MESSAGE IS SENT BY A PROCESSOR TO ORION IN RESPONSE TO A
;SHOW MESSAGE REQUESTING STATUS.
; !=======================================================!
; \ \
; \ THE MESSAGE HEADER \
; \ \
; !=======================================================!
; ! ORNMAC VERSION NUMBER !
; !=======================================================!
; \ \
; \ THE OBJECT AREA \
; \ \
; !=======================================================!
; \ \
; \ TEXT BLOCK OF STATUS \
; \ \
; !=======================================================!
;THE STATUS MESSAGE CONSISTS OF AS MANY OBJECT AREA/TEXT BLOCKS
;PAIRS AS NEEDED.
;THE FIRST WORD OF A TEXT BLOCK IS THE NUMBER OF WORDS IN THE
;TEXT BLOCK, FOLLOWED BY AN ASCIZ STRING
PHASE OBJSIZ ;START AFTER THE OBJECT AREA
STS.TB:! BLOCK 1 ;START OF BLOCK -- COUNT FOR THIS BLOCK
STS.TX:! ;WHERE THE TEXT IS
DEPHASE
SUBTTL SHOW CONTROL-FILE message
; !=======================================================!
; \ \
; \ THE MESSAGE HEADER \
; \ \
; !-------------------------------------------------------!
; ! FLAG WORD !
; !-------------------------------------------------------!
; ! ARGUMENT COUNT WORD !
; !=======================================================!
;
; ARGUMENT DATA BLOCKS
;
; !=======================================================!
; ! LENGTH OF THE ARGUMENT ! TYPE OF ARGUMENT !
; !-------------------------------------------------------!
; \ \
; \ ARGUMENT DATA \
; \ \
; !=======================================================!
;THE SHOW-CONTROL-FILE COMMAND WILL ALWAYS CONTAIN AN ORION
;OBJECT BLOCK
;
; .OROBJ OBJECT BLOCK TYPE
;THE SHOW CONTROL-FILE COMMAND SUPPORTS ONE ARGUMENT TYPE
;
.SHCLN==11200 ;LINE COUNT FOR SHOW CONTROL-FILE
SUBTTL SHOW STATUS message
;THE SHOW STATUS MESSAGE IS SENT TO QUASAR REQUESTING
;INFORMATION ABOUT ONE OR MORE OBJECTS
; !=======================================================!
; \ \
; \ THE MESSAGE HEADER \
; \ \
; !-------------------------------------------------------!
; ! FLAG WORD !
; !-------------------------------------------------------!
; ! ARGUMENT COUNT WORD !
; !=======================================================!
;
; ARGUMENT DATA BLOCKS
;
; !=======================================================!
; ! LENGTH OF THE ARGUMENT ! TYPE OF ARGUMENT !
; !-------------------------------------------------------!
; \ \
; \ ARGUMENT DATA \
; \ \
; !=======================================================!
;THE SHOW STATUS MESSAGE CONISTS OF AN OBJECT BLOCK
;THAT DESCRIBES THE NUMBER AND TYPE OF OBJECTS DESIRED.
;
; .OROBJ OBJECT BLOCK TYPE
;
;THE OBJECT BLOCK HAS THE FOLLOWING ADDITIONAL VALUES AND MEANINGS
;
; TYPE VALUE MEANING
;
; OBJ.TY -1 ALL OBJECTS
; OBJ.UN -1 ALL UNITS
; OBJ.ND -1 ALL NODES
;
;THE FOLLOWING FLAGS ARE USED TO DESCRIBE THE TYPE OF JOBS
;TO BE LISTED FOR THE OBJECT DESCRIBED
;
.STACT==11201 ;JOBS ON ACTIVE OBJECTS
.STHLD==11202 ;JOBS WAITING FOR OBJECTS
.STWAT==11203 ;WAITING TO BE PROCESSED JOBS
.STALL==11204 ;ALL JOBS
SUBTTL SHOW STATUS IBM-NODE message
;This command contains only a .ORNOD block to specify the node to
;be displayed
SUBTTL SHOW PARAMTERS IBM-NODE message
;This command contains only a .ORNOD block to specify the node to
;be displayed
SUBTTL MODIFY SYSTEM-LISTS message
;MESSAGE TYPE - .ODCSL
;This command allows the operator to manipulate
;the system search list, the crash dump list, and the active
;swapping list.
;THERE IS ONE BIT IN THE FLAG WORD:
;The add/remove bit. which says whether the OPR
;typed ADD or REMOVE.
AD.REM==1B0 ;1 if OPR said REMOVE
;0 if OPR said ADD
;There ARE TWO argumentS to the message. ONE block has
; the unit or structure name in SIXBIT
.STRDV==.STRDV ;The block type
;THE OTHER DESCRIBES WHICH LIST TO MANIPULATE
.SLSTY==20500 ;THE BLOCK TYPE (LENGTH IS ALWAYS 2)
.SLTYP==ARG.DA ;THE WORD CONTAINING THE LIST TYPE
SL.TCD==7B35 ;FIELD CONATINING USEFUL INFO
SL.TMN==1 ;Minimum list type value
SL.SSL==1 ;System search list
SL.CDL==2 ;Crash dump list
SL.ASL==3 ;Active swapping list
SL.TMX==SL.ASL ;Maximum list type value
SUBTTL SHOW SYSTEM-LIST message
;MESSAGE TYPE - .ODSSL
;THIS COMMAND ALLOWS THE OPERATOR TO DISPLAY SOME OR ALL
;OF THE SYSTEM LISTS.
;THE MESSAGE HAS FROM 0 TO N BLOCKS.
;IF THERE ARE NO BLOCKS, THEN ALL SYSTEM LISTS SHOULD
;BE DISPLAYED. IF THERE ARE BLOCKS, THEN JUST THE
;LISTS CORRESPONDING TO THE BLOCKS SHOULD BE DISPLAYED
.ODSSL==.ODSSL ;THE MESSAGE TYPE
.SLSTY==.SLSTY ;THE LEGAL BLOCK TYPE
;(MAY BE MORE THAN 1 OF THESE)
SUBTTL SHOW ALLOCATION message
;MESSAGE TYPE - .ODSAL
;THE COMMAND ALLOWS THE OPERATOR TO DISPLAY THE ALLOCATION
;REQUEST OF SOME JOB OR BATCH REQUEST ON THE SYSTEM.
;THE MESSAGE HAS ONE ARGUMENT BLOCK
;THE ALLOCATION FOR THE JOB OR REQUEST CORRESPONDING
;TO THE BLOCK ON THE MESSAGE WILL BE DISPLAYED
;THE LEGAL BLOCK TYPES ARE:
.ORJNU==.ORJNU ;JOB NUMBER
.ORREQ==.ORREQ ;BATCH REQUEST ID
;IF THE DATA FOR EITHER OF THESE ARGUMENTS IS -1,
;ALL THE JOBS (EITHER TYPE) WILL BE LISTED
SUBTTL ORION Error codes and messages
;ARGUMENTS USED ARE
; X 'SUFFIX','TEXT'
;THE EXPANDER MUST DEFINE THE CORRECT X MACRO
DEFINE ERRCDS,<
XLIST
X AON,<Application object block and object type block not allowed together in WTOR/WTO/ACK message>
X CMI,<Command message invalid>
X UPO,<Unknown processor object>
X UPT,<Unidentified processor type>
X IPE,<OPERATOR privileges required>
X IOE,<Invalid OPR entry>
X IFC,<Illegally formatted command message>
X IRS,<Illegal range specified>
X MTS,<Message too short>
X BML,<Bad message length>
X CSU,<Cannot send to specified user>
X NOM,<No outstanding messages>
X ICS,<Invalid argument count specified in command>
X IAL,<Invalid argument length specified>
X ITM,<Invalid type argument in message>
X ONS,<OPR not setup .. command ignored>
X DTM,<Duplicate type specified in message>
X WJP,<WTO, WTOR, or ACK job number field requires privileges>
X WTP,<WTO, WTOR or ACK object type field requires privileges>
X IWF,<Invalid WTO or WTOR field>
X WOP,<WTO, WTOR, or ACK object block field requires privileges>
X IOU,<Invalid object unit specified in object block>
X RIW,<Range invalid in WTO, WTOR or ACK object block>
X OPD,<OPR pid already defined>
X ISM,<OPR setup message invalid .. OPR did not send hello>
X OAS,<OPR already setup .. OPR deleted>
X ANI,<Application name invalid in application hello message>
X ODE,<OPR Does not exist .. message not sent>
X MTF,<WTO message type field required with WT.SJI set>
X IAC,<Invalid acknowledgement code .. code was zero>
X CNI,<Command not yet implemented>
X IPS,<Invalid pid for sender .. pid was zero>
X ISC,<Invalid switch specified in command>
X WNA,<Write to operator function not allowed for this job>
X LNI,<Logging not enabled>
X RNA,<Range not allowed in START command with /DEVICE>
X IQS,<Invalid queue specified in command>
X SUF,<ERROR.SYS entry failed on REPORT command>
X IUM,<Invalid user specified in message>
X ARP,<ACK messages require WHEEL or OPERATOR privileges>
X NRW,<Notify message requires WHEEL or OPERATOR privileges>
X JDE,<Job to be notified no longer exists>
X NJD,<Job to be notified is DETACHED .. notify ignored>
X BNR,<Batch commands not allowed from remote nodes>
X NOD,<No operators defined>
X DOL,<Device already online .. command ignored>
X SFF,<Scheduler functions failed for SHOW SCHEDULER command>
X ORS,<SYSTEM, HOST or REMOTE operator privilege required>
X OHS,<SYSTEM or HOST operator privilege required>
X OSY,<SYSTEM operator privilege required>
X SAF,<Send to ACTDAE failed for SET USAGE command>
X CLO,<Can't locate operator>
LIST
SALL
> ;END OF DEFINE ERRCDS
DEFINE ERRTXT,<
XLIST
X ACI,<Application code ^D/G$ARG1/ invalid .. WTO rejected>
X AHF,<^T/@G$ARG1/ hello acknowledgement failed .. hello ignored>
X ANS,<Application ^T/@G$ARG1/ not signed on yet .. WTO/WTOR/ACK rejected>
X CPM,<WTO/WTOR/ACK request for ^T/@G$ARG1/ has different pid from hello .. WTO rejected>
X CSF,<Class scheduler error: ^E/G$ARG1/>
X DDI,<Disk drive number ^D/G$ARG1/ invalid on SET command>
X DJF,<SET ONLINE failed because ^E/G$ARG1/>
X IAP,<^T/@G$ARG1/ is not running>
X ICN,<Channel number ^D/G$ARG1/ invalid on SET command>
X IDD,<^T/@G$ARG1/ is not a valid disk structure .. command ignored>
X IDS,<^T/@G$ARG1/ is not supported for /DEVICE .. command ignored>
X IMT,<Illegal message type ^O/G$ARG1/>
X INS,<Operator at node ^N/G$ARG1/ not enabled for node ^N/G$ARG2/>
X INT,<Invalid node or no terminal lines for node ^N/G$ARG1/>
X ION,<OPR hello message node ^N/G$ARG1/ invalid .. OPR ignored>
X IOT,<Invalid object type ^O/G$ARG1/ specified in message>
X ITD,<^T/@G$ARG1/ is not a valid tape drive .. command ignored>
X LAO,<ORION log file ^F/LOGFD/ already open .. command ignored>
X LFE,<ORION log error ^E/[-1]/ .. logging disabled>
X MNV,<Message ^D/G$ARG1/ no longer valid .. sender has gone away>
X NMC,<No messages found with code ^O/G$ARG1/>
X NMN,<No messages for node ^N/G$ARG1/>
X NON,<No operators at node ^N/G$ARG1/>
X NSM,<Message ^D/G$ARG1/ does not exist>
X NTD,<^T/@G$ARG1/ is not a tape drive or valid structure .. command ignored>
X OAE,<DN60 OPR at node ^N/G$ARG1/ already exists>
X ONE,<OPR not enabled for message ^D/G$ARG1/ at node ^N/G$ARG2/>
X OSF,<OPR setup failure for pid ^O/G$ARG1/ .. OPR ignored>
X PER,<Command error: ^T/@G$ARG1/>
X RWF,<^T/@G$ARG1/ file retrieval waits failed ^E/[-2]/>
X SIC,<SET ONLINE ^T/@G$ARG1/ channel number ^O/G$ARG2/ invalid>
X SID,<SET ONLINE ^T/@G$ARG1/ device number ^O/G$ARG2/ invalid>
X SJF,<SET JOB scheduler error: ^E/G$ARG1/>
X SJN,<SET JOB invalid .. job ^D/G$ARG1/ not logged in>
X SPI,<SET priority value ^D/G$ARG1/ invalid .. 63 is maximum>
X SSF,<SET SCHEDULER error: ^E/G$ARG1/>
X TAB,<TAKE command aborted because ^T/@G$ARG1/ not running
on command "^T/@G$ARG2/">
X WTL,<WTO/WTOR message length ^D/G$ARG1/ exceeds max of ^D/[WTOMAX]/>
X WVN,<Wrong ORNMAC version number ORION used version ^O/[%%.OPR]/ and OPR used version ^O/.OHDRS+OPH.OV(MI)/>
LIST
SALL
> ;END ERRTXT
DEFINE ORNMSG,<
XLIST
X CSE,<Class scheduler ^T/@G$ARG1/>
X CWM,<Message ^D/G$ARG1/ canceled^I/@G$ARG3/>
X FRW,<File retrieval waits ^T/@G$ARG1/d>
X JLO,<Message ^D/G$ARG1/ canceled .. job ^D/G$JOB/ logged out>
X LFC,<ORION logging disabled by ^I/@JOBTXT/>
X MCJ,<^D/G$ARG2/ message(s) canceled>
X ODM,<Output display for OPR modified>
X OLO,<ORION logging enabled by ^I/@JOBTXT/>
X SCC,<SEND command completed>
X SEM,<Entry made in ERROR.SYS>
X SJM,<Job ^D/G$ARG1/ modified>
X SOA,<SET ONLINE accepted>
X SSJ,<Job ^D/G$ARG1/ now in class ^D/G$ARG2/>
X SSS,<Scheduler setting modified>
LIST
SALL
> ;END ORNMSG
DEFINE ERRSET,<
EXTERNAL TXTTBL
EXTERNAL STSTBL
EXTERNAL ERRTBL
EXTERNAL RPTERR
DEFINE X(SUFFIX,TEXT),<
EXTERNAL E$'SUFFIX
> ;END X
ERRCDS
ERRTXT
ORNMSG
> ;END ERRSET
SUBTTL PARSET Parser setup macros
DEFINE PARSET,<
EXTERNAL P$GPDB ;GET THE PDB BLOCK
EXTERNAL P$PNXT ;GET NEXT PDB GIVEN A PDB BLOCK
EXTERNAL P$PERR ;GET ERROR BLOCK FROM PDB GIVEN A PDB
EXTERNAL P$PDEF ;GET DEFAULT FILLING ROUTINE GIVEN A PDB
EXTERNAL P$PACT ;GET ACTION ROUTINE GIVEN A PDB
EXTERNAL P$NARG ;NEXT ARGUMENT TYPE TO PROCESS
EXTERNAL P$SETU ;SETUP POINTER TO PARSER BLOCKS
EXTERNAL P$CURR ;GET THE CURRENT LOCATION
EXTERNAL P$PREV ;SET THE PREVIOUS TO CURRENT
EXTERNAL P$FLOT ;FLOATING POINT NUMBER
EXTERNAL P$INIT ;PARSER INIT
EXTERNAL P$INTR ;PARSER INTERRUPTS
EXTERNAL P$TINT ;TIMER INTERRUPTS
EXTERNAL P$NFLD ;NEXT FIELD TYPE AND BLOCK ADDRESS
EXTERNAL P$DIR ;DIRECTORY FIELD
EXTERNAL P$NEXT ;GET NEXT FIELD
EXTERNAL P$TIME ;TIME/DATE CHECK
EXTERNAL P$COMMA ;COMMA CHECK
EXTERNAL P$CFM ;CONFIRM CHECK
EXTERNAL P$KEYW ;KEYWORD CHECK
EXTERNAL P$SWIT ;SWITCH CHECK
EXTERNAL P$USER ;USER CHECK
EXTERNAL P$NUM ;NUMBER CHECK
EXTERNAL P$FILE ;FILE SPEC CHECK
EXTERNAL P$IFIL ;INPUT FILE SPEC
EXTERNAL P$OFIL ;OUTPUT FILE SPEC
EXTERNAL P$FLD ;FIELD CHECK
EXTERNAL P$TOK ;TOKEN CHECK
EXTERNAL P$NODE ;NODE CHECK
EXTERNAL P$SIXF ;SIXBIT FIELD CHECK
EXTERNAL P$RNGE ;RANGE OF NUMBERS
EXTERNAL P$TEXT ;TEXT CHECK
EXTERNAL P$DEV ;DEVICE CHECK
EXTERNAL P$QSTR ;QUOTED STRING
EXTERNAL P$UQST ;UNQUOTED STRING
EXTERNAL P$TAKE ;Take processing
EXTERNAL P$ACCT ;Account string
EXTERNAL P$NPRO ;No process required
> ;END PARSET
SUBTTL Node/Operator Data Base
;THE NODE LIST EXTERNAL CONTAINS ONE FOR EACH NODE THAT
;HAS SIGNED ON TO ORION
PHASE 0
NOD.NM:! BLOCK 1 ;NODE NAME (SIXBIT)
NOD.NU:! BLOCK 1 ;NODE NUMBER
NOD.OP:!BLOCK 1 ;OPR LIST NUMBER
NOD.ML:!BLOCK 1 ;MESSAGE LIST NUMBER
NOD.CT:!BLOCK 1 ;NUMBER OF MESSAGES QUEUED FOR
; THIS NODE.
NOD.AO:!BLOCK 1 ;LIST OF ALTERNATE OUTPUT NODES
NOD.AI:! BLOCK 1 ;LIST OF ALTERNATE INPUT NODES
NOD.TM:!BLOCK 1 ;TIME OF LAST AUTO DISPLAY
NOD.OC:! BLOCK 1 ;NUMBER OF OPRS AT NODE
NOD.FL:! BLOCK 1 ;FLAGS FOR NODE LIST
ND.NLE==1B0 ;NODE LIST ENABLED
ND.SYS==1B1 ;SYSTEM OPERATOR NODE
ND.D60==1B2 ;D60 TYPE NODE
NOD.SZ:! ;SIZE OF THE NODE BLOCK
DEPHASE
SYSPRM NOD.NX,NOD.NU,NOD.NM ;NUMBER ON -10 NAME ON -20
;THE FOLLOWING IS THE FORMAT OF THE ALTERNATE NODE LIST
;FOR EACH NODE. THIS ENTRY IS GENERATED BY THE ENABLE COMMAND
PHASE 0
NAL.FL:! BLOCK 1 ;FLAGS FOR ALTERNATE NODE
NAL.NM:! BLOCK 1 ;NAME OF NODE
NAL.NU:! BLOCK 1 ;NUMBER OF NODE
NAL.AD:! BLOCK 1 ;ADDRESS OF NODE ENTRY
NAL.SZ:! ;SIZE OF THE ENTRY
DEPHASE
SUBTTL OPR list entry
;THIS A DESCRIPTION OF AN OPR BLOCK USED TO DESCRIBE
;EACH OPR THAT HAS SIGNED ON TO ORION. THE OPRS ARE
;ASSOCIATED WITH THE NODE AT WHICH THEY ARE LOCATED.
PHASE 0
OPR.PD:!BLOCK 1 ;PID FOR THIS OPR
OPR.FL:!BLOCK 1 ;FLAG WORD FOR THIS OPR
OP.NST==1B0 ;OPR NOT SETUP YET
OP.REM==1B1 ;REMOTE OPERATOR
OP.TAK==1B2 ;IN A TAKE COMMAND
OP.ABT==1B3 ;ABORT TAKE FILES
OP.D60==1B4 ;DN60 OPERATOR
OP.SYS==1B5 ;SYSTEM OPERATOR
OP.LCL==1B6 ;LOCAL OPERATOR
OP.HST==1B7 ;Host operator
OPR.OF:!BLOCK <.OTMAX+NUMAPL>/<^D36/^D3>+1 ;THREE FLAGS PER OBJECT
WO.ALL==WO.EVM!WO.JOB!WO.OAC ;ALL FLAGS
WO.EVM==1B0 ;OTHER MESSAGES
WO.JOB==1B1 ;JOB MESSAGE
WO.OAC==1B2 ;OPR ACTION MESSAGE
OPR.OC:! BLOCK 1 ;COMMANDS OUTPUT TO THIS OPR
OPR.IC:! BLOCK 1 ;COMMANDS INPUT FROM THIS OPR
OPR.ND:! BLOCK 1 ;NODE ENTRY ADDRESS FOR THIS OPR
OPR.LS:! BLOCK 1 ;OPR LIST CONTAINING THIS ENTRY
OPR.TN:! BLOCK 1 ;TERMINAL NUMBER OF OPR
OPR.JB:! BLOCK 1 ;JOB NUMBER OF THE OPR
OPR.US:! BLOCK 1 ;USER NUMBER OR PPN
TOPS10 <
OPR.UN:! BLOCK 2 ;USER NAME ON THE -10
> ;END TOPS10
OPR.TP:! BLOCK 1 ;TABLE ENTRY POINTER
IFN FTDN60,<
OPR.PL:! BLOCK 1 ;DN60 PORT LINE INFO
OPR.DN:! BLOCK 1 ;DN60 CHARACTERISTICS
> ;END FTDN60
OPR.SZ:! ;SIZE OF THE OPR BLOCK
DEPHASE
SUBTTL OPR table database structure
;THIS IS THE FORMAT OF THE LIST ENTRY FOR THE OPR DATA BASE
;LIST WHICH IS BUILT BY ORION
PHASE 0
TOP.PD:! BLOCK 1 ;PID OF THE OPR
TOP.OA:! BLOCK 1 ;ADDRESS OF OPR ENTRY
TOP.SZ:! ;SIZE OF THE DATA BASE BLOCK
DEPHASE
SUBTTL OPERATOR message list entry
;THIS LIST CONTAINS ALL OPERATOR MESSAGES REQUIRING A REPLY
;AND IS ASSOCIATED WITH EACH NODE
PHASE 0
MSL.FL:!BLOCK 1 ;MESSAGE LIST FLAGS
MS.NDY==1B35 ;MESSAGE HASN'T BEEN DISPLAYED
MS.TER==1B34 ;NOTIFY ON TERMINAL ON SEND FAILURE
MSL.PD:!BLOCK 1 ;PID OF THE SENDER
MSL.JB:!BLOCK 1 ;JOB NUMBER MESSAGE IS FOR
MSL.JT:! BLOCK 1 ;LOGGED IN TIME OF SENDER
MSL.ND:! BLOCK 1 ;NODE THE MESSAGE IS PART OF
MSL.CD:! BLOCK 1 ;CODE PASSED IN WTOR
MSL.ID:! BLOCK 1 ;ID NUMBER OF MESSAGE
MSL.SZ:! ;SIZE OF THE MESSAGE LIST
DEPHASE
SUBTTL Parser storage allocation definitions
NCHPW==5 ;NUMBER OF ASCII CHARACTERS PER WORD
BUFSIZ==200 ;SIZE OF INPUT TEXT BUFFER
ATMSIZ==BUFSIZ ;SIZE OF ATOM BUFFER FOR COMND JSYS
FDBSIZ==.CMDEF+2 ;SIZE OF FUNCTION DESCRIPTOR BLOCK
;GTJFN BLOCK FOR COMMAND
TOPS20 <
GJFSIZ==.GJRTY+2 ;SIZE OF GTJFN BLOCK USED BY COMND JSYS
> ;END TOPS20
TOPS10 <
GJFSIZ==FDXSIZ
> ;END TOPS10
SUBTTL PDB Parser data block definitions
;THE FOLLOWING SYMBOLS ARE USED TO DESCRIBE AN
;ENTRY IN THE COMMAND MESSAGE AS OUTPUT BY THE PARSER
PHASE 0
PFD.HD:! BLOCK 1 ;HEADER WORD FOR BLOCK
PF.TYP==0,,-1 ;TYPE IN THE LEFT HALF
PF.LEN==-1,,0 ;LENGTH IN RIGHT HALF
;INCLUDES THIS WORD
PFD.D1:! BLOCK 1 ;FIRST DATA WORD
PFD.D2:! BLOCK 1 ;SECOND DATA WORD (IF NECESSARY)
PFD.SZ:! ;SIZE OF THE BLOCK
DEPHASE
SUBTTL Parser flag values
P.TAKE==1B0 ;TAKE COMMAND PROCESSED
P.CTAK==1B1 ;COMMAND FROM A TAKE COMMAND
P.ACTE==1B2 ;ACTION ROUTINE ERROR
P.NPRO==1B3 ;NO PROCESSING FOR COMMAND
P.ERRO==1B4 ;ERROR FLAG..ERROR OCCURRED
P.REPA==1B5 ;REPARSE REQUIRED
P.INTE==1B6 ;INTERRUPT EXIT FLAG
P.DSPT==1B7 ;DISPLAY THIS TAKE COMMAND
P.ENDT==1B8 ;END OF TAKE FILE
P.DERR==1B9 ;DEFAULT ROUTINE ERROR
P.CEOF==1B10 ;CORE PARSE END OF FILE
TEMTSZ==20 ;SIZE OF TEMP TABLE FOR SHRSWT
SUBTTL Parser argument block description
;THIS IS A DESCRIPTION OF THE ARGUMENT BLOCK USED
;TO CALL THE PARSER ROUTINE (OPRPAR)
; S1/ LENGTH OF THE BLOCK
; S2/ ADDRESS OF THE BLOCK
PHASE 0
PAR.TB:! BLOCK 1 ;ADDRESS OF THE TABLES
PAR.PM:! BLOCK 1 ;ADDRESS OF THE PROMPT STRING
;DEFAULT TO PARSER> IF ZERO
PAR.CM:! BLOCK 1 ;ADDRESS TO STORE PARSED DATA
;DEFAULT TO GET PAGE IF ZERO
PAR.SR:! BLOCK 1 ;ADDRESS OF THE STRING TO PARSE
;DEFAULT TTY IF NOT SPECIFIED OR ZERO
;-1 MEANS DO A RESCAN FOR INCORE
PAR.SZ:! ;SIZE OF THE PARSER CALLING BLOCK
SUBTTL Parser action routine argument block description
;THIS BLOCK IS A DESCRIPTION OF THE ELEMENTS AVAILABLE TO THE
;ACTION,PREFILL, AND ERROR ROUTINES WHEN CALLED
;CALL S1/ LENGTH OF THE BLOCK
; S2/ ADDRESS OF THE BLOCK
COMMENT \ ;HERE FOR COMMENT ONLY... ARE DEFINED IN GLXMAC
PHASE 0
CR.FLG:! BLOCK 1 ;OFFSET FOR THE FLAG WORD
CR.RES:! BLOCK 1 ;OFFSET FOR THE RESULT WORD
CR.PDB:! BLOCK 1 ;GIVEN PDB,,USED PDB
CR.COD:! BLOCK 1 ;CODE TYPE OF PROCESSED FIELD
CR.SIZ:! ;SIZE OF THE BLOCK
DEPHASE
\;END OF COMMENT
PC.SIZ==CR.SIZ+1
CR.SAV==CR.SIZ ;DEFINE THE SAVE BLOCK
SUPPRESS CR.SIZ
SUBTTL Parser return block definition
;THIS BLOCK IS A DESCRIPTION OF THE ARGUMENT BLOCK RETURNED
;BY THE PARSER.
; S1/ LENGTH OF THE BLOCK
; S2/ ADDRESS OF THE BLOCK
PHASE 0
PRT.FL:! BLOCK 1 ;FLAG WORD FOR RETURN
PRT.CM:! BLOCK 1 ;COMMAND MESSAGE ADDRESS
PRT.CF:! BLOCK 1 ;COMMAND FLAG WORD
PRT.SM:!
PRT.MS:! BLOCK 1 ;POINTER TO TEXT OF MESSAGE ON
;FALSE RETURN
PRT.EM:! BLOCK 1 ;POINTER TO ERROR MESSAGE ON
;FALSE RETURN
PRT.EC:! BLOCK 1 ;ERROR CODE RETURNED
;FROM ACTION ROUTINE
PRT.SZ:!
DEPHASE
SUBTTL Parser keyword table descriptions
;THESE DEFINITIONS DESCRIBE THE ENTRY BLOCK FOR ALL
;SYNTAX TABLES USED BY ORION AND OPR
PHASE 0
TAB.HD:! BLOCK 1 ;HEADER WORD FOR TABLES
TB.LEN==0,,-1 ;LENGTH IN RIGHT HALF
TAB.IN:! BLOCK 1 ;TABLE ADDRESS OF .CMINI FUNCTION
TAB.KY:! BLOCK 1 ;TABLE ADDRESS OF MAIN KEYWORD TABLE
TAB.SZ:! ;SIZE OF THE ENTRY
DEPHASE
;FLAGS USED BY ORION
F.WTXT==1B18 ;WTO TEXT ARGUMENT PRESENT
F.WOBJ==1B19 ;WTO OBJECT BLOCK SPECIFIED
F.WDES==1B20 ;WTO DESTINATION FIELD PRESENT
F.WJOB==1B21 ;JOB NUMBER SPECIFIED IN WTO
F.WERR==1B22 ;ERROR CODE SPECIFIED IN WTO
F.WRTE==1B23 ;ROUTE CODE SPECIFIED IN WTO
F.WTYP==1B24 ;TYPE TEXT SPECIFIED IN WTO
F.WANS==1B25 ;ANSWER BLOCK SPECIFIED IN WTOR
F.WACD==1B26 ;APPLICATION CODE FIELD
F.WOCD==1B27 ;OBJECT TYPE BLOCK
F.WFLG==F.WTXT!F.WOBJ!F.WDES!F.WJOB!F.WERR!F.WRTE!F.WTYP!F.WANS!F.WACD!F.WOCD
SUBTTL Message resend list database description
;THIS LIST IS THE DATA STRUCTURE USED TO KEEP TRACK OF MESSAGES
;NEEDING TO BE RESENT TO AN OPR OR A PROCESSOR THAT HAD A
;RECOVERABLE SEND FAILURE
PHASE 0
RSD.HD:! BLOCK 1 ;HEADER FOR LIST ENTRY
RS.LEN==-1,,0 ;LENGTH OF ENTRY
RSD.TM:! BLOCK 1 ;TIME OF THE MESSAGE FIRST TRIED
RSD.MS:! BLOCK 1 ;OFFSET IN BLOCK TO MESSAGE TEXT
RSD.FL:! BLOCK 1 ;FLAGS FOR THE RESEND LIST
R.WAIT==1B0 ;WAIT FOR PID TO COME
R.NSNT==1B1 ;NOT SENT YET
R.SQSR==1B2 ;SEND TO QUASAR
R.SOPR==1B3 ;SEND TO OPR
R.SAPL==1B4 ;SEND TO APPLICATION
RSD.RT:! BLOCK 1 ;COUNT OF RETRIES
RSD.PD:! BLOCK 1 ;OFFSET FOR PID LIST
RSD.CT:! BLOCK 1 ;NUMBER OF PIDS TO SEND TO
RSD.SZ:! ;SIZE OF RESEND LIST
DEPHASE
SUBTTL Message send failure database description
;THIS IS THE DATA BASE USED FOR THE SEND FAILURE TABLE
PHASE 0
SFL.PD:! BLOCK 1 ;PID WITH FAILURE
SFL.CT:! BLOCK 1 ;COUNT OF MESSAGES WITH FAILURE
SFL.SZ:!
DEPHASE
SUBTTL Interrupt system definitions
IPCLEV==1 ;USE INTERRUPT LEVEL 1
SUBTTL DN200 OPR definitions
DEBSRV==200 ;DEBUGGING SERVER TYPE
SRVTSK==57 ;TASK TO ACCEPT CONNECTIONS
DCNTSK==47 ;TASK TO DO OUTPUT FROM
NUMSRV==3 ;NUMBER OF SERVERS
NETBSZ==^D8 ;NETWORK BYTE SIZE
;ORION SRV: DEFINITIONS
CHNSRV==^D23 ;CHANNEL TO START GETTING SERVERS AT
;OPR SRV: DEFINITIONS
INPCHN==2 ;INPUT CHANNEL
OUTCHN==3 ;OUTPUT CHANNEL
OUTSIZ==^D381 ;SIZE OF LARGEST MESSAGE
CHNINT==<-1_<<NUMSRV*2>-^D36>>B<<NUMSRV*2>+CHNSRV-1> ;GET BITS FOR AIC
;SETTING ALL APPROPRIATE CHANNELS
SUBTTL SRV: Database for TOPS20
;THE SERVER DATA BASE
PHASE 0
SRV.CN:! BLOCK 1 ;INTERRUPT CHANNEL FOR THIS SERVER
SRV.IN:! BLOCK 1 ;INTERRUPT FLAG FOR CHANNEL
SRV.JF:! BLOCK 1 ;JFN FOR SERVER LINK
SRV.FK:! BLOCK 1 ;FORK HANDLE FOR PROCESS
SRV.SZ:! ;SIZE OF SERVER DATA BASE ENTRY
DEPHASE
;THE ACTIVE NETWORK SERVERS
PHASE 0
NET.FK:! BLOCK 1 ;FORK HANDLE OF THE SERVER
NET.PG:! BLOCK 1 ;PROGRAM JFN FOR SERVER
NET.LJ:! BLOCK 1 ;NETWORK LINK JFN
NET.SA:! BLOCK 1 ;SERVER DATA BASE ADDRESS
NET.SZ:! ;SIZE OF DATA BASE
DEPHASE
SUBTTL Error tables for OPR
DEFINE ERROPR,<
XLIST
X E.NORM,<OPR terminated normally>
TOPS20 <
X E.OPNF,<Unable to open ^T/DCNDAT/>
X E.CONF,<Unable to get connects for ^T/DCNDAT/>
X E.ACFL,<Unable to accept connects for server links>
X E.OUTF,<Output over link ^T/DCNDAT/ failed .. link aborted>
X E.INPF,<Input over server link failed .. link aborted>
X E.STSF,<Status return for input server link failed .. link aborted>
X E.INVC,<Invalid connect status ^O/ARG1/ .. link aborted>
> ;END TOPS20
X E.EXIT,<EXIT command issued>
LIST
SALL
> ;END ERROPR
DEFINE X(A,B),<
XLIST
A==.ZZ
.ZZ==.ZZ+1
LIST
SALL
> ;END X
.ZZ==0
ERROPR
E.MAXE==.ZZ ;LAST ERROR CODE
;SUPPRESS SYMBOLS REFERENCED BUT NOT DEFINED IN ORNMAC
SUPPRESS FTJSYS,FTUUOS,MSHSIZ,MT.TXT,OBJ.ND,OBJ.SZ,OBJ.TY,OBJ.UN,.ZZ
END