home *** CD-ROM | disk | FTP | other *** search
/ Monster Media 1994 #1 / monster.zip / monster / PROG_BAS / PRO98SRC.ZIP / FUNCTION.CMD < prev    next >
OS/2 REXX Batch file  |  1994-01-14  |  6KB  |  189 lines

  1. 'function commands
  2. GOTO EXITSELECT
  3. PtrLOOKUP:'                   CASE "LOOKUP"
  4.                 fi$ = poparg$
  5.                 srch$ = poparg$
  6.                 Result$ = fi$ + "?"
  7.                 Fr% = FREEFILE
  8.                 OPEN fi$ FOR INPUT SHARED AS #Fr%
  9.                 DO
  10.                         LINE INPUT #Fr%, fi$
  11.                         IF UCASE$(srch$)=LEFT$(UCASE$(fi$),LEN(srch$)) THEN Result$ = fi$: EXIT DO
  12.                 LOOP WHILE NOT EOF(Fr%)
  13.                 CLOSE #Fr%
  14.                 PUSHARG Result$
  15.  
  16. GOTO EXITSELECT
  17. PtrUSING:'      CASE "USING"
  18.                 PUSHARG USING$(poparg$,VAL(poparg$))
  19.  
  20. GOTO EXITSELECT
  21. PtrFIX:'        ' fix the length of output making it larger or smaller                CASE "FIX"     ' fix the length of output making it larger or smaller
  22.                 pusharg LEFT$(poparg$+SPACE$(255), VAL(poparg$))
  23.  
  24. GOTO EXITSELECT
  25. PtrPARM:'       CASE "PARM"
  26.                 Pusharg Parm$
  27.  
  28. GOTO EXITSELECT
  29. PtrPORT:'       CASE "PORT"
  30.                 pusharg MID$(STR$(Port%),2)
  31.  
  32. GOTO EXITSELECT
  33. PtrCRC:'        CASE "CRC"
  34.                 CALL CRC16(Arg$, hi%, Lo%)
  35.                 pusharg CHR$(Hi%,Lo%)
  36.  
  37. GOTO EXITSELECT
  38. PtrDUP:'        CASE "DUP"
  39.                 b$=poparg$
  40.                 a = val(poparg$)
  41.                 pusharg STRING$(a, b$)
  42.  
  43. GOTO EXITSELECT
  44. PtrBAUD:'       CASE "BAUD"
  45.                 pusharg BAUD$
  46.  
  47. GOTO EXITSELECT
  48. PtrSUBDIR:'     CASE "SUBDIR"
  49.             a$=poparg$
  50.                 pusharg str$(direxist%(a$))
  51. GOTO EXITSELECT
  52. PtrDIR:'        CASE "DIR"
  53.             a$=poparg$
  54.                 if a$="" then pusharg dir$ else pusharg dir$(a$)
  55.  
  56. GOTO EXITSELECT
  57. PtrBOTH:'       CASE "BOTH"
  58.                 IF VAL(POPARG$) AND VAL(POPARG$) THEN PUSHARG "-1" ELSE PUSHARG "0"
  59. GOTO EXITSELECT
  60. PtrEITHER:'     CASE "EITHER"
  61.                 IF VAL(POPARG$) OR VAL(POPARG$) THEN PUSHARG "-1" ELSE PUSHARG "0"
  62. GOTO EXITSELECT
  63. PtrNEITHER:'    CASE "NEITHER"
  64.                 IF VAL(POPARG$) OR VAL(POPARG$) THEN PUSHARG "0" ELSE PUSHARG "-1"
  65.  
  66. GOTO EXITSELECT
  67. PtrSIZEOF:'     CASE "SIZEOF"
  68.                 F=FREEFILE
  69.                 OPEN POPARG$ FOR BINARY AS #F
  70.                 PUSHARG STR$(LOF(F))
  71.                 CLOSE #F
  72. GOTO EXITSELECT
  73. PtrENVIRON:'    CASE "ENVIRON"
  74.                 PUSHARG ENVIRON$(POPARG$)
  75.  
  76. GOTO EXITSELECT
  77. PtrFREEFILE:'   CASE "FREEFILE"
  78.             PUSHARG STR$(FREEFILE)
  79.  
  80. GOTO EXITSELECT
  81. PtrFILE:'       CASE "FILE"
  82.             Buf%=FREEFILE
  83.                 P$=POPARG$
  84.                 IF DIR$(P$)<>"" THEN
  85.                  OPEN P$ FOR BINARY AS #Buf%
  86.                  GET$ #Buf%, LOF(Buf%), A$
  87.                  PUSHARG A$
  88.          CLOSE #Buf%
  89.                 END IF
  90. GOTO EXITSELECT
  91. PtrUCASE:'      "UPPER"                CASE "UCASE","UPPER"
  92.             PUSHARG UCASE$(POPARG$)
  93. GOTO EXITSELECT
  94. PtrLCASE:'      "LOWER"                CASE "LCASE","LOWER"
  95.             PUSHARG LCASE$(POPARG$)
  96. GOTO EXITSELECT
  97. PtrLTRIM:'      CASE "LTRIM"
  98.             PUSHARG LTRIM$(POPARG$)
  99. GOTO EXITSELECT
  100. PtrRTRIM:'      CASE "RTRIM"
  101.             PUSHARG RTRIM$(POPARG$)
  102. GOTO EXITSELECT
  103. PtrLEFT:'       CASE "LEFT"
  104.             PUSHARG LEFT$(POPARG$,VAL(POPARG$))
  105. GOTO EXITSELECT
  106. PtrRIGHT:'      CASE "RIGHT"
  107.             PUSHARG RIGHT$(POPARG$,VAL(POPARG$))
  108. GOTO EXITSELECT
  109. PtrMID:'        "SUBSTR"                CASE "MID","SUBSTR"
  110.             A$=POPARG$
  111.                 A1%=VAL(POPARG$)
  112.                 A2%=VAL(POPARG$)
  113.                 IF A2%=0 THEN
  114.                     PUSHARG MID$(A$,A1%)
  115.                 ELSE
  116.                     PUSHARG MID$(A$,A1%,A2%)
  117.                 END IF
  118. GOTO EXITSELECT
  119. PtrASC:'        "ASCII"                CASE "ASC","ASCII"
  120.             PUSHARG STR$(ASCII(POPARG$))
  121. GOTO EXITSELECT
  122. PtrCHR:'        CASE "CHR"
  123.             PUSHARG CHR$(VAL(POPARG$))
  124. GOTO EXITSELECT
  125. PtrINKEY:'      CASE "INKEY"
  126.                 PUSHARG PROZOINKEY$
  127. GOTO EXITSELECT
  128. PtrLEN:'        CASE "LEN"
  129.             PUSHARG STR$(LEN(POPARG$))
  130. GOTO EXITSELECT
  131. PtrEQUALS:'     "SAME"                CASE "EQUALS","SAME"
  132.             IF POPARG$=POPARG$ THEN PUSHARG "-1" ELSE PUSHARG "0"
  133. GOTO EXITSELECT
  134. PtrNOT:'        CASE "NOT"
  135.             PUSHARG STR$(NOT ISTRUE VAL(POPARG$))
  136. GOTO EXITSELECT
  137. PtrFALSE:'       "OFF", "NO"                CASE "FALSE", "OFF", "NO"
  138.             PUSHARG "0"
  139.  
  140. GOTO EXITSELECT
  141. PtrTRUE:'        "ON", "YES"                CASE "TRUE", "ON", "YES"
  142.             PUSHARG "-1"
  143.  
  144. GOTO EXITSELECT
  145. PtrCWAIT:'      CASE "CWAIT"
  146.             DO
  147.                 a$=PROZOINKEY$
  148.                 LOOP WHILE A$=""
  149.                 PUSHARG A$
  150. GOTO EXITSELECT
  151. PtrEXIST:'      CASE "EXIST"
  152.                 IF LEN(DIR$(POPARG$)) THEN PUSHARG "-1" ELSE PUSHARG "0"
  153.  
  154. GOTO EXITSELECT
  155. PtrROW:'        CASE "ROW"
  156.                 PUSHARG STR$(PROZOCSRLIN)
  157. GOTO EXITSELECT
  158. PtrCOL:'        CASE "COL"
  159.                 PUSHARG STR$(PROZOPOS)
  160. GOTO EXITSELECT
  161. PtrINSTR:'      CASE "INSTR"
  162.             PUSHARG STR$( INSTR(POPARG$, POPARG$) )
  163.  
  164. GOTO EXITSELECT
  165. PtrTIME:'       CASE "TIME"
  166.             PUSHARG TIME$
  167. GOTO EXITSELECT
  168. PtrDATE:'       CASE "DATE"
  169.             PUSHARG DATE$
  170.  
  171. GOTO EXITSELECT
  172. PtrVAL:'        CASE "VAL"
  173.             PUSHARG STR$(VAL(POPARG$))
  174. GOTO EXITSELECT
  175. PtrABS:'        CASE "ABS"
  176.             PUSHARG STR$(ABS(VAL(POPARG$)))
  177.  
  178. GOTO EXITSELECT
  179. PtrAND:'        CASE "AND"
  180.             PUSHARG "&&"
  181. GOTO EXITSELECT
  182. PtrOR:' CASE "OR"
  183.             PUSHARG "||"
  184.  
  185. GOTO EXITSELECT
  186. PtrNEG:'        "MINUS"                CASE "NEG","MINUS"
  187.             PUSHARG STR$(VAL(POPARG$)*-1)
  188.  
  189.