Dick Goran  REXX logo C F S Nevada, Inc.

REXX utilities and other REXX related files and information


Description of what's here

Dick Goran has created numerous REXX utilities and test case examples in response to OS/2 REXX related questions posed to him on the various electronic forums and resulting from his monthly The REXX Column in OS/2 Magazine. These programs and example files are made available at no charge. ZIP files generally contain .DOC files which detail the use of the program. Other programs are included as examples of how to accomplish a particular task with REXX and OS/2 and simply contain a brief description at the beginning of the program itself. All can be used on OS/2 Version 2.1 through OS/2 Warp Version 3.0 unless otherwise noted.
Some of these files are also available on CompuServe in the OS2DF1 forum in Library 6 and OS2AVEN forum in Library 2 (OS/2 Magazine). However, as of July 10, 1995, this site is the home location for these files. Each of the files listed below is linked to the applicable location and, for those Web browsers that support direct FTP transfer, clicking on the file name will retrieve the file.
Many of these programs require the use of the REXXLIB.DLL API from Quercus Systems. REXXLIB is not included in each .ZIP file to conserve bandwidth. It must be downloaded once, separately. Each program that requires REXXLIB is noted accordingly with the symbol REXXLIB  required which is a link to download a fully functional, demo copy of rexxlib.zip (262K) directly from the Quercus Web site.
We have included a list of other REXX related sites on the Internet that you might find interesting. This list will be updated on a continuing basis. Recommendations for sites to be included here are invited and they can be E-mailed to C F S Nevada, Inc. When the home location for a file belonging to other than C F S Nevada, Inc. is known, the FTP link below will be to the home location.


REXX Utility Programs - Index

Links below simply take you to the full description of the respective file. Selecting the file name in the full description will transfer the file, so long as your Web browser supports FTP transfer.

configid Set CONFIG.SYS ID in every OS/2 style CONFIG.SYS on the system
fixobj Reconstruct standard system WPS objects
listcfg Create reformatted text file from CONFIG.SYS
listdll Cross reference all addressable (via LIBPATH) DLLs
listea List all extended attributes in ASCII & hex
listexe Cross reference all EXE & COM files found via PATH
listexp Sort & edit Web explorer quicklist entries in EXPLORE.INI
listicon Create folder containing all standard system resource icons
listinf Create folder with references to all .INF files on system
listini List OS2.INI & OS2SYS.INI in ASCII & hex
mmpm_err MMPM/2 MCIAPI.DLL error codes
rexxlib REXX API used in many of these programs
rexxsom.zip REXX DLLs and SOM.DLL (Fixes to FP 17 - 22, obsoleted by FP 26)
rexxref3.zip REXX cross reference & reformatting routine
rxt304 Bernd Schemmer's REXX Program Template
rxtt31 Bernd Schemmer's REXX Tips and Tricks
rxu1a Dave Boll's rich set of Rexx functions
slpos2 A REXX program to setup a Seiko Label printer in a DOS VDM under OS/2.
wptool Workplace Shell tools

REXX Utility Programs - Description

configid.zip - 3K approx.; Version: 1.0; Last updated: 1995/07/05
CONFIGID.CMD will search all of the local and ready hard drives to locate OS/2 CONFIG.SYS files. Each file will have the following inserted at the beginning:
rem The following line was added by CONFIGID.CMD on ...
SET CONFIG.SYS.ID=path_and_file_name
this allows the identity of the active CONFIG.SYS file to be interrogated with the following OS/2 command line:
SET CONFIG.SYS.ID
This facility is handy when it is necessary to IPL from other than the standard CONFIG.SYS (Alt-F1 command line, maintenance Desktop, etc.). REXXLIB  required (262K).   (Index).

