home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
ftp.barnyard.co.uk
/
2015.02.ftp.barnyard.co.uk.tar
/
ftp.barnyard.co.uk
/
cpm
/
walnut-creek-CDROM
/
CPM
/
TURBOPAS
/
ZXREF.LBR
/
XREF0.IQC
/
XREF0.INC
Wrap
Text File
|
2000-06-30
|
3KB
|
105 lines
(***********************************************************************)
(* XREF0.INC
(***********************************************************************)
(* v. 0900am, sun, 28.Sept.86, Glen Ellis *)
CONST
AlfaLength = 15;
dFltStrLen = 255;
EntryGap = 0; { # of blank lines between line numbers}
HeadIng : string[23] = 'Cross-Reference Listing';
HeadIngsize = 3; {number of lines for HeadIng}
LLmax = dFltStrLen;
MaxOnLine = 8;
Maxlines = MAXINT; {longest document permitted}
MaxWordlen = AlfaLength;{longest word Read without truncation}
Maxlinelen = 80; {length of output line}
MaxOnPage = 60; {size of output Page}
(*--------------------------------------------*)
(* will reassigned during pINITZ *)
NumKeyMAX = 99;
(* number of Pascal reserved words = 70 *)
(* number of dBASE reserved words = 99 -> 136 *)
(*--------------------------------------------*)
NumberWidth = 6;
space : Char = ' ';
TYPE
Alfa = string[AlfaLength];
CharName = (lletter, uletter, digit, blank, quote, aTabChar,
endOfLine, FileMark, otherChar );
CharInfo =
record
name : CharName;
valu : Char
end;
Counter = 1..Maxlines;
PageIndex = byte;
WordIndex = 1..MaxWordlen;
QueuePointer = ^QueueItem;
QueueItem =
record
linenumber : Counter;
NextInQueue: QueuePointer
end;
EntryType =
record
Wordvalue : Alfa;
FirstInQueue,
LastInQueue: QueuePointer
end;
TreePointer = ^Node;
Node =
record
Entry : EntryType;
Left,
Right : TreePointer
end;
GenStr = string[255];
String1 = string[1];
String2 = string[2];
String3 = string[3];
String4 = string[4];
VAR
bell : Char;
(* Fatal_Error *)
FatalErrorStatus : boolean;
(* File_ID *)
FileInID, { Input file name }
(* Prn_ID *)
PrnOutID, { basic file name + '.PRN' }
(* New_ID *)
XrfID : string[14]; { basic file name + '.XRF' }
(* Form_Feed *)
FormFeedChar : Char;
Key : array[1..NumKeyMAX] of Alfa;
Listing : boolean;
(* tab *)
TabChar : Char;
WordTree : TreePointer;
(* Gap *)
GapChar : Char ;
Currentline : integer;
FOut: TEXT; { print output file }
XOut: TEXT; { xref output file }
(* v. Glen Ellis *)
ConnectFlag : boolean;
NumKeys : integer;
XrefTrace : boolean;
XrefMode : string2;
KeyModeChar : string1;
(***************************************************************)