Trailing-Edge
-
PDP-10 Archives
-
decuslib10-04
-
43,50355/pilunv.mac
There is 1 other file named pilunv.mac in the archive. Click here to see a list.
SUBTTL DEFINITIONS
SEARCH MACTEN
.DIRECTIVE .NOBIN
;BRUCE TANNER - CERRITOS COLLEGE
DEFINE .UNIV (V,E),<
UNIVERSAL PILUNV - PILOT UNIVERSAL PARAMETER FILE - PILOT V(E)
>
;VERSION
PILWHO==0
PILVER==5
PILMIN==0
PILEDT==203
%PLVER==VRSN. PIL
.UNIV (\PILVER,\PILEDT); ;NOW MAKE UNIVERSAL
TAB==11 ;ASCII CHARACTERS
LF==12
VT==13
FF==14
CR==15
SPACE==40
DOLLAR=="$"
COMMA==","
COLON==":"
AT=="@"
;FLAGS LH (PERM.)
FL.CCL==1 ;CCL INPUT
;FLAGS RH (TEMP.)
FR.IGS==1 ;IGNORE SPACES
FR.LST==2 ;LISTING OUTPUT
FR.P2==4 ;PASS 2
FR.BOM==10 ;FATAL ERROR OCCURED
FR.SUP==20 ;SUPRESSING <CRLF>
FR.TLT==40 ;LITERAL STRING SEEN
FR.TTG==100 ;TAG SEEN
FR.EOF==200 ;YES MARTHA, WE HAVE HIT AN EOF.
FR.NLC==400 ;NO LOWER CASE CHARS. ALLOWED
FR.GLB==1000 ;THIS IS A GLOBAL SYMBOL
FR.MAP==2000 ;GIVE MAP
FR.HLP==4000 ;GIVE HELP
FR.TTY==10000 ;NO TTY OUTPUT ON ERRORS
FR.END==20000 ;NO START ADDRESS
FR.TAT==40000 ;AN @ IN TYPE COMMAND
FR.TAL==FR.TLT!FR.TTG!FR.TAT ;ALL THE TEMP "TYPE" FLAGS
ND SYMAX,^D200 ;SYMBOL TABLE MAX
ND PDLEN,-100 ;USER PROGRAM PDL LENGTH
ND WORK,^D20 ;100 CHAR WORKING STORAGE IN PILOTS
ND TAGSIZ,^D15 ;WORDS/STORAGE LOC
ND PAGSIZ,^D53 ;LINES/PAGE
OPDEF ACCPT. [1B8] ;USES AC FIELD
OPDEF MATCH. [2B8]
OPDEF MATX. [3B8]
OPDEF EXIT. [4B8]
OPDEF IN. [5B8] ;USES AC FIELD
OPDEF OUT. [6B8] ;USES AC FIELD
OPDEF NMAT. [7B8]
OPDEF GET. [10B8] ;USES AC FIELD
OPDEF CALL. [EXIT. 1,]
OPDEF LOG. [EXIT. 2,]
OPDEF QUIT. [EXIT. 3,]
OPDEF JERK. [EXIT. 4,]
OPDEF GETC. [EXIT. 5,]
OPDEF GETR. [EXIT. 6,]
OPDEF GETD. [EXIT. 7,]
OPDEF GETT. [EXIT. 10,]
OPDEF GETL. [EXIT. 11,]
OPDEF MATL. [NMAT. 1,]
OPDEF NMATL. [NMAT. 2,]
OPDEF MATG. [NMAT. 3,]
OPDEF NMATG. [NMAT. 4,]
OPDEF TRAP. [14B8]
OPDEF CJUMP. [15B8]
OPDEF CPUSH. [16B8]
OPDEF PUT. [17B8] ;USES AC FIELD
OPDEF STRN. [20B8]
OPDEF UNSTR. [STRN. 1,]
OPDEF COMP. [21B8]
OPDEF CPLUS. [COMP. 1,]
OPDEF CMIN. [COMP. 2,]
OPDEF CMULT. [COMP. 3,]
OPDEF CDIV. [COMP. 4,]
OPDEF INDEX. [22B8] ;USES AC FIELD
OPDEF PJRST [JRST]
F=0 ;FLAGS
T1=1
T2=2
T3=3 ;TEMP REGISTERS
T4=4
I=5 ;HOLDS INPUT CHAR
BUFPTR=6 ;POINTER TO BUF
BUF=7 ;1 WORD OF ASCII DATA
P1=10 ;SEMI-TEMP AND
P2=11 ;LIST FILE REGISTERS
P3=12
P4=13
LC=15 ;HOLDS LOC OF START OF COMMAND
W=16 ;GARBAGE DISPOSAL
P=17 ;PDL POINTER
IN==1 ;INPUT FILE
OUT==2 ;OUTPUT
LST==3 ;LIST FILE
TMPC==4 ;TEMP DISK FILE
DEFINE .TITLE (HEAD),<
..TTL (HEAD,\PILVER,\PILEDT)
>
DEFINE ..TTL (HEAD,V,E),<
TITLE HEAD - PILOT V(E) * BRUCE TANNER - CERRITOS COLLEGE
SEARCH JOBDAT,MACTEN
IFIDN <HEAD> <PILOT INITIALIZATION>,<
LOC .JBVER
EXP %PLVER
.REQUEST REL:HELPER
>
IF2, <PRINTX HEAD ON PASS 2
>
TWOSEG
RELOC 400000
GLOBS
SALL
>
DEFINE GLOBS,<
GLOB <LINE,LOC,IBUF,LOOKIT,PROGRM,SYMTAB,TAGSIZ>
GLOB <LSTBUF,PASS1B,EDLINE,LINCNT,PAGE,SUBPAGE,PAGSIZ>
GLOB <START,FSTLOC,LITLOC,ENDLOC,ERRORS,SYMAX>
GLOB <R50NAM,RDX51,STRTIM,OBUF,RELNAM,RELEXT,COMND>
GLOB <FILNAM,FILEXT,DEVICE,LSTNAM,LSTEXT,LSTDEV,LASTOP>
GLOB <PPN,TBUF,TMPPTR,PDL,SVJBFF,LODREL,CHKCPU,ENDLOW,.HELPR>>
DEFINE BOMB (X),<
JRST [MOVEI T1,X
JRST PUNT]>
DEFINE STORE (X),<
PUSHJ P,[MOVE T1,[X]
JRST STOREX]>
DEFINE SW (X,Y),<
XALL
XWD "X",Y
SALL>
DEFINE MONMAC (X),<
XALL
IRP X,<ASCII /-X-/ >
SALL>
DEFINE FATALS ,<
FX 2TAG,MULTIPLY DEFINED TAG
FX DISS,FILE DISSAPPEARED!
FX NTAG,NO TAG FOUND
FX SYOV,SYMBOL TABLE OVERFLOW -- COMPILER ERROR
FX UNDF,UNDEFINED TAG
FX SYNC,MEMORY OUT OF SYNC -- COMPILER ERROR
FX NCOR,NOT ENOUGH CORE FOR PROGRAM
FX IDLM,NO COMMA IN STRING
FX COMP,ILLEGAL COMPUTE SYNTAX
FX ...$,$ IN TAG
FX SCAN,BAD OPCODE
>
DEFINE FX(FLAG,DEF),<
F.'FLAG==ZZ
ZZ==ZZ+1>
ZZ==0
FATALS
DEFINE CNAMES,<
C *,TAG,EATAG
C T,TYPE,TYPE2
C TY,TYPEY,TYPYN2
C Y,TYPEY,TYPYN2
C TN,TYPEN,TYPYN2
C N,TYPEN,TYPYN2
C J,JMP,JMP2
C JY,JY,JYN2
C JN,JN,JYN2
C U,GOSUB,GOSUB2
C UY,GOSBY,GOYN2
C UN,GOSBN,GOYN2
C L,LINK,WASTE2
C LY,LINKY,LYN2
C LN,LINKN,LYN2
C S,ENTRYP,WASTE
C D,DIMENS,WASTE
C A,ACCEPT,ACEPT2
C AL,ALINE,ALINE2
C M,MATCH,MATCH2
C ME,ME,MATCH2
C MG,MG,MATCH2
C ML,ML,MATCH2
C C,COMPUT,COMP2
C CY,CY,CYN2
C CN,CN,CYN2
C E,EX,EXIT2
C EY,EY,EYN2
C EN,EN,EYN2
C EC,EC,EC2
C EL,EL,EXIT2
C EQ,EQ,EXIT2
C OI,OPENIN,OPEN2
C OO,OPENOT,OPEN2
C G,GETIT,GET2
C GY,GY,GYN2
C GN,GN,GYN2
C GC,GC,GET2
C GR,GR,GET2
C GD,GD,GET2
C GT,GT,GET2
C GL,GL,GET2
C P,PUTIT,GET2
C PY,PY,GYN2
C PN,PN,GYN2
C CS,STR,GET2
C BS,UNSTR,GET2
C I,TRAPIT,TRAP2
C IY,TRAPY,TRPYN2
C IN,TRAPN,TRPYN2
C NUM,NUMX,WASTE
C R,WASTE,WASTE>
END