Open Source Projects:

Here you'll find open source software that I've either either helped develop, or that I've ported to make it work on IBM i:

The Linux Tn5250 Project


An open-source 5250 emulator for Linux, FreeBSD, etc.


Traceroute for OS/400


A traceroute program for OS/400 V3R2 -> V4R5. This will not work on modern (V5R1+) releases of OS/400.




A library of RPG IV functions for integrating FTP into your AS/400 software.




A library of RPG IV functions for integrating HTTP into your AS/400 software.




Implements an RPG SPECIAL file to simplify the task of running PASE/QShell commands from your RPG programs.


SNTP Program


An ILE RPG/400 program that you can use to sync your system with an internet time server.


Base64 Encode/Decode


An ILE RPG/400 service program that you can call from your other ILE programs to encode or decode base64 data.


Expat XML Parser


This is my port of the open source Expat XML parser to the iSeries, and my examples of how to use it from an ILE RPG program.


OpenSSH on IBM i


This is just documentation and links to documentation related to running SSH in PASE on IBM i. (This page does not contain downloads)


7-Zip on IBM i


Software to Zip, Encrypt, Tar, Compress, etc in a lot of different formats. Runs under PASE on IBM i.


Expect for IBM i


Expect is a tool to help you write scripts of PASE commands. It lets you write scripts that act like interactive typing/reading of the screens.


Greasemonkey Scripts


Scott's homegrown Greasemonkey scripts. Yum Yum.


GNU Privacy Guard (GnuPG)


Very popular open source tool for working with PGP. This is the Unix version of the tool, compiled to be run on IBM i in PASE.


Image Magick


This is a Unix program that you can use in scripts (or CL programs) to work with images. You can add text, resize, etc, any image files that you have in the IFS. This is Unix software compiled to run on AIX.


Send Signal (Kill) Command


On Unix systems, there's a command named 'kill' that can be used to send a signal to other processes. Here I provide a KILL command for IBM i (OS/400) that works like the Unix tool, letting you send any signal to any active job.


JDBCR4 (JDBC from RPG IV) Tool


Tool that that's intended to make it easier to use JDBC database drivers from an ILE RPG program. The intention is to make it easy to access databases like SQL Server, Oracle and MySQL from RPG.


HSSFR4/XLPARSER4 (Excel Spreadsheets) Tool


The open-source POI software from Apache, has a great HSSF module for reading, writing and updating Excel documents. HSSFR4 is intended to make it easier to use POI (which is written in Java) from an ILE RPG program.


YAJL (JSON parser/generator) Tool


A extremely fast open source tool to parse (read) and generate (write) JSON data from ILE C or ILE RPG programs.


BUILD (General Purpose Build) Tool


Similar to a make tool, etc. Allows you to put the needed commands to create your program at the top of your source member. Then you can run the BUILD CL command, and it will run the commands to compile your code.


CSVutil/CSVR4 (CSV Utility) Tool


This is a service program to help you read CSV files from an ILE RPG program.


PRTSTMF (Print Stream File) Command


Copies the contents of a stream/IFS file (Such as PDF, PostScript, PPDS or PDL) directly to a printer device. If the printer understands the language, it will print it properly.