This page contains some miscellaneous programs that I've written for the OS/2 operating system.

Archive Viewer
Archive Viewer is a very simple GUI tool for viewing and extracting archive files of various types. It originated as a free utility included in the eComStation operating system, of which it continues to be a part today. However, I have also decided to release it as open source software under the GNU GPL.

Archive Viewer cannot create archives, nor is this ever planned as a feature. (It is not my intention to compete with with commercial archive managers for marketshare.)

See the README file for more information.

The binary package provided here requires WarpIN to install.

Watcom VX-REXX (version 2.1D) is required in order to build the source code.

Screenshots

Files

arcview_202.wpi Program install package (WarpIN)
arcview_src_202.zip Source code (VX-REXX)
ATSHELL
ATSHELL is a small program designed to replace PMSHELL.EXE as the RUNWORKPLACE program. It allows an arbitrary program to be used as the 'desktop', including (but not limited to) the Workplace Shell (PMSHELL), a web browser, a file manager, or some custom application. It also allows this desktop program to be stopped and restarted, or even changed to something else entirely, without rebooting the system. In addition, ATSHELL allows you to open command prompts or shut down the system, even when the desktop program is not running.

A simple 'secure' mode is also provided, which allows the system administrator to prevent users from opening command prompts or changing the desktop program.

ATSHELL was originally conceived as a shell replacement for 'web kiosk' type systems, but it is useful for other situations as well. For instance, you can set ATSHELL as your desktop shell, then use it to start the Workplace Shell (transparently, if you wish). Then, if the WPS ever has to be terminated, you will automatically be returned to the ATSHELL window, whence you can shut down, use the OS/2 command line, or restart the WPS, as you prefer.

See the README file for more information.

ATSHELL is free software licensed under the GNU GPL.

Screenshots

Files

atshell_05_src.zip
atshell_05_en.zip English version
atshell_05_de.zip German version
Source code (C)

ConText
ConText is a utility for converting text from one encoding (codepage) to another.

It does two useful things. First of all, it lets you convert text from one arbitrary codepage to another. That is, all character byte values are changed as needed to preserve the original meaning of each character under the target codepage. (Note, however, that all text is displayed using the current Presentation Manager codepage.)

Second, ConText also supports the copy and paste of Unicode text (such as may be copied using one of the Mozilla products) to and from the clipboard.

See the README for more information.

ConText is licensed under a BSD-style license. Since the program is at least partly intended as an illustration of the OS/2 Unicode APIs, the source code is included in the main distribution.

Screenshots

Files

context_04.zip Program files and source code (C)
DBCSMAP
DBCSMAP is an OS/2 character map program for Unicode and double-byte characters. It supports the Unicode Basic Multilingual Plane, as well as the common OS/2 codepages for Chinese (Traditional and Simplified), Japanese, and Korean.

Besides entering Unicode characters, DBCSMAP can also be potentially useful if you need to enter Asian characters (in one of the aforementioned languages), but have neither an Asian keyboard nor access to any DBCS input tools.

See the README file for more information.

DBCSMAP is free software licensed under the GNU GPL.

Screenshots

Files

dbcsmap-1_4.zip Executable program
dbcsmap-1_4-src.zip Source code (C)

FreeType/2 IFI
FreeType/2 is an OS/2 Presentation Manager font driver for TrueType fonts. It is designed to replace OS/2's built-in TRUETYPE.DLL driver, and is based on the open source FreeType library.

Some explanatory notes are in order.

What this is:
FreeType/2 is a system-wide font driver (more technically called an Installable Font Interface driver) for Presentation Manager. This means that all graphical programs which rely on OS/2 for rendering text will benefit from the improved font support.

What this is not:
FreeType/2 is not the same as the FreeType library, which is for use by individual applications that want to avoid using OS/2's default text rendering functions. Consequently, using FreeType/2 will have no effect on applications or GUI environments which use FreeType internally for rendering, such as the Mozilla products, QT4, or anything which uses the Innotek Font Engine.

Furthermore, FreeType/2 only replaces the TrueType support module within Presentation Manager. It cannot circumvent any of the limitations inherent in Presentation Manager's graphics layer (GPI). In particular, there is no support for antialiased fonts, or for font names longer than 31 characters (both of which are restrictions imposed by GPI, and not by the font driver).

This is version 1.3 of FreeType/2. The driver was originally (v1.0 and 1.1) written by Michal Necasek. More recent versions (v1.2) were maintained by KO Myung-hun.

Compared to previous releases, version 1.3 includes a number of new configuration settings designed to improve the reliability of character-to-glyph mappings (especially for Unicode fonts). It also has several tweaks to improve DBCS font support. Finally, it comes with a new, easy-to-use graphical configuration utility.

See the README file for more information.

Screenshots

  • The configuration GUI
  • There are several images illustrating the improvements in text rendering quality here.

Files

ft2v130.zip FreeType/2 installable font driver
ft2v130_src.zip Source code
IMERJ
IMERJ is a "poor man's" input method editor (IME) for Japanese. It allows you to enter Japanese kana by typing romanized text in the edit window. You should then be able to copy and paste the Japanese text to wherever it's wanted.

The program does need to be run under codepage 932 if the Japanese characters are to display correctly.

As of version 0.7, IMERJ requires RXULS.DLL (available here).

See the README file for details.

Screenshots

Files

imerj_08.zip Executable program
imerj_src_08.zip Source code (VX-REXX)
MYIP
MYIP is a simple TCP/IP utility for querying the current system's IP address as seen from the Internet.

Specifically, MYIP contacts a special website that reports the IP address of your computer as the remote server sees it. This allows you to determine your public IP address even if you are connecting through a firewall or router that uses network address translation.

MYIP requires a 32-bit TCP/IP stack (i.e. MPTS 5.3/WR_8600 or higher).

Source code (released under the GPL) is included.

See MYIP.TXT for more information.

Files

myip_02.zip Program files and source code (C)
PM CTorrent Manager
PMCTM is an experimental graphical manager for Enhanced CTorrent clients. See the README for details.

Due to a number of persistent design flaws in PMCTM, I have decided to drop the current codebase and rewrite the program from scratch. Version 0.20 will (probably) be the final release of the original codebase; it fixes a number of bugs in earlier versions. (See the README for more information.)

Screenshots

Files

pmctm_020.zip Executable program
pmctm_020_src.zip Source code (VX-REXX)