Trailing-Edge
-
PDP-10 Archives
-
decuslib20-02
-
decus/20-0057/initlb.sno
There are 2 other files named initlb.sno in the archive. Click here to see a list.
* * * * * * * * *
* * DECLARATIONS * * * * *
* * * * * * * * *
*
* LOCAL
*
DECLARE('SNOBOL.SUBPROGRAM','INITLB')
DECLARE('OPTION','NO.STNO')
DECLARE('PURGE.VARIABLE',ALL)
DECLARE('PURGE.LABEL',ALL)
DECLARE('EXTERNAL.FUNCTION','NEWNAM,
.PRTOUT,ERRMSG')
DECLARE('INTEGER','I,J,K')
DECLARE('ENTRY.FUNCTION','INITLB()')
*
* SYSTEM COMMON
*
* TABLES AND LISTS
DECLARE('EXTERNAL.VARIABLE',
.'SYMBTB,XNAMTB,KEYWTB,CTRLTB,DECLTB,CROSTB,CONSTB,ENTFTB,DSIZTB,
.BOPRTB,UOPRTB')
DECLARE('EXTERNAL.VARIABLE',
.'ENTRLS,EXTRLS,FORTLS')
* ARRAYS
DECLARE('EXTERNAL.VARIABLE',
.'PTVRAR,PTFNAR,PRIMAR,GOTOAR,DECLAR,PROGAR,VARBAR,MACHAR,STENAR,BOPRAR,
.UOPRAR,PATRAR,EXPRAR,AROPAR,ARITAR,EACTAR')
* PARAMETERS (STRINGS,DATATYPES)
DECLARE('EXTERNAL.VARIABLE',
.'C,INDENT,SPLASH,ITNAM,ITENT,NOFAIL,SNONAM,SUBNAM,PARBLK,PRGNAM,STARTP,
.TEMLOC,P1,P2,P3,P4,P5')
* PARAMETERS (INTEGERS)
DECLARE('EXTERNAL.VARIABLE',
.'P,OBJFLG,LISTSR,INTGER,ITTYP,ITATR,PRGALV,PRGALL,PRGALF,STNFLG,HSHSIZ,
.STRTIM,DMPFLG,LISTOB,STNO,MAXTMP')
DECLARE('INTEGER',
.'P,OBJFLG,LISTSR,INTGER,ITTYP,ITATR,PRGALV,PRGALL,PRGALF,STNFLG,HSHSIZ,
.STRTIM,DMPFLG,LISTOB,STNO,MAXTMP')
DECLARE('EXTERNAL.VARIABLE',
.'XNATRB,VTATRB,VDATRB,LTATRB,FTATRB,FDATRB,TXATRB,VNATRB,VXATRB,VIATRB,
.VGATRB,LIATRB,LGATRB,FIATRB,FGATRB,FXATRB,SKATRB,SDATRB,BTATRB')
DECLARE('INTEGER',
.'XNATRB,VTATRB,VDATRB,LTATRB,FTATRB,FDATRB,TXATRB,VNATRB,VXATRB,VIATRB,
.VGATRB,LIATRB,LGATRB,FIATRB,FGATRB,FXATRB,SKATRB,SDATRB,BTATRB')
DECLARE('EXTERNAL.VARIABLE',
.'XNVATR,XNLATR,XNFATR,XNXMSK,VTVATR,VDDATR,VDPATR,VDDMSK,LTDATR,LTTMSK,
.FTFATR,FDPATR,FDIATR,FDDMSK,TXTATR,TXTMSK,VNNATR,VXXATR,VIPATR,VGGATR,
.LIPATR,LGGATR,FIPATR,FGGATR,FXXATR,FXXMSK,SKRATR,SDRATR,BTRATR')
DECLARE('INTEGER',
.'XNVATR,XNLATR,XNFATR,XNXMSK,VTVATR,VDDATR,VDPATR,VDDMSK,LTDATR,LTTMSK,
.FTFATR,FDPATR,FDIATR,FDDMSK,TXTATR,TXTMSK,VNNATR,VXXATR,VIPATR,VGGATR,
.LIPATR,LGGATR,FIPATR,FGGATR,FXXATR,FXXMSK,SKRATR,SDRATR,BTRATR')
* SPECIAL CHARACTERS,CHARACTER SEQUENCES, AND CHARACTER CLASSES
DECLARE('EXTERNAL.VARIABLE',
.'FFCHR,CRLCHR,LFCHR,CRCHR,SQCHR,DQCHR,TBCHR,LCSCHR,BLNCHR,EQLCHR,
.QTSCHR,ELTCHR,LBCHR')
* PATTERNS AND MATCHES
DECLARE('EXTERNAL.VARIABLE',
.'COMSPT,INTGPT,BLNKPT,OPBLPT,PCOMPT,PCPRMT,IDENPT,DCLCMT,RSIDPT,LABLPT,
.POPRMT,IDENMT,SQLTPT,DQLTPT,LBDCPT,IDDCPT')
*
* MINIMAL SYMBOL TABLE
*
DECLARE('UNPURGE.VARIABLE','INITLB')
DECLARE('UNPURGE.LABEL','INITLB')
DECLARE('PURGE.FUNCTION','DATA,SUBSTR,DUPL,TABLE,DEFINE,ARRAY,
.COPY,TIME,IDENT,OPEN,DIFFER,ENTER,OUTPUT,LOOKUP,INPUT,DATE,
.DAYTIM,RELEASE,SIZE,LGT')
* * * * * * * * *
* * INITIALIZE SYSTEM COMMON * * *
* * * * * * * * *
*
* LOCAL INITIALIZATION
INITLB DATA('SYM(INAM,ATRB)')
DATA('NOD(FRNT,BACK)')
* CODE ARRAYS
* GOTO CODE
GOTOAR = ARRAY('5')
GOTOAR<1> = 'S$$NFE##'
GOTOAR<2> = TBCHR 'MOVEI 14,S$$BGT##' CRLCHR
. TBCHR 'MOVEM 14,S$$FLP##'
GOTOAR<3> = TBCHR 'JSP 14,S$$ILB##'
GOTOAR<4> = NOD(.P1,':')
GOTOAR<5> = NOD(TBCHR 'JRST' TBCHR,.P1)
* DECLARATION CODE
DECLAR = ARRAY('4')
DECLAR<1> = NOD(NOD('TITLE ',.P1),CRLCHR
. TBCHR 'OPDEF' TBCHR 'UFERR$' TBCHR '[1B8]' CRLCHR
. TBCHR 'OPDEF' TBCHR 'CFERR$' TBCHR '[2B8]' CRLCHR
. TBCHR 'OPDEF' TBCHR 'FCALV$' TBCHR '[3B8]' CRLCHR
. TBCHR 'OPDEF' TBCHR 'FCALN$' TBCHR '[4B8]' CRLCHR
. TBCHR 'OPDEF' TBCHR 'DASGN$' TBCHR '[5B8]' CRLCHR
. TBCHR 'OPDEF' TBCHR 'DCONC$' TBCHR '[6B8]' CRLCHR
. TBCHR 'OPDEF' TBCHR 'DICNV$' TBCHR '[7B8]' CRLCHR
. TBCHR 'OPDEF' TBCHR 'DRCNV$' TBCHR '[10B8]' CRLCHR
. TBCHR 'OPDEF' TBCHR 'AREFV$' TBCHR '[11B8]' CRLCHR
. TBCHR 'OPDEF' TBCHR 'AREFN$' TBCHR '[12B8]')
DECLAR<2> = NOD('ENTRY ',.P1)
DECLAR<3> = NOD(',',.P1)
DECLAR<4> = NOD('EXTERN ',.P1)
* GENERAL PROGRAM CODE
PROGAR = ARRAY('7')
PROGAR<1> = NOD(NOD(NOD(.P1,':' TBCHR 'JSP' TBCHR
. '14,S$$ILZ##' CRLCHR
. TBCHR 'XWD' TBCHR '^D'),NOD(.P2,',')),NOD(NOD(.P3,CRLCHR
. TBCHR 'JRST' TBCHR),.P4))
PROGAR<2> = TBCHR 'JRST' TBCHR 'S$$SXT##'
PROGAR<3> = NOD(.P1,'=')
PROGAR<4> = NOD(PROGAR<3>,NOD(.P2,'+3'))
PROGAR<5> = NOD(PROGAR<3>,.P2)
PROGAR<6> = GOTOAR<4>
PROGAR<7> = TBCHR 'JSP' TBCHR '14,S$$CPE##'
* VARIABLE CODE
VARBAR = ARRAY('12')
VARBAR<1> = NOD('S$$KWD##+^D',.P1)
VARBAR<2> = NOD(TBCHR 'MOVEM' TBCHR '1,',.P1)
VARBAR<3> = NOD(TBCHR 'SETZM' TBCHR,.P1)
VARBAR<4> = NOD(NOD(TBCHR 'DCONC$' TBCHR '^D',.P1)
. ,NOD(',',.P2))
VARBAR<5> = NOD(NOD(TBCHR 'DASGN$' TBCHR,.P1)
. ,NOD(',',.P2))
VARBAR<6> = NOD(TBCHR 'SETZM' TBCHR '@',.P1)
VARBAR<7> = NOD(TBCHR 'MOVEM' TBCHR '1,@',.P1)
VARBAR<8> = TBCHR 'SETZM' TBCHR '(1)'
VARBAR<9> = TBCHR 'PUSH' TBCHR '16,1'
VARBAR<10> = TBCHR 'JSP' TBCHR '11,S$$ASG##'
VARBAR<11> = NOD(TBCHR 'MOVE' TBCHR '1,',.P1)
VARBAR<12> = NOD(TBCHR 'MOVEI' TBCHR '1,S$$KWD##+^D'
. ,NOD(.P1,CRLCHR
. TBCHR 'HRLI' TBCHR '1,22B23'))
* MATCH CODE
MACHAR = ARRAY('9')
MACHAR<1> = VARBAR<9>
MACHAR<2> = NOD(TBCHR 'JSP' TBCHR '14,S$$MTX##'
. CRLCHR TBCHR 'XWD' TBCHR '^D',NOD(.P1,',0'))
MACHAR<3> = TBCHR 'BYTE' TBCHR '(2)2(16)1(18).+1'
MACHAR<4> = TBCHR 'JSP' TBCHR '11,S$$MTS##'
MACHAR<5> = NOD(TBCHR 'MOVE' TBCHR '1,@',.P1)
MACHAR<6> = TBCHR 'JSP' TBCHR '14,S$$IVV##'
MACHAR<7> = TBCHR 'JSP' TBCHR '11,S$$RPS##'
MACHAR<8> = TBCHR 'JSP' TBCHR '14,S$$RPL##'
MACHAR<9> = TBCHR 'SETZ' TBCHR '1,'
* STATEMENT ENTRY CODE
STENAR = ARRAY('-1:1')
STENAR<-1> = NOD(TBCHR 'MOVEI' TBCHR '14,',NOD(.P1,CRLCHR
. TBCHR 'MOVEM' TBCHR '14,S$$FLP##'))
STENAR<0> = NOD(NOD(TBCHR 'JSP' TBCHR '14,S$$STE##' CRLCHR
. TBCHR 'XWD' TBCHR '^D',.P2),DECLAR<3>)
STENAR<1> = NOD(NOD(TBCHR 'JSP' TBCHR '14,S$$STT##' CRLCHR
. TBCHR 'XWD' TBCHR '^D',.P2),DECLAR<3>)
* PATTERN CODE
PATRAR = ARRAY('34')
PATRAR<1> = NOD(NOD(TBCHR 'JSP' TBCHR '14,S$$GPB##' CRLCHR
. TBCHR 'XWD' TBCHR '^D',.P1),NOD(',',.P2))
PATRAR<2> = MACHAR<3>
PATRAR<3> = NOD(TBCHR 'JRST' TBCHR 'S$$PTS##' CRLCHR
. ,GOTOAR<4>)
PATRAR<4> = NOD(TBCHR 'JSP' TBCHR '11,S$$APS##' CRLCHR
. TBCHR 'XWD' TBCHR '.-.,',.P1)
PATRAR<5> = NOD(NOD(GOTOAR<5>,CRLCHR),NOD(.P2,':'))
PATRAR<6> = NOD(TBCHR 'JSP' TBCHR '11,S$$APR##' CRLCHR
. TBCHR 'XWD' TBCHR '.-.,',.P1)
PATRAR<7> = TBCHR 'JSP' TBCHR '11,S$$APF##'
PATRAR<8> = GOTOAR<4>
PATRAR<9> = TBCHR 'JSP' TBCHR '11,S$$VAS##'
PATRAR<10> = TBCHR 'JSP' TBCHR '11,S$$CVA##'
PATRAR<11> = TBCHR 'JSP' TBCHR '11,S$$IVA##'
PATRAR<12> = NOD(TBCHR 'HRRZ' TBCHR '1,@S$$SJC##' CRLCHR
. TBCHR 'SUBI' TBCHR '1,(13)' CRLCHR
. TBCHR 'MOVEM' TBCHR '1,',.P1)
PATRAR<14> = TBCHR 'JSP' TBCHR '11,S$$ASC##'
PATRAR<15> = NOD(VARBAR<11>,CRLCHR
. TBCHR 'JSP' TBCHR '11,S$$MST##')
PATRAR<16> = TBCHR 'JSP' TBCHR '11,S$$CKP##' CRLCHR
. TBCHR 'JSP' TBCHR '11,S$$PTX##'
PATRAR<17> = TBCHR 'JSP' TBCHR '11,S$$MKP##' CRLCHR
. VARBAR<9>
PATRAR<18> = VARBAR<9>
PATRAR<19> = NOD(NOD(TBCHR 'MOVE' TBCHR '1,^D',.P1)
. ,'(15)' CRLCHR)
PATRAR<20> = NOD(PATRAR<19>,TBCHR 'JSP' TBCHR '11,S$$PTX##')
PATRAR<21> = NOD(TBCHR 'HRRZ' TBCHR '1,',.P1)
PATRAR<22> = TBCHR 'JSP' TBCHR '11,S$$MIP##' CRLCHR
. VARBAR<9>
PATRAR<23> = NOD(TBCHR 'HRRZ' TBCHR '1,^D',NOD(.P1,'(15)' CRLCHR))
PATRAR<24> = TBCHR 'JSP' TBCHR '11,S$$MID##' CRLCHR
. VARBAR<9>
PATRAR<25> = TBCHR 'JUMPL' TBCHR '1,S$$MIE##'
PATRAR<26> = TBCHR 'DICNV$' TBCHR '0'
PATRAR<27> = NOD(TBCHR 'MOVEI' TBCHR '1,',.P1)
PATRAR<28> = TBCHR 'JSP' TBCHR '11,S$$MBT##' CRLCHR
. TBCHR 'EXP' TBCHR '.'
PATRAR<29> = PATRAR<28> CRLCHR VARBAR<9>
PATRAR<30> = NOD(FRNT(PATRAR<19>),'(15)')
PATRAR<31> = TBCHR 'JSP' TBCHR '11,S$$UEB##'
PATRAR<32> = TBCHR 'JSP' TBCHR '11,S$$UES##'
PATRAR<33> = TBCHR 'JSP' TBCHR '11,S$$UFB##'
PATRAR<34> = TBCHR 'JSP' TBCHR '11,S$$UFS##'
* PRIMITIVE PATTERN VARIABLE CODE
PTVRAR = ARRAY('7')
PTVRAR<1> = TBCHR 'POPJ' TBCHR '16,'
PTVRAR<2> = TBCHR 'PUSHJ' TBCHR '16,.+2' CRLCHR
. TBCHR 'JRST' TBCHR 'S$$MTA##'
PTVRAR<3> = TBCHR 'JRST' TBCHR 'S$$MTA##'
PTVRAR<4> = TBCHR 'PUSHJ' TBCHR '16,S$$ARB##'
PTVRAR<5> = TBCHR 'PUSHJ' TBCHR '16,S$$BAL##'
PTVRAR<6> = TBCHR 'PUSHJ' TBCHR '16,S$$SUC##'
PTVRAR<7> = TBCHR 'JSP' TBCHR '11,S$$REM##'
* PRIMITIVE PATTERN FUNCTION CODE
PTFNAR = ARRAY('13')
PTFNAR<1> = TBCHR 'JSP' TBCHR '11,S$$LEN##'
PTFNAR<2> = TBCHR 'JSP' TBCHR '11,S$$TAB##'
PTFNAR<3> = TBCHR 'JSP' TBCHR '11,S$$RTB##'
PTFNAR<4> = TBCHR 'HRRZ' TBCHR '2,@S$$SJC##' CRLCHR
. TBCHR 'SUBI' TBCHR '2,(1)' CRLCHR
. TBCHR 'CAIE' TBCHR '2,(13)' CRLCHR TBCHR 'POPJ' TBCHR '16,'
PTFNAR<5> = TBCHR 'CAIE' TBCHR '1,(13)' CRLCHR
. TBCHR 'POPJ' TBCHR '16,'
PTFNAR<6> = TBCHR 'JSP' TBCHR '11,S$$SPN##'
PTFNAR<7> = TBCHR 'JSP' TBCHR '11,S$$BRK##'
PTFNAR<8> = TBCHR 'JSP' TBCHR '11,S$$ANY##'
PTFNAR<9> = TBCHR 'JSP' TBCHR '11,S$$NTA##'
PTFNAR<10> = TBCHR 'JSP' TBCHR '11,S$$NSP##'
PTFNAR<11> = TBCHR 'JSP' TBCHR '11,S$$BRX##'
PTFNAR<12> = TBCHR 'JSP' TBCHR '11,S$$BRQ##'
PTFNAR<13> = NOD(NOD(NOD(TBCHR 'MOVEI' TBCHR '1,',.P1),CRLCHR
. TBCHR 'JSP' TBCHR '11,S$$RBS##')
. ,NOD(TBCHR 'JSP' TBCHR '11,S$$RBR##' CRLCHR,GOTOAR<4>))
* EXPRESSION CODE
EXPRAR = ARRAY('24')
EXPRAR<1> = VARBAR<9>
EXPRAR<2> = NOD(TBCHR 'JSP' TBCHR '14,S$$CNC##' CRLCHR
. TBCHR 'EXP' TBCHR '^D',.P1)
EXPRAR<3> = TBCHR 'TLO' TBCHR '1,1B18' CRLCHR
. TBCHR 'TLZ' TBCHR '1,1B19'
EXPRAR<4> = TBCHR 'LSH' TBCHR '1,-2' CRLCHR
. TBCHR 'TLO' TBCHR '1,3B19'
EXPRAR<5> = TBCHR 'JSP' TBCHR '14,S$$EXP##'
EXPRAR<6> = TBCHR 'POP' TBCHR '16,1'
EXPRAR<7> = TBCHR 'JSP' TBCHR '14,S$$MUL##'
EXPRAR<8> = TBCHR 'JSP' TBCHR '14,S$$DIV##'
EXPRAR<9> = TBCHR 'JSP' TBCHR '14,S$$ADD##'
EXPRAR<10> = TBCHR 'JSP' TBCHR '14,S$$SUB##'
EXPRAR<11> = VARBAR<11>
EXPRAR<12> = MACHAR<5>
EXPRAR<13> = MACHAR<9>
EXPRAR<14> = TBCHR 'JSP' TBCHR '7,S$$CPS##'
EXPRAR<15> = NOD(TBCHR 'JSP' TBCHR '14,S$$NGS##' CRLCHR
. TBCHR 'EXP' TBCHR,.P1)
EXPRAR<16> = TBCHR 'JSP' TBCHR '14,S$$NEG##'
EXPRAR<17> = NOD(TBCHR 'JRST' TBCHR 'S$$NGF##' CRLCHR,GOTOAR<4>)
EXPRAR<18> = TBCHR 'JSP' TBCHR '14,S$$IVV##'
EXPRAR<19> = TBCHR 'JSP' TBCHR '14,S$$IVN##'
EXPRAR<20> = NOD(.P1,NOD(',',.P2))
EXPRAR<21> = NOD(TBCHR 'AREFV$' TBCHR '^D',EXPRAR<20>)
EXPRAR<22> = NOD(TBCHR 'FCALV$' TBCHR '^D',EXPRAR<20>)
EXPRAR<23> = NOD(TBCHR 'AREFN$' TBCHR '^D',EXPRAR<20>)
EXPRAR<24> = NOD(TBCHR 'FCALN$' TBCHR '^D',EXPRAR<20>)
* ARITHMETIC OPERATOR CODE
AROPAR = ARRAY('32:35,0:1')
AROPAR<32,0> = TBCHR 'IMUL' TBCHR '^D'
AROPAR<32,1> = TBCHR 'FMP' TBCHR '^D'
AROPAR<33,0> = TBCHR 'IDIV' TBCHR '^D'
AROPAR<33,1> = TBCHR 'FDV' TBCHR '^D'
AROPAR<34,0> = TBCHR 'ADD' TBCHR '^D'
AROPAR<34,1> = TBCHR 'FAD' TBCHR '^D'
AROPAR<35,0> = TBCHR 'SUB' TBCHR '^D'
AROPAR<35,1> = TBCHR 'FSB' TBCHR '^D'
* ARITHMETIC CODE
ARITAR = ARRAY('28')
ARITAR<1> = TBCHR 'DICNV$' TBCHR '0'
ARITAR<2> = TBCHR 'DRCNV$' TBCHR '0'
ARITAR<3> = TBCHR 'PUSH' TBCHR '17,1'
ARITAR<4> = TBCHR 'POP' TBCHR '17,1'
ARITAR<5> = TBCHR 'POP' TBCHR '17,0'
ARITAR<6> = NOD(.P1,'1,0')
ARITAR<7> = NOD(.P1,'0,1' CRLCHR
. TBCHR 'MOVE' TBCHR '1,0')
ARITAR<8> = ARITAR<6>
ARITAR<9> = ARITAR<7>
ARITAR<10> = TBCHR 'JSP' TBCHR '3,S$$RTI##'
ARITAR<11> = TBCHR 'JSP' TBCHR '3,S$$ITR##'
ARITAR<12> = NOD('^D',.P1)
ARITAR<13> = EXPRAR<20>
ARITAR<14> = TBCHR 'MOVE' TBCHR '^D'
ARITAR<15> = TBCHR 'MOVN' TBCHR '^D'
ARITAR<16> = NOD(.P1,.P2)
ARITAR<17> = NOD(NOD(TBCHR 'MOVN' TBCHR '^D',.P1)
. ,NOD(',^D',.P1))
ARITAR<18> = TBCHR 'PUSHJ' TBCHR '17,EXP1.0##'
ARITAR<19> = TBCHR 'PUSHJ' TBCHR '17,EXP2.0##'
ARITAR<20> = TBCHR 'PUSHJ' TBCHR '17,EXP3.0##'
ARITAR<21> = NOD(TBCHR 'DICNV$' TBCHR '@',.P1)
ARITAR<22> = NOD(TBCHR 'DRCNV$' TBCHR '@',.P1)
ARITAR<23> = NOD(TBCHR 'SUB' TBCHR '16,S$$STB##' CRLCHR
. TBCHR 'MOVEM' TBCHR '16,S$$STS##' CRLCHR
. TBCHR 'JSA' TBCHR '16,',.P1)
ARITAR<24> = NOD(TBCHR 'JUMP' TBCHR,EXPRAR<20>)
ARITAR<25> = NOD(.P1,NOD('+^D',.P2))
ARITAR<26> = TBCHR 'ADD' TBCHR '16,S$$STB##'
ARITAR<27> = TBCHR 'MOVE' TBCHR '1,0'
ARITAR<28> = NOD(NOD(NOD(NOD(NOD(
. TBCHR 'IDIVI' TBCHR '^D',.P1),NOD(',400' CRLCHR
. TBCHR 'SKIPE' TBCHR '^D',.P1)),NOD(CRLCHR
. TBCHR 'TLC' TBCHR '^D',.P1)),NOD(NOD(',243000' CRLCHR
. TBCHR 'TLC' TBCHR '^D',.P1),NOD('+1,233000' CRLCHR
. TBCHR 'FAD' TBCHR '^D',.P1))),NOD(NOD(',^D',.P1),'+1'))
* ARITAR<29> = NOD('^D',NOD(.P1,'(1000)'))
* END-ACTION CODE
EACTAR = ARRAY('32')
EACTAR<1> = NOD(.P1,NOD(':' TBCHR 'BLOCK' TBCHR '^D',.P2))
EACTAR<2> = NOD(NOD('K',.P1),NOD(':' TBCHR 'EXP' TBCHR '^D',.P2))
EACTAR<3> = NOD(NOD('C',.P1),NOD(':' TBCHR 'EXP' TBCHR,.P2))
EACTAR<4> = NOD(NOD('I',.P1),NOD(NOD(':' TBCHR 'EXP' TBCHR '^D',.P2),'!1B0'))
EACTAR<5> = NOD(NOD('R',.P1),NOD(NOD(':' TBCHR 'EXP' TBCHR,.P2),'B37!3B1'))
EACTAR<6> = NOD(NOD('B',.P1),NOD(':' TBCHR 'EXP' TBCHR '^D',.P2))
EACTAR<7> = NOD(NOD(TBCHR 'XWD' TBCHR '^D',.P1),NOD(',^D',.P2))
EACTAR<8> = NOD(NOD(.P1,':' TBCHR 'BYTE' TBCHR '(4)4(14)0(18)'),NOD(
.NOD(.P2,'+^D'),.P3))
EACTAR<9> = NOD(.P1,':' TBCHR 'EXP' TBCHR '0')
EACTAR<10> = NOD(NOD(.P1,':' TBCHR 'POINT' TBCHR '7,.+1,35' CRLCHR
. TBCHR 'BYTE' TBCHR '(2)0(16)^D'),NOD(NOD(.P2,'+1(18)0' CRLCHR
. TBCHR 'BLOCK' TBCHR '^D'),.P2))
EACTAR<11> = NOD(NOD('N',.P1),NOD(NOD(':' TBCHR 'BYTE' TBCHR
. '(4)4(2)',.P2),NOD('(12)0(18)',.P3)))
EACTAR<12> = TBCHR 'UFERR$' TBCHR '^D8,S$$PGL##'
EACTAR<13> = NOD(TBCHR 'JRST' TBCHR,.P1)
EACTAR<14> = NOD(NOD('F',.P1),':' TBCHR 'BYTE' TBCHR
. '(4)4(4)0(5)20(5)0(18)S$$UDF##')
EACTAR<15> = NOD(NOD(.P1,':' TBCHR 'BYTE' TBCHR
. '(4)4(4)0(5)^D'),NOD(
.NOD(.P2,'(5)0(18)E'),.P3))
EACTAR<16> = NOD(NOD(NOD('F',.P1),':' TBCHR 'BYTE' TBCHR
. '(4)4(4)0(5)^D'),
.NOD(NOD(.P2,'(5)0(18)P$$'),NOD(.P3,'##')))
EACTAR<17> = NOD(NOD('S',.P1),NOD(':' TBCHR 'POINT'
. TBCHR '7,A',NOD(.P1,',35')))
EACTAR<18> = NOD(NOD('A',.P1),NOD(NOD(':' TBCHR
. 'BYTE' TBCHR '(2)2(16)^D',.P2),NOD('+1(18)^D',.P3)))
EACTAR<19> = NOD(NOD(TBCHR 'ASCII' TBCHR,.P1),NOD(.P2,.P1))
EACTAR<20> = NOD(NOD(.P1,':' TBCHR 'BYTE' TBCHR
. '(2)2(16)^D'),NOD(NOD(.P2,'+1(18)0' CRLCHR
. TBCHR 'REPEAT' TBCHR '^D'),NOD(.P2,',<0>')))
EACTAR<21> = NOD(NOD(NOD(NOD(TBCHR 'POINT' TBCHR '7,A',.P1),NOD(',35' CRLCHR
. ,.P2)),NOD(':' TBCHR 'XWD' TBCHR '0,',.P3)),NOD(NOD(NOD(CRLCHR
. TBCHR 'XWD' TBCHR,.P4),NOD(',^D',.P5)),NOD(CRLCHR
. TBCHR 'EXP' TBCHR,.P4)))
EACTAR<22> = NOD(NOD(TBCHR 'POINT' TBCHR '7,A',.P1),',35')
EACTAR<23> = NOD(NOD(NOD(
. TBCHR 'XWD' TBCHR '^D',.P1),NOD(',',.P2)),NOD(NOD(NOD(CRLCHR
. 'E',.P3),':' TBCHR 'JSP' TBCHR '13,S$$EFI##' CRLCHR
. TBCHR 'POINT' TBCHR '7,A'),NOD(NOD(.P4,',35' CRLCHR
. TBCHR 'EXP' TBCHR),.P5)))
EACTAR<24> = NOD(NOD(NOD(.P1,':' TBCHR 'BLOCK' TBCHR '1' CRLCHR
. TBCHR 'JSP' TBCHR '1,S$$FFI##' CRLCHR
. TBCHR 'XWD' TBCHR '^D'),NOD(.P2,',')),NOD(NOD(NOD(.P3,CRLCHR
. TBCHR 'POINT' TBCHR '7,A'),.P4),NOD(',35' CRLCHR
. TBCHR 'EXP' TBCHR,.P5)))
EACTAR<25> = NOD(NOD(.P1,':' TBCHR 'BYTE' TBCHR
. '(2)2(16)^D'),NOD(NOD(.P2,'*4+1(18)-^D'),.P2))
EACTAR<26> = NOD('S',NOD(.P1,':'))
EACTAR<27> = NOD(NOD(NOD(TBCHR 'EXP' TBCHR '0' CRLCHR
. TBCHR 'BYTE' TBCHR '(5)',.P1),NOD('(31)0' CRLCHR
. ,.P2)),NOD(NOD(TBCHR 'POINT' TBCHR '7,A',.P3),NOD(',35' CRLCHR
. ,.P4)))
EACTAR<28> = TBCHR 'END'
EACTAR<29> = NOD(TBCHR 'END' TBCHR,.P1)
EACTAR<30> = 'EXTERN S$$DMP'
EACTAR<31> = NOD(NOD(.P1,':' TBCHR),.P2)
EACTAR<32> = NOD(NOD(NOD(NOD(TBCHR 'BYTE' TBCHR
. '(7)^D',.P1),NOD(',^D',.P2)),NOD(',^D',.P3)),NOD(NOD(',^D',.P4),NOD(',^D',.P5)))
* PREDEFINED PRIMITIVE CODE
PRIMAR = ARRAY('45')
PRIMAR<1> = '16APL'
PRIMAR<2> = '16ITM'
PRIMAR<3> = '0DTE'
PRIMAR<4> = '0TIM'
PRIMAR<5> = '0DTM'
PRIMAR<6> = '0EJC'
PRIMAR<7> = '1INT'
PRIMAR<8> = '1RAL'
PRIMAR<9> = '1SIZ'
PRIMAR<10> = '1TRM'
PRIMAR<11> = '1DTY'
PRIMAR<12> = '1CPY'
PRIMAR<13> = '1PRO'
PRIMAR<14> = '1COL'
PRIMAR<15> = '1XTM'
PRIMAR<16> = '1RVS'
PRIMAR<17> = '1DTC'
PRIMAR<18> = '1RLS'
PRIMAR<19> = '1DAT'
PRIMAR<20> = '2LGT'
PRIMAR<21> = '2CNV'
PRIMAR<22> = '2ARR'
PRIMAR<23> = '2TBL'
PRIMAR<24> = '2DUP'
PRIMAR<25> = '2DEF'
PRIMAR<26> = '2OPS'
PRIMAR<27> = '2OPN'
PRIMAR<28> = '2LKF'
PRIMAR<29> = '2NTF'
PRIMAR<30> = '2DIF'
PRIMAR<31> = '2IDT'
PRIMAR<32> = '2LTP'
PRIMAR<33> = '2LEP'
PRIMAR<34> = '2EQP'
PRIMAR<35> = '2NEP'
PRIMAR<36> = '2GEP'
PRIMAR<37> = '2GTP'
PRIMAR<38> = '3LPD'
PRIMAR<39> = '3RPD'
PRIMAR<40> = '3SBS'
PRIMAR<41> = '3INP'
PRIMAR<42> = '3OUT'
PRIMAR<43> = '3CLS'
PRIMAR<44> = '3RPL'
PRIMAR<45> = '4INS'
*
:(RETURN)
END