Dec 232017
Turbo Cross-Reference Program.
File D-XREF63.ZIP from The Programmer’s Corner in
Category Pascal Source Code
Turbo Cross-Reference Program.
File Name File Size Zip Size Zip Type
D-XREF63.COM 59648 32286 deflated
D-XREF63.DOC 18176 5389 deflated

Download File D-XREF63.ZIP Here

Contents of the D-XREF63.DOC file

Pascal Cross Referencer and Listing Formatter
D-Xref60.Doc Page 1 of 8

*************************** NOTICE ******************************MFS*
* A limited license is granted to all users of this program, to make *
* copies of this program and distribute them to other users, on the *
* following conditions: *
* *
* 1. The program is not to be distributed to others in modified form *
* (which is not easy to do unless I distribute the source code.) *
* *
* 2. No fee is to be charged (or any other consideration received) *
* for copying or distributing the program without an express *
* written agreement with: *
* Dorn W. Stickle *
* 909 Cactus Drive *
* Round Rock, Texas 78681 *
* 512-255-9126 *
* *
* Copyright (c) 1985 Dorn W. Stickle Enterprises *
* *
* You are encouraged to copy and share this program with other users *
* *
* If you are using this program and finding it of value, your *
* contribution ($35 suggested) will be appreciated. *
***********************************************************Version 6.0*

Enough with the advertising, lets get to the goodies!

(see I even fixed so that you could tear this page off and throw it away.)

Pascal Cross Referencer and Listing Formatter
D-Xref60.Doc Page 2 of 8

D-Xref is a Pascal Cross Reference and Listing Formatter Program. It is
extremely useful for Debugging Turbo Pascal programs as well as making a
nice looking listing. It does not in anyway mess with the source code, (any
and all goof ups in the source code are yours, not mine).

You can invoke D-Xref with all command implemented in the command line from
DOS or you can go to the interactive menu by just invoking D-Xref.

To invoke D-Xref with all commands in the command line from DOS do the

