Trailing-Edge
-
PDP-10 Archives
-
dbmsv5a
-
cmlsym.mac
There are 22 other files named cmlsym.mac in the archive. Click here to see a list.
UNIVERSAL DMLSYM FOR COBOL 12
;THIS SOFTWARE IS FURNISHED UNDER A LICENSE AND MAY ONLY BE USED
; OR COPIED IN ACCORDANCE WITH THE TERMS OF SUCH LICENSE
;COPYRIGHT (C) 1974,1975,1976,1977,1978,1979 BY DIGITAL EQUIPMENT CORPORATION
;THE PURPOSE OF THIS ROUTINE IS DEFINE SYMBOLS USED BY BOTH
;COBOL AND FORDML.
;THERE IS AN ANALOGOUS MODULE CALLED FMLSYM
;WHICH SETS $COB==0.
;THIS COPY (CMLSYM) SETS IT TO 1.
;EDITS
;V10*****************
;NAME DATE COMMENTS
;SSC MAR-5-75 PLACED 6A EDIT %316 DIRECTLY IN V10
; NOTE THIS IS A NEW MODULE
;********************
$COB==1
; EXTERNAL STUFF
EXTERN ZERO,ONE,TWO,THREE,FOUR,FIVE,SIX
EXTERN LEXTAB,SYMTAB
EXTERN NONBL,ANY,BETWEEN
EXTERN LIN1BP,L1.LEN,LINNBP,LN.LEN,L1.NUM,LN.NUM
EXTERN EOSBIT,EOFBIT,EOL,NOTEOL,MASKS
EXTERN ERRCNT,WARNCNT
EXTERN TYPVEC,TOKVEC,TOKORI,TOKOM1,TOKCNT
EXTERN RELCHAN,INCHAN,VOKCHAN
EXTERN RELHDR,INHDR,VOKHDR
EXTERN RELOPN,VOKOPN,RELENT,VOKENT
EXTERN SCH.PT,SS.PT,KEY.PT
EXTERN OBJPTR,VOKPTR,CURN2,ARGWRI,WRIFILL
EXTERN ERRPTR,SIZONL,SIZTXT ;ONLY FOUND WHEN COBOL
EXTERN INVSEE,ACCSEE ;INVOKE/ACCESS
SUBTTL STUFF THAT IS COBOL USED
;FOR COBOL -- CHANNELS IN P.UNV
; OFFSETS FOR CHANNEL BLOCK
OUTINST==1
BUFPTR==2
HDR==4
RING==7
LOUTMAX==^D63 ;CHARS IN STATEMENT FIELD
SUBTTL VARIOUS MACRO DEFINITIONS
DEFINE ISTOKEN(TOKEN)<
TOK.=0
IRP TOKEN,<TOK.=TOK.+1>
HLRZ R0,TOKORI(TOKCUR)
MOVEI R1,TOK.
IFG TOK.-1,<
CAME R0,[IRP TOKEN,<TOKEN>]-1(R1)
SOJG R1,.-1
>
IFE TOK.-1,<
CAIE R0,TOKEN
MOVEI R1,0
>
>
DEFINE IGNORE(TOKEN)<
HLRZ R0,TOKORI(TOKCUR)
CAIN R0,TOKEN
ADDI TOKCUR,1
>
DEFINE REQUIRED(TOKEN,ACTION)<
IFDIF <TOKEN><EOS>,<
HLRZ R0,TOKORI(TOKCUR)
CAIE R0,$'TOKEN
SYNERX <"TOKEN">,ACTION
ADDI TOKCUR,1
>
IFIDN <TOKEN><EOS>,<
CAME TOKCUR,TOKCNT ;;LAST TOKEN ALWAYS EOS
SYNERX <"EOS">,ACTION
>
>
DEFINE ERROR(ERRIDX,REENT,ARGLST)<
IFNB <ARGLST>,<JRST [FUNCT TYPOUT,<ERRIDX,ARGLST>>
IFB <ARGLST>,<JRST [FUNCT TYPOUT,<ERRIDX>>
IFNB <REENT>,<JRST REENT>
IFB <REENT>,<JRST .+1>
]
>
DEFINE WARNING(ERRIDX,REENT,ARGLST)< ;;JUST FOR DOC
IFNB <ARGLST>,<JRST [FUNCT TYPOUT,<ERRIDX,ARGLST>>
IFB <ARGLST>,<JRST [FUNCT TYPOUT,<ERRIDX>>
IFNB <REENT>,<JRST REENT>
IFB <REENT>,<JRST .+1>
]
>
DEFINE SYNERX(TEXT,ACTION)<
JRST [MOVEI TEXTPT,[ASCIZ/TEXT/]
IFNB <ACTION>,<
SETOM SUBERR
>
JRST TYPERX]
>
DEFINE SYNERP(TEXT,ACTION)<
JRST [MOVEI TEXTPT,[ASCIZ/TEXT/]
IFNB <ACTION>,<
SETOM SUBERR
>
JRST TYPERP]
>
DEFINE OTSERR(ARG,ACTION)<
JUMPE R0,[FILERR (<ARG>,ACTION)]
>
DEFINE ADJUST(REGIS)<
SUBI REGIS,1
LSH REGIS,1 ;;IN OTHER WORDS--DP ARRAY
>
DEFINE DOFIND (SURCH)<
MOVEM TOKCUR,TC
MOVEM TOKCUR,TC.P1
AOS TC.P1
FUNCT FNDSTR,<TYPVEC,PAMWI,TC,TC.P1,SURCH>
>
END