;  SYSTEM SEGMENT:  SYS2.FCP
;  SYSTEM:  ZCPR3
;  CUSTOMIZED BY:  RICHARD CONN

;
;  PROGRAM HEADER:  SYSFCP.LIB
;  AUTHOR:  RICHARD CONN
;

;
;       This program header defines the IF Conditions to be placed
; into the target SYS.FCP file (generated by assembling SYSFCP.ASM).
;

;
;   1. IF NEGATION
;
;       The following equate determines if leading negation is to be
; allowed.  If this equate is TRUE, then forms like the following are
; permitted:
;               IF ~EXIST filename.typ
;
; meaning to complement the meaning of the test (the above returns TRUE
; if filename.typ does NOT exist).
;
IFONEG          EQU     FALSE

;
;       Assuming IFONEG to be TRUE, the following equate defines the
; character to be placed in front of the IF option to indicate that
; negation is to be performed.  In the above example, this character
; was tilde (~).
;
NEGCHAR         EQU     '~'


;
;   2. IF:  T (TRUE) or F (FALSE)
;
;       Setting the following equate to TRUE enables the simple T and F
; options to IF.  The format of this option is:
;
;               IF T or IF F
;
; and it always returns TRUE or FALSE, resp.
;
IFOTRUE         EQU     FALSE


;
;   3. IF:  EM (EMPTY)
;
;       Setting the following equate to TRUE enables IF to test to see if
; the indicated file is empty or not.  The format of this option is:
;
;               IF EM dir:filename.typ
;
; and it returns TRUE if the indicated file does not exist or is empty.
;
IFOEMPTY        EQU     FALSE


;
;   4. IF:  ER (ERROR)
;
;       Setting the following equate to TRUE enables IF to test the error
; code byte (program error code byte).  If this byte is 0 (no error), it
; returns TRUE, else it returns FALSE.  The format of this option is:
;
;               IF ER
;
IFOERROR        EQU     FALSE


;
;   5. IF:  EX (EXIST)
;
;       Setting the following equate to TRUE enables IF to test for the
; existence of a file.  The format of this option is:
;
;               IF EX dir:filename.typ
;
; and it returns TRUE if the indicated file exists.
;
IFOEXIST        EQU     FALSE


;
;   6. IF:  IN (INPUT)
;
;       Setting the following equate to TRUE enables user input of the
; character T (or any other character for FALSE).  ZEX processing is
; suspended for this single-character input.  The format of this option is:
;
;               IF IN
;
; and the IF FCP command responds with:
;
;               IF True?
;
; to which the user types T, Y, SPACE, or CR to set the IF to TRUE and
; anything else to set the IF to FALSE.
;
IFOINPUT        EQU     FALSE


;
;   7. IF:  NU (NULL)
;
;       Setting the following equate to TRUE enables IF to test to see if
; the second argument which follows is NULL (not specified) or not.  This
; test is particularly useful in command file processing to see if, for
; example, argument $2 exists and to include it if it does.  The format of
; this option is:
;
;               IF NU
; or:
;               IF NU arg
;
;       If the first format is encountered, IF NU returns TRUE; IF NU returns
; FALSE with the second format.
;
IFONULL         EQU     FALSE


;
;   8. IF:  n (Register Value)
;
;       Setting the following equate to TRUE enables IF to test to see if
; the indicated register contains the indicated value.  If this is preceeded
; by the NEGCHAR and IFONEG is TRUE, then this tests to see if the indicated
; register does not contain the indicated value.  Registers are one-byte
; memory buffers, and are identified by the digits 0 to 9.  The format of
; this option is:
;
;               IF n val
;
; Example:
;               IF 0            -- if Reg 0 = 0
;               IF 0 5          -- if Reg 0 = 5
;               IF 5 2          -- if Reg 5 = 2
;               IF ~0           -- if Reg 0 <> 0
;               IF ~9 2         -- if Reg 9 <> 2
;
IFOREG          EQU     FALSE


;
;   9. IF:  WH (WHEEL)
;
;       Setting the following equate to TRUE enables IF to test to see if
; the Wheel Byte is set or not.  If so, IF WHEEL is TRUE.
;
IFOWHEEL        EQU     FALSE


;
;  10. IF:  TC (TCAP)
;
;       Setting the following equate to TRUE enables IF to test to see if
; the ZCPR3 TCAP contains a terminal definition or not.  This test is
; particularly useful in command file or alias processing to see if, for
; example, a Z3TCAP entry is defined and to invoke screen-oriented routines
; if it is.  The format of this option is:
;
;               IF TC
;
IFOTCAP         EQU     FALSE


;
;  11. IF:  fcb1=fcb2
;
;       Setting this equate to TRUE will enable IF to evaluate the
; equality condition, checking to see if the two FCBs contain the same
; values.  If so, the IF is TRUE; if not, the IF is FALSE.
;
;       Enabling this equate eliminates the need for the NULL test, since
; a NULL test can be performed by using the syntax:
;               IF fcb1=
;
IFOEQ           EQU     FALSE


;
;  12. COMIF - Run IF.COM Instead of FCP-Internal Processing
;
;       Setting this equate to TRUE will cause an IF executed during an
; IF TRUE or NO IF state to look in the ROOT directory (base of path
; starting in current directory) for the file IF.COM, and, if found,
; load IF.COM and transfer control to it.  If IF.COM is not found, then
; IF F is raised.  Using IF.COM provides much more power and flexibility
; but also requires IF.COM to be present and takes up disk space.
;
COMIF           EQU     TRUE


;
;  13. NOISE - Have FCP Print IF Status Messages
;
;       Setting this equate to TRUE will cause any change in the IF
; status to be printed to the user.  This is useful for debugging purposes,
; but in normal runs, particularly where ALIASes are concerned, it is
; usually desirable to reduce the "noise" as much as possible and have
; this equate set to FALSE.
;
NOISE           EQU     FALSE


;
;  END of SYSFCP CUSTOMIZATION
;