Jump to content

Control Program Functions: Difference between revisions

From EDM2
Ak120 (talk | contribs)
Legacy Functions: fixing dozens of wrong links
 
(13 intermediate revisions by 2 users not shown)
Line 49: Line 49:
*[[DosScanEnv]] - Gets information for a file or subdirectory
*[[DosScanEnv]] - Gets information for a file or subdirectory
*[[DosSearchPath]] - Scans environment variable
*[[DosSearchPath]] - Scans environment variable
*DosQueryPathInfo - Searches along a specified path
*[[DosQueryPathInfo]] - Searches along a specified path
*DosSetPathInfo - Sets information for a file or subdirectory
*[[DosSetPathInfo]] - Sets information for a file or subdirectory


===Extended LIBPATH Search Path Functions===
===Extended LIBPATH Search Path Functions===
Line 66: Line 66:
*[[DosSubAllocMem]] - Suballocates a block of memory from a heap that was previously initialized
*[[DosSubAllocMem]] - Suballocates a block of memory from a heap that was previously initialized
*[[DosSubFreeMem]] - Frees a block of memory that was previously suballocated
*[[DosSubFreeMem]] - Frees a block of memory that was previously suballocated
*[[DosSubSetMem]] - Initializes a heap for suballocation, or increases the size of a previously initialized heap
*[[DosSubSetMem]] - Initializes a heap for suballocation, or increases the size of a previously initialized heap
*[[DosSubUnsetMem]] - Terminates the use of a heap
*[[DosSubUnsetMem]] - Terminates the use of a heap


Line 99: Line 99:


===Session Control Functions===
===Session Control Functions===
*[[DosSelectSession]]
*[[DosSelectSession]] - Selects a child session
*[[DosSetSession]] - Sets the status of a child session
*[[DosSetSession]] - Sets the status of a child session
*[[DosStartSession]] - Starts an unrelated or child session
*[[DosStartSession]] - Starts an unrelated or child session
Line 199: Line 199:


==Message Management Functions==
==Message Management Functions==
*[[DosGetMessage]]
*[[DosGetMessage]] - Retrieves a message from a message file
*[[DosInsertMessage]]
*[[DosInsertMessage]] - Inserts variable text into message
*[[DosPutMessage]] - Sends a message to an output file or device
*[[DosPutMessage]] - Sends a message to an output file or device
*[[DosQueryMessageCP]] - Retrieves a message file list of code pages and language identifiers
*[[DosQueryMessageCP]] - Retrieves a message file list of code pages and language identifiers
Line 227: Line 227:


==Dos...==
==Dos...==
===Large File System===
*[[DosCancelLockRequestL]]
*[[DosListIOL]] - Performs the specified number of seek/read or seek/write operations
*[[DosOpenL]] - Opens a file
*[[DosProtectOpenL]] - Opens a file returning a protected file handle
*[[DosProtectSetFileLocksL]] -  Locks and unlocks a range of an open file
*[[DosProtectSetFilePtrL]] - Moves the read or write pointer
*[[DosProtectSetFileSizeL]] - Changes the size of a file
*[[DosSetFileLocksL]] - Locks and unlocks a range of an open file
*[[DosSetFilePtrL]] - Moves the read or write pointer
*[[DosSetFileSizeL]] - Changes the size of a file
<div style="column-count:3;-moz-column-count:3;-webkit-column-count:3">
===Unsorted===
===Unsorted===
*[[DosAliasMem]] [[Image:Conf.gif]]
*[[DosAliasMem]]
*[[DosQueryMemState]] [[Image:Conf.gif]]
*[[DosQueryMemState]]
*[[DosListIO]]
*[[DosListIO]]
*[[DosQueryAppType]]
*[[DosQueryAppType]]
Line 251: Line 238:
*[[DosGetDateTime]]
*[[DosGetDateTime]]
*[[DosSetDateTime]]
*[[DosSetDateTime]]
===Timer===
*[[DosTmrQueryFreq]]
*[[DosTmrQueryFreq]]
*[[DosTmrQueryTime]]
*[[DosTmrQueryTime]]
Line 256: Line 245:
=== Error Management ===
=== Error Management ===
*[[DosSuppressPopUps]]
*[[DosSuppressPopUps]]
*[[DosDumpProcess]]  [[Image:Conf.gif]]
*[[DosDumpProcess]]
*[[DosForceSystemDump]] [[Image:Conf.gif]]
*[[DosForceSystemDump]]
*[[Dos16SysTrace]] [[Image:Conf.gif]]
*[[Dos16SysTrace]]


=== Exception Management ===
=== Exception Management ===
*[[DosQueryModFromEIP]] [[Image:Conf.gif]]
*[[DosQueryModFromEIP]]
*[[Dos16QueryModFromCS]] [[Image:Conf.gif]]
*[[Dos16QueryModFromCS]]
 
