;* * * * * * * * * ;* * DECLARATIONS * * * * * ;* * * * * * * * * ;* ;* LOCAL ;* ; DECLARE('SNOBOL.SUBPROGRAM','EACTPH') ; DECLARE('OPTION','NO.STNO') ; DECLARE('PURGE.VARIABLE',ALL) ; DECLARE('PURGE.LABEL',ALL) ; DECLARE('EXTERNAL.FUNCTION','PUTOUT,ERRMSG,NEWLAB,SUBS,GETATR, ;.GETBKT') ; DECLARE('ENTRY.VARIABLE','BRKTB1,BRKTB2,BRKTB3,BRKTB4') ; DECLARE('INTEGER','BRKTB1,BRKTB2,BRKTB3,BRKTB4') ; DECLARE('INTEGER','I,J,K,L,M,NVAR,NSYM') ; DECLARE('ENTRY.FUNCTION','INIEAC()') ; DECLARE('ENTRY.FUNCTION','EACTPH()') ;* ;* 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','INIEAC,EACTPH,PUTLIT,STR1') ; DECLARE('UNPURGE.LABEL','INIEAC EACTPH PUTLIT') ; DECLARE('PURGE.FUNCTION','DATA,ARRAY,DIFFER,DATATYPE,SIZE, ;.SUBSTR,IDENT') ;* * * * * * * * * ;* * INITIALIZE END-ACTION PHASE * * * ;* * * * * * * * * ;INIEAC DEFINE('PUTLIT(STR1)') TITLE EACTPH OPDEF UFERR$ [1B8] OPDEF CFERR$ [2B8] OPDEF FCALV$ [3B8] OPDEF FCALN$ [4B8] OPDEF DASGN$ [5B8] OPDEF DCONC$ [6B8] OPDEF DICNV$ [7B8] OPDEF DRCNV$ [10B8] OPDEF AREFV$ [11B8] OPDEF AREFN$ [12B8] ENTRY EACTPH,INIEAC,BRKTB4,BRKTB3,BRKTB2,BRKTB1 EXTERN IDDCPT,LBDCPT,DQLTPT,SQLTPT,IDENMT,POPRMT,LABLPT,RSIDPT,DCLCMT,IDENPT EXTERN PCPRMT,PCOMPT,OPBLPT,BLNKPT,INTGPT,COMSPT,LBCHR,ELTCHR,QTSCHR,EQLCHR EXTERN BLNCHR,LCSCHR,TBCHR,DQCHR,SQCHR,CRCHR,LFCHR,CRLCHR,FFCHR,BTRATR EXTERN SDRATR,SKRATR,FXXMSK,FXXATR,FGGATR,FIPATR,LGGATR,LIPATR,VGGATR,VIPATR EXTERN VXXATR,VNNATR,TXTMSK,TXTATR,FDDMSK,FDIATR,FDPATR,FTFATR,LTTMSK,LTDATR EXTERN VDDMSK,VDPATR,VDDATR,VTVATR,XNXMSK,XNFATR,XNLATR,XNVATR,BTATRB,SDATRB EXTERN SKATRB,FXATRB,FGATRB,FIATRB,LGATRB,LIATRB,VGATRB,VIATRB,VXATRB,VNATRB EXTERN TXATRB,FDATRB,FTATRB,LTATRB,VDATRB,VTATRB,XNATRB,MAXTMP,STNO,LISTOB EXTERN DMPFLG,STRTIM,HSHSIZ,STNFLG,PRGALF,PRGALL,PRGALV,ITATR,ITTYP,INTGER EXTERN LISTSR,OBJFLG,P,P5,P4,P3,P2,P1,TEMLOC,STARTP EXTERN PRGNAM,PARBLK,SUBNAM,SNONAM,NOFAIL,ITENT,ITNAM,SPLASH,INDENT,C EXTERN EACTAR,ARITAR,AROPAR,EXPRAR,PATRAR,UOPRAR,BOPRAR,STENAR,MACHAR,VARBAR EXTERN PROGAR,DECLAR,GOTOAR,PRIMAR,PTFNAR,PTVRAR,FORTLS,EXTRLS,ENTRLS,UOPRTB EXTERN BOPRTB,DSIZTB,ENTFTB,CONSTB,CROSTB,DECLTB,CTRLTB,KEYWTB,XNAMTB,SYMBTB EXTERN GETBKT,GETATR,SUBS,NEWLAB,ERRMSG,PUTOUT L10102: MOVEI 14,Q10002 MOVEM 14,S$$FLP## MOVE 1,S10248 FCALV$ ^D1,F10066 Q10002: ; DATA('SYM(INAM,ATRB)') MOVEI 14,Q10003 MOVEM 14,S$$FLP## MOVE 1,S10249 FCALV$ ^D1,F10060 Q10003: ; DATA('SNT(SNX,STY,SNM,SVL)') :(RETURN) MOVEI 14,S$$SRT## MOVEM 14,S$$FLP## MOVE 1,S10250 FCALV$ ^D1,F10060 JRST S$$SRT## ;* * * * * * * * * ;* * GENERATE END-ACTION STORAGE * * * ;* * * * * * * * * ;EACTPH L10104: ;* TEMP LOCATIONS ; PUTOUT(SUBS(EACTAR<1>,TEMLOC,MAXTMP)) MOVEI 14,Q10004 MOVEM 14,S$$FLP## MOVE 1,I10251 AREFV$ ^D1,EACTAR PUSH 16,1 MOVE 1,@TEMLOC PUSH 16,1 MOVE ^D1,MAXTMP TLO 1,1B18 TLZ 1,1B19 FCALV$ ^D3,SUBS FCALV$ ^D1,PUTOUT Q10004: ;* RELEASE CODE ARRAYS IN CASE STORAGE IS NEEDED ;* ; GOTOAR = MOVEI 14,Q10005 MOVEM 14,S$$FLP## SETZM @GOTOAR Q10005: ; DECLAR = MOVEI 14,Q10006 MOVEM 14,S$$FLP## SETZM @DECLAR Q10006: ; PROGAR = MOVEI 14,Q10007 MOVEM 14,S$$FLP## SETZM @PROGAR Q10007: ; VARBAR = MOVEI 14,Q10008 MOVEM 14,S$$FLP## SETZM @VARBAR Q10008: ; MACHAR = MOVEI 14,Q10009 MOVEM 14,S$$FLP## SETZM @MACHAR Q10009: ; STENAR = MOVEI 14,Q10010 MOVEM 14,S$$FLP## SETZM @STENAR Q10010: ; PATRAR = MOVEI 14,Q10011 MOVEM 14,S$$FLP## SETZM @PATRAR Q10011: ; PTVRAR = MOVEI 14,Q10012 MOVEM 14,S$$FLP## SETZM @PTVRAR Q10012: ; PTFNAR = MOVEI 14,Q10013 MOVEM 14,S$$FLP## SETZM @PTFNAR Q10013: ; EXPRAR = MOVEI 14,Q10014 MOVEM 14,S$$FLP## SETZM @EXPRAR Q10014: ; AROPAR = MOVEI 14,Q10015 MOVEM 14,S$$FLP## SETZM @AROPAR Q10015: ; ARITAR = MOVEI 14,Q10016 MOVEM 14,S$$FLP## SETZM @ARITAR Q10016: ;* CONVERT INTEGER AND REAL CONSTANTS TABLE TO ARRAY, GENERATE ;* REQUIRED CONSTANTS AND/OR DESCRIPTORS ; ?INE(OBJFLG + LISTOB,0) :F(EAC2) MOVEI 14,L10253 MOVEM 14,S$$FLP## MOVE ^D1,OBJFLG ADD ^D1,LISTOB MOVEM 1,Q10001+^D0 SUB 16,S$$STB## MOVEM 16,S$$STS## JSA 16,F$$NEP## JUMP 0,Q10001+^D0 JUMP 0,K10252 ADD 16,S$$STB## SETZ 1, ; LISTAR = ARRAY(CONSTB) :F(EAC2) MOVEI 14,L10253 MOVEM 14,S$$FLP## MOVE 1,@CONSTB FCALV$ ^D1,F10063 MOVEM 1,@N10254 ; CONSTB = ?TABLE(CONSTB) MOVEI 14,Q10017 MOVEM 14,S$$FLP## MOVE 1,@CONSTB FCALV$ ^D1,F10064 SETZ 1, MOVEM 1,@CONSTB Q10017: ; I = 1 MOVE ^D1,K10251 MOVEM 1,V10095 ;EAC1 STR1 = LISTAR :F(EAC2) L10255: MOVEI 14,L10253 MOVEM 14,S$$FLP## MOVE ^D1,V10095 TLO 1,1B18 TLZ 1,1B19 PUSH 16,1 MOVE 1,I10251 AREFV$ ^D2,N10254 MOVEM 1,@N10247 ; J = MOVEI 14,Q10018 MOVEM 14,S$$FLP## SETZM V10096 Q10018: ; J = ?DIFFER(DATATYPE(STR1),'INTEGER') 1 MOVEI 14,Q10019 MOVEM 14,S$$FLP## MOVE 1,@N10247 FCALV$ ^D1,F10052 PUSH 16,1 MOVE 1,S10048 FCALV$ ^D2,F10071 SETZ 1, MOVE ^D1,K10251 MOVEM 1,V10096 Q10019: ; STR2 = LISTAR MOVEI 14,Q10020 MOVEM 14,S$$FLP## MOVE ^D1,V10095 TLO 1,1B18 TLZ 1,1B19 PUSH 16,1 MOVE 1,I10257 AREFV$ ^D2,N10254 MOVEM 1,@N10256 Q10020: ; ITATR = ATRB(STR2) MOVEI 14,Q10021 MOVEM 14,S$$FLP## MOVE 1,@N10256 FCALV$ ^D1,F10258 DASGN$ 2,ITATR Q10021: ; STR2 = INAM(STR2) MOVEI 14,Q10022 MOVEM 14,S$$FLP## MOVE 1,@N10256 FCALV$ ^D1,F10259 MOVEM 1,@N10256 Q10022: ; (?INE(AND(ITATR,1048576),0) ?PUTOUT(SUBS(EACTAR<2 + J>,STR2, ;.STR1))) MOVEI 14,Q10023 MOVEM 14,S$$FLP## SUB 16,S$$STB## MOVEM 16,S$$STS## JSA 16,F$$AND## JUMP 0,ITATR JUMP 0,K10260 ADD 16,S$$STB## MOVE 1,0 MOVEM 1,Q10001+^D0 SUB 16,S$$STB## MOVEM 16,S$$STS## JSA 16,F$$NEP## JUMP 0,Q10001+^D0 JUMP 0,K10252 ADD 16,S$$STB## SETZ 1, MOVE ^D1,K10257 ADD ^D1,V10096 TLO 1,1B18 TLZ 1,1B19 AREFV$ ^D1,EACTAR PUSH 16,1 MOVE 1,@N10256 PUSH 16,1 MOVE 1,@N10247 FCALV$ ^D3,SUBS FCALV$ ^D1,PUTOUT SETZ 1, Q10023: ; (?INE(AND(ITATR,524288),0) ?PUTOUT(SUBS(EACTAR<4 + J>,STR2,STR1) ;.)) MOVEI 14,Q10024 MOVEM 14,S$$FLP## SUB 16,S$$STB## MOVEM 16,S$$STS## JSA 16,F$$AND## JUMP 0,ITATR JUMP 0,K10261 ADD 16,S$$STB## MOVE 1,0 MOVEM 1,Q10001+^D0 SUB 16,S$$STB## MOVEM 16,S$$STS## JSA 16,F$$NEP## JUMP 0,Q10001+^D0 JUMP 0,K10252 ADD 16,S$$STB## SETZ 1, MOVE ^D1,K10262 ADD ^D1,V10096 TLO 1,1B18 TLZ 1,1B19 AREFV$ ^D1,EACTAR PUSH 16,1 MOVE 1,@N10256 PUSH 16,1 MOVE 1,@N10247 FCALV$ ^D3,SUBS FCALV$ ^D1,PUTOUT SETZ 1, Q10024: ; I = I + 1 :(EAC1) MOVE ^D1,V10095 ADD ^D1,K10251 MOVEM 1,V10095 JRST L10255 ;EAC2 LISTAR = L10253: MOVEI 14,Q10025 MOVEM 14,S$$FLP## SETZM @N10254 Q10025: ;* CONVERT SYMBOL TABLE TO ARRAY, INITIALIZE FOR SYMBOL LOOP ; VARBLK = NEWLAB() MOVEI 14,Q10026 MOVEM 14,S$$FLP## FCALV$ ^D0,NEWLAB MOVEM 1,@N10263 Q10026: ; LISTAR = ARRAY(SYMBTB) MOVEI 14,Q10027 MOVEM 14,S$$FLP## MOVE 1,@SYMBTB FCALV$ ^D1,F10063 MOVEM 1,@N10254 Q10027: ; SYMBTB = ?TABLE(SYMBTB) MOVEI 14,Q10028 MOVEM 14,S$$FLP## MOVE 1,@SYMBTB FCALV$ ^D1,F10064 SETZ 1, MOVEM 1,@SYMBTB Q10028: ; I = 1 MOVE ^D1,K10251 MOVEM 1,V10095 ;* SYMBOL LOOP, GENERATE ALL STORAGE EXCEPT UNDEDICATED VARIABLE ;* LOCATIONS AND SYMBOL BLOCK ENTRIES ;EAC3 STR1 = LISTAR :F(EAC22) L10264: MOVEI 14,L10265 MOVEM 14,S$$FLP## MOVE ^D1,V10095 TLO 1,1B18 TLZ 1,1B19 PUSH 16,1 MOVE 1,I10251 AREFV$ ^D2,N10254 MOVEM 1,@N10247 ; STR2 = LISTAR MOVEI 14,Q10029 MOVEM 14,S$$FLP## MOVE ^D1,V10095 TLO 1,1B18 TLZ 1,1B19 PUSH 16,1 MOVE 1,I10257 AREFV$ ^D2,N10254 MOVEM 1,@N10256 Q10029: ; ITATR = ATRB(STR2) MOVEI 14,Q10030 MOVEM 14,S$$FLP## MOVE 1,@N10256 FCALV$ ^D1,F10258 DASGN$ 2,ITATR Q10030: ; STR2 = INAM(STR2) MOVEI 14,Q10031 MOVEM 14,S$$FLP## MOVE 1,@N10256 FCALV$ ^D1,F10259 MOVEM 1,@N10256 Q10031: ; ?INE(OBJFLG + LISTOB,0) :F(EAC10) MOVEI 14,L10266 MOVEM 14,S$$FLP## MOVE ^D1,OBJFLG ADD ^D1,LISTOB MOVEM 1,Q10001+^D0 SUB 16,S$$STB## MOVEM 16,S$$STS## JSA 16,F$$NEP## JUMP 0,Q10001+^D0 JUMP 0,K10252 ADD 16,S$$STB## SETZ 1, ;* STRING ATTRIBUTES ; ITTYP = 3 MOVE ^D1,K10267 MOVEM 1,ITTYP ; GETATR() MOVEI 14,Q10032 MOVEM 14,S$$FLP## FCALV$ ^D0,GETATR Q10032: ;* BREAK TABLE ATTRIBUTE ; ITTYP = 4 MOVE ^D1,K10262 MOVEM 1,ITTYP ; (?GETATR() ?INE(BTATRB,0) ?GETBKT(STR1) ?PUTOUT(SUBS(EACTAR<6>, ;.STR2,BRKTB1)) ?PUTOUT(SUBS(EACTAR<7>,RSHIFT(BRKTB2,18),AND(BRKTB2, ;.262143))) ?PUTOUT(SUBS(EACTAR<7>,RSHIFT(BRKTB3,18),AND(BRKTB3,262143))) ;. ?PUTOUT(SUBS(EACTAR<7>,RSHIFT(BRKTB4,18),AND(BRKTB4,262143)))) MOVEI 14,Q10033 MOVEM 14,S$$FLP## FCALV$ ^D0,GETATR SETZ 1, SUB 16,S$$STB## MOVEM 16,S$$STS## JSA 16,F$$NEP## JUMP 0,BTATRB JUMP 0,K10252 ADD 16,S$$STB## SETZ 1, MOVE 1,@N10247 FCALV$ ^D1,GETBKT SETZ 1, MOVE 1,I10268 AREFV$ ^D1,EACTAR PUSH 16,1 MOVE 1,@N10256 PUSH 16,1 MOVE ^D1,BRKTB1 TLO 1,1B18 TLZ 1,1B19 FCALV$ ^D3,SUBS FCALV$ ^D1,PUTOUT SETZ 1, MOVE 1,I10269 AREFV$ ^D1,EACTAR PUSH 16,1 SUB 16,S$$STB## MOVEM 16,S$$STS## JSA 16,F$$RSH## JUMP 0,BRKTB2 JUMP 0,K10270 ADD 16,S$$STB## MOVE 1,0 TLO 1,1B18 TLZ 1,1B19 PUSH 16,1 SUB 16,S$$STB## MOVEM 16,S$$STS## JSA 16,F$$AND## JUMP 0,BRKTB2 JUMP 0,K10271 ADD 16,S$$STB## MOVE 1,0 TLO 1,1B18 TLZ 1,1B19 FCALV$ ^D3,SUBS FCALV$ ^D1,PUTOUT SETZ 1, MOVE 1,I10269 AREFV$ ^D1,EACTAR PUSH 16,1 SUB 16,S$$STB## MOVEM 16,S$$STS## JSA 16,F$$RSH## JUMP 0,BRKTB3 JUMP 0,K10270 ADD 16,S$$STB## MOVE 1,0 TLO 1,1B18 TLZ 1,1B19 PUSH 16,1 SUB 16,S$$STB## MOVEM 16,S$$STS## JSA 16,F$$AND## JUMP 0,BRKTB3 JUMP 0,K10271 ADD 16,S$$STB## MOVE 1,0 TLO 1,1B18 TLZ 1,1B19 FCALV$ ^D3,SUBS FCALV$ ^D1,PUTOUT SETZ 1, MOVE 1,I10269 AREFV$ ^D1,EACTAR PUSH 16,1 SUB 16,S$$STB## MOVEM 16,S$$STS## JSA 16,F$$RSH## JUMP 0,BRKTB4 JUMP 0,K10270 ADD 16,S$$STB## MOVE 1,0 TLO 1,1B18 TLZ 1,1B19 PUSH 16,1 SUB 16,S$$STB## MOVEM 16,S$$STS## JSA 16,F$$AND## JUMP 0,BRKTB4 JUMP 0,K10271 ADD 16,S$$STB## MOVE 1,0 TLO 1,1B18 TLZ 1,1B19 FCALV$ ^D3,SUBS FCALV$ ^D1,PUTOUT SETZ 1, Q10033: ;* VARIABLE ATTRIBUTES ; ITTYP = 5 MOVE ^D1,K10272 MOVEM 1,ITTYP ; (?GETATR() ?INE(VTATRB,0) ?INE(VDATRB,VDPATR)) :F(EAC10) MOVEI 14,L10266 MOVEM 14,S$$FLP## FCALV$ ^D0,GETATR SETZ 1, SUB 16,S$$STB## MOVEM 16,S$$STS## JSA 16,F$$NEP## JUMP 0,VTATRB JUMP 0,K10252 ADD 16,S$$STB## SETZ 1, SUB 16,S$$STB## MOVEM 16,S$$STS## JSA 16,F$$NEP## JUMP 0,VDATRB JUMP 0,VDPATR ADD 16,S$$STB## SETZ 1, ; (?INE(VXATRB,0) ?IEQ(VNATRB,0)) :S(EAC10) MOVEI 14,Q10034 MOVEM 14,S$$FLP## SUB 16,S$$STB## MOVEM 16,S$$STS## JSA 16,F$$NEP## JUMP 0,VXATRB JUMP 0,K10252 ADD 16,S$$STB## SETZ 1, SUB 16,S$$STB## MOVEM 16,S$$STS## JSA 16,F$$EQP## JUMP 0,VNATRB JUMP 0,K10252 ADD 16,S$$STB## SETZ 1, JRST L10266 Q10034: ; (?INE(VXATRB,0) ?PUTOUT(SUBS(EACTAR<11>,STR2,VDATRB / VDDATR, ;.XNAMTB[STR2]))) :S(EAC10) MOVEI 14,Q10035 MOVEM 14,S$$FLP## SUB 16,S$$STB## MOVEM 16,S$$STS## JSA 16,F$$NEP## JUMP 0,VXATRB JUMP 0,K10252 ADD 16,S$$STB## SETZ 1, MOVE 1,I10273 AREFV$ ^D1,EACTAR PUSH 16,1 MOVE 1,@N10256 PUSH 16,1 MOVE ^D1,VDATRB IDIV ^D1,VDDATR TLO 1,1B18 TLZ 1,1B19 PUSH 16,1 MOVE 1,@N10256 AREFV$ ^D1,XNAMTB FCALV$ ^D4,SUBS FCALV$ ^D1,PUTOUT SETZ 1, JRST L10266 Q10035: ; NVAR = ?IEQ(VDATRB,0) NVAR + 1 :F(EAC5) MOVEI 14,L10274 MOVEM 14,S$$FLP## SUB 16,S$$STB## MOVEM 16,S$$STS## JSA 16,F$$EQP## JUMP 0,VDATRB JUMP 0,K10252 ADD 16,S$$STB## SETZ 1, MOVE ^D1,V10100 ADD ^D1,K10251 MOVEM 1,V10100 ; STR3 = ?INE(XNATRB,XNVATR) 'N' STR2 :S(EAC4) MOVEI 14,Q10036 MOVEM 14,S$$FLP## SUB 16,S$$STB## MOVEM 16,S$$STS## JSA 16,F$$NEP## JUMP 0,XNATRB JUMP 0,XNVATR ADD 16,S$$STB## SETZ 1, MOVE 1,S10276 PUSH 16,1 MOVE 1,@N10256 JSP 14,S$$CNC## EXP ^D2 MOVEM 1,@N10275 JRST L10277 Q10036: ; STR3 = XNAMTB[STR2] MOVEI 14,Q10037 MOVEM 14,S$$FLP## MOVE 1,@N10256 AREFV$ ^D1,XNAMTB MOVEM 1,@N10275 Q10037: ;EAC4 STR3 = SUBS(EACTAR<8>,STR3,VARBLK,NVAR) :(EAC8) L10277: MOVEI 14,L10279 MOVEM 14,S$$FLP## MOVE 1,I10278 AREFV$ ^D1,EACTAR PUSH 16,1 MOVE 1,@N10275 PUSH 16,1 MOVE 1,@N10263 PUSH 16,1 MOVE ^D1,V10100 TLO 1,1B18 TLZ 1,1B19 FCALV$ ^D4,SUBS MOVEM 1,@N10275 JRST L10279 ;EAC5 STR3 = ?INE(XNATRB,XNVATR) 'V' STR2 :S(EAC6) L10274: MOVEI 14,Q10038 MOVEM 14,S$$FLP## SUB 16,S$$STB## MOVEM 16,S$$STS## JSA 16,F$$NEP## JUMP 0,XNATRB JUMP 0,XNVATR ADD 16,S$$STB## SETZ 1, MOVE 1,S10280 PUSH 16,1 MOVE 1,@N10256 JSP 14,S$$CNC## EXP ^D2 MOVEM 1,@N10275 JRST L10281 Q10038: ; STR3 = XNAMTB[STR2] MOVEI 14,Q10039 MOVEM 14,S$$FLP## MOVE 1,@N10256 AREFV$ ^D1,XNAMTB MOVEM 1,@N10275 Q10039: ;EAC6 (?INE(VDATRB,VDDATR) ?PUTOUT(SUBS(EACTAR<9>,STR3))) :S(EAC7) L10281: MOVEI 14,Q10040 MOVEM 14,S$$FLP## SUB 16,S$$STB## MOVEM 16,S$$STS## JSA 16,F$$NEP## JUMP 0,VDATRB JUMP 0,VDDATR ADD 16,S$$STB## SETZ 1, MOVE 1,I10282 AREFV$ ^D1,EACTAR PUSH 16,1 MOVE 1,@N10275 FCALV$ ^D2,SUBS FCALV$ ^D1,PUTOUT SETZ 1, JRST L10283 Q10040: ; J = DSIZTB[STR2] MOVEI 14,Q10041 MOVEM 14,S$$FLP## MOVE 1,@N10256 AREFV$ ^D1,DSIZTB DASGN$ 2,V10096 Q10041: ; K = J / 5 MOVE ^D1,V10096 IDIV ^D1,K10272 MOVEM 1,V10097 ; K = ?INE(J,5 * K) K + 1 MOVEI 14,Q10042 MOVEM 14,S$$FLP## MOVE ^D1,K10272 IMUL ^D1,V10097 MOVEM 1,Q10001+^D0 SUB 16,S$$STB## MOVEM 16,S$$STS## JSA 16,F$$NEP## JUMP 0,V10096 JUMP 0,Q10001+^D0 ADD 16,S$$STB## SETZ 1, MOVE ^D1,V10097 ADD ^D1,K10251 MOVEM 1,V10097 Q10042: ; PUTOUT(SUBS(EACTAR<10>,STR3,K)) MOVEI 14,Q10043 MOVEM 14,S$$FLP## MOVE 1,I10284 AREFV$ ^D1,EACTAR PUSH 16,1 MOVE 1,@N10275 PUSH 16,1 MOVE ^D1,V10097 TLO 1,1B18 TLZ 1,1B19 FCALV$ ^D3,SUBS FCALV$ ^D1,PUTOUT Q10043: ;EAC7 (?IEQ(VNATRB,0) ?IEQ(VGATRB,0) ?INE(VIATRB,0)) :S(EAC10) L10283: MOVEI 14,Q10044 MOVEM 14,S$$FLP## SUB 16,S$$STB## MOVEM 16,S$$STS## JSA 16,F$$EQP## JUMP 0,VNATRB JUMP 0,K10252 ADD 16,S$$STB## SETZ 1, SUB 16,S$$STB## MOVEM 16,S$$STS## JSA 16,F$$EQP## JUMP 0,VGATRB JUMP 0,K10252 ADD 16,S$$STB## SETZ 1, SUB 16,S$$STB## MOVEM 16,S$$STS## JSA 16,F$$NEP## JUMP 0,VIATRB JUMP 0,K10252 ADD 16,S$$STB## SETZ 1, JRST L10266 Q10044: ; STR3 = SUBS(EACTAR<11>,STR2,VDATRB / VDDATR,STR3) MOVEI 14,Q10045 MOVEM 14,S$$FLP## MOVE 1,I10273 AREFV$ ^D1,EACTAR PUSH 16,1 MOVE 1,@N10256 PUSH 16,1 MOVE ^D1,VDATRB IDIV ^D1,VDDATR TLO 1,1B18 TLZ 1,1B19 PUSH 16,1 MOVE 1,@N10275 FCALV$ ^D4,SUBS MOVEM 1,@N10275 Q10045: ;EAC8 (?IEQ(VGATRB,0) ?INE(VIATRB,0) ?PUTOUT(STR3)) :S(EAC10) L10279: MOVEI 14,Q10046 MOVEM 14,S$$FLP## SUB 16,S$$STB## MOVEM 16,S$$STS## JSA 16,F$$EQP## JUMP 0,VGATRB JUMP 0,K10252 ADD 16,S$$STB## SETZ 1, SUB 16,S$$STB## MOVEM 16,S$$STS## JSA 16,F$$NEP## JUMP 0,VIATRB JUMP 0,K10252 ADD 16,S$$STB## SETZ 1, MOVE 1,@N10275 FCALV$ ^D1,PUTOUT SETZ 1, JRST L10266 Q10046: ; SKATRB = 1 MOVE ^D1,K10251 MOVEM 1,SKATRB ; K = 1 + VGATRB / VGGATR MOVE ^D1,K10251 MOVE ^D2,VGATRB IDIV ^D2,VGGATR ADD ^D1,^D2 MOVEM 1,V10097 ; K = ?INE(SDATRB,0) 8 + K :F(EAC9) MOVEI 14,L10285 MOVEM 14,S$$FLP## SUB 16,S$$STB## MOVEM 16,S$$STS## JSA 16,F$$NEP## JUMP 0,SDATRB JUMP 0,K10252 ADD 16,S$$STB## SETZ 1, MOVE ^D1,K10278 ADD ^D1,V10097 MOVEM 1,V10097 ; SDATRB = MOVEI 14,Q10047 MOVEM 14,S$$FLP## SETZM SDATRB Q10047: ;EAC9 SYMLST = SNT(SYMLST,K,STR2,STR3) L10285: MOVEI 14,Q10048 MOVEM 14,S$$FLP## MOVE 1,@N10286 PUSH 16,1 MOVE ^D1,V10097 TLO 1,1B18 TLZ 1,1B19 PUSH 16,1 MOVE 1,@N10256 PUSH 16,1 MOVE 1,@N10275 FCALV$ ^D4,F10287 MOVEM 1,@N10286 Q10048: ; NSYM = NSYM + 1 MOVE ^D1,V10101 ADD ^D1,K10251 MOVEM 1,V10101 ;* LABEL ATTRIBUTES ;EAC10 ITTYP = 6 L10266: MOVE ^D1,K10268 MOVEM 1,ITTYP ; (?GETATR() ?INE(LTATRB,0)) :F(EAC14) MOVEI 14,L10288 MOVEM 14,S$$FLP## FCALV$ ^D0,GETATR SETZ 1, SUB 16,S$$STB## MOVEM 16,S$$STS## JSA 16,F$$NEP## JUMP 0,LTATRB JUMP 0,K10252 ADD 16,S$$STB## SETZ 1, ; (?INE(LTATRB,LTDATR) ?ERRMSG('UNDEFINED LABEL: ' STR1)) MOVEI 14,Q10049 MOVEM 14,S$$FLP## SUB 16,S$$STB## MOVEM 16,S$$STS## JSA 16,F$$NEP## JUMP 0,LTATRB JUMP 0,LTDATR ADD 16,S$$STB## SETZ 1, MOVE 1,S10289 PUSH 16,1 MOVE 1,@N10247 JSP 14,S$$CNC## EXP ^D2 FCALV$ ^D1,ERRMSG SETZ 1, Q10049: ; ?INE(OBJFLG + LISTOB,0) :F(EAC21) MOVEI 14,L10290 MOVEM 14,S$$FLP## MOVE ^D1,OBJFLG ADD ^D1,LISTOB MOVEM 1,Q10001+^D0 SUB 16,S$$STB## MOVEM 16,S$$STS## JSA 16,F$$NEP## JUMP 0,Q10001+^D0 JUMP 0,K10252 ADD 16,S$$STB## SETZ 1, ; (?IEQ(LGATRB,0) ?INE(LIATRB,0) ?IEQ(LTATRB,LTDATR)) :S(EAC15) MOVEI 14,Q10050 MOVEM 14,S$$FLP## SUB 16,S$$STB## MOVEM 16,S$$STS## JSA 16,F$$EQP## JUMP 0,LGATRB JUMP 0,K10252 ADD 16,S$$STB## SETZ 1, SUB 16,S$$STB## MOVEM 16,S$$STS## JSA 16,F$$NEP## JUMP 0,LIATRB JUMP 0,K10252 ADD 16,S$$STB## SETZ 1, SUB 16,S$$STB## MOVEM 16,S$$STS## JSA 16,F$$EQP## JUMP 0,LTATRB JUMP 0,LTDATR ADD 16,S$$STB## SETZ 1, JRST L10291 Q10050: ; STR3 = ?INE(XNATRB,XNLATR) 'L' STR2 :S(EAC11) MOVEI 14,Q10051 MOVEM 14,S$$FLP## SUB 16,S$$STB## MOVEM 16,S$$STS## JSA 16,F$$NEP## JUMP 0,XNATRB JUMP 0,XNLATR ADD 16,S$$STB## SETZ 1, MOVE 1,S10098 PUSH 16,1 MOVE 1,@N10256 JSP 14,S$$CNC## EXP ^D2 MOVEM 1,@N10275 JRST L10292 Q10051: ; STR3 = XNAMTB[STR2] MOVEI 14,Q10052 MOVEM 14,S$$FLP## MOVE 1,@N10256 AREFV$ ^D1,XNAMTB MOVEM 1,@N10275 Q10052: ;EAC11 STR3 = ?INE(LTATRB,LTDATR) SUBS(EACTAR<31>,STR3,EACTAR<12>) ;. :S(EAC12) L10292: MOVEI 14,Q10053 MOVEM 14,S$$FLP## SUB 16,S$$STB## MOVEM 16,S$$STS## JSA 16,F$$NEP## JUMP 0,LTATRB JUMP 0,LTDATR ADD 16,S$$STB## SETZ 1, MOVE 1,I10293 AREFV$ ^D1,EACTAR PUSH 16,1 MOVE 1,@N10275 PUSH 16,1 MOVE 1,I10294 AREFV$ ^D1,EACTAR FCALV$ ^D3,SUBS MOVEM 1,@N10275 JRST L10295 Q10053: ; STR3 = SUBS(EACTAR<13>,STR3) MOVEI 14,Q10054 MOVEM 14,S$$FLP## MOVE 1,I10296 AREFV$ ^D1,EACTAR PUSH 16,1 MOVE 1,@N10275 FCALV$ ^D2,SUBS MOVEM 1,@N10275 Q10054: ;EAC12 (?IEQ(LGATRB,0) ?INE(LIATRB,0) ?PUTOUT(STR3)) :S(EAC15) L10295: MOVEI 14,Q10055 MOVEM 14,S$$FLP## SUB 16,S$$STB## MOVEM 16,S$$STS## JSA 16,F$$EQP## JUMP 0,LGATRB JUMP 0,K10252 ADD 16,S$$STB## SETZ 1, SUB 16,S$$STB## MOVEM 16,S$$STS## JSA 16,F$$NEP## JUMP 0,LIATRB JUMP 0,K10252 ADD 16,S$$STB## SETZ 1, MOVE 1,@N10275 FCALV$ ^D1,PUTOUT SETZ 1, JRST L10291 Q10055: ; SKATRB = 1 MOVE ^D1,K10251 MOVEM 1,SKATRB ; K = 3 + LGATRB / LGGATR MOVE ^D1,K10267 MOVE ^D2,LGATRB IDIV ^D2,LGGATR ADD ^D1,^D2 MOVEM 1,V10097 ; K = ?INE(SDATRB,0) 8 + K :F(EAC13) MOVEI 14,L10297 MOVEM 14,S$$FLP## SUB 16,S$$STB## MOVEM 16,S$$STS## JSA 16,F$$NEP## JUMP 0,SDATRB JUMP 0,K10252 ADD 16,S$$STB## SETZ 1, MOVE ^D1,K10278 ADD ^D1,V10097 MOVEM 1,V10097 ; SDATRB = MOVEI 14,Q10056 MOVEM 14,S$$FLP## SETZM SDATRB Q10056: ;EAC13 SYMLST = SNT(SYMLST,K,STR2,STR3) L10297: MOVEI 14,Q10057 MOVEM 14,S$$FLP## MOVE 1,@N10286 PUSH 16,1 MOVE ^D1,V10097 TLO 1,1B18 TLZ 1,1B19 PUSH 16,1 MOVE 1,@N10256 PUSH 16,1 MOVE 1,@N10275 FCALV$ ^D4,F10287 MOVEM 1,@N10286 Q10057: ; NSYM = NSYM + 1 MOVE ^D1,V10101 ADD ^D1,K10251 MOVEM 1,V10101 ;* FUNCTION ATTRIBUTES ;EAC14 ?INE(OBJFLG + LISTOB,0) :F(EAC21) L10288: MOVEI 14,L10290 MOVEM 14,S$$FLP## MOVE ^D1,OBJFLG ADD ^D1,LISTOB MOVEM 1,Q10001+^D0 SUB 16,S$$STB## MOVEM 16,S$$STS## JSA 16,F$$NEP## JUMP 0,Q10001+^D0 JUMP 0,K10252 ADD 16,S$$STB## SETZ 1, ;EAC15 ITTYP = 7 L10291: MOVE ^D1,K10269 MOVEM 1,ITTYP ; (?GETATR() ?INE(FTATRB,0) ?IEQ(FDATRB,0) ?INE(FXATRB,FXXATR)) ;. :F(EAC19) MOVEI 14,L10298 MOVEM 14,S$$FLP## FCALV$ ^D0,GETATR SETZ 1, SUB 16,S$$STB## MOVEM 16,S$$STS## JSA 16,F$$NEP## JUMP 0,FTATRB JUMP 0,K10252 ADD 16,S$$STB## SETZ 1, SUB 16,S$$STB## MOVEM 16,S$$STS## JSA 16,F$$EQP## JUMP 0,FDATRB JUMP 0,K10252 ADD 16,S$$STB## SETZ 1, SUB 16,S$$STB## MOVEM 16,S$$STS## JSA 16,F$$NEP## JUMP 0,FXATRB JUMP 0,FXXATR ADD 16,S$$STB## SETZ 1, ; STR3 = ?IEQ(FXATRB,0) SUBS(EACTAR<14>,STR2) :S(EAC17) MOVEI 14,Q10058 MOVEM 14,S$$FLP## SUB 16,S$$STB## MOVEM 16,S$$STS## JSA 16,F$$EQP## JUMP 0,FXATRB JUMP 0,K10252 ADD 16,S$$STB## SETZ 1, MOVE 1,I10299 AREFV$ ^D1,EACTAR PUSH 16,1 MOVE 1,@N10256 FCALV$ ^D2,SUBS MOVEM 1,@N10275 JRST L10300 Q10058: ; STR3 = ?IEQ(FXATRB,FXXMSK) PRIMAR :F(EAC16) MOVEI 14,L10301 MOVEM 14,S$$FLP## SUB 16,S$$STB## MOVEM 16,S$$STS## JSA 16,F$$EQP## JUMP 0,FXATRB JUMP 0,FXXMSK ADD 16,S$$STB## SETZ 1, MOVE ^D1,TXATRB IDIV ^D1,TXTATR TLO 1,1B18 TLZ 1,1B19 AREFV$ ^D1,PRIMAR MOVEM 1,@N10275 ; STR3 RTAB(3) $ K REM $ STR3 MOVEI 14,Q10059 MOVEM 14,S$$FLP## MOVE 1,@N10275 PUSH 16,1 JSP 14,S$$MTX## XWD ^D-1,0 BYTE (2)2(16)1(18).+1 JSP 11,S$$VAS## HRRZ 1,K10267 JSP 11,S$$RTB## MOVE 1,N10097 JSP 11,S$$IVA## JSP 11,S$$VAS## JSP 11,S$$REM## MOVE 1,N10275 JSP 11,S$$IVA## JSP 11,S$$MTS## Q10059: ; STR3 = SUBS(EACTAR<16>,STR2,K,STR3) :(EAC17) MOVEI 14,L10300 MOVEM 14,S$$FLP## MOVE 1,I10302 AREFV$ ^D1,EACTAR PUSH 16,1 MOVE 1,@N10256 PUSH 16,1 MOVE ^D1,V10097 TLO 1,1B18 TLZ 1,1B19 PUSH 16,1 MOVE 1,@N10275 FCALV$ ^D4,SUBS MOVEM 1,@N10275 JRST L10300 ;EAC16 STR3 = ENTFTB[STR2] L10301: MOVEI 14,Q10060 MOVEM 14,S$$FLP## MOVE 1,@N10256 AREFV$ ^D1,ENTFTB MOVEM 1,@N10275 Q10060: ; K = STR3<4> MOVEI 14,Q10061 MOVEM 14,S$$FLP## MOVE 1,I10262 AREFV$ ^D1,N10275 DASGN$ 2,V10097 Q10061: ; STR3 = SUBS(EACTAR<15>,STR1,K,STR2) MOVEI 14,Q10062 MOVEM 14,S$$FLP## MOVE 1,I10303 AREFV$ ^D1,EACTAR PUSH 16,1 MOVE 1,@N10247 PUSH 16,1 MOVE ^D1,V10097 TLO 1,1B18 TLZ 1,1B19 PUSH 16,1 MOVE 1,@N10256 FCALV$ ^D4,SUBS MOVEM 1,@N10275 Q10062: ;EAC17 (?IEQ(FGATRB,0) ?INE(FIATRB,0) ?PUTOUT(STR3)) :S(EAC19) L10300: MOVEI 14,Q10063 MOVEM 14,S$$FLP## SUB 16,S$$STB## MOVEM 16,S$$STS## JSA 16,F$$EQP## JUMP 0,FGATRB JUMP 0,K10252 ADD 16,S$$STB## SETZ 1, SUB 16,S$$STB## MOVEM 16,S$$STS## JSA 16,F$$NEP## JUMP 0,FIATRB JUMP 0,K10252 ADD 16,S$$STB## SETZ 1, MOVE 1,@N10275 FCALV$ ^D1,PUTOUT SETZ 1, JRST L10298 Q10063: ; SKATRB = 1 MOVE ^D1,K10251 MOVEM 1,SKATRB ; K = 5 + FGATRB / FGGATR MOVE ^D1,K10272 MOVE ^D2,FGATRB IDIV ^D2,FGGATR ADD ^D1,^D2 MOVEM 1,V10097 ; K = ?INE(SDATRB,0) 8 + K :F(EAC18) MOVEI 14,L10304 MOVEM 14,S$$FLP## SUB 16,S$$STB## MOVEM 16,S$$STS## JSA 16,F$$NEP## JUMP 0,SDATRB JUMP 0,K10252 ADD 16,S$$STB## SETZ 1, MOVE ^D1,K10278 ADD ^D1,V10097 MOVEM 1,V10097 ; SDATRB = MOVEI 14,Q10064 MOVEM 14,S$$FLP## SETZM SDATRB Q10064: ;EAC18 SYMLST = SNT(SYMLST,K,STR2,STR3) L10304: MOVEI 14,Q10065 MOVEM 14,S$$FLP## MOVE 1,@N10286 PUSH 16,1 MOVE ^D1,V10097 TLO 1,1B18 TLZ 1,1B19 PUSH 16,1 MOVE 1,@N10256 PUSH 16,1 MOVE 1,@N10275 FCALV$ ^D4,F10287 MOVEM 1,@N10286 Q10065: ; NSYM = NSYM + 1 MOVE ^D1,V10101 ADD ^D1,K10251 MOVEM 1,V10101 ;* GENERATE STRING BLOCK AND DESCRIPTOR,IF REQUIRED ;EAC19 (?INE(SDATRB,0) ?PUTOUT(SUBS(EACTAR<17>,STR2))) L10298: MOVEI 14,Q10066 MOVEM 14,S$$FLP## SUB 16,S$$STB## MOVEM 16,S$$STS## JSA 16,F$$NEP## JUMP 0,SDATRB JUMP 0,K10252 ADD 16,S$$STB## SETZ 1, MOVE 1,I10305 AREFV$ ^D1,EACTAR PUSH 16,1 MOVE 1,@N10256 FCALV$ ^D2,SUBS FCALV$ ^D1,PUTOUT SETZ 1, Q10066: ; J = ?INE(SKATRB,0) SIZE(STR1) :F(EAC21) MOVEI 14,L10290 MOVEM 14,S$$FLP## SUB 16,S$$STB## MOVEM 16,S$$STS## JSA 16,F$$NEP## JUMP 0,SKATRB JUMP 0,K10252 ADD 16,S$$STB## SETZ 1, MOVE 1,@N10247 FCALV$ ^D1,F10050 DASGN$ 2,V10096 ; K = J / 5 MOVE ^D1,V10096 IDIV ^D1,K10272 MOVEM 1,V10097 ; K = ?INE(J,5 * K) K + 1 MOVEI 14,Q10067 MOVEM 14,S$$FLP## MOVE ^D1,K10272 IMUL ^D1,V10097 MOVEM 1,Q10001+^D0 SUB 16,S$$STB## MOVEM 16,S$$STS## JSA 16,F$$NEP## JUMP 0,V10096 JUMP 0,Q10001+^D0 ADD 16,S$$STB## SETZ 1, MOVE ^D1,V10097 ADD ^D1,K10251 MOVEM 1,V10097 Q10067: ; PUTOUT(SUBS(EACTAR<18>,STR2,K,J)) MOVEI 14,Q10068 MOVEM 14,S$$FLP## MOVE 1,I10270 AREFV$ ^D1,EACTAR PUSH 16,1 MOVE 1,@N10256 PUSH 16,1 MOVE ^D1,V10097 TLO 1,1B18 TLZ 1,1B19 PUSH 16,1 MOVE ^D1,V10096 TLO 1,1B18 TLZ 1,1B19 FCALV$ ^D4,SUBS FCALV$ ^D1,PUTOUT Q10068: ; (?ILE(J,60) ?PUTLIT(STR1)) :S(EAC21) MOVEI 14,Q10069 MOVEM 14,S$$FLP## SUB 16,S$$STB## MOVEM 16,S$$STS## JSA 16,F$$LEP## JUMP 0,V10096 JUMP 0,K10306 ADD 16,S$$STB## SETZ 1, MOVE 1,@N10247 FCALV$ ^D1,F10246 SETZ 1, JRST L10290 Q10069: ; P = MOVEI 14,Q10070 MOVEM 14,S$$FLP## SETZM P Q10070: ;EAC20 K = 60 L10307: MOVE ^D1,K10306 MOVEM 1,V10097 ; K = ?IGT(K,J - P) J - P MOVEI 14,Q10071 MOVEM 14,S$$FLP## MOVE ^D1,V10096 SUB ^D1,P MOVEM 1,Q10001+^D0 SUB 16,S$$STB## MOVEM 16,S$$STS## JSA 16,F$$GTP## JUMP 0,V10097 JUMP 0,Q10001+^D0 ADD 16,S$$STB## SETZ 1, MOVE ^D1,V10096 SUB ^D1,P MOVEM 1,V10097 Q10071: ; PUTLIT(SUBSTR(STR1,K,P)) MOVEI 14,Q10072 MOVEM 14,S$$FLP## MOVE 1,@N10247 PUSH 16,1 MOVE ^D1,V10097 TLO 1,1B18 TLZ 1,1B19 PUSH 16,1 MOVE ^D1,P TLO 1,1B18 TLZ 1,1B19 FCALV$ ^D3,F10081 FCALV$ ^D1,F10246 Q10072: ; P = ?INE(P + K,J) P + 60 :S(EAC20) MOVEI 14,Q10073 MOVEM 14,S$$FLP## MOVE ^D1,P ADD ^D1,V10097 MOVEM 1,Q10001+^D0 SUB 16,S$$STB## MOVEM 16,S$$STS## JSA 16,F$$NEP## JUMP 0,Q10001+^D0 JUMP 0,V10096 ADD 16,S$$STB## SETZ 1, MOVE ^D1,P ADD ^D1,K10306 MOVEM 1,P JRST L10307 Q10073: ;* BOTTOM OF SYMBOL LOOP ;EAC21 I = I + 1 :(EAC3) L10290: MOVE ^D1,V10095 ADD ^D1,K10251 MOVEM 1,V10095 JRST L10264 ;* END OF SYMBOL LOOP ;EAC22 LISTAR = L10265: MOVEI 14,Q10074 MOVEM 14,S$$FLP## SETZM @N10254 Q10074: ; ?INE(OBJFLG + LISTOB,0) :F(RETURN) MOVEI 14,S$$SRT## MOVEM 14,S$$FLP## MOVE ^D1,OBJFLG ADD ^D1,LISTOB MOVEM 1,Q10001+^D0 SUB 16,S$$STB## MOVEM 16,S$$STS## JSA 16,F$$NEP## JUMP 0,Q10001+^D0 JUMP 0,K10252 ADD 16,S$$STB## SETZ 1, ;* GENERATE VARIABLE BLOCK ; (?IGT(NVAR,0) ?PUTOUT(SUBS(EACTAR<20>,VARBLK,NVAR))) MOVEI 14,Q10075 MOVEM 14,S$$FLP## SUB 16,S$$STB## MOVEM 16,S$$STS## JSA 16,F$$GTP## JUMP 0,V10100 JUMP 0,K10252 ADD 16,S$$STB## SETZ 1, MOVE 1,I10308 AREFV$ ^D1,EACTAR PUSH 16,1 MOVE 1,@N10263 PUSH 16,1 MOVE ^D1,V10100 TLO 1,1B18 TLZ 1,1B19 FCALV$ ^D3,SUBS FCALV$ ^D1,PUTOUT SETZ 1, Q10075: ;* GENERATE SYMBOL BLOCK ; SYMBLK = ?IGT(NSYM,0) NEWLAB() :F(EAC24) MOVEI 14,L10310 MOVEM 14,S$$FLP## SUB 16,S$$STB## MOVEM 16,S$$STS## JSA 16,F$$GTP## JUMP 0,V10101 JUMP 0,K10252 ADD 16,S$$STB## SETZ 1, FCALV$ ^D0,NEWLAB MOVEM 1,@N10309 ; PUTOUT(SUBS(EACTAR<25>,SYMBLK,NSYM)) MOVEI 14,Q10076 MOVEM 14,S$$FLP## MOVE 1,I10311 AREFV$ ^D1,EACTAR PUSH 16,1 MOVE 1,@N10309 PUSH 16,1 MOVE ^D1,V10101 TLO 1,1B18 TLZ 1,1B19 FCALV$ ^D3,SUBS FCALV$ ^D1,PUTOUT Q10076: ;EAC23 I = STY(SYMLST) L10312: MOVEI 14,Q10077 MOVEM 14,S$$FLP## MOVE 1,@N10286 FCALV$ ^D1,F10313 DASGN$ 2,V10095 Q10077: ; STR1 = MOVEI 14,Q10078 MOVEM 14,S$$FLP## SETZM @N10247 Q10078: ; STR1 = ?INE(AND(I,8),0) SUBS(EACTAR<26>,SNM(SYMLST)) MOVEI 14,Q10079 MOVEM 14,S$$FLP## SUB 16,S$$STB## MOVEM 16,S$$STS## JSA 16,F$$AND## JUMP 0,V10095 JUMP 0,K10278 ADD 16,S$$STB## MOVE 1,0 MOVEM 1,Q10001+^D0 SUB 16,S$$STB## MOVEM 16,S$$STS## JSA 16,F$$NEP## JUMP 0,Q10001+^D0 JUMP 0,K10252 ADD 16,S$$STB## SETZ 1, MOVE 1,I10314 AREFV$ ^D1,EACTAR PUSH 16,1 MOVE 1,@N10286 FCALV$ ^D1,F10315 FCALV$ ^D2,SUBS MOVEM 1,@N10247 Q10079: ; I = AND(I,7) MOVEI 14,Q10080 MOVEM 14,S$$FLP## SUB 16,S$$STB## MOVEM 16,S$$STS## JSA 16,F$$AND## JUMP 0,V10095 JUMP 0,K10269 ADD 16,S$$STB## MOVE 1,0 MOVEM 1,V10095 Q10080: ; PUTOUT(SUBS(EACTAR<27>,I,STR1,SNM(SYMLST),SVL(SYMLST))) MOVEI 14,Q10081 MOVEM 14,S$$FLP## MOVE 1,I10316 AREFV$ ^D1,EACTAR PUSH 16,1 MOVE ^D1,V10095 TLO 1,1B18 TLZ 1,1B19 PUSH 16,1 MOVE 1,@N10247 PUSH 16,1 MOVE 1,@N10286 FCALV$ ^D1,F10315 PUSH 16,1 MOVE 1,@N10286 FCALV$ ^D1,F10317 FCALV$ ^D5,SUBS FCALV$ ^D1,PUTOUT Q10081: ; SYMLST = SNX(SYMLST) MOVEI 14,Q10082 MOVEM 14,S$$FLP## MOVE 1,@N10286 FCALV$ ^D1,F10318 MOVEM 1,@N10286 Q10082: ; IDENT(SYMLST) :F(EAC23) MOVEI 14,L10312 MOVEM 14,S$$FLP## MOVE 1,@N10286 FCALV$ ^D1,F10072 ;* GENERATE PARAMETER BLOCK ;EAC24 VARBLK = ?IEQ(NVAR,0) '0' L10310: MOVEI 14,Q10083 MOVEM 14,S$$FLP## SUB 16,S$$STB## MOVEM 16,S$$STS## JSA 16,F$$EQP## JUMP 0,V10100 JUMP 0,K10252 ADD 16,S$$STB## SETZ 1, MOVE 1,S10319 MOVEM 1,@N10263 Q10083: ; SYMBLK = ?IEQ(NSYM,0) '0' MOVEI 14,Q10084 MOVEM 14,S$$FLP## SUB 16,S$$STB## MOVEM 16,S$$STS## JSA 16,F$$EQP## JUMP 0,V10101 JUMP 0,K10252 ADD 16,S$$STB## SETZ 1, MOVE 1,S10319 MOVEM 1,@N10309 Q10084: ; STNO = ?INE(STNFLG,1) 0 MOVEI 14,Q10085 MOVEM 14,S$$FLP## SUB 16,S$$STB## MOVEM 16,S$$STS## JSA 16,F$$NEP## JUMP 0,STNFLG JUMP 0,K10251 ADD 16,S$$STB## SETZ 1, MOVE ^D1,K10252 MOVEM 1,STNO Q10085: ; PUTOUT(SUBS(EACTAR<21>,PRGNAM,PARBLK,VARBLK,SYMBLK,STNO)) MOVEI 14,Q10086 MOVEM 14,S$$FLP## MOVE 1,I10320 AREFV$ ^D1,EACTAR PUSH 16,1 MOVE 1,@PRGNAM PUSH 16,1 MOVE 1,@PARBLK PUSH 16,1 MOVE 1,@N10263 PUSH 16,1 MOVE 1,@N10309 PUSH 16,1 MOVE ^D1,STNO TLO 1,1B18 TLZ 1,1B19 FCALV$ ^D6,SUBS FCALV$ ^D1,PUTOUT Q10086: ;* GENERATE 'ENTRY.FUNCTION' INITIALIZATIONS ; LISTAR = ?DIFFER(ENTFTB) ARRAY(ENTFTB) :F(EAC27) MOVEI 14,L10321 MOVEM 14,S$$FLP## MOVE 1,@ENTFTB FCALV$ ^D1,F10071 SETZ 1, MOVE 1,@ENTFTB FCALV$ ^D1,F10063 MOVEM 1,@N10254 ; ENTFTB = ?TABLE(ENTFTB) MOVEI 14,Q10087 MOVEM 14,S$$FLP## MOVE 1,@ENTFTB FCALV$ ^D1,F10064 SETZ 1, MOVEM 1,@ENTFTB Q10087: ; I = 1 MOVE ^D1,K10251 MOVEM 1,V10095 ;EAC25 STR1 = LISTAR :F(EAC27) L10322: MOVEI 14,L10321 MOVEM 14,S$$FLP## MOVE ^D1,V10095 TLO 1,1B18 TLZ 1,1B19 PUSH 16,1 MOVE 1,I10251 AREFV$ ^D2,N10254 MOVEM 1,@N10247 ; STR2 = LISTAR MOVEI 14,Q10088 MOVEM 14,S$$FLP## MOVE ^D1,V10095 TLO 1,1B18 TLZ 1,1B19 PUSH 16,1 MOVE 1,I10257 AREFV$ ^D2,N10254 MOVEM 1,@N10256 Q10088: ; STR3 = STR2<3> MOVEI 14,Q10089 MOVEM 14,S$$FLP## MOVE 1,I10267 AREFV$ ^D1,N10256 MOVEM 1,@N10275 Q10089: ; STR3 = ?IDENT(STR3) '0' :S(EAC26) MOVEI 14,Q10090 MOVEM 14,S$$FLP## MOVE 1,@N10275 FCALV$ ^D1,F10072 SETZ 1, MOVE 1,S10319 MOVEM 1,@N10275 JRST L10323 Q10090: ; STR3 = SUBS(EACTAR<22>,STR3) MOVEI 14,Q10091 MOVEM 14,S$$FLP## MOVE 1,I10324 AREFV$ ^D1,EACTAR PUSH 16,1 MOVE 1,@N10275 FCALV$ ^D2,SUBS MOVEM 1,@N10275 Q10091: ;EAC26 PUTOUT(SUBS(EACTAR<23>,STR2<1>,PARBLK,STR1,STR2<2>,STR3)) L10323: MOVEI 14,Q10092 MOVEM 14,S$$FLP## MOVE 1,I10325 AREFV$ ^D1,EACTAR PUSH 16,1 MOVE 1,I10251 AREFV$ ^D1,N10256 PUSH 16,1 MOVE 1,@PARBLK PUSH 16,1 MOVE 1,@N10247 PUSH 16,1 MOVE 1,I10257 AREFV$ ^D1,N10256 PUSH 16,1 MOVE 1,@N10275 FCALV$ ^D6,SUBS FCALV$ ^D1,PUTOUT Q10092: ; I = I + 1 :(EAC25) MOVE ^D1,V10095 ADD ^D1,K10251 MOVEM 1,V10095 JRST L10322 ;* GENERATE 'ENTRY.FORTRAN.FUNCTION' INITIALIZATIONS ;EAC27 STR1 = ?DIFFER(FORTLS) FORTLS<5> :F(EAC29) L10321: MOVEI 14,L10326 MOVEM 14,S$$FLP## MOVE 1,@FORTLS FCALV$ ^D1,F10071 SETZ 1, MOVE 1,I10272 AREFV$ ^D1,FORTLS MOVEM 1,@N10247 ; STR1 = ?IDENT(STR1) '0' :S(EAC28) MOVEI 14,Q10093 MOVEM 14,S$$FLP## MOVE 1,@N10247 FCALV$ ^D1,F10072 SETZ 1, MOVE 1,S10319 MOVEM 1,@N10247 JRST L10327 Q10093: ; STR1 = SUBS(EACTAR<22>,STR1) MOVEI 14,Q10094 MOVEM 14,S$$FLP## MOVE 1,I10324 AREFV$ ^D1,EACTAR PUSH 16,1 MOVE 1,@N10247 FCALV$ ^D2,SUBS MOVEM 1,@N10247 Q10094: ;EAC28 PUTOUT(SUBS(EACTAR<24>,FORTLS<2>,FORTLS<3>,PARBLK,FORTLS<4>, ;.STR1)) L10327: MOVEI 14,Q10095 MOVEM 14,S$$FLP## MOVE 1,I10328 AREFV$ ^D1,EACTAR PUSH 16,1 MOVE 1,I10257 AREFV$ ^D1,FORTLS PUSH 16,1 MOVE 1,I10267 AREFV$ ^D1,FORTLS PUSH 16,1 MOVE 1,@PARBLK PUSH 16,1 MOVE 1,I10262 AREFV$ ^D1,FORTLS PUSH 16,1 MOVE 1,@N10247 FCALV$ ^D6,SUBS FCALV$ ^D1,PUTOUT Q10095: ; FORTLS = FORTLS<1> :(EAC27) MOVEI 14,L10321 MOVEM 14,S$$FLP## MOVE 1,I10251 AREFV$ ^D1,FORTLS MOVEM 1,@FORTLS JRST L10321 ;* GENERATE END STATEMENT ;EAC29 (?INE(DMPFLG,0) ?PUTOUT(EACTAR<30>)) L10326: MOVEI 14,Q10096 MOVEM 14,S$$FLP## SUB 16,S$$STB## MOVEM 16,S$$STS## JSA 16,F$$NEP## JUMP 0,DMPFLG JUMP 0,K10252 ADD 16,S$$STB## SETZ 1, MOVE 1,I10329 AREFV$ ^D1,EACTAR FCALV$ ^D1,PUTOUT SETZ 1, Q10096: ; (?DIFFER(SNONAM) ?PUTOUT(SUBS(EACTAR<29>,STARTP))) :S(RETURN) MOVEI 14,Q10097 MOVEM 14,S$$FLP## MOVE 1,@SNONAM FCALV$ ^D1,F10071 SETZ 1, MOVE 1,I10330 AREFV$ ^D1,EACTAR PUSH 16,1 MOVE 1,@STARTP FCALV$ ^D2,SUBS FCALV$ ^D1,PUTOUT SETZ 1, JRST S$$SRT## Q10097: ; PUTOUT(EACTAR<28>) :(RETURN) MOVEI 14,S$$SRT## MOVEM 14,S$$FLP## MOVE 1,I10331 AREFV$ ^D1,EACTAR FCALV$ ^D1,PUTOUT JRST S$$SRT## ;* * * * * * * * * ;* * SUBROUTINES * * * * * ;* * * * * * * * * ;* * PUTLIT(STR1) OUTPUTS QUOTED STRING ;* IF STRING CONTAINS BOTH SINGLE AND DOUBLE QUOTES, IT IS BRO- ;* KEN UP AND THE TOUGH SECTION PUT OUT AS BYTES ;* ;PUTLIT STR1 BREAK(SQCHR) :S(PUTLT1) L10246: MOVEI 14,Q10098 MOVEM 14,S$$FLP## MOVE 1,@N10247 PUSH 16,1 MOVE 1,@SQCHR JSP 11,S$$MBT## EXP . PUSH 16,1 JSP 14,S$$MTX## XWD ^D2,0 MOVE 1,^D1(15) JSP 11,S$$BRK## JSP 11,S$$MTS## JRST L10332 Q10098: ; PUTOUT(SUBS(EACTAR<19>,SQCHR,STR1)) :(RETURN) MOVEI 14,S$$SRT## MOVEM 14,S$$FLP## MOVE 1,I10333 AREFV$ ^D1,EACTAR PUSH 16,1 MOVE 1,@SQCHR PUSH 16,1 MOVE 1,@N10247 FCALV$ ^D3,SUBS FCALV$ ^D1,PUTOUT JRST S$$SRT## ;PUTLT1 STR1 BREAK(DQCHR) :S(PUTLT2) L10332: MOVEI 14,Q10099 MOVEM 14,S$$FLP## MOVE 1,@N10247 PUSH 16,1 MOVE 1,@DQCHR JSP 11,S$$MBT## EXP . PUSH 16,1 JSP 14,S$$MTX## XWD ^D2,0 MOVE 1,^D1(15) JSP 11,S$$BRK## JSP 11,S$$MTS## JRST L10334 Q10099: ; PUTOUT(SUBS(EACTAR<19>,DQCHR,STR1)) :(RETURN) MOVEI 14,S$$SRT## MOVEM 14,S$$FLP## MOVE 1,I10333 AREFV$ ^D1,EACTAR PUSH 16,1 MOVE 1,@DQCHR PUSH 16,1 MOVE 1,@N10247 FCALV$ ^D3,SUBS FCALV$ ^D1,PUTOUT JRST S$$SRT## ;PUTLT2 L = SIZE(STR1) L10334: MOVEI 14,Q10100 MOVEM 14,S$$FLP## MOVE 1,@N10247 FCALV$ ^D1,F10050 DASGN$ 2,V10098 Q10100: ; (?IGT(L,5) ?PUTLIT(SUBSTR(STR1,5)) ?PUTLIT(SUBSTR(STR1 ;.,SIZE(STR1) - 5,5))) :S(RETURN) MOVEI 14,Q10101 MOVEM 14,S$$FLP## SUB 16,S$$STB## MOVEM 16,S$$STS## JSA 16,F$$GTP## JUMP 0,V10098 JUMP 0,K10272 ADD 16,S$$STB## SETZ 1, MOVE 1,@N10247 PUSH 16,1 MOVE 1,I10272 FCALV$ ^D2,F10081 FCALV$ ^D1,F10246 SETZ 1, MOVE 1,@N10247 PUSH 16,1 MOVE 1,@N10247 FCALV$ ^D1,F10050 DICNV$ 0 SUB ^D1,K10272 TLO 1,1B18 TLZ 1,1B19 PUSH 16,1 MOVE 1,I10272 FCALV$ ^D3,F10081 FCALV$ ^D1,F10246 SETZ 1, JRST S$$SRT## Q10101: ; A = ARRAY('5',0) MOVEI 14,Q10102 MOVEM 14,S$$FLP## MOVE 1,S10336 PUSH 16,1 MOVE 1,I10252 FCALV$ ^D2,F10063 MOVEM 1,@N10335 Q10102: ; L = MOVEI 14,Q10103 MOVEM 14,S$$FLP## SETZM V10098 Q10103: ;PUTLT3 &ALPHABET ARB SUBSTR(STR1,1,L) @M :F(PUTLT4) L10337: MOVEI 14,L10338 MOVEM 14,S$$FLP## MOVE 1,S$$KWD##+^D7 PUSH 16,1 MOVE 1,@N10247 PUSH 16,1 MOVE 1,I10251 PUSH 16,1 MOVE ^D1,V10098 TLO 1,1B18 TLZ 1,1B19 FCALV$ ^D3,F10081 JSP 11,S$$MKP## PUSH 16,1 JSP 14,S$$MTX## XWD ^D2,0 PUSHJ 16,S$$ARB## MOVE 1,^D1(15) JSP 11,S$$PTX## HRRZ 1,@S$$SJC## SUBI 1,(13) MOVEM 1,V10099 JSP 11,S$$MTS## ; L = L + 1 MOVE ^D1,V10098 ADD ^D1,K10251 MOVEM 1,V10098 ; A = M - 1 :(PUTLT3) MOVEI 14,L10337 MOVEM 14,S$$FLP## MOVE ^D1,V10098 TLO 1,1B18 TLZ 1,1B19 AREFN$ ^D1,N10335 PUSH 16,1 MOVE ^D1,V10099 SUB ^D1,K10251 TLO 1,1B18 TLZ 1,1B19 JSP 11,S$$ASG## JRST L10337 ;PUTLT4 PUTOUT(SUBS(EACTAR<32>,A<1>,A<2>,A<3>,A<4>,A<5>)) ;. :(RETURN) L10338: MOVEI 14,S$$SRT## MOVEM 14,S$$FLP## MOVE 1,I10339 AREFV$ ^D1,EACTAR PUSH 16,1 MOVE 1,I10251 AREFV$ ^D1,N10335 PUSH 16,1 MOVE 1,I10257 AREFV$ ^D1,N10335 PUSH 16,1 MOVE 1,I10267 AREFV$ ^D1,N10335 PUSH 16,1 MOVE 1,I10262 AREFV$ ^D1,N10335 PUSH 16,1 MOVE 1,I10272 AREFV$ ^D1,N10335 FCALV$ ^D6,SUBS FCALV$ ^D1,PUTOUT JRST S$$SRT## ;* * * * * * * * * ;END JRST S$$SXT## Q10001: BLOCK ^D1 K10251: EXP ^D1 I10251: EXP ^D1!1B0 K10252: EXP ^D0 I10252: EXP ^D0!1B0 K10257: EXP ^D2 I10257: EXP ^D2!1B0 K10260: EXP ^D1048576 K10261: EXP ^D524288 K10262: EXP ^D4 I10262: EXP ^D4!1B0 K10267: EXP ^D3 I10267: EXP ^D3!1B0 K10268: EXP ^D6 I10268: EXP ^D6!1B0 K10269: EXP ^D7 I10269: EXP ^D7!1B0 K10270: EXP ^D18 I10270: EXP ^D18!1B0 K10271: EXP ^D262143 K10272: EXP ^D5 I10272: EXP ^D5!1B0 I10273: EXP ^D11!1B0 K10278: EXP ^D8 I10278: EXP ^D8!1B0 I10282: EXP ^D9!1B0 I10284: EXP ^D10!1B0 I10293: EXP ^D31!1B0 I10294: EXP ^D12!1B0 I10296: EXP ^D13!1B0 I10299: EXP ^D14!1B0 I10302: EXP ^D16!1B0 I10303: EXP ^D15!1B0 I10305: EXP ^D17!1B0 K10306: EXP ^D60 I10308: EXP ^D20!1B0 I10311: EXP ^D25!1B0 I10314: EXP ^D26!1B0 I10316: EXP ^D27!1B0 I10320: EXP ^D21!1B0 I10324: EXP ^D22!1B0 I10325: EXP ^D23!1B0 I10328: EXP ^D24!1B0 I10329: EXP ^D30!1B0 I10330: EXP ^D29!1B0 I10331: EXP ^D28!1B0 I10333: EXP ^D19!1B0 I10339: EXP ^D32!1B0 S10048: POINT 7,A10048,35 A10048: BYTE (2)2(16)^D2+1(18)^D7 ASCII 'INTEGER' F10050: BYTE (4)4(4)0(5)^D1(5)0(18)P$$SIZ## F10052: BYTE (4)4(4)0(5)^D1(5)0(18)P$$DTY## F10060: BYTE (4)4(4)0(5)^D1(5)0(18)P$$DAT## F10063: BYTE (4)4(4)0(5)^D2(5)0(18)P$$ARR## A10064: BYTE (2)2(16)^D1+1(18)^D5 ASCII 'TABLE' A10066: BYTE (2)2(16)^D2+1(18)^D6 ASCII 'DEFINE' F10071: BYTE (4)4(4)0(5)^D2(5)0(18)P$$DIF## F10072: BYTE (4)4(4)0(5)^D2(5)0(18)P$$IDT## F10081: BYTE (4)4(4)0(5)^D3(5)0(18)P$$SBS## BRKTB1: EXP 0 BRKTB2: EXP 0 BRKTB3: EXP 0 BRKTB4: EXP 0 V10095: EXP 0 V10096: EXP 0 V10097: EXP 0 N10097: BYTE (4)4(2)2(12)0(18)V10097 V10098: EXP 0 S10098: POINT 7,A10098,35 A10098: BYTE (2)2(16)^D1+1(18)^D1 ASCII 'L' V10099: EXP 0 V10100: EXP 0 V10101: EXP 0 A10102: BYTE (2)2(16)^D2+1(18)^D6 ASCII 'INIEAC' A10103: BYTE (2)2(16)^D2+1(18)^D8 ASCII 'INIEAC()' A10104: BYTE (2)2(16)^D2+1(18)^D6 ASCII 'EACTPH' A10105: BYTE (2)2(16)^D2+1(18)^D8 ASCII 'EACTPH()' A10246: BYTE (2)2(16)^D2+1(18)^D6 ASCII 'PUTLIT' A10247: BYTE (2)2(16)^D1+1(18)^D4 ASCII 'STR1' S10248: POINT 7,A10248,35 A10248: BYTE (2)2(16)^D3+1(18)^D12 ASCII 'PUTLIT(STR1)' S10249: POINT 7,A10249,35 A10249: BYTE (2)2(16)^D3+1(18)^D14 ASCII 'SYM(INAM,ATRB)' S10250: POINT 7,A10250,35 A10250: BYTE (2)2(16)^D4+1(18)^D20 ASCII 'SNT(SNX,STY,SNM,SVL)' N10254: BYTE (4)4(14)0(18)Q10104+^D5 N10256: BYTE (4)4(14)0(18)Q10104+^D6 A10258: BYTE (2)2(16)^D1+1(18)^D4 ASCII 'ATRB' A10259: BYTE (2)2(16)^D1+1(18)^D4 ASCII 'INAM' N10263: BYTE (4)4(14)0(18)Q10104+^D7 N10275: BYTE (4)4(14)0(18)Q10104+^D8 S10276: POINT 7,A10276,35 A10276: BYTE (2)2(16)^D1+1(18)^D1 ASCII 'N' S10280: POINT 7,A10280,35 A10280: BYTE (2)2(16)^D1+1(18)^D1 ASCII 'V' N10286: BYTE (4)4(14)0(18)Q10104+^D9 A10287: BYTE (2)2(16)^D1+1(18)^D3 ASCII 'SNT' S10289: POINT 7,A10289,35 A10289: BYTE (2)2(16)^D4+1(18)^D17 ASCII 'UNDEFINED LABEL: ' N10309: BYTE (4)4(14)0(18)Q10104+^D10 A10313: BYTE (2)2(16)^D1+1(18)^D3 ASCII 'STY' A10315: BYTE (2)2(16)^D1+1(18)^D3 ASCII 'SNM' A10317: BYTE (2)2(16)^D1+1(18)^D3 ASCII 'SVL' A10318: BYTE (2)2(16)^D1+1(18)^D3 ASCII 'SNX' S10319: POINT 7,A10319,35 A10319: BYTE (2)2(16)^D1+1(18)^D1 ASCII '0' N10335: BYTE (4)4(14)0(18)Q10104+^D11 S10336: POINT 7,A10336,35 A10336: BYTE (2)2(16)^D1+1(18)^D1 ASCII '5' Q10104: BYTE (2)2(16)^D11+1(18)0 REPEAT ^D11,<0> Q10105: BYTE (2)2(16)^D19*4+1(18)-^D19 EXP 0 BYTE (5)5(31)0 POINT 7,A10318,35 F10318: BYTE (4)4(4)0(5)20(5)0(18)S$$UDF## EXP 0 BYTE (5)5(31)0 POINT 7,A10317,35 F10317: BYTE (4)4(4)0(5)20(5)0(18)S$$UDF## EXP 0 BYTE (5)5(31)0 POINT 7,A10315,35 F10315: BYTE (4)4(4)0(5)20(5)0(18)S$$UDF## EXP 0 BYTE (5)5(31)0 POINT 7,A10313,35 F10313: BYTE (4)4(4)0(5)20(5)0(18)S$$UDF## EXP 0 BYTE (5)5(31)0 POINT 7,A10287,35 F10287: BYTE (4)4(4)0(5)20(5)0(18)S$$UDF## EXP 0 BYTE (5)5(31)0 POINT 7,A10259,35 F10259: BYTE (4)4(4)0(5)20(5)0(18)S$$UDF## EXP 0 BYTE (5)5(31)0 POINT 7,A10258,35 F10258: BYTE (4)4(4)0(5)20(5)0(18)S$$UDF## EXP 0 BYTE (5)1(31)0 POINT 7,A10247,35 N10247: BYTE (4)4(14)0(18)Q10104+^D4 EXP 0 BYTE (5)5(31)0 POINT 7,A10246,35 F10246: BYTE (4)4(4)0(5)20(5)0(18)S$$UDF## EXP 0 BYTE (5)3(31)0 POINT 7,A10246,35 JRST L10246 EXP 0 BYTE (5)1(31)0 POINT 7,A10246,35 N10246: BYTE (4)4(14)0(18)Q10104+^D3 EXP 0 BYTE (5)5(31)0 POINT 7,A10104,35 EACTPH: BYTE (4)4(4)0(5)^D0(5)0(18)E10104 EXP 0 BYTE (5)3(31)0 POINT 7,A10104,35 JRST L10104 EXP 0 BYTE (5)1(31)0 POINT 7,A10104,35 N10104: BYTE (4)4(14)0(18)Q10104+^D2 EXP 0 BYTE (5)5(31)0 POINT 7,A10102,35 INIEAC: BYTE (4)4(4)0(5)^D0(5)0(18)E10102 EXP 0 BYTE (5)3(31)0 POINT 7,A10102,35 JRST L10102 EXP 0 BYTE (5)1(31)0 POINT 7,A10102,35 N10102: BYTE (4)4(14)0(18)Q10104+^D1 EXP 0 BYTE (5)5(31)0 POINT 7,A10066,35 F10066: BYTE (4)4(4)0(5)^D2(5)0(18)P$$DEF## EXP 0 BYTE (5)5(31)0 POINT 7,A10064,35 F10064: BYTE (4)4(4)0(5)^D2(5)0(18)P$$TBL## POINT 7,A10104,35 Q10000: XWD 0,Q10104 XWD Q10105,^D0 EXP Q10105 XWD ^D9,Q10000 E10102: JSP 13,S$$EFI## POINT 7,A10103,35 EXP 0 XWD ^D10,Q10000 E10104: JSP 13,S$$EFI## POINT 7,A10105,35 EXP 0 END