OS/2 DLL entry points

This OS/2 DLL's entry point description is inspired by http://home.clara.net/orac/os2dll.htm, http://www.edm2.com/index.php/Category:Files

Control Program API

These DLL's contain core OS/2 API, exported by kernel (called CP API or Control Program API), and others are mostly “forwarders” to doscalls. We must note here, that in Intel OS/2 doscalls is a virtual DLL. It does not exist on disk. But here exist DOSCALL1.DLL, which is a collections of call gates into the kernel, or implementations of some API's fully in ring3, based on the real kernel API. DOSCALLS is a virtual DLL, which is a pure kernel API merged with doscall1.dll. The kernel will load also the DLL called DOSCALL2.DLL, which is “user defined API's”. This was intended for OEM API extensions.

Name	Description	Status
doscalls	Most CP API
ansicall	ANSI terminal support	Done
nls	NLS support	Done
msg	Message file API	Done
moncalls	Monitor API	Done
kbdcalls	Keyboard API
moucalls	Mouse API
viocalls	VIO API
sesmgr	Session manager
bkscalls	Base Keyboard Subsystem	Done
bmscalls	Base Mouse subsystem	Done
bvscalls	Base Video Subsystem	Done
nampipes	Named Pipes API	Done
quecalls	Queues API
os2char	OS/2 character console context	Done

Unicode API

Name	Description	Status
uconv
unikbd
libuni

BIDIrectional support

Name	Description	Status
bdcalls	16-bit API
bdcalls32	32-bit API
bdime	Bidirectionlal Input Method Editor
bdbvh	BVH for BIDI
bdview	BDview (Language Viewer) WPS class (in System Setup)
bdwpcls	some WPS class?

Base Video Handlers

Name	Description	Status
bvhinit	minimal BVH, capable of writing via int 10h when booting and install process
bvhmpa	a BVH for monochrome adapter
bvhvga	a BVH for VGA adapter
bvhsvga	a filter BVH for SVGA modes
bvhwndw	a BVH for VIO windows in a PM environment

GRADD subsystem

Name	Description	Status
vman	Video Manager (VMAN)
softdraw	Softdraw – a default software renderer
gre2vman	A PM GRE to VMAN translation layer
gengradd	Generic VESA GRADD driver as an example of a GRADD driver

Information Presentation facility

Name	Description	Status
helpmgr	Help Manager API
hpmgrmri	Help manager MRI (resources)
minxobj	Mindex (Main Index/Glossary) WPS class
ibmhmgr	Old version of helpmgr (from IBM)
newview	some NewView stub ???
minxmri	Mindex resources (MRI)

REXX

Name	Description	Status
rexx	REXX Interpreter
rexxapi	API for manipulating REXX environment and enable scripting in applications
rexxutil	REXX utilities library

Presentation Manager

The core PM DLL's

Name	Description	Status
pmmerge	The PM merged library (the PM “kernel”)
pmmrgres	PMMERGE resources
pmshapi	The PMShell API	Done
pmshltkt	PMShell toolkit ???
pmgre	PM GRE (Graphics Runtime Environment) API	Done
pmgpi	GPI (Graphical Program Interface) API
pmdrag	The PM Drag'n'Drop API	Done
pmctls	PM controls
pmbidi	PM BIDI API
pmmle	PM MLE (Multiple Line Edit) control	Done
pmspl	PM Print Spooler API
pmviop	PM VIO Shield
pmwin	PM Window Manager API	Done
pmwinx	Open32 (Win32 API subset)
mirrors	Something also related to Open32
registry	Registry support

The IFI (Intelligent Font Interface) drivers

Name	Description	Status
pmatm	A PM Adobe Type Manager
truetype	A PM Truetype Font Driver
pmunif	A PM UNI Font IFI driver
freetype	A Free OpenSource Truetype driver replacement
pmpre	PMPRE ???

Data Exchange

Name	Description	Status
pmclip	PM clipboard
pmdde	A windows-like Dynamic Data Exchange
pmddeml	???

VDM PM interface

pmvdmh	PM VDM helper	pmvdmp	PM DOS window DLL (works closely with pmviop)	seamless	Seamless Win-OS/2 support (PM shield)	shield	Some shieild API

Miscellaneous

pmpic	Something which handle pictures and metafiles	pmtkt	PM toolkit ???

WPS

pmwp	WPS main module	pmwpmri	WPS resources	pmvddrop	PMVDDrop Class library (WPS class???)
OS/2 DLLs
Base API	DOSCALLS EMXWRAP SUB32 ANSICALL NLS MSG MONCALLS KBDCALLS MOUCALLS VIOCALLS SESMGR BKSCALLS BMSCALLS BVSCALLS NAMPIPES QUECALLS OS2CHAR
Bidirectional NLS	BDCALLS BDCALLS32 BDIME BDBVH BDVIEW BDWPCLS BIDIPM PMBIDI
Unicode API	UCONV UNIKBD LIBUNI
BVH (Base Video Handlers)	BVHINIT BVHMPA BVHVGA BVHSVGA BVHWNDW
GRADD subsystem	VMAN SOFTDRAW GRE2VMAN GENGRADD
IPF (Information Presentation facility)	HELPMGR HPMGRMRI MINXOBJ IBMHMGR NEWVIEW MINXMRI ERRTXT
REXX	REXX REXXAPI REXXUTIL REGINA
The core PM DLL's	PMMERGE PMMRGRES PMSHAPI PMSHLTKT PMGRE PMGPI PMDRAG PMCTLS PMMLE PMSPL PMVIOP PMWIN
Open32	PMWINX MIRRORS REGISTRY
Intelligent Font Interface drivers	PMATM TRUETYPE PMUNIF FREETYPE PMPRE
Data Exchange	PMCLIP PMDDE PMDDEML
VDM PM interface	PMVDMH PMVDMP SEAMLESS SHIELD
WPS	PMWP PMWPMRU PMVDDROP
Miscellaneous	PMPIC PMTKT MVDM
SOM API	SOM SOMC