===Large File System===
*[[DosCancelLockRequestL]]
*[[DosListIOL]] - Performs the specified number of seek/read or seek/write operations
*[[DosOpenL]] - Opens a file
*[[DosProtectOpenL]] - Opens a file returning a protected file handle
*[[DosProtectSetFileLocksL]] - Locks and unlocks a range of an open file
*[[DosProtectSetFilePtrL]] - Moves the read or write pointer
*[[DosProtectSetFileSizeL]] - Changes the size of a file
*[[DosSetFileLocksL]] - Locks and unlocks a range of an open file
*[[DosSetFilePtrL]] - Moves the read or write pointer
*[[DosSetFileSizeL]] - Changes the size of a file


=== File Systems/File Management ===
==== File Manipulation ====
==== File Manipulation ====
*[[DosCancelLockRequest]]
*[[DosCancelLockRequest]]
Line 270: Line 270:
*[[DosForceDelete]]
*[[DosForceDelete]]
*[[DosProtectOpen]]
*[[DosProtectOpen]]
*[[DosReplaceModule]] [[Image:Conf.gif]]
*[[DosReplaceModule]]
*[[DosProtectRead]]
*[[DosProtectRead]]
*[[DosProtectSetFileInfo]]
*[[DosProtectSetFileInfo]]
Line 286: Line 286:
==== File Querying ====
==== File Querying ====
*[[DosProtectEnumAttribute]]
*[[DosProtectEnumAttribute]]
*[[DosQueryFileMode]] [[image:Att.gif]] [[image:Vraag.gif]]
*[[DosQueryFileMode]]
*[[DosProtectQueryFileInfo]]
*[[DosProtectQueryFileInfo]]
*[[DosQuerySysState]] [[Image:Conf.gif]]
*[[DosQuerySysState]]
*[[DosPerfSysCall]]
*[[DosPerfSysCall]]
*[[DosGetProcessorStatus]] [[Image:Conf.gif]]
*[[DosGetProcessorStatus]]
*[[DosSetProcessorStatus]] [[Image:Conf.gif]]
*[[DosSetProcessorStatus]]
*[[DosQueryABIOSSupport]] [[Image:Conf.gif]]
*[[DosQueryABIOSSupport]]


==== File System Functions ====
==== File System Functions ====
Line 309: Line 309:


==== Threads ====
==== Threads ====
*[[DosCreateThread2]] [[Image:Conf.gif]]
*[[DosCreateThread2]]
*[[DosQueryThreadAffinity]] [[Image:Conf.gif]]
*[[DosQueryThreadAffinity]]
*[[DosQueryThreadContext]]
*[[DosQueryThreadContext]]
*[[DosSetThreadAffinity]] [[Image:Conf.gif]]
*[[DosSetThreadAffinity]]
*[[DosVerifyPidTid]] [[Image:Conf.gif]]
*[[DosVerifyPidTid]]


=== VDD ===
=== VDD ===
Line 319: Line 319:
*[[DosOpenVDD]]
*[[DosOpenVDD]]
*[[DosRequestVDD]]
*[[DosRequestVDD]]
</div>


==Kbd, Mou, Vio==
==Kbd, Mou, Vio==
Line 373: Line 372:
*[[VioWrtCellStr]]
*[[VioWrtCellStr]]
*[[VioWrtCharStr]]
*[[VioWrtCharStr]]
*[[VioScrollUp]] [[image:Att.gif]]
*[[VioScrollUp]]
*[[VioScrollDown]] [[image:Att.gif]]
*[[VioScrollDown]]
*[[VioScrollLeft]] [[image:Att.gif]]
*[[VioScrollLeft]]
*[[VioScrollRight]] [[image:Att.gif]]
*[[VioScrollRight]]
*[[VioWrtNAttr]]
*[[VioWrtNAttr]]
*[[VioWrtNCell]]
*[[VioWrtNCell]]
Line 414: Line 413:
*[[VioShowPS]]
*[[VioShowPS]]


=== Icon Legend===
== OS/2 1.x Functions ==
* [[image:Att.gif]]: It seems that these functions were not implemented on the OS/2 4.5 Toolkit.
Function calls for OS/2 1.x that offer compatibility with DOS via [[Family API]] or Windows NT OS/2 subsystem.
* [[Image:Conf.gif]]: These functions were documented on the Addendum of the OS/2 4.5 Toolkit.
* [[image:Vraag.gif]]: More information is required on this function.
 
== Legacy Functions ==
This are the legacy functions of the Control Program Interface API. This functions are supposed to be replaced by the newer ones, but some of these are still required for older programs to work or because some newer functions weren't implemented correctly.  


<div style="column-count:3;-moz-column-count:3;-webkit-column-count:3">
===Dos===
=== Date / Time ===
====Date/Time====
*[[DosGetDateTime (Legacy)|DosGetDateTime]]
*[[DosGetDateTime (OS/2 1.x)|DosGetDateTime]]
*[[DosSetDateTime (Legacy)|DosSetDateTime]]
*[[DosSetDateTime (OS/2 1.x)|DosSetDateTime]]


