CPI Functions Analysis and Comparison (OS2Linux / 2Ine)

From OS2World.com Wiki
(Redirected from OS2Linux Functions Analysis)
Jump to: navigation, search

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

Legend

On the "Available" column you have the follow list:

  • Yes : That can not mean that is full complete, but an implementation is availableon OS2Linux
  • unsupported: Which means that OS2Linux has it implemented but gives an Error response.
  • No: Means that OS2Linux does not have it, not even an ERROR reponse for it.

Date/Time

CPI Function Name OS2Linux OS2Linux Link 2ine 2ine Link
DosGetDateTime Yes datetime.c Yes doscalls.c
DosSetDateTime Yes datetime.c No No

Device I/O

CPI Function Name OS2Linux OS2Linux Link 2ine 2ine Link
DosBeep Yes process.c No No
DosDevConfig No No Yes doscalls.c
DosDevIOCtl No No No No
DosListIO No No No No
DosListIOL No No No No
DosPhysicalDisk No No No No
DosTmrQueryFreq No No No No
DosTmrQueryTime No No No No

Video I/O functions

CPI Function Name OS2Linux OS2Linux Link 2ine 2ine Link
VioRegister No No No No
VioGlobalReg No No No No
VioDeRegister No No No No
VioGetBuf unsupported sub.c Yes viocalls.c
VioGetCurPos Yes sub.c Yes viocalls.c
VioSetCurPos Yes Yes viocalls.c
VioGetCurType unsupported sub.c Yes viocalls.c
VioSetCurType unsupported sub.c unsupported viocalls.c
VioGetMode unsupported sub.c Yes viocalls.c
VioSetMode unsupported sub.c No No
VioGetPhysBuf No No No No
VioReadCellStr unsupported sub.c Yes viocalls.c
VioReadCharStr unsupported sub.c No No
VioWrtCellStr No No Yes viocalls.c
VioWrtCharStr Yes sub.c Yes viocalls.c
VioScrollDn unsupported sub.c No No
VioScrollUp unsupported sub.c Yes viocalls.c
VioScrollLf unsupported sub.c No No
VioScrollRt unsupported sub.c No No
VioWrtNAttr unsupported sub.c No No
VioWrtNCell unsupported sub.c Yes viocalls.c
VioWrtNChar Yes sub.c No No
VioWrtTTY Yes sub.c No No
VioWrtCharStrAtt unsupported sub.c Yes viocalls.c
VioCheckCharType No No No No
VioShowBuf unsupported sub.c No No
VioSetAnsi unsupported sub.c No No
VioGetAnsi unsupported sub.c No No
VioPrtSc No No No No
VioPrtScToggle No No No No
VioRedrawSize No No No No
VioSavRedrawWait unsupported sub.c No No
VioSavRedrawUndo unsupported sub.c No No
VioModeWait unsupported sub.c No No
VioModeUndo unsupported sub.c No No
VioScrUnLock unsupported sub.c No No
VioPopUp unsupported sub.c No No
VioEndPopUp unsupported sub.c No No
VioGetConfig unsupported sub.c No No
VioSetFont No No No No
VioGetCp unsupported sub.c No No
VioSetCp unsupported sub.c No No
VioGetState unsupported sub.c No No
VioSetState unsupported sub.c No 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 No
MouDeRegister No
MouFlushQue No
MouGetPtrPos No
MouSetPtrPos No
MouSetPtrShape No
MouGetPtrShape No
MouGetDevStatus No
MouGetNumButtons No
MouGetNumMickeys No
MouReadEventQue No
MouGetNumQueEl No
MouGetEventMask No
MouSetEventMask No
MouGetScaleFact No
MouSetScaleFact No
MouOpen No
MouClose No
MouRemovePtr No
MouDrawPtr No
MouSetDevStatus No
MouInitReal No
MouSynch No
MouGetThreshold No
MouSetThreshold No

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

CPI Function Name Available Link
DosQueryCurrentDisk unsupported filemgr.c
DosSetDefaultDisk unsupported filemgr.c

Environment/Path

CPI Function Name Available Link
DosScanEnv Yes misc.c
DosSearchPath unsupported misc.c
LibPath
CPI Function Name Available Link
DosQueryExtLIBPATH Yes misc.c
DosSetExtLIBPATH Yes misc.c

File Manipulation

CPI Function Name OS2Linux OS2Linux Link 2ine 2ine Link
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

CPI Function Name Available Link
DosDupHandle Yes filemgr.c
DosQueryFHState Yes filemgr.c
DosProtectQueryFHState unsupported filemgr.c
DosQueryHType unsupported filemgr.c
DosResetBuffer Yes filemgr.c
DosSetFHState unsupported filemgr.c
DosProtectSetFHState unsupported filemgr.c
DosSetMaxFH unsupported filemgr.c
DosSetMaxFH No

