C COPYRIGHT (C) 1983 GLENN EVERHART C PERMISSION IS GIVEN TO ANYONE TO USE, DISTRIBUTE, OR COPY THIS C PROGRAM FREELY BUT NOT TO SELL IT COMMERICALLY. C PARAMETERS TO DEFINE DIMENSIONS FOR VIZIKLUGE C PHYSICAL SHEET DIMENSIONS ARE (RRW,RCL) C DISPLAY SHEET DIMENSIONS ARE (DRW,DCL) C RECALL 1ST DIMENSION IS ACROSS TOP, 2ND DIMENSION IS C LENGTH DOWN. NOTE TOO THAT RCP AND RRCL ARE TO BE C COMPUTED AS RRW*RCL AND RCPM27 IS (RRW*RCL -27) C SINCE THERE ARE 27 ACUMULATORS (A THRU Z AND %). C BRRCL=(RRCL+7)/8 , I.E., ENOUGH BYTES FOR A BITMAP C C *** IMPORTANT CONSTRAINTS ON SETTINGS *** C C C RRW MUST BE AT LEAST 27 SO THAT THE 27 ACCUMULATORS WILL C BE AVAILABLE. (IF IT IS LESS, THE % ACCUMULATOR'S LOCATION C WILL NOT BE CORRECT AND WILL SCREW YOU UP UNLESS 2 TYPE ARRAYS C ARE DEFINED; THE DATA AREAS FOR THE AC'S ARE SEPARATE C BUT THE TYPE ARRAY IS UNIFIED. WHILE YOU MIGHT ABANDON SOME C OF THE AC'S WITH NO REAL PENALTY EXCEPT EXPOSING YOUR USERS C TO DOUBLE DEFINED AREAS, THE TYPE INFO FOR % IS IN A FIXED C LOCATION HARD CODED IN. NORMALLY YOU'LL WANT TO LEAVE IT TO C A FLOATING TYPE AND IT MAY NOT FOUL YOU UP (MOST DATA CELLS C WILL BE FLOATING TOO), BUT CORRECT OPERATION CANNOT BE GUARANTEED C UNLESS RRW (NUMBER OF COLUMNS IN PHYSICAL SHEET) IS 27 OR MORE.) C C RCL MUST BE AT LEAST 2; THE FIRST IS THE ACCUMULATORS AND THE C SECOND UP ARE DISPLAY COORDINATES. C C DRW MUST BE LESS THAN OR EQUAL TO RRW AND DCL MUST BE C LESS THAN OR EQUAL TO (RCL-1). ALSO MXCOLS MUST BE LESS C THAN OR EQUAL TO DRW AND MXROWS MUST BE LESS THAN OR C EQUAL TO DCL. C C MPWD IS JUST THE MAX PRINT LINE FOR THE W COMMAND (WRITING C PRINT IMAGES OF THE SCREEN OUT). IT MAY BE SET SMALLER THAN C 132, BUT TO MAKE IT LARGER YOU'LL HAVE TO INCREASE THE SIZE C OF PRINT ARRAYS IN DSPSHT ROUTINE WHICH FILLS IN THE SIZES. C C IT IS ASSUMED YOUR FORTRAN UNDERSTANDS THESE PARAMETERS ARE C ALL INTEGER QUANTITIES; CHANGE AS NEEDED IF FORM IS WRONG. C C THERE ARE A FEW PARAMETER STATEMENTS IN PROGRAMS TOO. THESE C HAVE TO DO WITH UVT100 DEFINITIONS AND MAY ALSO BE PULLED C INTO HERE IF DESIRED. C C PARAMETER RRCL=RRW*RCL. COMPUTE AND FILL IN YOURSELF (FORTRAN C AT OUR SITE DOESN'T LET THAT BE AUTOMATIC). C RCPM27 IS COMPUTED AS RRCL-27. C PARAMETER RCP IS THE SAME VALUE AS RRCL. C C ***************************************** PARAMETER DCL = 200 ! DISPLAY MAX ROWS, COLS. PARAMETER DRW = 63 ! DISPLAY MAX COLS C NOTE THAT DCL ROWS MAY BE PRINTED EVEN THOUGH THE VT100 ONLY ALLOWS C 20 TO BE DISPLAYED; JUST SET THE DISPLAY LENGTH TO MORE... PARAMETER MPWD = 132 PARAMETER RRW = 80 ! NUMBER OF COLS PARAMETER RCL = 401 ! REAL (PHYSICAL) ROWS AND COLUMNS OF SPREADSHEET C note the next 2 parameters are 1 because subroutines worry about the C storage separately. PARAMETER RRWP=1 ! PHYSICAL STORAGE SIZE PARAMETER RCLP=1 ! COL,ROW PARAMETER RCR=1 ! RRWP*RCLP C FOLLOWING IS A DUMMY, ONLY USED FOR A DATA STMT; LEAVE IT AT 1. PARAMETER RCRM27=1 !RCR - 27 PARAMETER RCP = 32080 PARAMETER RCPM27 = 32053 PARAMETER RRCL = 32080 C PARAMETER RRCL=RRW*RCL C BRRCL=(RRCL+7)/8 , I.E., ENOUGH BYTES FOR A BITMAP PARAMETER BRRCL=4010 PARAMETER TMREFN = 1 C MXCOLS AND MXROWS ARE MAX COLS (ACROSS TOP) ON DISPLAY INITIALLY C AND NUMBER OF INITIALLY DISPLAYED ROWS (ALONG LEFT) DOWN. DRW,DCL C ARE MAX POSSIBLE DISPLAY COLS, ROWS RESPECTIVELY. PARAMETER MXCOLS=7 PARAMETER MXROWS=20 C LCMDR AND LDSPR ARE COMMAND AND DISPLAY ROWS ON SCREEN. REDEFINE C TO OTHER NUMBERS FOR LARGER OR SMALLER SCREENS THAN VT100. PARAMETER LCMDR=23 PARAMETER LDSPR=24 C C JVTINC IS INCREMENT FOR OFFSET DUE TO SCREEN ODDITIES PARAMETER JVTINC=0 C SET JVTINC TO 0 FOR VT52 OR TERMINAL INDEPENDENT SCREEN VERSIONS C C PARAMETER FOR MAX NUMBER OF HELP SCREENS. SET TO 9 FOR C STANDARD HELP FILE, OR BIGGER IF DESIRED FOR HELPPRO.FOR C FILE. PARAMETER MAXHLP=9 C C PARAMETERS FOR DISK VERSION. C THESE SET THE SIZES OF MEMORY BUFFERS USED FOR VALUES AND FORMULAS C HANDLED HEREIN. IT IS EXPECTED THAT LVBF WILL BE AT LEAST C 50 (FOR 250 WORDS), OR A MULTIPLE OF 50, SINCE IT CONTROLS C VALUE BUFFER RECORDS, KEPT IN 500-BYTE DISK BLOCKS. ALSO, C LFM SHOULD BE 32 OR A MULTIPLE OF 32. SINCE A SYMBOL TABLE C ALGORITHM IS USED, THE MULTIPLES PROBABLY SHOULD BE THE C SAME. THERE MIGHT BE MORE VALUES THAN FORMULAS THOUGH, AS WHEN C MATRIX MATH IS USED. PARAMETER LVBF=200 PARAMETER LFM=512 C LFM4 NEEDS TO BE LFM*4 AND LVBF4 NEEDS TO BE LVBF*4 C (USED AS EQUIVALENCES FOR I*4 ARRAYS) PARAMETER LFM4=2048 PARAMETER LVBF4=800 PARAMETER LFMX=1 PARAMETER LFM4X=1 PARAMETER LFMY=128512 C LFMY SHOULD BE SAME AS LPDMF = LPDM/5 C (SETS SIZE OF SEARCH...) C LPDM=RRCL/64 AND IPDM=RRCL/400, BOTH MULTIPLIED BY 1024 C SO THEY ARE DIMENSIONS OF DATA AREAS IN COMMON FOR C VAX-ONLY "DATA STORAGE AREA", PSEUDO-FILE. PARAMETER IPDM=82944 PARAMETER LPDM=514048 PARAMETER LVBF5=1000 PARAMETER IPDM5=165888 C LVBF5=LVBF*5; IPDM5=IPDM*2 C LPDMF = LPDM/4 PARAMETER LPDMF=128512