perm filename JUNK[S,AIL]4 blob
sn#266396 filedate 1977-02-25 generic text, type T, neo UTF8
UNIVERSAL HDRFIL
↓ALWAYS←←0
DEFINE .VERSION <102200000016>
SUBTTL Command File Descriptions
LSTON (GOGOL)
SUBTTL Conditional Assembly Switches, Macros
STSW(UPPER,0) ;NOT UPPER OR LOWER IF NEITHER SET
STSW(LOWER,0)
STSW(GLOBSW,0) ;ONLY GLOBAL IF SOMEBODY ELSE SAID SO
STSW(SEGS,0)
STSW(RENSW,0) ;RE-ENTRANT LIBRARY (HISEG) IF ON
STSW(LEAPSW,1) ;ASSUME LEAP
EXPO <
STSW(APRISW,1) ;THE APR INTERRUPT PACKAGE IS TO BE USED
>;EXPO
NOEXPO <
STSW(APRISW,0) ;USUALLY USE THE MOORER PACKAGE
>;NOEXPO
DEFINE COMPIL ' (NAM,ENT,EXT,DSCRP,INT,HINHB,DUMMY) <
IFIDN <DUMMY>,<> <
SUBTTL SAI'NAM -- DSCRP
IFE ALWAYS,<
IFDIF <><ENT>,<ENTRY ENT>
TITLE SAI'NAM
REN <
IFIDN <><HINHB>,<HISEG ;LOAD TO UPPER IF POSSIBLE>
>;REN
IFDIF <><EXT>,<EXTERN EXT>
>;IFE ALWAYS
NOLOW <
IFDIF <><INT>,<INTERN INT>
IFN ALWAYS,<
IFDIF <NAM><LOR>,<
IFDIF <><ENT>,<INTERNAL ENT>
>>
>;NOLOW
>;IFIDN <DUMMY>
>
DEFINE COMPXX ' (NAM,ENT,EXT,DSCRP,INT,HINHB)
<COMPIL(<NAM>,<ENT>,<EXT>,<DSCRP>,<INT>,<HINHB>)>
DEFINE ENDCOM (NAM) <
IFE ALWAYS,<
END
>;IFE ALWAYS
>
IFNDEF ALWAYS,<?ALWAYS←←1>
IFN ALWAYS,<DEFINE ENTINT (X) <INTERNAL X>>
IFE ALWAYS,<DEFINE ENTINT (X) <ENTRY X>>
SUBTTL Titles, Versions
IFN ALWAYS,<
LOW <
TITLE LOWER
>;LOW
NOUP <
NOLOW <
TITLE RUNTIM -- SAIL RUNTIME ROUTINES
>;NOLOW
JOBVER←←137
LOC JOBVER
.VERSION&777777000000 ;CURRENT VERSION NUMBER (LH ONLY)
RELOC
>;NOUP
>;ALWAYS NEQ 0
SUBTTL AC Definitions
?FF←←0
?A←1 ;TEMPS FOR ALLES
?B←2 ; (SOMETIMES SAVED)
?C←3
?D←4
?E←5 ?X←5 ;MORE TEMPS
?Q1←6 ?Y←6
?Q2←7 ?Z←7
?Q3←10 ?CHNL←10 ;CHNL # FOR IOSER
?T←11 ?CDB←11 ;CHANNEL DATA BLOCK PTR
?T1←12 ;TRY TO KEEP 12(RF) VALID.
?LPSA←13 ;TEMP, PARAM AC
?TEMP←14 ;TEMP ONLY
?USER←15 ;PTR USER TABLE FOR RNTRNT ROUTS
?SP←16 ;STRING STACK
?P←17 ;SYSTEM STACK
SUBTTL CDB, SIMIO Indices For IOSER, OTHER INDICES
?IOSTATUS ←← 0 ;RETURN STATUS
?IOIN ←← 1 ;BUFFERED INPUT
?IODIN ←← 2 ;DUMP INPUT
?IOOUT ←← 3 ;BUFMODE OUT.
?IODOUT ←← 4 ;DUMP OUTPUT
?IOCLOSE ←← 5 ;CLOSE FILE
?IORELEASE←← 6 ;RELEASE FILE
?IOINBUF ←← 7 ;INBUF
?IOOUTBUF ←←10 ;OUTBUF
?IOSETI ←←11 ;USETI
?IOSETO ←←12 ;USETO
?SETIOSTS ←←13 ;SET IO STATUS
?IOOPEN ←←14 ;OPEN CHANNEL
?IOLOOKUP ←←15 ;LOOKUP FILE
?IOENTER ←←16 ;ENTER FILE
?IORENAME ←←17 ;RENAME FILE
TYMSHR <;CHANIO INDICES
?CIOIN←←14
?CIOOUT←←15
?CIOCLS←←1
?CIORLS←←0
?CIOIBF←←22
?CIOOBF←←23
?CIOUSI←←6
?CIOUSO←←7
?CIOSTS←←16
?CIOOPN←←13
?CIOLUK←←4
?CIOENT←←5
?CIOREN←←11
?CIOGST←←17
>;TYMSHR
DMODE ←← 0 ;DATA MODE
DNAME ←← 1 ;DEVICE
BFHED ←← 2 ;HEADER POINTERS
OBPNT ←← 3 ;OUTPUT BUF. PTR
OBP ←← 4 ;OUTPUT BYTE PTR
OCOWNT ←← 5 ;OUTPUT BYTE CNT
ONAME ←← 6 ;OUTPUT FILE NAM
OBUF ←← 7 ;OUTPUT BUFFER LOC.
IBPNT ←←10 ;SAME FOR INPUT
IBP ←←11
ICOWNT ←←12
INAME ←←13
IBUF ←←14
ICOUNT ←←15 ;INPUT DATA COUNT LIMIT ADDRESS
BRCHAR ←←16 ;XWD TTYDEV FLAG, INPUT BREAK CHAR ADDR
TTYDEV ←←16 ;LH -1 IF DEVICE IS A TTY -- USED BY OUT
ENDFL ←←17 ;INPUT END OF FILE FLAG ADDR
ERRTST ←←20 ;USER ERROR BITS SPECIFICATION WORD
LINNUM ←←21 ;ADDR OF LINE NUMBER WORD (SETPL FUNCTION)
PAGNUM ←←22 ;ADDR OF PAGE NUMBER WORD (SETPL FUNCTION)
SOSNUM ←←23 ;ADDR OF SOS NUMBER WORD (SETPL FUNCTION)
?IOTLEN ←←SOSNUM+1 ;LENGTH OF TABLE ENTRY
?LUPDL←30 ;LENGTH OF UUO PDL
?MINPDS←←=64 ;SMALLEST ALLOWABLE SYSTEM PDL SIZE
?DEFPDS←←=192 ;DEFAULT PDL SIZE
?.ERSWC ←← 20 ;SIZE OF BUILT IN .ERSTR BUFFER
GLOB <
?GBRK ←← 6000 ;MIN GLOBAL ITEM NUMBER
>;GLOB
?.HDRSIZ←←4 ;Header allocated in each string space
?.NEXT←←-1 ;Next string space
?.LIST←←-2 ;Used to link descriptors during GC
?.SIZE←←-3 ;Size of this space
?.STTOP←←-4;< ;=> 1 past last word this space (redundant)
SUBTTL Base (Low Segment) Data Descriptions -- Macros, Compil spec
NOUP <
DEFINE SGLK (ROUT,NAM,INT) <
XX (NAM,ROUT,INT) ;NAME OF STRING DSCRPTR GENERATING ROUTINE
XX (,0,) ;PLACE TO PUT A LINK
LINK %SGROT,.-1 ;WHEREWITHAL TO GENERATE SAID LINK
>
>;NOUP
UP <
DEFINE SGLK (ROUT,NAM) <
XX (NAM,ROUT,)
XX (,0,)
>
>;UP
DEFINE XX (A,B,C,D) <
IFDIF <A><>,<? A :> B
IFDIF <C><>,< C A >
>
UP <
III←←140
DEFINE XX (A,B,C,D) <
IFDIF <A><>,<? A ← III >
III ←← III + 1
IFDIF <D><>,<III←III+D-1>
>
>;UP
END