=== Device I/O ===
====Device I/O====
*[[DosBeep (Legacy)|DosBeep]]
*[[DosBeep (OS/2 1.x)|DosBeep]]
*[[DosDevConfig (Legacy)|DosDevConfig]]
*[[DosDevConfig (OS/2 1.x)|DosDevConfig]]
*[[DosDevIOCtl (FAPI)|DosDevIOCtl]]
*[[DosDevIOCtl (FAPI)|DosDevIOCtl]]
*[[DosDevIOCtl2]]
*[[DosDevIOCtl2]]
*[[DosPhysicalDisk (FAPI)|DosPhysicalDisk]]
*[[DosPhysicalDisk (FAPI)|DosPhysicalDisk]]


=== Dynamic Linking Library ===  
====Dynamic Linking Library====
*[[DosFreeModule (OS/2 1.x)|DosFreeModule]]
*[[DosGetModHandle]]
*[[DosGetModHandle]]
*[[DosGetModName]]
*[[DosGetModName]]
*[[DosLoadModule (OS/2 1.x)|DosLoadModule]]
*[[DosQAppType]]


==== Monitor functions ====
====Monitor functions====
*[[DosMonClose]]
*[[DosMonClose]]
*[[DosMonOpen]]
*[[DosMonOpen]]
Line 445: Line 442:
*[[DosMonWrite]]
*[[DosMonWrite]]


=== Dynamic Link Library ===
====Error Management====
*[[DosFreeModule (OS/2 1.x)|DosFreeModule]]
*[[DosLoadModule (OS/2 1.x)|DosLoadModule]]
*[[DosQAppType]]
 
=== Error Management ===
*[[DosErrClass (FAPI)|DosErrClass]]
*[[DosErrClass (FAPI)|DosErrClass]]
*[[DosError (FAPI)|DosError]]
*[[DosError (FAPI)|DosError]]
Line 459: Line 451:
*[[DosLogRead]]
*[[DosLogRead]]


===Exception Management===
====Exception Management====
*[[DosHoldSignal]]
*[[DosSendSignal]]
*[[DosSendSignal]]
*[[DosSetSigHandler]]


=== File Systems/File Management ===
====File Systems/File Management====
==== Directory Searching ====
Directory Searching:
*[[DosFindClose]]
*[[DosFindFirst (FAPI)|DosFindFirst]]
*[[DosFindFirst (FAPI)|DosFindFirst]]
*[[DosFindFirst2]]
*[[DosFindFirst2]]
*[[DosFindNext (FAPI)|DosFindNext]]
*[[DosFindNext (FAPI)|DosFindNext]]


====Directory====
Directory Handling:
*[[DosChDir]]
*[[DosChDir]]
*[[DosMkDir]]
*[[DosMkDir]]
Line 479: Line 474:
*[[DosSelectDisk]]
*[[DosSelectDisk]]


==== Enviroment/Path ====
====Environment/Path====
*[[DosScanEnv (OS/2 1.x)|DosScanEnv]]
*[[DosScanEnv (OS/2 1.x)|DosScanEnv]]
*[[DosSearchPath (OS/2 1.x)|DosSearchPath]]
*[[DosSearchPath (OS/2 1.x)|DosSearchPath]]


==== File Manipulation====
====File Manipulation====
*[[DosChgFilePtr]]
*[[DosChgFilePtr]]
*[[DosClose (FAPI)|DosClose]]
*[[DosClose (FAPI)|DosClose]]
Line 494: Line 489:
*[[DosOpen2]]
*[[DosOpen2]]
*[[DosRead (FAPI)|DosRead]]
*[[DosRead (FAPI)|DosRead]]
*[[DosReadAsync]]
*[[DosSetFileInfo (FAPI)|DosSetFileInfo]]
*[[DosSetFileInfo (FAPI)|DosSetFileInfo]]
*[[DosSetPathInfo (OS/2 1.x)|DosSetPathInfo]]
*[[DosSetPathInfo (OS/2 1.x)|DosSetPathInfo]]
*[[DosSetVerify (FAPI)|DosSetVerify]]
*[[DosSetVerify (FAPI)|DosSetVerify]]
*[[DosWrite (FAPI)|DosWrite]]
*[[DosWrite (FAPI)|DosWrite]]
*[[DosWriteAsync]]
*[[DosNewSize]]
*[[DosNewSize]]
*[[DosSetFileMode]]
*[[DosSetFileMode]]


==== File Handle Manipulation ====
====File Handle Manipulation====
*[[DosSetMaxFH (OS/2 1.x)|DosSetMaxFH]]
*[[DosSetMaxFH (OS/2 1.x)|DosSetMaxFH]]
*[[DosBufReset]]
*[[DosBufReset]]
Line 508: Line 505:
*[[DosSetFHandState]]
*[[DosSetFHandState]]


