The section in Appendix 13 has been slightly amended. The file list is now as follows:
PZ Illegal packing mode detected after FMODE argument has been checked FL Illegal packing mode read from a previously packed file RE Illegal FIDF argument used OB Display routine number read from file is out of range FI Illegal FIDF call AD Illegal ADVFLM call AG Routines not implemented AR Index variable feature not implemented SE Illegal visibility marker
In the PLAN routines:
AN Illegal name as argument to ANAME DC Illegal name when converting packed name to characters SD SD4020 routine called with NOSD included LG Lineprinter Graphical routine called with NOLPG included TK Tektronix routine called with NOTK included LP Lineprinter output called with NOLP included NW Own device called with NONEW included HP Hewlett-Packard routine called with NOHP included
NAME PR ARGUMENTS MEANING (PR=PRIORITY) 0 NULL (P1) 1 SETXY 1 (X,Y) XPOS=X,YPOS=Y 2 TODXY 1 (DX,DY) LINE FROM XPOS,YPOS TO (XPOS+DX,YPOS+DY) 3 UPDXY 1 (DX,DY) XPOS=XPOS+DX,YPOS=YPOS+DY 4 DRCTH 1 (DIR) DIR:XPOS=XMIN,XMAX YPOS=YMIN,YMAX 5 DRAW 1 (FILE) DRAW FILE 6 NUMBR 1 (XN) XN IS NUMBER OF NEXT FILE CALLED OR DEFINED 7 PLOT 1 (X) PLOTS HARDWARE CHARACTER DEFINED BY SPROGS NUMBER X 8 FIDF 1 (X) FINISHES A FILE DEFINITION. RESETS GLOBAL ACCORDING TO X 9 STRACE 1 (XN,XM) OUTPUT TRACE INFORMATION 10 RLNUMB 1 (XN) CURRENT FILE NUMBER * XN 11 SHIFTD 1 (XN) SET LOWER SHIFT CHARACTER XN 12 5HIFTU 1 (XN) SET UPPER SHIFT CHARACTER XN 13 TEXPAN 1 (EXT,EYT) SET TEXT EXPANSION FACTORS 14 TEXSW 1 (XSW) SWITCH TEXT EXPANSION ON AND OFF 15 ADVCNT 1 (X) OUTPUT FRAMES X TIMES 16 EXPAN 1 (EOX,EOY,EX,EY) EXPAND ABOUT (EOX,EOY) BY FACTOR(EX,EY) 17 ROTN 1 (ROX,ROY,RXY) ROTATE ABOUT (ROX,ROY) RXY RADIANS 18 ERDR 1 (ERDRV) ROTATION BEFORE EXPANSION 19 INTNST 1 (XINT) CHANGES LINE INTENSITY 20 THICK 1 (THK) CHANGES LINE THICKNESS 21 DOTTED 1 (DOT,DOTYP) CHANGES LINE TYPE 22 IFS (VAL2,CDTN,VAL2) ONE-SHOT WHILE 23 ADSQLG 1 (FILE,Y,Z) ADD FILE TO SEQUENCE LIST STARTING WITH GLOBAL CONDITIONS. Z VARIABLES, Y MARKER 24 DLSQLS 1 (FILE) DELETE FILE FROM SEQUENCE LIST 25 SPSQLS 1 (FILE) SUSPEND FILE IN SEQUENCE LIST 26 RSSQL5 1 (FILE) RESTART FILE IN SEQUENCE LIST 27 5TOPSQ 1 TERMINATE SEQUENCE COMPLETELY 28 REPEAT 1 REPEAT FILE FROM START 29 PRINV (XINDX) PRINT VALUE OF INDEX VARIABLE 30 SETX 1 (X) XPOS = X 31 SETY 1 (Y) YPOS = Y 32 TOXY 2 (X,Y) TODXY (X=XPOS,Y=YPOS) 33 VEC2 (X1,Y1,X2,Y2) SETXY (x1,Y1) TODXY (X2=X1,Y2=Y1) 34 UPDX 1 (DX) XPOS=XPOS+DX 35 UPDY 1 (DY) YPOS=YPOS+DY 36 LEFT 2 DRCTN(1,0) 37 RIGHT 2 DRCTN(3,0) 38 DOWN 2 DRCTN(2,0) 39 UP 2 DRCTN(4,0) 40 LNTYP 2 (XINT,THK,DOT,DOTYP) INTNST(XINT);THICK(THK);DOTTED(DOT,DOTYP) 41 REGION (REG) SELECT REGION REG 42 RGLIM (R,XMIN,YMIN,XMAX,YMAX) RESET LIMITS OP R 43 RGPLIM (R,P,XMIN,YMIN,XMAX,YMAX) REDEFINE R IN TERMS OF P 44 RGPRM (R,CNV,BSC,XMI,XMO,SWOUTP) REDEFINE PARAMETERS 45 ADVFLM ADVANCE FILM 46 LOAD (XINDX,VAL) VARIABLE XINDX = VAL 47 ADD (XINDX,VAL) VARIABLE XINDX = VARIABLE XINDX + VAL 48 SUB (XINDX,VAL) VARIABLE XINDX = VARIABLE XINDX - VAL 49 MPY (XINDX,VAL) VARIABLE XINDX = VARIABLE XINDX * VAL 50 DVD (XINDX,VAL) VARIABLE XINDX = VARIABLE XINDX / VAL 51 POW (XINDX,VAL) VARIABLE XINDX = VARIABLE XINDX ** VAL 52 WHILE (VAL1,CDTN,VAL2) REPEAT NEXT COMMAND WHILE VAL1, CDTN, VAL2 IS TRUE 53 BEGINS 1 COMMAND OPEN BRACKET 54 ENDS 1 COMMAND CLOSE BRACKET 55 SINX (XINDX,VAL) VARIABLE XINDX = SIN(VAL) 56 COSX (XINDX,VAL) VARIABLE XINDX = COS(VAL) 57 EXPX (XINDX,VAL) VARIABLE XINDX = EXP(VAL) 58 LOGX (XINDX,VAL) VARIABLE XINDX = LOG(VAL) 59 NEG (XINDX) VARIABLE XINDX = - VARIABLE XINDX 60 ADSQLL 1 (FILE,Y,Z) ADD FILE TO SEQUENCE LIST STARTING WITH CURRENT CONDITIONS, Z VARIABLES, Y MARKER 61 TOX 2 (X) TODXY (X=XPOS,0.0) 62 TOY 2 (Y) TODXY (0.0,Y=YPOS) 63 TODX 2 (DX) LINE FROM (XPOS,YPOS) TO (XPOS+DX,YPOS) 64 TODY 2 (DY) LINE FROM (XPOS,YPOS) TO (XPOS,YPOS+DY) 67 NULSET 1 (X) NULL ROUTINE WILL BEHAVE AS ROUTINE X 68 GETLIB 1 (X,Y,Z) GET FILE X/Y FROM LIBRARY Z 69 PUTLIB 1 (X,Y,Z) PUT FILE X/Y INTO LIBRARY Z 70 ERSLIB 1 (X,Y,Z) ERASE FILE X/Y FROM LIBRARY Z 71 LSTLIB 1 (X) LIST DIRECTORY OF LIBRARY X 72 RDREQ (X) READ CURRENT REGION NUMBER 73 RDLIM (X1,Y1,X2,Y2) READ CURRENT LIMITS 74 RDPLIM (P,X1,Y1,X2,Y2) READ RGPLIM SETTING 75 RDVISD (XMI,XMO) READ VISIBILITY 76 RDBASE (SW)READ REGION DEVICE SETTING 77 RDSHAP (CNV,BSC) READ SHAPE 78 RDXY (X,Y) READ XPOS,YPOS 79 GALLIB 1 (X) GET ALL FILES FROM LIBRARY X 80 COLOUR (X) ALL SUBSEQUENT LINES HAVE COLOUR X 81 COLGL (X) ONLY LINES OF COLOUR X TO BE OUTPUT 82-89 DUMMY NUMBERS FOR USER DISPLAY ROUTINES 90 FAIRDS (XINDX,FS,FIND,TYP) VARIABLE XINDX=FAIRING VALUE
The type indicates Subroutine (S) or Function (F).
Name | Type | Meaning |
---|---|---|
ADVRPT | S | X > 0.0, set up advance repeat file, X=0.0, delete advance repeat file |
ANAME('ST') | F | Converts string ST into a REAL number representation, characters converted to SPROGS number, if ST is less than 5 chars, chars packed using 65 as multiplier, otherwise each must be alphanumeric, and ST must start with a letter, 37 is then used as packing multiplier |
AR1(XND1,XND2,XND3) | F | Ith argument is array reference defined by index variable |
AR2(XND1,XND2,XND3) | F | |
AR3(XND1,XND2,XND3) | F | |
AR4(XND1,XND2,XND3) | F | |
AR5(XND1,XND2,XND3) | F | |
AR6(XND1,XND2,XND3) | F | |
BASE(SWOUTP) | S | Set current region as basic for device SWOUTP |
BASER(R,SWOUTP) | S | set region R as basic for devices SWOUTP |
DLETE (FILE) | S | Delete file from store |
DSALL | S | Set visibility of current region |
DSPF82 | S | Routines to execute user defined display routines |
DSPF83 | S | |
DSPF84 | S | |
DSPF85 | S | |
DSPF86 | S | |
DSPF87 | S | |
DSPF88 | S | |
DSPF89 | S | |
DVOUT(XI) | S | Sets the value of NTRMLS to XI |
ENDSPR | S | Clears SPROGS output at end of run |
EXPRED(A) | S | Select SD4020 expand image mode and remove pagethrow in lineprinter graphical |
FAIR(FR,FNO,TYP) | F | Fairing value |
FILIST(X,XN) | S | List file X, number XN |
FISAV | S | Finish saving basic file |
FLASH | S | Project SD4020 form flash |
FLEMKS(ANO) | S | Write ANO file marks to SD4020 tape |
FMODE(XN) | S | Sets mode equal to XM, the mode of storage for the next file |
FREL(FNAM,FNO) | S | Output relative orders equivalent to those in file file FNAM/FNO |
GARBGE | S | Collect unused space in filestore |
GETCHA(X,y) | S | Get character X from font Y into filestore |
GETFNT (X) | S | Get font X into the file store |
GVCHSZ(DX,DY) | S | Get text factor for natural character size |
HPACK | S | Set up HP plotter region |
IDSTST(XN,A) | S | Test for store or execute user display routine |
LIBINT(X) | S | Initialise library X |
LCPRY(XPRYV) | S | Set local priority value |
LIMIT(XM,YM,XN,YN) | S | Set limits of current region |
LPDBUG | S | Add lineprinter to current region devices and select it in addition |
LPFILM | S | Set regions for SD4020 microfilm and LP Graphical and select |
LPGRAF | S | Set regions for lineprinter graphical and select |
LPHARD | S | Set regions for SD4020 hardcopy and LP Graphical and select |
LSTALL | S | List all files |
MF35MM | S | Select 35mm camera instead of 16mm |
NEWDSP(XN,XNI,XNO) | S | Set up new user display routine |
NLINES(XN) | S | Draws file 'NL' XN times |
NOHP | S | Do not include HP plotter |
NOLP | S | Do not include LP output |
NOLPG | S | Do not include lineprinter graphical routines |
NONEW | S | Do not include new IO routines |
NOSD | S | Do not include SD4020 routines |
NOTK | S | Do not include Tektronix routines |
NPAGE | S | ADVFLM, UP, LEFT and draw file 'NL' |
NWCLPL(XS,YS,IV,N,R) | S | User routine to clip lines |
NWCLPP(X,Y,IV,R) | S | User routine to determine point visibility |
NWCNV(X,Y,R) | S | User routine to provide shear conversion |
NW8ADV | S | Advance frame for dummy devices |
NW9ADV | S | Advance frame for dummy devices |
NW8CH(X,Y,ICN,IV,IC) | S | Plot ICN on dummy device |
NW9CH(X,Y,ICN,IV,IC) | S | Plot ICN on dummy device |
NW8FIN | S | Close dummy device |
NW9FIN | S | Close dummy device |
NW8ST | S | Open dummy device |
NW9ST | S | Open dummy device |
NW8VEC(X1,Y1,X2,Y2,IV,IC) | S | Draw vector on dummy device |
NW9VEC(X1,Y1,X2,Y2,IV,IC) | S | Draw vector on dummy device |
OUTR (R,XN) | S | Set region R as basic for devices XN and select devices |
PCPRY(P) | S | Sets the global priority level NPRYV equal to P for the next file definition |
PLIMIT(P,XM,YM,XN,YN) | S | Set current region in terms of region P |
PR1(XIND) | S | Defines argument in Ith position as reference to index variable |
PR2(XIND) | S | |
PR3(XIND) | S | |
PR4(XIND) | S | |
PR5(XIND) | S | |
PR6(XIND) | S | |
READXY(X,Y) | S | Read current position into X,Y |
RUNOUT(X) | S | X frames of runout on SD4020 microfilm |
SDFILM | S | Set regions for SD4020 microfilm and select |
SDHARD | S | Set regions for SD4020 hardcopy and select |
SETIO(XL,XER,XLP,XSDO,XSDU,XSDU,XTR) | S | Reset IO streams for file lists, error messages, lineprinter output, SD4020 operator and user output and trace list |
SHAPE(CNV,BSC) | S | Set shape of current region |
SHAPER(R,CNV,BSC) | S | Set shape of region R |
SHIELD | S | Set visibility of current region to outside only |
STCHSZ(DX,DY) | S | Set text factor for character grid size |
STDF(ST) | S | Starts defining a file whose name is ST, the number of the file is the current value of NUMBER, the mode of the file is attempted as the current mode setting, the value of NPRYV defines the global priority setting |
STSAV(X,D) | S | Save orders for device D in file X |
STSPR | S | Initialise SPROGS system |
STSQLS | S | Start sequence list |
TKREAD(CH,X,Y) | S | Read character and cross-hairs from Tektronix |
TKTRON | S | Set up Tektronix base region |
TEXT(N,'ST') | S | A shorthand for drawing a set of pictures corresponding to characters |
TOPRIN(ANO) | S | Print SD4020 tape orders |
TOTAPE(ANO( | S | Suppress writing SD4020 tape |
TYPEN(A,XI,XJ) | S | Print number A on output devices |
VISO(XMI,XMO) | S | Set visibility of current region |
VISOR(R,XMI,XMO) | S | Set visibility of region R |
VTEXT(N,'ST') | S | As for text, but character interspersed with file 'VT' |
VTYPEN(A,XI,XJ) | S | As for TYPEN, but characters interspersed with file 'VT' |
WINDOW | S | Set visibility of current region to inside only |
XMLTIM(A) | F | Mill time in secs |
ADDF RDPLMF ADSQGF RDREGF ADSQLF RDSHPF ADVCNR RDVSOF BEGNSF RDXYF COLGLF REGONF COLORF REPETF COSXF RGLIMF DLSQLF RDPLMG DOTTF RGPRMF DOWN FRIGHTF DRAW FRLNUMF DRCNTF ROTNF DVDF RSSQLF DYLIST SETXF ENDSF SETXYF ERDRF SETYF ERSFIL SHFTDF EXPANF SHFTUF EXPXF SINXF FAIRDF SPSQLF GALFIL STPSQR GETFIL STRACF IF FSUBF INTNSF TEXPNF LEFTF TEXSWF LNTYPE THICKF LOADF TODXF LOGXF TODXYF HPVF TOYF NEGF TOXF NULSTF TOXYF NUMBRF TOYF PLOTF UPF POWF UPDXF PRINVF UPDXYF PUTFIL UPDYF RDBASF VECF RDLIMF WHILF
ACFLSR GETSTK PDPVEC SQEND ACFLST GIVSTK PGERR SQNTRY ACFLTB HPADV PLNTV SQSWCH ACLSQ HPEND PR STDFTR ACNMTB HPSEG RCNCL STFLSQ ACRGTB HPST RDTAPE STFLSR ADVRP HPVEC READSD STFLST AR IARSET RECOV STFLTB ARGET IFPOS REGCUT STLSQ ARPUT INPOS REGPNT STNMTB ASSLP INTERP RTRACE STORE ASSTLP INVIEW RTRACS STRGTB ATOINT ISTREX SDBUFF STSVTR CHARSZ ITOBIG SDCH STXFLS CHKARG LEADER SDCLMT STXFLT CHKMDE LOGAND SDCLMV STXNMT CHKOUT LPCH SDCLP TKADV CHNLNK LPGCH SDCNVI TKCH CNVXY LPGEX SDCORE TKCHX CONCUT LPGOUT SDDCOD TKINIT DCODE LPGST SDERR TKOUTX DELBLK LPGSZE SDERRM TKPLNT DELSQ LPGVEC SDFLMK TKSET DEXPA LPINIT SDFLMQ TKVEC DMOVG LPVEC SDIGN TKVECX DMOVP MDEXX SDINIT UNITSZ DOPEN MOVFLM SDJBNM XERROR DREAD NACDST SDMH XMLTIM DRITE NACMTB SDOPMT XNULV DYREAD NAFLSQ SDOCT XPAND DYRITE NAFLST SDPRIN XPROT ERLIST NAFLTB SDPRLP XROT ERROR NFNDSQ SDSPL XTPAN ERROR1 NOPDP SDSPLA XXJBTL ERROR2 NSDCNV SDTITL XXMES ERROR3 NTKTST SDTP14 XXNUMR FIDFTR NULV1 SDTP15 XXPACK FINIS NULLE SDTXT XXSDCV FISVTR OBEY SDVEC XXTMDT FLDEL OUTBSC SD4020 XXUNPK FLINE OUTR SEE XXUPSN FLINIT PACKFL SEEVEC ZERROR FPLNT PAUSE SETUPF ZPROT GETBOD PDPCH SPOTCH ZROT ZXPAN Routines used by Contour Routines used by Graph ANDBIT GRANGE ANDLOG GRATIK ARK GRSCAL BDRY CONTHT DRWBDY ENDTST FLCONT INITS KBITS MAINCO OP1 PLOTHT QRITE REDUND TMPLT TRIGS
Section 2.9 Example:
Visibility in region 2 should be:
VISOR(2.0, 3.0, 1.0)
Section 7.7
TOXY(1.0, 1.0) should be TOXY(1.0, 2.0)