fixobj.zip - 10K approx.; Version: 1.2; Last updated: 1996/09/14
FIXOBJ.XMD is an OS/2 REXX program that will generate an OS/2 REXX program that can be used to build objects defined in an .RC file. The .RC files reside in the \OS2 directory. The primary function of the program is to recreate standard OS/2 system objects deleted inadvertently. However, the programs it generates can also serve as a learning guide for creating your own WPS objects. This program can also be found on the CD-ROM which accompanies OS/2 Warp Unleashed.   (Index).

listcfg.zip - 7K approx.; Version: 1.0; Last updated: 1995/12/28
LISTCFG.CMD creates a CONFIG.TXT file which will contain date & time stamps for all files referenced in CONFIG.SYS as well as breaking all multiple directory lines (e.g PATH, LIBPATH, etc.) into short lines. The output .TXT file will be created in the same directory where the CONFIG.SYS file is located. Default is to use CONFIG.SYS on the boot drive; however, an alternate CONFIG.SYS can be specified by supplying its full file system name on the command line.   (Index).

listdll.zip - 120K approx.; Version: 1.7; Last updated: 1997/10/13
LISTDLL will build an ASCII file, LISTDLL.TXT or a file specified by the user, containing a list of any DLLs which appear in more than one subdirectory pointed to by the LIBPATH= statement located in CONFIG.SYS of the IPL (boot) drive of the active system. The optional list of multiple DLLs is followed by a sorted listing of all DLLs pointed to by the LIBPATH= statement. The DLLs are sorted, case insensitively, by DLL name followed by the priority of the DLL in the LIBPATH search order. REXXLIB  required (262K).   (Index).

listea.zip - 15K approx.; Version: 1.3; Last updated: 1995/03/27
LISTEA.CMD builds a file, LISTEA.TXT, in the same directory where the program resides. This file will contain a text listing of all of the Extended Attributes (in both hex and character notation) for all local drive directories and files in the object system except that REXX metafiles and .ICON extended attributes are not detailed. REXXLIB  required (262K).   (Index).

listexe.zip - 13K approx.; Version: 1.1; Last updated: 1996/03/17
LISTEXE will build an ASCII file, LISTEXE.TXT or a file specified by the user, containing a list of any COM and EXE files which appear in more than one subdirectory pointed to by the PATH environment variable. The optional list containing any multiple occurrences of the executable files is followed by a list of all executable files accessible via the PATH environment variable. REXXLIB  required (262K).   (Index).

listexp.zip - 16K approx.; Version: 1.3; Last updated: 1995/12/10
LISTEXP.CMD will invoke KEDIT or an editor of your choice (must be added to source table in the program), if it can be found in the current PATH, or EPM if KEDIT can't be located. It passes the editor the name of a temporary file containing all of the quicklist= entries from \TCPIP\ETC\EXPLORE.INI, indicated by the ETC environment variable, sorted case insensitively by quicklist name.

The file passed to the editor can be changed at will. If the values are not to be changed, simply quitting the editor without saving the changes, will result in no change being made to EXPLORE.INI. REXXLIB  required (262K).   (Index).

listicon.zip - 8K approx.; Version: 1.0; Last updated: 1995/04/25
LISTICON.CMD will create a Desktop folder containing all of the icons bound into the standard OS/2 DLLs. It is structured to access the icons provided with OS/2 Warp Version 3.0 but could be easily modified for prior versions of OS/2. REXXLIB  required (262K).   (Index).

listinf.zip - 16K approx.; Version: 1.0; Last updated: 1995/04/27
LISTINF.CMD will search all available and ready non-CD-ROM drives on the system and build a folder on the Desktop (INF File Collection) that contains the ability to view any of these .INF files from this central location. REXXLIB  required (262K). The title of each object within the folder will contain both the internal .INF title along with the .INF file name. For example:
Rexx Program Reference
e:\os2\book\rexx.inf
Be sure to read the Warning in the comments at the beginning of the program!   (Index).