==== File Querying ====
====File Querying====
*[[DosEnumAttribute (OS/2 1.x)|DosEnumAttribute]]
*[[DosEnumAttribute (OS/2 1.x)|DosEnumAttribute]]
*[[DosQFileInfo]]
*[[DosQFileInfo]]
Line 516: Line 513:
*[[DosQVerify]]
*[[DosQVerify]]


==== File System Functions====
====File System Functions====
*[[DosFSAttach (OS/2 1.x)|DosFSAttach]]
*[[DosFSAttach (OS/2 1.x)|DosFSAttach]]
*[[DosFSCtl (OS/2 1.x)|DosFSCtl]]
*[[DosFSCtl (OS/2 1.x)|DosFSCtl]]
Line 524: Line 521:
*[[DosQFSInfo]]
*[[DosQFSInfo]]


=== Memory Management ===
====Memory Management====
*[[DosSubAlloc]]
*[[DosAllocSeg]]
*[[DosAllocSeg]]
*[[DosAllocShrSeg]]
*[[DosAllocShrSeg]]
*[[DosAllocHuge]]
*[[DosFreeSeg]]
*[[DosFreeSeg]]
*[[DosGetSeg]]
*[[DosGetSeg]]
*[[DosGetShrSeg]]
*[[DosGiveSeg]]
*[[DosGiveSeg]]
*[[DosLockSeg]]
*[[DosLockSeg]]
Line 536: Line 532:
*[[DosSizeSeg]]
*[[DosSizeSeg]]
*[[DosUnlockSeg]]
*[[DosUnlockSeg]]
*[[DosReallocSeg]]
;Huge block
*[[DosAllocHuge]]
*[[DosReallocHuge]]
*[[DosReallocHuge]]
*[[DosReallocSeg]]


==== Heap Memory ====
;Heap
*[[DosSubAlloc]]
*[[DosSubFree]]
*[[DosSubFree]]
*[[DosSubSet]]
*[[DosSubSet]]


=== Message Management ===
====Message Management====
*[[DosGetMessage (OS/2 1.x)|DosGetMessage]]
*[[DosGetMessage (OS/2 1.x)|DosGetMessage]]
*[[DosPutMessage (FAPI)|DosPutMessage]]
*[[DosPutMessage (FAPI)|DosPutMessage]]
*[[DosInsMessage]]
*[[DosInsMessage]]
*[[DosTrueGetMessage]] [[image:Vraag.gif]]
*[[DosTrueGetMessage]]
*[[DosIQueryMessageCP]] [[image:Vraag.gif]]
*[[DosIQueryMessageCP]]
*[[DosCloseMessageFile]] [[image:Vraag.gif]]
*[[DosCloseMessageFile]]


=== National Language/Code Page ===
====National Language/Code Page====
*[[DosCaseMap (FAPI)|DosCaseMap]]
*[[DosCaseMap (FAPI)|DosCaseMap]]
*[[DosGetCollate]]
*[[DosGetCollate]]
Line 560: Line 560:
*[[DosSetProcCp]]
*[[DosSetProcCp]]


=== Pipes ===
====Named Pipes====
====Named Pipes====
*[[DosCallNmPipe|DosCallNmPipe]]
*[[DosCallNmPipe]] -
*[[DosConnectNmPipe|DosConnectNmPipe]]
*[[DosConnectNmPipe]] - enables named pipe to be opened
*[[DosDisConnectNmPipe|DosDisConnectNmPipe]]
*[[DosDisConnectNmPipe]]
*[[DosMakeNmPipe]]
*[[DosMakeNmPipe]]
*[[DosMakePipe]]
*[[DosMakePipe]]
*[[DosPeekNmPipe|DosPeekNmPipe]]
*[[DosPeekNmPipe]]
*[[DosQNmPipeInfo|DosQNmPipeInfo]]
*[[DosQNmPipeInfo]]
*[[DosQNmPipeSemState|DosQNmPipeSemState]]
*[[DosQNmPipeSemState]]
*[[DosSetNmPipeSem|DosSetNmPipeSem]]
*[[DosQNmPHandState]]
*[[DosTransactNmPipe|DosTransactNmPipe]]
*[[DosRawReadNPipe]]
*[[DosWaitNmPipe|DosWaitNmPipe]]
*[[DosRawWriteNPipe]]
*[[DosQNmPHandState|DosQNmPHandState]]
*[[DosSetNmPHandState]]
*[[DosSetNmPHandState|DosSetNmPHandState]]
*[[DosSetNmPipeSem]]
*[[DosTransactNmPipe]]
*[[DosWaitNmPipe]]


=== Resource Management ===
====Resource Management====
*[[DosFreeResource (OS/2 1.x)|DosFreeResource]]
*[[DosFreeResource (OS/2 1.x)|DosFreeResource]]
*[[DosGetResource (OS/2 1.x)|DosGetResource]]
*[[DosGetResource (OS/2 1.x)|DosGetResource]]
*[[DosGetResource2]]
*[[DosGetResource2]]


