CPI Functions Analysis and Comparison (OS2Linux / 2Ine)

From OS2World.Com Wiki
Jump to navigation Jump to search

This is a light check of what functions of Control Program Interface does the OS2Linux projects has implemented. It was not tested so we can not know for sure if the 100% of the functionality is implemented.

Date/Time

CPI Function Name Available Link
DosGetDateTime Yes datetime.c
DosSetDateTime Yes datetime.c

Device I/O

CPI Function Name Available Link
DosBeep Yes process.c
DosDevConfig No
DosDevIOCtl No
DosListIO No
DosListIOL No
DosPhysicalDisk No

Video I/O functions

CPI Function Name Available Link
VioRegister No
VioGlobalReg No
VioDeRegister No
VioGetBuf No
VioGetCurPos Yes sub.c
VioSetCurPos Yes
VioGetCurType No
VioSetCurType No
VioGetMode No
VioSetMode No
VioGetPhysBuf No
VioReadCellStr No
VioReadCharStr No
VioWrtCellStr No
VioWrtCharStr Yes sub.c
VioScrollDn No
VioScrollUp No
VioScrollLf No
VioScrollRt No
VioWrtNAttr No
VioWrtNCell No
VioWrtNChar Yes sub.c
VioWrtTTY Yes
VioWrtCharStrAtt No
VioCheckCharType No
VioShowBuf No
VioSetAnsi No
VioGetAnsi No
VioPrtSc No
VioPrtScToggle No
VioRedrawSize No
VioSavRedrawWait No
VioSavRedrawUndo No
VioModeWait No
VioModeUndo No
VioModeUndo No
VioScrUnLock No
VioPopUp No
VioEndPopUp No
VioGetConfig No
VioGetConfig No
VioSetFont No
VioGetCp No
VioSetCp No
VioGetState No
VioSetState No
Advanced VIO
CPI Function Name Available Link
VioAssociate No
VioCreateLogFont No
VioCreatePS No
VioDeleteSetId No
VioDestroyPS No
VioGetDeviceCellSize No
VioGetOrg No
VioQueryFonts No
VioQuerySetIds No
VioSetDeviceCellSize No
VioSetOrg No
VioShowPS No
WinDefAVioWindowProc No

Keyboard functions

CPI Function Name Available Link
KbdRegister No
KbdDeRegister No
KbdCharIn No
KbdPeek No
KbdStringIn No
KbdFlushBuffer No
KbdSetStatus No
KbdGetStatus No
KbdSetCp No
KbdGetCp No
KbdOpen No
KbdClose No
KbdGetFocus No
KbdFreeFocus No
KbdSynch No
KbdSetFgnd No
KbdGetHWID No
KbdSetHWID No
KbdXlate No
KbdSetCustXt No

Mouse functions

CPI Function Name Available Link
MouRegister
MouDeRegister
MouFlushQue
MouGetPtrPos
MouSetPtrPos
MouSetPtrShape
MouGetPtrShape
MouGetDevStatus
MouGetNumButtons
MouGetNumMickeys
MouReadEventQue
MouGetNumQueEl
MouGetEventMask
MouSetEventMask
MouGetScaleFact
MouSetScaleFact
MouOpen
MouClose
MouRemovePtr
MouDrawPtr
MouSetDevStatus
MouInitReal
MouSynch
MouGetThreshold
MouSetThreshold

Monitor functions

CPI Function Name Available Link
DosMonClose No
DosMonOpen No
DosMonRead No
DosMonReg No
DosMonWrite No

Dynamic Linking Library

CPI Function Name Available Link
DosFreeModule Yes modulemgr.c
DosLoadModule Yes
DosQueryAppType No
DosQueryModuleHandle unsupported modulemgr.c
DosQueryModuleName unsupported
DosQueryProcAddr Yes
DosQueryProcType Yes

Error Management

CPI Function Name Available Link
DosErrClass unsupported misc.c
DosError unsupported misc.c

Exception Management

CPI Function Name Available Link
DosRaiseException unsupported exceptions.c
DosSetExceptionHandler unsupported exceptions.c
DosUnsetExceptionHandler unsupported exceptions.c
DosUnwindException unsupported exceptions.c

Must Complete Management

CPI Function Name Available Link
DosEnterMustComplete unsupported exceptions.c
DosExitMustComplete unsupported exceptions.c

Signaling Exception Management

CPI Function Name Available Link
DosAcknowledgeSignalException unsupported exceptions.c
DosSendSignalException unsupported exceptions.c
DosSetSignalExceptionFocus unsupported exceptions.c

File Systems/File Management

Directory Searching

CPI Function Name Available Link
DosFindClose Yes filemgr.c
DosFindFirst Yes filemgr.c
DosFindNext Yes filemgr.c

Directory

CPI Function Name Available Link
DosCreateDir Yes filemgr.c
DosDeleteDir Yes filemgr.c
DosQueryCurrentDir Yes filemgr.c
DosSetCurrentDir Yes filemgr.c

Disk

  • DosQueryCurrentDisk
  • DosSetDefaultDisk

Environment/Path

  • DosScanEnv
  • DosSearchPath
LibPath
  • DosQueryExtLIBPATH
  • DosSetExtLIBPATH

