Trailing-Edge
-
PDP-10 Archives
-
decus_20tap2_198111
-
decus/20-0057/initlz.fas
There are 2 other files named initlz.fas in the archive. Click here to see a list.
;-CROSREF
;* * * * * * * * *
;* * DECLARATIONS * * * * *
;* * * * * * * * *
;*
;* LOCAL
;*
; DECLARE('SNOBOL.SUBPROGRAM','INITLZ')
; DECLARE('OPTION','NO.STNO')
; DECLARE('PURGE.VARIABLE',ALL)
; DECLARE('PURGE.LABEL',ALL)
; DECLARE('EXTERNAL.FUNCTION','INIDEC,INIEXE,INIEAC,INICRS,NEWNAM,
;.INITLA,INITLB,PRTOUT,ERRMSG')
; DECLARE('INTEGER','I,J,K')
; DECLARE('ENTRY.FUNCTION','INITLZ()')
;*
;* 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','INITLZ,SYMBOL,EXNAME')
; DECLARE('UNPURGE.LABEL','INITLZ')
; 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
;INITLZ DATA('SYM(INAM,ATRB)')
TITLE INITLZ
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 INITLZ
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 ERRMSG,PRTOUT,INITLB,INITLA,NEWNAM,INICRS,INIEAC,INIEXE,INIDEC
L10097:
MOVEI 14,Q10002
MOVEM 14,S$$FLP##
MOVE 1,S10241
FCALV$ ^D1,F10060
Q10002:
; DATA('NOD(FRNT,BACK)')
MOVEI 14,Q10003
MOVEM 14,S$$FLP##
MOVE 1,S10242
FCALV$ ^D1,F10060
Q10003:
; INITLA()
MOVEI 14,Q10004
MOVEM 14,S$$FLP##
FCALV$ ^D0,INITLA
Q10004:
; INITLB()
MOVEI 14,Q10005
MOVEM 14,S$$FLP##
FCALV$ ^D0,INITLB
Q10005:
;* * * * * * * * *
;* * INITIALIZE OTHER COMPILATION PHASES * *
;* * * * * * * * *
; INIDEC()
MOVEI 14,Q10006
MOVEM 14,S$$FLP##
FCALV$ ^D0,INIDEC
Q10006:
; INIEXE()
MOVEI 14,Q10007
MOVEM 14,S$$FLP##
FCALV$ ^D0,INIEXE
Q10007:
; INIEAC()
MOVEI 14,Q10008
MOVEM 14,S$$FLP##
FCALV$ ^D0,INIEAC
Q10008:
; INICRS()
MOVEI 14,Q10009
MOVEM 14,S$$FLP##
FCALV$ ^D0,INICRS
Q10009:
;* * * * * * * * *
;* * FREEZE THE COMPILER AT THIS POINT * *
;* * * * * * * * *
; FREEZE()
MOVEI 14,Q10010
MOVEM 14,S$$FLP##
SUB 16,S$$STB##
MOVEM 16,S$$STS##
JSA 16,F$$FRZ##
ADD 16,S$$STB##
MOVE 1,0
Q10010:
; STRTIM = TIME()
MOVEI 14,Q10011
MOVEM 14,S$$FLP##
FCALV$ ^D0,F10045
DASGN$ 2,STRTIM
Q10011:
;* * * * * * * * *
;* * UPON RESTART, DECODE COMMAND LINE * *
;* * * * * * * * *
;COMLIN OUTPUTC = CRLCHR '*'
L10243:
MOVEI 14,Q10012
MOVEM 14,S$$FLP##
MOVE 1,@CRLCHR
PUSH 16,1
MOVE 1,S10244
JSP 14,S$$CNC##
EXP ^D2
MOVEM 1,@S$$OUC##
Q10012:
; C = INPUT '?'
MOVEI 14,Q10013
MOVEM 14,S$$FLP##
MOVE 1,@S$$INP##
PUSH 16,1
MOVE 1,S10245
JSP 14,S$$CNC##
EXP ^D2
MOVEM 1,@C
Q10013:
; P =
MOVEI 14,Q10014
MOVEM 14,S$$FLP##
SETZM P
Q10014:
; &ERRLIMIT = 1
MOVE ^D1,K10246
MOVEM 1,S$$KWD##+^D14
; FILSMT = TAB(*P) (BREAK(':,?' EQLCHR) . DEV ':' ! '' . DEV) @P
;. BREAK('.,?' EQLCHR) . FIL @P ('.' BREAK(',?' EQLCHR) ! '') . EXT @P
MOVEI 14,Q10020
MOVEM 14,S$$FLP##
MOVE 1,S10248
PUSH 16,1
MOVE 1,@EQLCHR
JSP 14,S$$CNC##
EXP ^D2
JSP 11,S$$MBT##
EXP .
PUSH 16,1
MOVE 1,S10251
PUSH 16,1
MOVE 1,@EQLCHR
JSP 14,S$$CNC##
EXP ^D2
JSP 11,S$$MBT##
EXP .
PUSH 16,1
MOVE 1,S10254
PUSH 16,1
MOVE 1,@EQLCHR
JSP 14,S$$CNC##
EXP ^D2
JSP 11,S$$MBT##
EXP .
PUSH 16,1
JSP 14,S$$GPB##
XWD ^D-4,Q10019
MOVE ^D1,P
JUMPL 1,S$$MIE##
JSP 11,S$$TAB##
JSP 11,S$$APS##
XWD .-.,Q10016
JSP 11,S$$VAS##
MOVE 1,^D1(15)
JSP 11,S$$BRK##
MOVE 1,N10249
JSP 11,S$$CVA##
MOVE 1,S10250
JSP 11,S$$MST##
JRST Q10015
Q10016:
JSP 11,S$$APF##
JSP 11,S$$VAS##
MOVE 1,N10249
JSP 11,S$$CVA##
Q10015:
HRRZ 1,@S$$SJC##
SUBI 1,(13)
MOVEM 1,P
JSP 11,S$$VAS##
MOVE 1,^D2(15)
JSP 11,S$$BRK##
MOVE 1,N10252
JSP 11,S$$CVA##
HRRZ 1,@S$$SJC##
SUBI 1,(13)
MOVEM 1,P
JSP 11,S$$VAS##
JSP 11,S$$APS##
XWD .-.,Q10018
MOVE 1,S10253
JSP 11,S$$MST##
MOVE 1,^D3(15)
JSP 11,S$$BRK##
JRST Q10017
Q10018:
JSP 11,S$$APF##
Q10017:
MOVE 1,N10255
JSP 11,S$$CVA##
HRRZ 1,@S$$SJC##
SUBI 1,(13)
MOVEM 1,P
JRST S$$PTS##
Q10019:
MOVEM 1,@N10247
Q10020:
;* OBJECT FILE
;OBJFIL C FILSMT ',' @P :F(BADCOM)
L10256:
MOVEI 14,L10258
MOVEM 14,S$$FLP##
MOVE 1,@C
PUSH 16,1
MOVE 1,@N10247
JSP 11,S$$MKP##
PUSH 16,1
JSP 14,S$$MTX##
XWD ^D2,0
MOVE 1,^D1(15)
JSP 11,S$$PTX##
MOVE 1,S10257
JSP 11,S$$MST##
HRRZ 1,@S$$SJC##
SUBI 1,(13)
MOVEM 1,P
JSP 11,S$$MTS##
; ?IGT(P,1) :F(LSTFIL)
MOVEI 14,L10259
MOVEM 14,S$$FLP##
SUB 16,S$$STB##
MOVEM 16,S$$STS##
JSA 16,F$$GTP##
JUMP 0,P
JUMP 0,K10246
ADD 16,S$$STB##
SETZ 1,
; DEV = ?IDENT(DEV) 'DSK'
MOVEI 14,Q10021
MOVEM 14,S$$FLP##
MOVE 1,@N10249
FCALV$ ^D1,F10072
SETZ 1,
MOVE 1,S10260
MOVEM 1,@N10249
Q10021:
; OPEN(DEV '(2)',1) :F(BADCOM)
MOVEI 14,L10258
MOVEM 14,S$$FLP##
MOVE 1,@N10249
PUSH 16,1
MOVE 1,S10261
JSP 14,S$$CNC##
EXP ^D2
PUSH 16,1
MOVE 1,I10246
FCALV$ ^D2,F10068
; DIFFER(FIL) :F(OBJF1)
MOVEI 14,L10262
MOVEM 14,S$$FLP##
MOVE 1,@N10252
FCALV$ ^D1,F10071
; EXT = ?IDENT(EXT) '.MAC'
MOVEI 14,Q10022
MOVEM 14,S$$FLP##
MOVE 1,@N10255
FCALV$ ^D1,F10072
SETZ 1,
MOVE 1,S10263
MOVEM 1,@N10255
Q10022:
; ENTER(FIL EXT,1) :F(BADCOM)
MOVEI 14,L10258
MOVEM 14,S$$FLP##
MOVE 1,@N10252
PUSH 16,1
MOVE 1,@N10255
JSP 14,S$$CNC##
EXP ^D2
PUSH 16,1
MOVE 1,I10246
FCALV$ ^D2,F10070
;OBJF1 OUTPUT('OBJLIN',1,500) :F(BADCOM)
L10262:
MOVEI 14,L10258
MOVEM 14,S$$FLP##
MOVE 1,S10264
PUSH 16,1
MOVE 1,I10246
PUSH 16,1
MOVE 1,I10265
FCALV$ ^D3,F10002
; OUTPUT('OBJCHR',1,-1) :F(BADCOM)
MOVEI 14,L10258
MOVEM 14,S$$FLP##
MOVE 1,S10266
PUSH 16,1
MOVE 1,I10246
PUSH 16,1
MOVN ^D1,K10246
TLO 1,1B18
TLZ 1,1B19
FCALV$ ^D3,F10002
; OBJFLG = 1
MOVE ^D1,K10246
MOVEM 1,OBJFLG
;* LISTING FILE
;LSTFIL I = P + 1
L10259:
MOVE ^D1,P
ADD ^D1,K10246
MOVEM 1,V10094
; C FILSMT ANY(EQLCHR) @P :F(BADCOM)
MOVEI 14,L10258
MOVEM 14,S$$FLP##
MOVE 1,@C
PUSH 16,1
MOVE 1,@N10247
JSP 11,S$$MKP##
PUSH 16,1
MOVE 1,@EQLCHR
JSP 11,S$$MBT##
EXP .
PUSH 16,1
JSP 14,S$$MTX##
XWD ^D3,0
MOVE 1,^D1(15)
JSP 11,S$$PTX##
MOVE 1,^D2(15)
JSP 11,S$$ANY##
HRRZ 1,@S$$SJC##
SUBI 1,(13)
MOVEM 1,P
JSP 11,S$$MTS##
; ?IGT(P,I) :F(SRCFIL)
MOVEI 14,L10267
MOVEM 14,S$$FLP##
SUB 16,S$$STB##
MOVEM 16,S$$STS##
JSA 16,F$$GTP##
JUMP 0,P
JUMP 0,V10094
ADD 16,S$$STB##
SETZ 1,
; DEV = ?IDENT(DEV) 'DSK'
MOVEI 14,Q10023
MOVEM 14,S$$FLP##
MOVE 1,@N10249
FCALV$ ^D1,F10072
SETZ 1,
MOVE 1,S10260
MOVEM 1,@N10249
Q10023:
; OPEN(DEV '(2)',2) :F(BADCOM)
MOVEI 14,L10258
MOVEM 14,S$$FLP##
MOVE 1,@N10249
PUSH 16,1
MOVE 1,S10261
JSP 14,S$$CNC##
EXP ^D2
PUSH 16,1
MOVE 1,I10268
FCALV$ ^D2,F10068
; DIFFER(FIL) :F(LSTF1)
MOVEI 14,L10269
MOVEM 14,S$$FLP##
MOVE 1,@N10252
FCALV$ ^D1,F10071
; ENTER(FIL EXT,2) :F(BADCOM)
MOVEI 14,L10258
MOVEM 14,S$$FLP##
MOVE 1,@N10252
PUSH 16,1
MOVE 1,@N10255
JSP 14,S$$CNC##
EXP ^D2
PUSH 16,1
MOVE 1,I10268
FCALV$ ^D2,F10070
;LSTF1 OUTPUT('LSTLIN',2,500) :F(BADCOM)
L10269:
MOVEI 14,L10258
MOVEM 14,S$$FLP##
MOVE 1,S10270
PUSH 16,1
MOVE 1,I10268
PUSH 16,1
MOVE 1,I10265
FCALV$ ^D3,F10002
; OUTPUT('LSTCHR',2,-1) :F(BADCOM)
MOVEI 14,L10258
MOVEM 14,S$$FLP##
MOVE 1,S10271
PUSH 16,1
MOVE 1,I10268
PUSH 16,1
MOVN ^D1,K10246
TLO 1,1B18
TLZ 1,1B19
FCALV$ ^D3,F10002
; LISTSR = 1
MOVE ^D1,K10246
MOVEM 1,LISTSR
;* SOURCE FILE
;SRCFIL I = P + 1
L10267:
MOVE ^D1,P
ADD ^D1,K10246
MOVEM 1,V10094
; C FILSMT '?' @P RPOS(0) :F(BADCOM)
MOVEI 14,L10258
MOVEM 14,S$$FLP##
MOVE 1,@C
PUSH 16,1
MOVE 1,@N10247
JSP 11,S$$MKP##
PUSH 16,1
JSP 14,S$$MTX##
XWD ^D2,0
MOVE 1,^D1(15)
JSP 11,S$$PTX##
MOVE 1,S10245
JSP 11,S$$MST##
HRRZ 1,@S$$SJC##
SUBI 1,(13)
MOVEM 1,P
HRRZ 1,K10272
CAIE 1,(13)
POPJ 16,
JSP 11,S$$MTS##
; ?IGT(P,I) :F(BADCOM)
MOVEI 14,L10258
MOVEM 14,S$$FLP##
SUB 16,S$$STB##
MOVEM 16,S$$STS##
JSA 16,F$$GTP##
JUMP 0,P
JUMP 0,V10094
ADD 16,S$$STB##
SETZ 1,
; DEV = ?IDENT(DEV) 'DSK'
MOVEI 14,Q10024
MOVEM 14,S$$FLP##
MOVE 1,@N10249
FCALV$ ^D1,F10072
SETZ 1,
MOVE 1,S10260
MOVEM 1,@N10249
Q10024:
; OPEN(DEV '(0,2)',3) :F(BADCOM)
MOVEI 14,L10258
MOVEM 14,S$$FLP##
MOVE 1,@N10249
PUSH 16,1
MOVE 1,S10273
JSP 14,S$$CNC##
EXP ^D2
PUSH 16,1
MOVE 1,I10274
FCALV$ ^D2,F10068
; DIFFER(FIL) :F(SRCF1)
MOVEI 14,L10275
MOVEM 14,S$$FLP##
MOVE 1,@N10252
FCALV$ ^D1,F10071
; EXT = ?IDENT(EXT) '.SNO'
MOVEI 14,Q10025
MOVEM 14,S$$FLP##
MOVE 1,@N10255
FCALV$ ^D1,F10072
SETZ 1,
MOVE 1,S10276
MOVEM 1,@N10255
Q10025:
; LOOKUP(FIL EXT,3) :F(BADCOM)
MOVEI 14,L10258
MOVEM 14,S$$FLP##
MOVE 1,@N10252
PUSH 16,1
MOVE 1,@N10255
JSP 14,S$$CNC##
EXP ^D2
PUSH 16,1
MOVE 1,I10274
FCALV$ ^D2,F10069
;SRCF1 INPUT('SRCLIN',3,132) :F(BADCOM)
L10275:
MOVEI 14,L10258
MOVEM 14,S$$FLP##
MOVE 1,S10277
PUSH 16,1
MOVE 1,I10274
PUSH 16,1
MOVE 1,I10278
FCALV$ ^D3,F10000
; PRTOUT(SPLASH INDENT '** FASBOL II COMPILER V 1.0 (JUNE,1972) **
;.' CRLCHR SPLASH CRLCHR 'COMPILATION DONE ON ' DATE() ' AT ' DAYTIM()
;. CRLCHR CRLCHR)
MOVEI 14,Q10026
MOVEM 14,S$$FLP##
MOVE 1,@SPLASH
PUSH 16,1
MOVE 1,@INDENT
PUSH 16,1
MOVE 1,S10279
PUSH 16,1
MOVE 1,@CRLCHR
PUSH 16,1
MOVE 1,@SPLASH
PUSH 16,1
MOVE 1,@CRLCHR
PUSH 16,1
MOVE 1,S10280
PUSH 16,1
FCALV$ ^D0,F10044
PUSH 16,1
MOVE 1,S10281
PUSH 16,1
FCALV$ ^D0,F10046
PUSH 16,1
MOVE 1,@CRLCHR
PUSH 16,1
MOVE 1,@CRLCHR
JSP 14,S$$CNC##
EXP ^D12
FCALV$ ^D1,PRTOUT
Q10026:
; &ERRLIMIT =
MOVEI 14,Q10027
MOVEM 14,S$$FLP##
SETZM S$$KWD##+^D14
Q10027:
; OUTPUT('OUTPUT',0,500)
MOVEI 14,Q10028
MOVEM 14,S$$FLP##
MOVE 1,S10002
PUSH 16,1
MOVE 1,I10272
PUSH 16,1
MOVE 1,I10265
FCALV$ ^D3,F10002
Q10028:
; INITLZ = $'SRCLIN' :S(RETURN)
MOVEI 14,Q10029
MOVEM 14,S$$FLP##
MOVE 1,S10277
JSP 14,S$$IVV##
MOVEM 1,@N10097
JRST S$$SRT##
Q10029:
;* IMMEDIATE EOF
; ERRMSG('NO SOURCE PROGRAM') :(FRETURN)
MOVEI 14,S$$FRT##
MOVEM 14,S$$FLP##
MOVE 1,S10282
FCALV$ ^D1,ERRMSG
JRST S$$FRT##
;* BAD COMMAND LINE
;BADCOM OUTPUT = DUPL(' ',P) '^'
L10258:
MOVEI 14,Q10030
MOVEM 14,S$$FLP##
MOVE 1,S10283
PUSH 16,1
MOVE ^D1,P
TLO 1,1B18
TLZ 1,1B19
FCALV$ ^D2,F10065
PUSH 16,1
MOVE 1,S10284
JSP 14,S$$CNC##
EXP ^D2
MOVEM 1,@S$$OUT##
Q10030:
; OUTPUT = '*BAD COMMAND LINE*'
MOVEI 14,Q10031
MOVEM 14,S$$FLP##
MOVE 1,S10285
MOVEM 1,@S$$OUT##
Q10031:
; RELEASE() :(COMLIN)
MOVEI 14,L10243
MOVEM 14,S$$FLP##
FCALV$ ^D0,F10059
JRST L10243
;END
JRST S$$SXT##
Q10001: BLOCK ^D0
K10246: EXP ^D1
I10246: EXP ^D1!1B0
I10265: EXP ^D500!1B0
I10268: EXP ^D2!1B0
K10272: EXP ^D0
I10272: EXP ^D0!1B0
I10274: EXP ^D3!1B0
I10278: EXP ^D132!1B0
F10000: BYTE (4)4(4)0(5)^D3(5)0(18)P$$INP##
F10002: BYTE (4)4(4)0(5)^D3(5)0(18)P$$OUT##
S10002: POINT 7,A10002,35
A10002: BYTE (2)2(16)^D2+1(18)^D6
ASCII 'OUTPUT'
F10044: BYTE (4)4(4)0(5)^D0(5)0(18)P$$DTE##
F10045: BYTE (4)4(4)0(5)^D0(5)0(18)P$$TIM##
F10046: BYTE (4)4(4)0(5)^D0(5)0(18)P$$DTM##
F10050: BYTE (4)4(4)0(5)^D1(5)0(18)P$$SIZ##
F10053: BYTE (4)4(4)0(5)^D1(5)0(18)P$$CPY##
F10059: BYTE (4)4(4)0(5)^D1(5)0(18)P$$RLS##
F10060: BYTE (4)4(4)0(5)^D1(5)0(18)P$$DAT##
F10061: BYTE (4)4(4)0(5)^D2(5)0(18)P$$LGT##
F10063: BYTE (4)4(4)0(5)^D2(5)0(18)P$$ARR##
F10064: BYTE (4)4(4)0(5)^D2(5)0(18)P$$TBL##
F10065: BYTE (4)4(4)0(5)^D2(5)0(18)P$$DUP##
F10066: BYTE (4)4(4)0(5)^D2(5)0(18)P$$DEF##
F10068: BYTE (4)4(4)0(5)^D2(5)0(18)P$$OPN##
F10069: BYTE (4)4(4)0(5)^D2(5)0(18)P$$LKF##
F10070: BYTE (4)4(4)0(5)^D2(5)0(18)P$$NTF##
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##
V10094: EXP 0
V10095: EXP 0
V10096: EXP 0
A10097: BYTE (2)2(16)^D2+1(18)^D6
ASCII 'INITLZ'
A10098: BYTE (2)2(16)^D2+1(18)^D8
ASCII 'INITLZ()'
A10239: BYTE (2)2(16)^D2+1(18)^D6
ASCII 'SYMBOL'
A10240: BYTE (2)2(16)^D2+1(18)^D6
ASCII 'EXNAME'
S10241: POINT 7,A10241,35
A10241: BYTE (2)2(16)^D3+1(18)^D14
ASCII 'SYM(INAM,ATRB)'
S10242: POINT 7,A10242,35
A10242: BYTE (2)2(16)^D3+1(18)^D14
ASCII 'NOD(FRNT,BACK)'
S10244: POINT 7,A10244,35
A10244: BYTE (2)2(16)^D1+1(18)^D1
ASCII '*'
S10245: POINT 7,A10245,35
A10245: BYTE (2)2(16)^D1+1(18)^D1
ASCII '?'
N10247: BYTE (4)4(14)0(18)Q10032+^D4
S10248: POINT 7,A10248,35
A10248: BYTE (2)2(16)^D1+1(18)^D3
ASCII ':,?'
N10249: BYTE (4)4(14)0(18)Q10032+^D5
S10250: POINT 7,A10250,35
A10250: BYTE (2)2(16)^D1+1(18)^D1
ASCII ':'
S10251: POINT 7,A10251,35
A10251: BYTE (2)2(16)^D1+1(18)^D3
ASCII '.,?'
N10252: BYTE (4)4(14)0(18)Q10032+^D6
S10253: POINT 7,A10253,35
A10253: BYTE (2)2(16)^D1+1(18)^D1
ASCII '.'
S10254: POINT 7,A10254,35
A10254: BYTE (2)2(16)^D1+1(18)^D2
ASCII ',?'
N10255: BYTE (4)4(14)0(18)Q10032+^D7
S10257: POINT 7,A10257,35
A10257: BYTE (2)2(16)^D1+1(18)^D1
ASCII ','
S10260: POINT 7,A10260,35
A10260: BYTE (2)2(16)^D1+1(18)^D3
ASCII 'DSK'
S10261: POINT 7,A10261,35
A10261: BYTE (2)2(16)^D1+1(18)^D3
ASCII '(2)'
S10263: POINT 7,A10263,35
A10263: BYTE (2)2(16)^D1+1(18)^D4
ASCII '.MAC'
S10264: POINT 7,A10264,35
A10264: BYTE (2)2(16)^D2+1(18)^D6
ASCII 'OBJLIN'
S10266: POINT 7,A10266,35
A10266: BYTE (2)2(16)^D2+1(18)^D6
ASCII 'OBJCHR'
S10270: POINT 7,A10270,35
A10270: BYTE (2)2(16)^D2+1(18)^D6
ASCII 'LSTLIN'
S10271: POINT 7,A10271,35
A10271: BYTE (2)2(16)^D2+1(18)^D6
ASCII 'LSTCHR'
S10273: POINT 7,A10273,35
A10273: BYTE (2)2(16)^D1+1(18)^D5
ASCII '(0,2)'
S10276: POINT 7,A10276,35
A10276: BYTE (2)2(16)^D1+1(18)^D4
ASCII '.SNO'
S10277: POINT 7,A10277,35
A10277: BYTE (2)2(16)^D2+1(18)^D6
ASCII 'SRCLIN'
S10279: POINT 7,A10279,35
A10279: BYTE (2)2(16)^D9+1(18)^D42
ASCII '** FASBOL II COMPILER V 1.0 (JUNE,1972) **'
S10280: POINT 7,A10280,35
A10280: BYTE (2)2(16)^D4+1(18)^D20
ASCII 'COMPILATION DONE ON '
S10281: POINT 7,A10281,35
A10281: BYTE (2)2(16)^D1+1(18)^D4
ASCII ' AT '
S10282: POINT 7,A10282,35
A10282: BYTE (2)2(16)^D4+1(18)^D17
ASCII 'NO SOURCE PROGRAM'
S10283: POINT 7,A10283,35
A10283: BYTE (2)2(16)^D1+1(18)^D1
ASCII ' '
S10284: POINT 7,A10284,35
A10284: BYTE (2)2(16)^D1+1(18)^D1
ASCII '^'
S10285: POINT 7,A10285,35
A10285: BYTE (2)2(16)^D4+1(18)^D18
ASCII '*BAD COMMAND LINE*'
Q10032: BYTE (2)2(16)^D7+1(18)0
REPEAT ^D7,<0>
Q10033: BYTE (2)2(16)^D5*4+1(18)-^D5
EXP 0
BYTE (5)1(31)0
POINT 7,A10240,35
N10240: BYTE (4)4(14)0(18)Q10032+^D3
EXP 0
BYTE (5)1(31)0
POINT 7,A10239,35
N10239: BYTE (4)4(14)0(18)Q10032+^D2
EXP 0
BYTE (5)5(31)0
POINT 7,A10097,35
INITLZ: BYTE (4)4(4)0(5)^D0(5)0(18)E10097
EXP 0
BYTE (5)3(31)0
POINT 7,A10097,35
JRST L10097
EXP 0
BYTE (5)1(31)0
POINT 7,A10097,35
N10097: BYTE (4)4(14)0(18)Q10032+^D1
POINT 7,A10097,35
Q10000: XWD 0,Q10032
XWD Q10033,^D0
EXP Q10033
XWD ^D7,Q10000
E10097: JSP 13,S$$EFI##
POINT 7,A10098,35
EXP 0
END