=== Semaphores ===
====Semaphores====
*[[DosCloseSem]]
*[[DosCloseSem]]
*[[DosCreateSem]]
*[[DosCreateSem]]
Line 592: Line 593:
*[[DosSemSetWait]]
*[[DosSemSetWait]]
*[[DosSemWait]]
*[[DosSemWait]]
*[[DosPMSemWait]] [[image:Vraag.gif]]
*[[DosPMSemWait]]


==== MuxWait Semaphores ====
====MuxWait Semaphores====
*[[DosMuxSemWait]]
*[[DosMuxSemWait]]
*[[DosPMMuxSemWait]] [[image:Vraag.gif]]
*[[DosPMMuxSemWait]]


=== Processes/Threading ===
====Processes/Threading====
*[[DosCallback]]
*[[DosExit (FAPI)|DosExit]]
*[[DosExit (FAPI)|DosExit]]
*[[DosGetPrty]]
*[[DosSetPrty]]
*[[DosSetPrty]]


==== Processes ====
====Processes====
*[[DosCWait]]
*[[DosEnterCritSec (OS/2 1.x)|DosEnterCritSec]]
*[[DosEnterCritSec (OS/2 1.x)|DosEnterCritSec]]
*[[DosExecPgm (FAPI)|DosExecPgm]]
*[[DosExitCritSec (OS/2 1.x)|DosExitCritSec]]
*[[DosExitCritSec (OS/2 1.x)|DosExitCritSec]]
*[[DosExitList (OS/2 1.x)|DosExitList]]
*[[DosExitList (OS/2 1.x)|DosExitList]]
*[[DosKillProcess (OS/2 1.x)|DosKillProcess]]
*[[DosExecPgm (FAPI)|DosExecPgm]]
*[[DosCWait]]
*[[DosFlagProcess]]
*[[DosGetInfoSeg]]
*[[DosGetPID]]
*[[DosGetPID]]
*[[DosGetPPID]]
*[[DosGetPPID]]
*[[DosGetInfoSeg]]
*[[DosKillProcess (OS/2 1.x)|DosKillProcess]]


=== Session Management===
====Session Management====
*[[DosSelectSession (OS/2 1.x)|DosSelectSession]]
*[[DosSelectSession (OS/2 1.x)|DosSelectSession]]
*[[DosSetSession (OS/2 1.x)|DosSetSession]]
*[[DosSetSession (OS/2 1.x)|DosSetSession]]
Line 619: Line 623:
*[[DosStopSession (OS/2 1.x)|DosStopSession]]
*[[DosStopSession (OS/2 1.x)|DosStopSession]]


=== Screen Group ===
;Session Manager
*[[DosSMDoAppReq]]
*[[DosSMGetAppReq]]
*[[DosSMGetStatus]]
*[[DosSMHDEInit]]
*[[DosSMInitialize]]
*[[DosSMNotifyDD]]
*[[DosSMNotifyDD2]]
*[[DosSMOpenDD]]
*[[DosSMParentSwitch]]
*[[DosSMPause]]
*[[DosSMPMPresent]]
*DosSMRealPrtSc
*[[DosSMRegisterDD]]
*[[DosSMServeAppReq]]
*[[DosSMSetSessionType]]
*[[DosSMSetTitle]]
*[[DosSMStart]]
*[[DosSMSwitch]]
*[[DosSMSysInit]]
*[[DosSMTerminate]]
 
;Screen Group
*[[DosSMSGDoPopup]]
*[[DosSMSGDoPopup]]
*[[DosSMSGEndPopup]]
*[[DosSMSGEndPopup]]


*[[DosSMSwitch]]
*[[DosSMServeAppReq]]
*[[DosGetTimes]]
*[[DosGetTimes]]
*[[DosSMSetTitle]]
*[[DosScrUnlock]]
*[[DosScrUnlock]]
*[[DosSMDoAppReq]]
*[[DosScrLock]]
*[[DosScrLock]]
*[[DosSavRedrawWait]]
*[[DosSavRedrawWait]]
Line 634: Line 656:
*[[DosSetMNLockTime]]
*[[DosSetMNLockTime]]
*[[DosModeUndo]]
*[[DosModeUndo]]
*[[DosSMGetStatus]]
*[[DosModeWait]]
*[[DosModeWait]]
*[[DosSMTerminate]]
*[[DosSMGetAppReq]]
*DosSMRealPrtSc
*[[DosSMInitialize]]
*[[DosSMStart]]
*[[DosSMParentSwitch]]
*[[DosSMPause]]
*[[DosSMHDEInit]]
*[[DosSMPMPresent]]
*[[DosSMRegisterDD]]
*[[DosSMSysInit]]
*[[DosSMNotifyDD]]
*[[DosSMNotifyDD2]]
*[[DosSMOpenDD]]
*[[DosSMSetSessionType]]
*[[DosRegisterNotification]]
*[[DosRegisterNotification]]


