Z-Relocatable Flow Control Packages 11 October 89 by Carson Wilson The seven pre-compiled Flow Control Packages (FCP's) in this library may be loaded directly to Z System with NZ-COM, Z3PLUS, or JetLDR, provided sufficient space has been allocated to the FCP segment. The FCP's come in two flavors. Files named FCP-nT.ZRL implement extended flow control processing when needed using a program named IF.COM at the root of your path, or at directory A0 if there is no path. Files named simply FCP-n.ZRL rely exclusively on memory-based processing. The "n" in the filename indicates the total number of records required by each package. The standard number of records for both NZ-COM and Z3PLUS is currently 5, so if you wish to load a larger FCP you must reconfigure your system with MKZCM or by editing your .Z3P file. For general help with flow control commands, see the file IF.HLP, or section 3.2.2 of your NZ-COM or Z3PLUS manual. While IF.COM allows options not available in memory-resident flow-control processing, fully resident versions free the user from the requirement that IF.COM be present during flow control processing. Resident processing is also somewhat faster due to the need to load IF.COM from disk for each flow control command. Finally, the ability to locate and load the transient IF.COM requires considerable code space in the resident code itself. Generally, IF.COM is best used on fixed-disk systems, while resident processing is more suited to floppy-based systems. The options included in fully resident versions were selected somewhat differently than those of those using IF.COM. Criteria, in order of precedence, were as follows: Transient Versions Resident Versions ------------------ ----------------- 1. Is the feature available in 1. How useful is the feature? IF.COM? 2. How much memory does the feature 2. Does the feature require disk require? access? 3. How useful is the feature? 4. How much memory does the feature require? The tables below summarize the size and features of each flavor of FCP. Each package includes only the features appearing above it. For example, FCP-5T.ZRL (the default FCP for both NZ-COM and Z3PLUS) contains only ZIF, IFQ, OR, AND, negation, ERROR, and NULL. Size is expressed as records plus remaining bytes required by the FCP. As FCP space is allocated in record units only, I have attempted to include only combinations which leave as little remaining space possible. Sizes without corresponding filenames are included for reference purposes only. FEATURES OF TRANSIENT (IF.COM) FCPS SIZE(RECS+BYTES) FILE NAME ----------------------------------------------------------------------------- ZIF - unconditionally clear IF states? IFQ - show current if status? 3+124 FCP-4T.ZRL OR - set state at current level? 4+25 AND - reset state at current level? Allow negation of conditions? ERROR - test program error flag? NULL - test for no file name? 4+84 FCP-5T.ZRL REG - test register values? 5+16 AMBIG - test for "?" in file spec? COMPR - test for compressed filespec? = - test tokens for equality? 5+92 FCP-6T.ZRL INPUT - test user input? 6+25 Allow "IF T" and "IF F" forms? WHEEL - test wheel byte? TCAP - test whether TCAP loaded? EXIST - test for file existence? 6+106 FCP-7T.ZRL EMPTY - test files for contents? 7+10 FEATURES OF RESIDENT FCPS SIZE(RECS+BYTES) FILE NAME ----------------------------------------------------------------------------- ZIF - unconditionally clear IF states? IFQ - show current if status? OR - set state at current level? AND - reset state at current level? Allow negation of conditions? NULL - test for no file name? INPUT - test user input? = - test tokens for equality? ERROR - test program error flag? Allow "IF T" and "IF F" forms? EXIST - test for file existence? 3+123 FCP-4.ZRL AMBIG - test for "?" in file spec? COMPR - test for compressed filespec? REG - test register values? WHEEL - test wheel byte? TCAP - test whether TCAP loaded? 4+113 FCP-5.ZRL EMPTY - test files for contents? 5+17 FCP-6.ZRL