Welcome to PDOS (Public Domain Operating System) and PDPCLIB (Public Domain Project C Library)

The new location of this project is http://pdos.org

There are two major components to the PDOS project:

PDPCLIB: Public Domain C Runtime Library

The most commonly used component, thanks to GCCMVS (port of GCC to IBM mainframe) is PDPCLIB which is a public domain C runtime library which you can link your own C programs against to produce executables with no licencing restrictions (even if you use a compiler, commercial or non-commercial, that does have licencing restrictions). PDPCLIB works on DOS, OS/2, Win32, PDOS, MVS (mainframe) and CMS. The library conforms to the ISO/IEC 9899:1990 (aka ANSI X3.159-1989 aka C90 aka C89) standard. It has no extensions so is particularly good at finding out if your code is truly portable.

PDOS: Public Domain Operating System

Secondly, there is an operating system, with a user interface as simple as MSDOS, but behind the scenes the story is quite different. There are 2 completely different APIs supported (MSDOS and MVS). The MSDOS API is supported on both the 16-bit 8086 and 32-bit 80386. On the 80386, it isn't really the MSDOS API, it is a theoretical 32-bit MSDOS API (note that while the API and applications are pure 32-bit, it internally switches to 16-bit in order to be able to use the BIOS, a fact that the application and end user is completely unaware of). The 32-bit version is now known as PD-Windows, as it supports some of the Win32 API, allowing a subset of Windows executables to be run. It sits on top of 32-bit PDOS/386. The MVS API is supported on the 24-bit S/370 and 31-bit S/390 IBM mainframe hardware. The 32-bit S/380 from Jujitsu is also supported. The 16-bit MSDOS API and the 24/31-bit MVS API are both able to run a subset of real-world applications that were targetted to the original environment that they are in some ways a clone of.

Public Domain Software Philosophy

It is hoped that programmers from around the world who subscribe to this worldview will make themselves available to push this project forward.

Software and Documentation

You can find the software and documentation for PDOS and PDPCLIB in text files in the downloadables from the file area here.

Miscellaneous Software

There is also some miscellaneous programs with source code there, including OZPD (snippets of PD code), PDPZM (public domain zmodem), PDCOMM (PD communication routines for DOS, OS/2 and Windows), BBS-related stuff (Devil Dialer C, RSEND, Tobruk), RZSZPE - a port of rzsz (zmodem) to DOS and OS/2, and PDCRC - a set of CRC routines.

Contact

Most discussion of PDOS and PDPCLIB takes place here, amongst mainframe enthusiasts. PDOS also has an IRC channel - irc.freenode.net #pdos . PDOS is also mentioned in the alt.os.development newsgroup. Anyone interested in making (explicitly public domain) enhancements to either component is most welcome. I also sometimes run a telnet server using PDOS under qemu and you can connect to kerravon.mooo.com 64000


E-mail Paul Edwards here.