=== Quickhelp ===
====Timer====
*[[QhKeybdHandle]]
*[[QhMouseHandle]]
 
=== Timer ===
*[[DosTimerAsync]]
*[[DosTimerAsync]]
*[[DosTimerStart]]
*[[DosTimerStart]]
*[[DosTimerStop]]
*[[DosTimerStop]]


=== Addressing ===
====Addressing====
*[[DosFlatToSel]] [[image:Vraag.gif]]
*[[DosFlatToSel]]
*[[DosSelToFlat]] [[image:Vraag.gif]]
*[[DosSelToFlat]]


=== Spool ===
====Spool====
''Not found on OS2TK45''
''Not found on OS2TK45''
*[[DosPFSActivate]]
*[[DosPFSActivate]]
Line 674: Line 676:
*[[DosPFSVerifyFont]]
*[[DosPFSVerifyFont]]


===To SORT===
====I/O Privileges====
*[[DosCallback]]
*[[DosCLIAccess]]
*[[DosCLIAccess]]
*[[DosPortAccess]]
====Segments====
*[[DosCreateCSAlias]]
*[[DosCreateCSAlias]]
*[[DosFileIO]]
*[[DosFileIO]]
*[[DosFindClose]]
 
*[[DosFlagProcess]]
*[[DosGetEnv]]
*[[DosGetEnv]]
*[[DosGetHugeShift]]
*[[DosGetHugeShift]]
Line 686: Line 690:


*[[DosGetProcAddr]]
*[[DosGetProcAddr]]
*[[DosGetPrty]]
 
*[[DosGetShrSeg]]
*[[DosGetVersion]]
*[[DosGetVersion]]
*[[DosHoldSignal]]


*[[DosPortAccess]]
*[[DosR2StackRealloc]]
*[[DosR2StackRealloc]]
*[[DosReadAsync]]


*[[DosSetSigHandler]]
*[[DosSetVec]]
*[[DosSetVec]]
*[[DosSMRegisterDD|DosSMRegisterDD]]
*[[DosSysCtl]]
*[[DosWriteAsync|DosWriteAsync]]
*[[DosQueryRASInfo]]
*[[DosSysCtl]] [[image:Vraag.gif]]
*[[DosQueryRASInfo]] [[image:Vraag.gif]]
*[[DosRawReadNPipe]] [[image:Vraag.gif]]
*[[DosRawWriteNPipe]] [[image:Vraag.gif]]


=== Keyboard functions ===
====QuickHelp====
* [[KbdCharIn]]
*[[QhKeybdHandle]]
* [[KbdFlushBuffer]]
*[[QhMouseHandle]]
* [[KbdGetCp]]
 
* [[KbdSetCp]]
===Keyboard functions===
* [[KbdPeek]]
*[[KbdCharIn]] - character data record from keyboard
* [[KbdRegister]]
*[[KbdClose]] - closes logical keyboard
* [[KbdDeRegister]]
*[[KbdDeRegister]] - deregister keyboard subsystem
* [[KbdOpen]]
*[[KbdFlushBuffer]] -
* [[KbdClose]]
*[[KbdFreeFocus]]
* [[KbdGetFocus]]  
*[[KbdGetCp]]
* [[KbdFreeFocus]]
*[[KbdGetFocus]] -
* [[KbdSynch]]  
*[[KbdGetHWId]]
* [[KbdSetFgnd]]
*[[KbdGetStatus]] -
* [[KbdGetHWId]]
*[[KbdInit]] -
* [[KbdSetHWID]] [[image:Vraag.gif]]
*[[KbdOpen]] -
* [[KbdSetCustXt]]
*[[KbdPeek]] -
* [[KbdGetStatus]]
*[[KbdRegister]]
* [[KbdSetStatus]]
*[[KbdSetCp]]
* [[KbdStringIn]]
*[[KbdSetCustXt]]
* [[KbdXlate]]
*[[KbdSetFgnd]]
* [[KbdInit]] [[image:Vraag.gif]]
*[[KbdSetHWID]]
*[[KbdSetStatus]]
*[[KbdSynch]] -
*[[KbdStringIn]]
*[[KbdXlate]]


==== Mouse functions ====
===Mouse functions===
*[[MouRegister]]
*[[MouRegister]]
*[[MouDeRegister]]
*[[MouDeRegister]]
Line 741: Line 740:
*[[MouGetNumMickeys (OS/2 1.x)|MouGetNumMickeys]]
*[[MouGetNumMickeys (OS/2 1.x)|MouGetNumMickeys]]
*[[MouGetNumQueEl (OS/2 1.x)|MouGetNumQueEl]]
*[[MouGetNumQueEl (OS/2 1.x)|MouGetNumQueEl]]
* [[MouGetPtrPos]]
*[[MouGetPtrPos]]
*[[MouGetPtrShape (OS/2 1.x)|MouGetPtrShape]]
*[[MouGetPtrShape (OS/2 1.x)|MouGetPtrShape]]
*[[MouGetScaleFact (OS/2 1.x)|MouGetScaleFact]]
*[[MouGetScaleFact (OS/2 1.x)|MouGetScaleFact]]
Line 756: Line 755:
*[[MouFree]]
*[[MouFree]]