x>D-Xref (x:input file (x:output file) /[options]/[x:printer file]
(do not type in the brackets or the parenthesis.)


x = any valid drive letter
x> = Dos Prompt
x:input file = file to be cross referenced, the drive does not have to be
specified if it is the default
x:output file = file to write the formatted listing and cross reference to,
this can also be a printer such as LPT1: or LPT2:, but if
you specify a printer, be sure to put the colon on the end.

/options = L U C H F X W P 8 N B A M D

S = Enhance the Reserved words only or Enhance both the reserved words and
the Turbo Pascal Standard Identifiers. The default is Reserved words
only. This causes the Standard Identifiers to be interpreted as
variables. When toggled to the `Strd' then the Standard Identifiers
are then not considered variables and will be enhanced the same as the
Reserved words are.
L = List the program out, default is off.
U = Underline Reserved words, default is off.
C = Capitalize Reserved words, default is off.
H = Highlight (double strike) Reserved words, default is off.
F = Format the output listing. This will draw "|" between each
BEGIN, CASE, REPEAT and the matching END statement default is off.
B = Numerical and Alphabetical listing of all Functions, Procedures and Include files.
A = Alphabetical listing (only) of all Functions, Procedures and Include files.
M = Numerical listing (only) of all Functions, Procedures and Include files.

X = Make a cross reference listing of all variables, functions,
procedures and at the end of the cross reference show total lines
processed, total number functions and procedures, total different
variables, and total variables used. When the functions and
procedures are crossed referenced their starting line numbers are shown
as well as any passed variables, default is off.

Pascal Cross Referencer and Listing Formatter
D-Xref60.Doc Page 3 of 8

P = will take you to the interactive printer default setting menu, for
setting the printer codes for your particular printer to be able to
use the other features (bold, underline, compressed,etc.), default is
W = Make the line width 132 characters. You are then prompted to see if
you want compressed mode or normal mode, default is normal mode 80
characters per line.
N = Normal print not compressed. When you pick wide then the program
automagically assumes compressed print.

8 = Make the lines 8 lines per inch rather then 6 lines per inch for more
more lines on a page. Default is 6 lines per inch, 60 lines per page.

x:printer file = an ascii file with your printer defaults in it in the

the lines must be exactly as shown. The explanation for these follows:

Turn on Double Strike or Bold 27,71
Turn off Double Strike or Bold 27,72
Turn on Underline 27,45,49
Turn off Underline 27,45,48
Turn on Compressed mode 15
8 Lines per Inch 27,48
6 Lines per Inch 27,50
Name of printer Epson

the numbers are the Ascii representation of the actual characters. You can
also have D-Xref build this file for you interactively and save it to disk.
If you have a file for your printer then you can name it D-Xref.Def and it
will always go out and look for that file and use it as the default. The
default for the program in the absence of D-Xref.Def is Epson.

If you want to use the standard default options but use a different printer
file then you must have both slashes in the command line with a space
between them. There must also be a space before the first slash after the
output name.

Pascal Cross Referencer and Listing Formatter
D-Xref60.Doc Page 4 of 8

D - use the program defaults or read a default file of options as explained
below in detail. The file for the default file MUST be named D-Xref.Dat in
order for D-Xref to be able to find it. Other wise it will default to what I
have set the program at.

As of this version you are also able to build a default option file and have
it resident on the default drive. You build this file with the options that
you want to use turned on by placing their name on a line and an = then True
or False. After the /D you can follow with a "\" and the path that D-Xref.Dat
is on, and the program will search that path for D-Xref.Dat.

Example :
A>D-Xref60 MyName Lpt1 /d\Util\Format
A>D-Xref60 MyName Lpt1 /dC:\Util\Format

This will cause D-Xref61 to Search the path \Util\Format for D-Xref.Dat.

The following is all the commands that D-Xref will recognize:

Standard Identifiers = True/False (Default On) ***
Listing = True/False (Default On) ***
UnderLine = True/False
Highlight = True/False
Capitalize = True/False (Default On) ***
Compressed = True/False (Default On) ***
Normal = True/False
Format = True/False (Default On) ***
Reserved Words Only = True/False
* Both (sort) = True/False
* Alphabetic (sort) = True/False (Default On) ***
* Numerical (sort) = True/False
8 Lines Per Inch = True/False
6 Lines Per Inch = True/False (Default On) ***
** Wide Print (130 c/l) = True/False (Default On) ***
Xref = True/False (Default On) ***

* The features Both/Alphabetic/Numerical are referring to the sorting
of the Functions Procedures and Include files.

** The wide print will put 130 characters per line out regardless of
whether you have compressed turned on or off if you specify it as True.

*** The options with (Default) set next to them are the defaults for the
program. You can also specify /d on the command line and the program
will default to the options shown here as default even if you do not
have the file D-Xref.Dat on your default drive.

Pascal Cross Referencer and Listing Formatter
D-Xref60.Doc Page 5 of 8

Extra Note: Be wary in that the default file (D-Xref.Dat) is not exactly
the same as the command line parameter input which is as
L - List
U - Underline Keywords
C - Capitalize Keywords
H - Highlight Keywords
F - Format the listing
X - Cross reference the variables
B - Numercally & Alphabeticall sort the
Procedures, Functions & Include files.
A - Alphabetically (only) sort the above
M - Numerically (only) sort the above
N - Normal or Non-Compressed print
W - Wide print (132 characters per line)
8 - Print using 8 lines per inch
S - Standard Identifier and Reserved Words are
hightlighted and not cross-referenced.
P - Allow you to set to your specific printer
either interactively or thru a default file.

You can invoke D-Xref with either just the input file name or with the input
file name and output file name and you will be taken to the interactive menu
for setting the other options. You can also invoke D-Xref with out anything
and go to the interactive menu and do everything from there.

The interactive menu allows you to toggle ON and OFF. Just type in the
letter next to the feature that you want to turn on or off. If you type in
P then you will be taken to the interactive printer default setting menu.
If you type in W then you are prompted if you want it in compressed mode,
but either way the listing will be in 132 character lines.

If you specify a file for input that isn't there then you will be prompted
for a new file name. If you specify a file for output that is already there
then you have the option of writing over the old file or specifying a new
name. You can press the ESC key at any time to exit the program except for
the input file name. You must specify a valid input file name, but anytime
there after if you hit the ESC key then the program will immediately stop.
Be careful of this because Turbo interprets the function keys (F1 thru F10)
as being Esc, and some of the Alt-xx and Ctrl-xx key are interpreted the
same way.

Pascal Cross Referencer and Listing Formatter
D-Xref60.Doc Page 6 of 8

Within your source code you have some options that you can turn on and off
with specific commands. I have tried to come up with some that should not
interfere with most source codes. The options are as follows:

{.List on}
{.List off} these turn the listing of the program on and off.

{.Form on}
{.Form off} these turn the formatting of the listing on and off.

{.High on}
{.High off} these turn the Highlighting of reserved words on and off.

{.Line on}
{.Line off} these turn Underlining of reserved words on and off.

{.Caps on}
{.Caps off} these turn Capitalization of reserved words on and off.

{.Skip on} skips a portion of code including cross reference and listing
until turned OFF in the MAIN source code file.
{.Skip off} resumes processing the source code this can only be turned back
on in the MAIN source code file.

{.Page} this causes D-Xref to start a new page.

{.Quit} this causes D-Xref to altogether stop processing the listing and
if you have Xref turned on then it will do the cross reference
for that portion of the file that you allowed it to process.

these options must start in the first column of the code and must be on a
line by theirselves. They must also be in the exact format shown. You can
shorten OFF to OF, but everthing else must be there. Also you can use
either upper or lower case or both if you want.

The Skip option can be turned on in an include file, but must be turn off
and will only be recognized in the MAIN source code file.

This program will process the main source code as well as any files that you
have specified as include files in the Main source file with the $I feature
of Turbo Pascal.

Pascal Cross Referencer and Listing Formatter
D-Xref60.Doc Page 7 of 8

In the listing you will see at the top of each page the following:

Date at Time - - Formated Listing for : program name Page xx

Below that you will see the following:

Line : D Statement

Line = line number of the source code.
B = depth of the BEGINs
Statement = actual source code

If you have any include files they will be indicated by a + before the
number indicating the depth of the BEGINs. Example:

1026 : + 1

Just for information purposes, here are some statistics on this program:

Number Lines in Source Code : 3619
Number Functions : 15
Number Procedures : 36
Number Different Variables : 289
Total Number Variables : 3386

This program has limitations of the following:

Maximum Number of different variables : 1999
Maximum Number of Procedures and Functions : Unlimited
Maximum Number Include files Xrefed : 150
Maximum Variable Name Length stored : 32
Maximum Input Line Length : 255

This program requires 128 K to run. I have tested and run it on the following:

IBM PC1 64K mother board IBM PC2 256K mother board
Tandy 1200 HD Compaqs

I have also tested it under DOS 2.0, 2.1, and 3.0. It appears to work for
me, hope it does for you. If you have any questions, comments or concerns
regarding this program then you can write to me at:

Dorn W. Stickle
909 Cactus Dr.
Round Rock, Texas 78681

Pascal Cross Referencer and Listing Formatter
D-Xref60.Doc Page 8 of 8


This program is licensed "AS IS' without any warranty as to its performance,
accuracy, or freedom from error, or as to any results generated through its
use, including, without limitation, any implied warranties or
merchantability or of fitness for a particular purpose. You assume the
entire risk as to the results and performance of the program. I do not
warrant that the program will meet your requirements or operate without
interruption or error. In plain English, if it goofs up that is your
problem. What do you expect for $35.00 (if you sent in your $35.00 that is
otherwise you can't expect much for free anyway). I will keep a mailing
list of all contributing persons for future updates, (not for advertising, as
I am just me not a conglomerate).

Any complaints (with MY program??????) or compliments (expected) will be
appreciated. If you can think of anything else that you would like to see
then feel free to contact me and we can discuss it.

Have a Good Day!


 December 23, 2017  Add comments

Leave a Reply