File Manipulation

  • DosCancelLockRequest
  • DosCancelLockRequestL
  • DosClose
  • DosProtectClose
  • DosCopy
  • DosDelete
  • DosEditName
  • DosForceDelete
  • DosMove
  • DosOpen
  • DosOpenL
  • DosProtectOpen
  • DosProtectOpenL
  • DosRead
  • DosProtectRead
  • DosSetFileInfo
  • DosProtectSetFileInfo
  • DosSetFileLock
  • DosSetFileLockL
  • DosProtectSetFileLock
  • DosProtectSetFileLockL
  • DosSetFilePtr
  • DosSetFilePtrL
  • DosProtectSetFilePtr
  • DosProtectSetFilePtrL
  • DosSetFileSize
  • DosSetFileSizeL
  • DosProtectSetFileSize
  • DosProtectSetFileSizeL
  • DosSetPathInfo
  • DosSetVerify
  • DosWrite
  • DosProtectWrite

File Handle Manipulation

  • DosDupHandle
  • DosQueryFHState
  • DosProtectQueryFHState
  • DosQueryHType
  • DosResetBuffer
  • DosSetFHState
  • DosProtectSetFHState
  • DosSetMaxFH
  • DosSetRelMexFH

File Querying

  • DosEnumAttribute
  • DosProtectEnumAttribute
  • DosQueryFileInfo
  • DosProtectQueryFileInfo
  • DosQueryPathInfo
  • DosQuerySysInfo
  • DosQueryVerify

File System Functions

  • DosFSAttach
  • DosFSCtl
  • DosQueryFSAttach
  • DosQueryFSInfo
  • DosResetBuffer
  • DosSetFSInfo
  • DosShutdown

Memory Management

  • DosAllocMem
  • DosFreeMem
  • DosQueryMem
  • DosSetMem

Heap Memory

  • DosSubAllocMem
  • DosSubFreeMem
  • DosSubSetMem
  • DosSubUnsetMem

Shared Memory

  • DosAllocSharedMem
  • DosGetNamedSharedMem
  • DosGetSharedMem
  • DosGiveSharedMem

Thread local Memory

  • DosAllocThreadLocalMemory
  • DosFreeThreadLocalMemory

Addressing

  • DosFlatToSel
  • DosSelToFlat

Message Management

  • DosGetMessage
  • DosTrueGetMessage
  • DosInsertMessage
  • DosPutMessage
  • DosQueryMessageCp
  • DosIQueryMessageCp

National Language/Code Page

  • DosQueryCp
  • DosSetProcessCp
  • DosMapCase
  • DosQueryCollate
  • DosQueryCtryInfo
  • DosQueryDBCSEnv

Pipes

  • DosCreatePipe

Named Pipes

  • DosCallNPipe
  • DosConnectNPipe
  • DosConnectNPipe
  • DosDisConnectNPipe
  • DosPeekNPipe
  • DosQueryNPHState
  • DosQueryNPipeInfo
  • DosQueryNPipeSemState
  • DosResetBuffer
  • DosSetNPHState
  • DosSetNPipeSem
  • DosTransactNPipe
  • DosWaitNPipe

Queues

  • DosCloseQueue
  • DosQueryQueue
  • DosWriteQueue

Server

  • DosCreateQueue
  • DosPeekQueue
  • DosPurgeQueue
  • DosReadQueue

Client

  • DosOpenQueue

Resource Management

CPI Function Name Available Link
DosFreeResource unsupported resources.c
DosGetResource unsupported resources.c
DosQueryResourceSize unsupported resources.c

Semaphores

Event Semaphores

  • DosCloseEventSem
  • DosCreateEventSem
  • DosOpenEventSem
  • DosPostEventSem
  • DosQueryEventSem
  • DosResetEventSem
  • DosWaitEventSem

Mutex Semaphores

  • DosCloseMutexSem
  • DosCreateMutexSem
  • DosOpenMutexSem
  • DosQueryMutexSem
  • DosReleaseMutexSem
  • DosRequestMutexSem

MuxWait Semaphores

  • DosAddMuxWaitSem
  • DosCloseMuxWaitSem
  • DosCreateMuxWaitSem
  • DosDeleteMuxWaitSem
  • DosOpenMuxWaitSem
  • DosQueryMuxWaitSem
  • DosWaitMuxWaitSem

Processes/Threading

  • DosExit
  • DosGetInfoBlocks
  • DosSetPriority

Processes

  • DosEnterCritSec
  • DosExecPgm
  • DosExitCritSec
  • DosExitList
  • DosKillProcess
  • DosWaitChild

Threads

CPI Function Name Available Link
DosCreateThread Yes process.c
DosKillThread Yes process.c
DosQueryThreadAffinity No
DosResumeThread Yes process.c
DosSetThreadAffinity No
DosSleep Yes process.c
DosSuspendThread Yes process.c
DosWaitThread Yes process.c

Session Management

  • DosSelectSession
  • DosSetSession
  • DosStartSession
  • DosStopSession

Timer

CPI Function Name Available Link
DosAsyncTimer Yes datetime.c
DosStartTimer Yes datetime.c
DosStopTimer Yes datetime.c