==== Video I/O functions ====
===Video I/O functions===
* [[VioRegister|VioRegister]]  
*[[VioCheckCharType]]
* [[VioGlobalReg|VioGlobalReg]]
*[[VioDeRegister]]
* [[VioDeRegister|VioDeRegister]]
*[[VioEndPopUp]]
* [[VioGetPhysBuf|VioGetPhysBuf]]
*[[VioGetAnsi]]
* [[VioScrollDn|VioScrollDn]]
*[[VioGetBuf]]
* [[VioScrollLf|VioScrollLf]]
*[[VioGetConfig]]
* [[VioScrollRt|VioScrollRt]]
*[[VioGetCp]]
* [[VioCheckCharType|VioCheckCharType]] [[image:Vraag.gif]]
*[[VioGetCurPos]]
* [[VioPrtSc|VioPrtSc]]
*[[VioGetCurType]]
* [[VioPrtScToggle|VioPrtScToggle]]
*[[VioGetFont]]
* [[VioRedrawSize|VioRedrawSize]] [[image:Vraag.gif]]
*[[VioGetMode]]
* [[VioGetFont|VioGetFont]]
*[[VioGetPhysBuf]]
* [[VioSetFont|VioSetFont]]  
*[[VioGetState]]
* [[VioEndPopUp|VioEndPopUp]]
*[[VioGlobalReg]]
* [[VioGetAnsi|VioGetAnsi]]
*[[VioModeUndo]]
* [[VioGetBuf|VioGetBuf]]
*[[VioModeWait]]
* [[VioGetConfig|VioGetConfig]]
*[[VioPopUp]]
* [[VioGetCp|VioGetCp]]    
*[[VioPrtSc]]
* [[VioGetCurPos|VioGetCurPos]]
*[[VioPrtScToggle]]
* [[VioGetCurType|VioGetCurType]]  
*[[VioQueryConsole]]
* [[VioGetMode|VioGetMode]]  
*[[VioReadCellStr]]
* [[VioGetState|VioGetState]]  
*[[VioReadCharStr]]
* [[VioModeUndo|VioModeUndo]]  
*[[VioRedrawSize]]
* [[VioModeWait|VioModeWait]]  
*[[VioRegister]]
* [[VioPopUp|VioPopUp]]  
*[[VioSavRedrawUndo]]
* [[VioReadCellStr|VioReadCellStr]]
*[[VioSavRedrawWait]]
* [[VioReadCharStr|VioReadCharStr]]
*[[VioSetFont]]
* [[VioSavRedrawUndo|VioSavRedrawUndo]]  
*[[VioScrLock]]
* [[VioSavRedrawWait|VioSavRedrawWait]]  
*[[VioScrollDn]]
* [[VioScrLock|VioScrLock]]  
*[[VioScrollLf]]
* [[VioScrollUp|VioScrollUp]]  
*[[VioScrollRt]]
* [[VioScrUnLock|VioScrUnLock]]  
*[[VioScrollUp]]
* [[VioSetAnsi|VioSetAnsi]]  
*[[VioScrUnLock]]
* [[VioSetCp|VioSetCp]]
*[[VioSetAnsi]]
* [[VioSetCurPos|VioSetCurPos]]
*[[VioSetCp]]
* [[VioSetCurType|VioSetCurType]]
*[[VioSetCurPos]]
* [[VioSetMode|VioSetMode]]  
*[[VioSetCurType]]
* [[VioSetState|VioSetState]]  
*[[VioSetMode]]
* [[VioShowBuf|VioShowBuf]]  
*[[VioSetState]]
* [[VioWrtCellStr|VioWrtCellStr]]  
*[[VioShowBuf (FAPI)|VioShowBuf]]
* [[VioWrtCharStr|VioWrtCharStr]]  
*[[VioWrtCellStr (FAPI)|VioWrtCellStr]]
* [[VioWrtCharStrAtt|VioWrtCharStrAtt]]  
*[[VioWrtCharStr (FAPI)|VioWrtCharStr]]
* [[VioWrtNAttr|VioWrtNAttr]]  
*[[VioWrtCharStrAtt (FAPI)|VioWrtCharStrAtt]]
* [[VioWrtNCell|VioWrtNCell]]  
*[[VioWrtNAttr (FAPI)|VioWrtNAttr]]
* [[VioWrtNChar|VioWrtNChar]]  
*[[VioWrtNCell (FAPI)|VioWrtNCell]]
* [[VioWrtTTY|VioWrtTTY]]
*[[VioWrtNChar (FAPI)|VioWrtNChar]]
* [[VioQueryConsole]]
*[[VioWrtTTY (FAPI)|VioWrtTTY]]
 