File Querying

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

File System Functions

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

Memory Management

CPI Function Name Available Link
DosAllocMem Yes memmgr.c
DosFreeMem Yes memmgr.c
DosQueryMem unsupported memmgr.c
DosSetMem unsupported memmgr.c

Heap Memory

CPI Function Name Available Link
DosSubAllocMem unsupported memmgr.c
DosSubFreeMem unsupported memmgr.c
DosSubSetMem unsupported memmgr.c
DosSubUnsetMem unsupported memmgr.c

Shared Memory

CPI Function Name Available Link
DosAllocSharedMem Yes memmgr.c
DosGetNamedSharedMem Yes memmgr.c
DosGetSharedMem unsupported memmgr.c
DosGiveSharedMem unsupported memmgr.c

Thread local Memory

  • DosAllocThreadLocalMemory
  • DosFreeThreadLocalMemory

Addressing

  • DosFlatToSel
  • DosSelToFlat

Message Management

CPI Function Name Available Link
DosGetMessage Yes misc.c
DosTrueGetMessage No
DosInsertMessage unsupported misc.c
DosPutMessage Yes misc.c
DosQueryMessageCp unsupported misc.c
DosIQueryMessageCp No

National Language/Code Page

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

Pipes

CPI Function Name Available Link
DosCreatePipe Yes queues.c]


Named Pipes

CPI Function Name Available Link
DosCallNPipe Yes nmpipes.c
DosConnectNPipe Yes nmpipes.c
DosDisConnectNPipe Yes nmpipes.c
DosPeekNPipe Yes nmpipes.c
DosQueryNPHState Yes nmpipes.c
DosCreatePipe Yes queues.c
DosQueryNPipeInfo unsupported nmpipes.c
DosQueryNPipeSemState unsupported nmpipes.c
DosResetBuffer Yes filemgr.c
DosSetNPHState unsupported nmpipes.c
DosSetNPipeSem unsupported nmpipes.c
DosTransactNPipe Yes nmpipes.c
DosWaitNPipe Yes nmpipes.c

Queues

CPI Function Name Available Link
DosCloseQueue Yes queues.c
DosQueryQueue unsuported queues.c
DosWriteQueue Yes queues.c

Server

CPI Function Name Available Link
DosCreateQueue Yes queues.c
DosPeekQueue unsuported queues.c
DosPurgeQueue unsupported queues.c
DosReadQueue Yes queues.c

Client

CPI Function Name Available Link
DosOpenQueue Yes queues.c

Resource Management

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

Semaphores

Event Semaphores

CPI Function Name Available Link
DosCloseEventSem Yes semaphore.c
DosCreateEventSem Yes semaphore.c
DosOpenEventSem Yes semaphore.c
DosPostEventSem Yes semaphore.c
DosQueryEventSem Yes semaphore.c
DosResetEventSem Yes semaphore.c
DosWaitEventSem Yes semaphore.c

Mutex Semaphores

CPI Function Name Available Link
DosCloseMutexSem Yes semaphore.c
DosCreateMutexSem Yes semaphore.c
DosOpenMutexSem Yes semaphore.c
DosQueryMutexSemm unsupported semaphore.c
DosReleaseMutexSem Yes semaphore.c
DosRequestMutexSem Yes semaphore.c


MuxWait Semaphores

CPI Function Name Available Link
DosAddMuxWaitSem Yes semaphore.c
DosCloseMuxWaitSem Yes semaphore.c
DosCreateMuxWaitSem Yes semaphore.c
DosDeleteMuxWaitSem unsupported semaphore.c
DosOpenMuxWaitSem Yes semaphore.c
DosRequestMutexSem Yes semaphore.c
DosQueryMuxWaitSem Yes semaphore.c
DosWaitMuxWaitSem Yes semaphore.c

Processes/Threading

CPI Function Name Available Link
DosExit No
DosGetInfoBlocks Yes process.c
DosSetPriority Yes process.c

Processes

CPI Function Name Available Link
DosEnterCritSec Yes process.c
DosExecPgm Yes process.c
DosExitCritSec Yes process.c
DosExitList Yes process.c
DosKillProcess Yes process.c
DosWaitChild Yes process.c

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

CPI Function Name OS2Linux OS2Linux Link 2ine 2ine Link
DosSelectSession No No No No
DosSetSession No No No No
DosStartSession No No Yes sesmgr.c
DosStopSession No No No No

Timer

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

Legend

On the "Available" column you have the follow list:

  • Yes : That can not mean that is full complete, but an implementation is availableon OS2Linux
  • unsupported: Which means that OS2Linux has it implemented but gives an Error response.
  • No: Means that OS2Linux does not have it, not even an ERROR reponse for it.