REFERENCE AND TREE DOCUMENTATION To run the reference program type: >REF The program then prompts with: Global Reference Program V1.0 * Now enter the command string: OUTNAME=INNAME[SWITCHES] where: OUTNAME is the name of the file to receive the output OUTNAME.REF gets the reference data OUTNAME.TRE gets the tree structure data OUTNAME.ODL gets the overlay data INNAME is the name of the input *.MAP file containing the global cross-reference data (created by TKB with /CR switch) SWITCHES [optional] are: /C /R /-$ /-S /-T /-O /D Type HELP REF SWITCHES for more information on switches. Type HELP REF REF for more information on the reference program. Type HELP REF TREE for additional information on the tree structure. Type HELP REF ODL for IMPORTANT notes concerning the *.ODL file. Type HELP REF INSTALLATION for information on installation of REF. 2 SWITCHES REFERENCE SWITCHES: SWITCHES [optional] are as follows: /C Output cross-reference data /R Output reference data /$ Output user symbols AND system symbols /S Spool output files /T Output tree structure /O Output overlay data /D Delete ZZREF.RTP;* and ZZREF.CTP;* temporary files any switch can be negated by a '-' sign following the '/' as: '/-$' is taken as 'do not include system symbols'. Defaults are: /C/R/-$/-S/-T/-O/D 2 TREE REFERENCE TREE: The TREE program in REF has a limit of 270 symbol names but has only been tested to 240. The tree portion needs only the two temporary data files(see switch 'D') in order to generate the TRE and ODL files. The output filenames are 'ZZREF.TRE' and 'ZZREF.ODL'. The REF command file renames these files. The TREE program can be executed separately after saving the temporary files from REF(/-D) by typing: >TREE The output will be on ZZREF.TRE and ZZREF.ODL . 2 ODL REFERENCE ODL The ODL file output from TREE assumes that all symbols are module names in the library 'ULIB.OLB' . The ODL file generated will in most cases NOT be correct(see HELP REF REF). Some editing will usually be required. Also, be sure to check for duplicate labels that may be generated if more than one item appears in the .ROOT directive. 2 REF REFERENCE REF The reference program gets the symbol names from the INNAME.MAP file Global Cross-Reference list and therefore treats all entry point and subroutine names as separate object modules. This leads to some problems: 1. Subroutines(library modules) which are not referenced but contain entry points which are referenced appear as cotrees in the tree structure and ODL files. 2. These cotrees, besides being undesirable, cause duplicate labels to appear in the ODL file. 3. The ODL file lists every symbol as a module in the library 'ULIB.OLB'. It is up to the user to edit the ODL file accordingly. Those symbols which are entry points must be removed from the ODL file and the actual module name must be used instead. REMEMBER: ENTRY POINT SCREW-UP EVERYTHING, SO LOOK OUT FOR THEM! 2 INSTALLATION REFERENCE INSTALLATION: REF WRITES TO DEVICE MC: TO EXECUTE AN INDIRECT COMMAND FILE WHICH CONTROLS THE PROGRAM EXECUTION AFTER BUILDING THE INITIAL FILES. THE COMMAND FILE (ZZREF.CMD) CALLS SORT VIA AN 'SRT' CALL, CALLS 'PIP', CALLS 'TREE', AND CALLS 'PRINT', AND DELETES ITSELF AT THE END. REF EXPECTS TREE.TSK TO BE EXECUTABLE VIA THE CCL COMMAND 'TREE'. REF.CMD WILL BUILD THE REFERENCE PROGRAM FROM REF.PAS. TREE.CMD WILL BUILD THE TREE PROGRAM FROM TREE.PAS. DETACH IS A .FTN FILE AND IS USED TO DETACH THE PASCAL PROGRAM FROM THE TERMINAL DEVICE (LUN 5 & 6) VIA CALLS TO WTQIO. TEMPORARY FILES USED BY REF AND TREE AND WHICH ARE DELETED DURING NORMAL EXECUTION ARE: ZZREF.CTP ZZREF.RTP ZZREF.CMD ZZREF.TRE ZZREF.ODL