===== Advanced VIO =====
* [[VioGetOrg]]
* [[VioSetOrg]]
* [[WinDefAVioWindowProc]]
</div>
 
===Legend===
* [[image:Vraag.gif]]: More information is required on this function. Information was not available on CP1 or PRCP books.


==References==
==References==
{|class="wikitable"
* IBM OS/2 Programming Reference
!Title
* IBM OS/2 Warp [[Control Program Programming Guide and Reference]] (1996)
!Author
* IBM API Addendum Volume 1 (PowerPC Edition)
!Year
!Document Ref.
!Links
|-
|[[Control Program Programming Guide and Reference]]
|IBM
|1996
|CP1.INF, CP2.INF, CP3.INF
|[https://archive.org/download/ToolkitDocs1/Control%20Program%20Programming%20Guide%20and%20Reference.pdf PDF], [https://archive.org/download/ToolkitDocs1/Control%20Program%20Programming%20Guide%20and%20Reference%201.inf INF 1] [https://archive.org/download/ToolkitDocs1/Control%20Program%20Programming%20Guide%20and%20Reference%202.inf INF 2] [https://archive.org/download/ToolkitDocs1/Control%20Program%20Programming%20Guide%20and%20Reference%203.inf INF 3]
|-
|API Addendum Volume 1 (PowerPC Edition)
|IBM
|
|APIBAS.INF
|
|-
|Legacy OS/2 Programming Reference
|IBM
|
|PRCP.INF
|
|}


[[Category:The OS/2 API Project]]
[[Category:The OS/2 API Project]]

Latest revision as of 23:10, 30 April 2023

Some general information is available at Control Program page.

File Management

File Functions

File Handle Functions

File Query Functions

Directory Search (FileFind) Functions

Directory and Disk Functions

Environment and Search Path Functions

Extended LIBPATH Search Path Functions

  • DosQueryExtLIBPATH - Queries the search path for Dynamic Link Library, which is either before or after LIBPATH search
  • DosSetExtLIBPATH - Sets a search path for Dynamic Link Library, either before or after LIBPATH search

Memory Management

Memory Functions

  • DosAllocMem - Allocates a private memory object within the virtual address space
  • DosFreeMem - Frees a private or shared memory object from the virtual address space of the process
  • DosQueryMem - Obtains information about a range of pages within the virtual address space of the subject process
  • DosSetMem - Commits or decommits a range of pages within a memory object, or alters their protection

Memory Suballocation Functions

  • DosSubAllocMem - Suballocates a block of memory from a heap that was previously initialized
  • DosSubFreeMem - Frees a block of memory that was previously suballocated
  • DosSubSetMem - Initializes a heap for suballocation, or increases the size of a previously initialized heap
  • DosSubUnsetMem - Terminates the use of a heap

Shared Memory Functions

Thread Local Memory Functions

Program Execution Control

Thread Control Functions

Process Control Functions

Session Control Functions

Semaphore Functions

Event Semaphore Functions

Mutex Semaphore Functions

Muxwait Semaphore Functions

Pipe Functions

Named-Pipe Functions

Unnamed-Pipe Functions

  • DosClose - Closes a file or pipe
  • DosCreatePipe - Creates an unnamed (anonymous) pipe
  • DosDupHandle, DosOpen, DosRead, DosWrite

Queue Functions

Timer Functions

Error Management Functions

Exception Handling Functions

Signal Exception Functions

Must-Complete Functions

Device I/O Functions

File System Functions Used to Perform I/O to Devices:

  • DosClose
  • DosOpen
  • DosRead
  • DosWrite

Message Management Functions

Code Page Management Functions

Code Page Functions

Country Dependent Functions

Debugging Functions

  • DosDebug - Used by one process to control another for debugging purposes

Dynamic Linking Functions

Dos...

Unsorted

Date/Time

Timer

Error Management

Exception Management

Large File System

File Manipulation

File Handle Manipulation

File Querying

File System Functions

Resource Management

Threads

VDD

Kbd, Mou, Vio

Keyboard functions

Mouse functions

Video I/O functions

Advanced VIO

OS/2 1.x Functions

Function calls for OS/2 1.x that offer compatibility with DOS via Family API or Windows NT OS/2 subsystem.

Dos

Date/Time

Device I/O

Dynamic Linking Library

Monitor functions

Error Management

OS/2 2.0 and 1.3 only:

Exception Management

File Systems/File Management

Directory Searching:

Directory Handling:

Disk

Environment/Path

File Manipulation

File Handle Manipulation

File Querying

File System Functions

Memory Management

Huge block
Heap

Message Management

National Language/Code Page

Named Pipes

Resource Management

Semaphores

MuxWait Semaphores

Processes/Threading

Processes

Session Management

Session Manager
Screen Group

Timer

Addressing

Spool

Not found on OS2TK45

I/O Privileges

Segments

QuickHelp

Keyboard functions

Mouse functions

Video I/O functions

References