listini.zip - 16K approx.; Version: 2.2; Last updated: 1994/12/25
LISTINI.CMD will read an OS/2 binary INI file and create a text file for all of the "application" keys and all of the subordinate keys. Application names and the subordinate key are listed in alphabetic order. Key values are shown in character and additionally in hexadecimal if appropriate. REXXLIB  required (262K).   (Index).

mmpm_err.zip - 3K approx.; MCIAPI MMPM/2 error codes from OS/2 Toolkit
This file contains a list of the error codes which can be returned by the MMPM/2 MCIAPI.DLL when called from a REXX program.   (Index).

rexxsom.zip - 234K approx; Last updated 1996/09/29
This zip file contains all of the REXX DLLs and SOM.DLL for Warp Version 3 (Red, Blue, & Connect). These DLLs fix all of the known problems with VX-REXX that were introduced by IBM's FixPaks 17 - 22. REXXSOM.TXT is included. The DLLs contained in this ZIP can be applied to any version of Warp 3, but FP 23+ is still required. These DLLs should be included in FP 26 making this file obsolete. This group of DLLs have been in use at C F S Nevada, Inc. since mid-August.   (Index).

rxt304.exe - 89K approx.; Version 3.04 Last updated 1996/08/29
Bernd Schemmer's Rexx program template. TEMPLATE.CMD is a "runtime system" for REXX programs. You can use TEMPLATE.CMD as base source file for your REXX programs. For further documentation see the leading comments in the file TEMPLATE.CMD. Also included in this package are the programs MAKECMD.CMD and MAKESRC.CMD. Use MAKECMD.CMD to update the runtime system of your REXX programs based on a prior version of TEMPLATE.CMD. Use MAKESRC.CMD to extract the 'real code' of your REXX programs based on TEMPLATE v2+ to get a smaller version for backup purpose. You may use MAKECMD.CMD to add the runtime system to the files created by MAKESRC.CMD again if it is necessary. (Self-expanding file)   (Index).

rxtt31.zip - 675K approx.; Version 3.1; Last updated 2001/01/01 Updated
This is Bernd Schemmer's Rexx Tips & Tricks which was featured in Dick Goran's February, 1996 OS/2 Magazine, The REXX Column.

This .ZIP file expands into a .INF file which contains useful hints and information about OS/2 REXX. Included is information about literature for REXX, additional software for REXX, hints & tips for OS/2 commands, hints & tips for REXX commands & functions, some hints for optimizing REXX code, a lot of REXX source code (functions & complete programs) and much more. Great reading, even if you don't write a lot of REXX programs.   (Index).

rxu1a.zip - 201K approx.; Version 1.A (replaces rxu19.zip); Last updated 1996/05/13
This is Dave Boll's rich set of REXX functions that appeared in Dick Goran's July, 1996 OS/2 Magazine, The REXX Column.

RXU contains a rich set of Rexx functions which expose most of the OS/2 API set to Rexx programs (memory management/access, semaphores, pipes, queues, module handling, threading/tasking, system information, i/o, devioctl, etc.), as well as providing many functions which aid in Rexx programming (variable pool access, "expose" variables across external function calls, queue manipulation, macrospace management, etc.). Package includes .INF file and sample Rexx programs. Freeware.   (Index).

slpos2.zip - 8K approx.; Version 3.0; Last updated: 1996/11/11
This OS/2 REXX program will create an object on your Desktop which will allow you to use a Seiko Label Plus or Seiko Label Pro printer in a full screen DOS VDM session. It presumes that your Seiko label printer functions properly in native DOS. The .ZIP file contains SLPOS2.DOC that fully explains what the program does. Tested with Warp 4 (Merlin) and SLPPRO printer.

This setup has been tested with the standard COM.SYS / VCOM.SYS modules. It will not work with Ray Gwinn's SIO.SYS / VSIO.SYS and Gwinn has apparently given up trying to make the Seiko label printer work.

The success of this program presumes that your Seiko label printer will currently run in a native DOS environment.   (Index).

