home *** CD-ROM | disk | FTP | other *** search
/ CP/M / CPM_CDROM.iso / beehive / zcat / if14.lbr / IF14.DQC / IF14.DOC
Text File  |  1991-01-30  |  4KB  |  117 lines

  1. Program:         IF.COM
  2. Modification Date :     09-Dec-85
  3. Modified By:         Jay Sage
  4. Previous Version:     1.3
  5. This Version:        1.4
  6.  
  7.  
  8.                       NOTES ON VERSION 1.4 BY JAY SAGE
  9.  
  10. I have modified the IF NULL test to look at the command line tail so that itì
  11. can properly detect the following non-null conditions:
  12.  
  13.     IF NULL D:    IF NULL U:    IF NULL DU:    IF NULL DIR:
  14.  
  15. Previous versions of IF.COM looked for a name in the second default fileì
  16. control block.  In the four above cases, there would be no name even thoughì
  17. a second token was present on the command line.
  18.  
  19. I recommend using version 1.5 of SYSFCP and patching IF.COM so that itsì
  20. internal option names begin with an X for eXtended or eXternal (patch theì
  21. option strings in the table at the beginning of the program and also in theì
  22. built-in help screen).  For example, if you rename 'NU' to 'XU', then youì
  23. can perform the test IF NULL if you are not concerned with the U: form ofì
  24. the second token (SYSFCP15 already took care of the other three problemì
  25. forms), or you can perform the test IF XULL if you want to be able to handleì
  26. the user-number-only case.
  27.  
  28.  
  29.                       NOTES ON VERSION 1.3 BY JAY SAGE
  30.  
  31. I made two modifications to version 1.2 to make version 1.3.  First I
  32. corrected the error in the test IF ERROR.  Because the code mistakenly used
  33. the SYSLIB routine GETER1 instead of GETER2, it was testing the error
  34. handler flag instead of the program error flag.  In addition, the sensing of
  35. the flag was reversed (a problem that has existed throughout ZCPR3).
  36.  
  37. Second, I enhanced the IF INPUT function so that any text in the tail will
  38. be used as a prompt.  For example, the command "IF INPUT ASSEMBLE" will
  39. result in a screen display of "ASSEMBLE (Y/N)? ".  If there is no text after
  40. the IF option, then the code performs as before.
  41.  
  42.  
  43.  
  44.                    NOTES ON VERSION 1.2 BY CHUCK MCMANIS
  45.  
  46. I made one small modification to the IF.COM file to allow it to successfully
  47. compare wild card characters and ambiguous file names (AFNs). This allowed 
  48. some added flexibility in some aliases I am using. I have used this version
  49. for several days and have not found any incompatibilities with the previous
  50. version. The change only affects the following use of the IF command :
  51.  
  52.     IF fcb1=fcb2
  53.  
  54. This change allows fcb2 to be an AFN and still set the IF state to true when
  55. a match occurs so that the following statement will be accepted :
  56.  
  57.     IF $1=*.?Q? ; NOTE sets condition to TRUE is $1 is a squeezed file.
  58.  
  59. Either fcb1 or fcb2 or both can contain ? or * characters to be ambiguous.
  60. An example of the use of this new condition is shown in the follwing aliases
  61. that I use to manipulate a library with all of the ZCPR3 utility sources in
  62. it.
  63.  
  64. Alias: GET - Retrieves the source form the SOURCES library
  65. Usage: GET name
  66.  
  67.     Statement                Comments
  68.     ---------                --------
  69.     IF $1=*;            Matches filename with no type.
  70.       IF EX $1.MAC;            Checks to see if it exists
  71.         ECHO FILE EXISTS!;        And does not overwrite if it does
  72.       ELSE;
  73.         EXTRACT $1.MQC;        Gets named file from the library
  74.       FI;
  75.     ELSE;
  76.       ECHO PLEASE DO NOT INCLUDE FILETYPE.;
  77.     FI
  78.  
  79. Alias: PUT - Stores the source back into the SOURCES library, or adds new 
  80.         sources to the library.
  81. Usage: PUT name [E] 
  82. Where E indicates the external files should be erased on completion.
  83.  
  84.  
  85.     Statement                Comments
  86.     ---------                --------
  87.     IF $1=*;            Matches filename with no type.
  88.       IF EX $1.MAC;            Checks to see if it exists
  89.         SQ $1.MAC;            Squeeze it before storing
  90.         INSERT $1.MQC;        Insert it into the library
  91.         IF $2=E;            See if they want them erased
  92.           ERA $1.M?C;        Erase Squeezed and Unsqueezed copies
  93.         FI;
  94.       ELSE;
  95.         ECHO $1.MAC NOT FOUND    Tell them we couldn't find it
  96.       FI;
  97.     ELSE;                Syntax reminder
  98.       ECHO PLEASE DO NOT INCLUDE FILETYPE.;
  99.     FI
  100.  
  101. Alias: INSERT - Insert files into the SOURCES library
  102. Usage: INSERT name.typ
  103.  
  104.     Statement                Comments
  105.     ---------                --------
  106.     NULU -O SOURCES -A $1 -X        Add the file and exit
  107.  
  108. Alias: EXTRACT - Extract files from the SOURCES library
  109. Usage: EXTRACT name.typ
  110.  
  111.     Statement                Comments
  112.     ---------                --------
  113.     NULU -O SOURCES -Q $1 -X        Extract the file unsqueezingì
  114. if
  115.                         necessary
  116.  
  117.