This page contains many free OS/2 (warp or merlin) programs that I have written. As an example you can download a free html (or IPF/rexx) preprocessor called PPWIZARD.
This software has all been written by Dennis Bareis. Please read the disclaimer before downloading or using any software from these pages. You should also check out my recommended software page for other very useful code.
Once you have evaluated what you have downloaded I would appreciate feedback, this will hopefully be good but I'll take the bad as well. This will encourage me (hopefully) to continue. Maintaining these pages takes significant effort and if it appears that nobody benefits from it then I'll stop...
Note that you should be able to run any of my free DOS tools under OS/2.
In this table the top entries are the latest to be added or updated. This makes it easier for you to recognise changes when you next log on.
Note that I have converted to Windows 2000, if you wish a change to any OS/2 specific program ask and I'll post the source code (I intend to do this anyway this will just push me to do it faster).
|I have heaps of interesting and useful rexx source code routines.|
Tue Nov 1 2005
This free program is used to validate URLS, it will report all links such as those that would generate a page not found (404) as well as pages that have moved.
Note that I also use it (via a PPWIZARD add-on) to indicate when a link was last checked and whether it was OK or not (in my link pages).
Sat May 28 2022
This preprocessor can be used to generate HTML (and rexx or other) code from source files. It supports commands such as "#include", "#define", "#if" and much more.
I maintain two differing homepages (this is one of them) from the same source, all the html you are seeing has been processed/generated by this program. Note that the '#if' processing is very powerful and that you can execute any rexx commands and use the output (all the file sizes and dates where provided were automatically calculated by this program). The #define command supports parameters and conditional generation of code.
As a rexx preprocessor it allows you to easily create header files of standard routines so that you never need to duplicate source code again! I have made some source routines available for #include in your programs. If you wish you could then compile the generated output using REXX2EXE to produce ".EXE" files. Rexx code is packed by default so that your input can contain many comments and be spaced out with most of this being removed from your runtime.
You will not find a better INF/IPF preprocessor for generating OS/2 INF files.
Note that this program can be used for virtually any file type and not just html & rexx. Some people use PPWIZARD macros to develop AWE def files and someone uses it with PHP.
3 Feb 00
|This is a rexx program which can be used to create binary files from a text script. No more binary editor! Comment your binary files! I recommend the use of a PPWIZARD preprocessor step to add greatly to this programs capabilities. It has an interactive (command prompt) mode. Many more commands are planned.|
16 Dec 99
|This program compiles rexx code to create ".EXE" files. The resultant executable does not contain the source and by default is compressed and encrypted so people can't even patch text strings. You can generate 2 types of ".EXE" files, a larger standalone or a much smaller one that requires a "DLL" at runtime. If you are interested in this program you should also check out PPWIZARD (it can be used as a rexx preprocessor).|
28 Nov 99
This program opens a WPS folder for the directory you
specify (view of current directory is the default).
This is handy when you are in a command prompt and wish
to quickly access WPS features.
Can also open command prompts given a WPS view.
3 Oct 99
|Creates icons which turn OS/2's archiving on & off. It allows you to click on an icon to turn archiving on and automatically turn it off again after the archive has taken place on the following boot. You can also have it automatically perform an archive every 'x' days. You can increase the number of archives kept from the default of 3 up to a maximum of 9. Never again lose all your 'good' archives due to a boot problem or realise you have forgotten to make one when you need to restore! The install program takes care of WARP 3 / WARP 4 differences.|
9 Sep 99
|Come on, every sites got to have a directory deletion program. This one's written in rexx and deletes read only files etc.|
27 Aug 99
|This program is very useful in make files and can also be of use in batch files. Its task is to capture the output of a command to a file while also displaying the output. This functions much like "tee" programs however the return code of the command is not lost.|
5 May 99
|This rexx program is an automated text editor. It allows you to easily modify files such as "CONFIG.SYS". It has not been specifically written for "CONFIG.SYS" but does have some specialized commands to make editing this file easier. It is very powerful and can make decisions based on return codes, environment variables etc.|
2 May 99
This program reads in a text file which describes the changes you wish
to make to one of more INI files and makes these INI file changes. It
can also take a single command from the command line. It can take some
very complex expressions. If you wish to process an existing INI file
then the INIDUMP program will generate
output which INIWRITE can process.
Note that maintaining INI file contents in text form and then "compiling" them allows you to comment changes and manage under source control programs such as PVCS. It also makes INI file editing much easier! This program uses FASTINI.DLL if it's available to greatly boost its performance.
2 May 99
|This rexx program dumps an INI file into a format which could be used by INIWRITE. If you want a more human readable format you should use INIREAD instead. This program uses FASTINI.DLL if it's available to greatly boost its performance.|
2 May 99
|This small rexx program dumps all or part of the INI file specified on the command line. I have used it to look for differences between INI files. It creates human readable output. Depending on your needs INIDUMP may be more suitable. This program uses FASTINI.DLL if it's available to greatly boost its performance.|
16 Mar 99
This program has many commands related to the manipulation
of WPS objects and classes. It can create objects based
on a database (which can use commands such as #include and #define).
This program combined with an initial PPWIZARD preprocessor step would give you powerful decision making capability about which icons to create and their setup strings.
8 Mar 99
30 Jan 99
Works better in
|This program scans binary files and finds strings. You have a lot of control as to what is defined as a string. For example you can decide that strings don't contain digits 0-9 etc.|
29 Jan 99
|This program creates a database of CRC 32 calculations for the files you specify and allows you to compare these at a later stage to report the changes. It is possible to automatically create lists of changed files. It can be very useful to record your whole hard drive and then report on changes after a program has been installed.|
27 Dec 98
|Program which given mask deletes files if they are x days old. Optionally process files in subdirectories.|
22 Aug 98
Windows 95 & NT
| This rexx utility accepts user input and generates one or more output files from a template. You specify (without coding) what questions will be asked and what validations should occur. Some basic validations are built in and rexx code can be called for more complex requirements. |
An example is included in the documentation which shows how a CM/2 response file is tailored after a few simple questions have been answered.
Also included is "CursorT.EXE" which can be used to change the shape of the OS/2 cursor (can be handy in rexx code).
1 Aug 98
|This program manipulates PM Windows/Programs. You can dump, rename, minimize, close, remove menu options and more. You identify items through wildcard specifications. You can use this program to work out if a window is available (example a dump command should return RC=0).|
1 Aug 98
|This program manipulates the OS/2 Window List. You can dump, rename, hide, unhide, kill, close and switchto and more. You identify items through wildcard specifications. You can use this program to work out if an item is in the switch list (example a dump command should return RC=0).|
8 Jun 98
This small rexx program processes .GIF and .JPG files either
by dropping files or directories onto the icon it installs or via the
If using the icon then information about the images (Width, height, & size) along with the image itself are displayed in the NETSCAPE browser (these can then be printed if you wish). Depending on which icon you used either a single directory or a directory tree are shown so you could display all images on a drive at once.
The command line version gives you more control than the icon and by default has a simplistic output mainly listing the width & height of the images. You can greatly speed up the display of web pages by specifying the image sizes on "<IMG" html tags.
29 May 98
|This is a rexx DLL with example rexx code on how any rexx program that accesses INI files through SysIni calls are made much faster. This does not require your code to be rewritten just two small pieces of code to be inserted. I've seen a 280 times increase in INI update times! While the included example shows one way to incorporate FASTINI code, the recommended approach is to use the FASTINI.XH header file.|
15 Apr 98
|This is a rexx DLL (with sample .CMD) that allows rexx programs to perform regular expression searches and replaces.|
|This is a sample which makes use of a recommended tool called RESMGR to automatically patch OS/2 netscape 2.02E to remove options, change buttons and links etc.|
2 Nov 97
|My PPWIZARD program does a better job and I consider this program to be obsolete. I will not be updating it.|
1 Aug 97
|This program is used to modify a floppies' boot sector so that when it's in the drive and the PC is rebooted it will boot off the hard disk. I use this for all my data floppies (see enclosed format1.cmd). There are other programs that do this but all had bugs and I could find none for OS/2. This package also contains "DRIVE_FB.EXE" which can reset/read/write diskette or hard disk boot records as well as hard disk master boot records.|
7 Oct 96
|This utility can be used to "patch" files rather than distribute the whole thing. There are two utilities included. MAKBUILD.EXE compares the current and previous version of a file and creates a much smaller 'patch' file. REBUILD.EXE takes the patch file, performs as many verifications as possible and then applies the patch to the older version on a users machine to build the desired file. Note that you can also sometimes get quite good gains even with using an unrelated file as an old version.|
26 Jul 97
|This is a text based file viewer. It has some nice features including the ability to highlight lines that contain specific text such as "error". It can also accept its input via a pipe.|
28 Jul 96
|This tool is basically for debugging or tracing code, this tracing code may be left in place as the impact is not that large. This is an extensive enhancement to the PMPRINTF code you may have seen elsewhere, this code allows you to debug SOM/WPS code as well as REXX and 'C' code. The viewer which has also undergone many enhancements is supplied along with the programming interfaces and online help. A program to redirect PMPRINTF queue output to a log file is also attached.|
9 Feb 97
|This program decompiles OS/2 message files. This would allow you to examine/modify the file and recompile. This program was written in rexx with a small DLL written in 'C' to overcome a OS/2 bug which IBM is not keen to fix.|
6 Nov 95
|This is a do heaps filter program. Amongst other things it does case conversion, hex dumps (ASCII/EBCDIC/Custom) and binary to text representation and back.|
4 Aug 94
|This rexx program dumps a files Extended Attributes. It's written in rexx and makes use of the OS/2 EAUTIL.EXE program.|
3 Oct 96
|This program will compare 2 binary files. It formats results much better than the standard "comp" command and does not stop at 10 mismatches. It will handle files of different length but will stop on EOF of the smaller.|
Some of the packages contain very detailed documentation while others don't contain any. For almost all of my programs if you make a command line error a summary of the correct syntax is produced. If I have placed a package here without documentation then I have done so because I believe there is enough information available (and because I have too many other things to do!).
I would appreciate some feed back on how you use or find my programs. I am also interested in fixing any bugs you might find or hearing about any enhancements that would make your task easier.
As long as you are not making money by reselling or including my software as a selling feature then I don't care who uses this software or whether it's for individual use or used by a large corporation. If however you will make money from my work then we need to talk! If you make use of my product within your own please point people to my homepage so they can update the code.
Saturday May 28 2022 at 3:15pm