- 300K approx.; Version: 2.5; Last updated: 1998/09/04

WPTOOLS is a set of programs intended for the 'more experienced' Workplace shell users. The Workplace shell is the user interface for OS/2 2.x and 3.0. With these programs one can (partially) backup and restore a customized workplace shell, remove obsolete workplace shell related information from the ini-files, repair some wps problems, etc.

It was developed by Henk Kelder.

With these programs, one can partially backup and restore a customized Workplace Shell, remove obsolete Workplace Shell related information from the OS2.INI and OS2SYS.INI files, repair some WPS problems, etc. Also, the WPTOOLS.DLL allows retrieving most WPS setup strings from Workplace Shell objects.

The developer states "You are advised to read the .TXT file that describes each program BEFORE using that program".   (Index).


OS/2 REXX Test Cases & Examples

Included below are the source files used for The REXX Column in OS/2 Magazine.

File Name File Size Issue
9411ls01.cmd 8K OS/2 Magazine, The REXX Column - Nov 94 - Listing 1
9412ls01.cmd 4K OS/2 Magazine, The REXX Column - Dec 94 - Listing 1
9501ls02.cmd 5K OS/2 Magazine, The REXX Column - Jan 95 - Listing 2
9503ls02.cmd 2K OS/2 Magazine, The REXX Column - Mar 95 - Listing 2
9506col.zip 4K OS/2 Magazine, The REXX Column - Jun 95 - Build Your Own LaunchPad
9506ls01.cmd 6K OS/2 Magazine, The REXX Column - Jun 95 - Listing 1
9510ls01.cmd 6K OS/2 Magazine, The REXX Column - Oct 95 - Listing 1
9510ls02.cmd 3K OS/2 Magazine, The REXX Column - Oct 95 - Listing 2
9511ls01.cmd 1K OS/2 Magazine, The REXX Column - Nov 95 - Listing 1
9511ls02.cmd 1K OS/2 Magazine, The REXX Column - Nov 95 - Listing 2
9511ls03.cmd 4K OS/2 Magazine, The REXX Column - Nov 95 - Listing 3
winatmon.zip 142K OS/2 Magazine, The REXX Column - Dec 95 - Fragment 3 (complete program)
9601ls01.cmd 4K OS/2 Magazine, The REXX Column - Jan 96 - Listing 1
9603ls01.cmd 220K OS/2 Magazine, The REXX Column - Mar 96 - Listing 1 (includes WPTOOL18.DLL)
9605ls01.zip 2K OS/2 Magazine, The REXX Column - May 96 - Listing 1
9606ls01.zip 43K OS/2 Magazine, The REXX Column - June 96 - Listing 1 (includes WPTOOL18.DLL)
skeleton.zip 2K OS/2 Magazine, The REXX Column - July 96 - Skeleton for beginning a REXX program
9608ls01.cmd 1K OS/2 Magazine, The REXX Column - Aug 96 - Listing
9609col.zip 4K OS/2 Magazine, The REXX Column - Sep 96 - Info-ZIP's UnZip REXX Reference
9610fg01.cmd 1K OS/2 Magazine, The REXX Column - October 96 - Fragment 1
9610fg02.cmd 3K OS/2 Magazine, The REXX Column - October 96 - Fragment 2
9610fg03.cmd 1K OS/2 Magazine, The REXX Column - October 96 - Fragment 3
sysgen01.zip 7K OS/2 Magazine, The REXX Column - October 96 - SysGen01 code sample
test080.zip 4K RxQueue interprocess (parent/child) communication example.
test145.cmd 2K Determine if COM.SYS or SIO.SYS is active
test149.cmd 2K Extract LibPath from CONFIG.SYS & find any BeginLibPath & EndLibPath values, displaying the results.
test164.zip 5K Test for Pentium BIOS error
test171.cmd 1K Parse example with delimiter as first character of string.