Jump to content

Control Program Functions: Difference between revisions

From EDM2
Ak120 (talk | contribs)
mNo edit summary
Line 1: Line 1:
__NOTOC__
== Control Programming Interface ==
== Control Programming Interface ==
Some general information is available at [[Control Program]] page.  
Some general information is available at [[Control Program]] page.  


<div style="column-count:3;-moz-column-count:3;-webkit-column-count:3">
<div style="column-count:3;-moz-column-count:3;-webkit-column-count:3">
=== Date/Time ===
=== Date/Time ===
* [[DosGetDateTime]]
* [[DosGetDateTime]]
Line 37: Line 37:


=== Exception Management ===
=== Exception Management ===
* [[OS2 API:CPI:DosQueryModFromEIP|DosQueryModFromEIP]] [[Image:Conf.gif]]
*[[DosQueryModFromEIP]] [[Image:Conf.gif]]
* [[OS2 API:CPI:DosRaiseException|DosRaiseException]]
*[[DosRaiseException]]
* [[OS2 API:CPI:DosSetExceptionHandler|DosSetExceptionHandler]]
* [[OS2 API:CPI:DosSetExceptionHandler|DosSetExceptionHandler]]
* [[OS2 API:CPI:DosUnsetExceptionHandler|DosUnsetExceptionHandler]]
* [[OS2 API:CPI:DosUnsetExceptionHandler|DosUnsetExceptionHandler]]
* [[OS2 API:CPI:DosUnwindException|DosUnwindException]]
*[[DosUnwindException]]
* [[OS2 API:CPI:Dos16QueryModFromCS|Dos16QueryModFromCS]] [[Image:Conf.gif]]
* [[OS2 API:CPI:Dos16QueryModFromCS|Dos16QueryModFromCS]] [[Image:Conf.gif]]


Line 185: Line 185:
=== Pipes ===
=== Pipes ===
* [[OS2 API:CPI:DosCreatePipe|DosCreatePipe]]
* [[OS2 API:CPI:DosCreatePipe|DosCreatePipe]]
==== Named Pipes ====
==== Named Pipes ====
* [[OS2 API:CPI:DosCallNPipe|DosCallNPipe]]
* [[OS2 API:CPI:DosCallNPipe|DosCallNPipe]]
Line 201: Line 202:


=== Queues ===
=== Queues ===
* [[OS2 API:CPI:DosCloseQueue|DosCloseQueue]]
* [[DosCloseQueue]]
* [[OS2 API:CPI:DosQueryQueue|DosQueryQueue]]
* [[DosQueryQueue]]
* [[OS2 API:CPI:DosWriteQueue|DosWriteQueue]]
* [[DosWriteQueue]]
 
==== Server ====
==== Server ====
* [[OS2 API:CPI:DosCreateQueue|DosCreateQueue]]
* [[OS2 API:CPI:DosCreateQueue|DosCreateQueue]]
Line 273: Line 275:


=== Timer ===
=== Timer ===
* [[OS2 API:CPI:DosAsyncTimer|DosAsyncTimer]]
*[[DosAsyncTimer]]
* [[OS2 API:CPI:DosStartTimer|DosStartTimer]]
*[[DosStartTimer]]
* [[OS2 API:CPI:DosStopTimer|DosStopTimer]]
*[[DosStopTimer]]


=== VDD ===
=== VDD ===
* [[OS2 API:CPI:DosCloseVDD|DosCloseVDD]]
*[[DosCloseVDD]]
* [[OS2 API:CPI:DosOpenVDD|DosOpenVDD]]
*[[DosOpenVDD]]
* [[OS2 API:CPI:DosRequestVDD|DosRequestVDD]]
*[[DosRequestVDD]]


==== Keyboard functions ====
===Keyboard functions===
* [[OS2 API:CPI:KbdCharIn|KbdCharIn]]
*[[KbdCharIn]]
* [[OS2 API:CPI:KbdGetConsole|KbdGetConsole]]
*[[KbdGetConsole]]
* [[OS2 API:CPI:KbdPeek|KbdPeek]]
*[[KbdPeek]]
* [[OS2 API:CPI:KbdStringIn|KbdStringIn]]
*[[KbdStringIn]]
* [[OS2 API:CPI:KbdFlushBuffer|KbdFlushBuffer]]
*[[KbdFlushBuffer]]
* [[OS2 API:CPI:KbdSetStatus|KbdSetStatus]]
*[[KbdSetStatus]]
* [[OS2 API:CPI:KbdGetStatus|KbdGetStatus]]
*[[KbdGetStatus]]
* [[OS2 API:CPI:KbdSetCp|KbdSetCp]]
*[[KbdSetCp]]
* [[OS2 API:CPI:KbdGetCp|KbdGetCp]]
*[[KbdGetCp]]
* [[OS2 API:CPI:KbdGetLayout|KbdGetLayout]]
*[[KbdGetLayout]]
* [[OS2 API:CPI:KbdGetLayoutUni|KbdGetLayoutUni]]
*[[KbdGetLayoutUni]]
* [[OS2 API:CPI:KbdSetLayout|KbdSetLayout]]
*[[KbdSetLayout]]
* [[OS2 API:CPI:KbdSetLayoutUni|KbdSetLayoutUni]]
*[[KbdSetLayoutUni]]
* [[OS2 API:CPI:KbdGetHWID|KbdGetHWID]]
*[[KbdGetHWID]]
* [[OS2 API:CPI:KbdXlate|KbdXlate]]
*[[KbdXlate]]


==== Mouse functions ====
===Mouse functions===
* [[OS2 API:CPI:MouFlushQue|MouFlushQue]]
* [[OS2 API:CPI:MouFlushQue|MouFlushQue]]
* [[OS2 API:CPI:MouGetPtrPos|MouGetPtrPos]]
* [[OS2 API:CPI:MouGetPtrPos|MouGetPtrPos]]
* [[OS2 API:CPI:MouSetPtrPos|MouSetPtrPos]]
* [[OS2 API:CPI:MouSetPtrPos|MouSetPtrPos]]
* [[OS2 API:CPI:MouSetPtrShape|MouSetPtrShape]]
*[[MouSetPtrShape]]
* [[OS2 API:CPI:MouGetPtrShape|MouGetPtrShape]]
* [[OS2 API:CPI:MouGetPtrShape|MouGetPtrShape]]
* [[OS2 API:CPI:MouGetDevStatus|MouGetDevStatus]]
*[[MouGetDevStatus]]
* [[OS2 API:CPI:MouGetNumButtons|MouGetNumButtons]]
* [[OS2 API:CPI:MouGetNumButtons|MouGetNumButtons]]
* [[OS2 API:CPI:MouGetNumMickeys|MouGetNumMickeys]]
*[[MouGetNumMickeys]]
* [[OS2 API:CPI:MouReadEventQue|MouReadEventQue]]
* [[OS2 API:CPI:MouReadEventQue|MouReadEventQue]]
* [[OS2 API:CPI:MouGetNumQueEl|MouGetNumQueEl]]
* [[OS2 API:CPI:MouGetNumQueEl|MouGetNumQueEl]]
* [[OS2 API:CPI:MouGetEventMask|MouGetEventMask]]
* [[OS2 API:CPI:MouGetEventMask|MouGetEventMask]]
* [[OS2 API:CPI:MouSetEventMask|MouSetEventMask]]
* [[OS2 API:CPI:MouSetEventMask|MouSetEventMask]]
* [[OS2 API:CPI:MouGetScaleFact|MouGetScaleFact]]
*[[MouGetScaleFact]]
* [[OS2 API:CPI:MouSetScaleFact|MouSetScaleFact]]
* [[OS2 API:CPI:MouSetScaleFact|MouSetScaleFact]]
* [[OS2 API:CPI:MouRemovePtr|MouRemovePtr]]
*[[MouRemovePtr]]
* [[OS2 API:CPI:MouDrawPtr|MouDrawPtr]]
*[[MouDrawPtr]]
* [[OS2 API:CPI:MouSetDevStatus|MouSetDevStatus]]
*[[MouSetDevStatus]]
* [[OS2 API:CPI:MouGetThreshold|MouGetThreshold]]
*[[MouGetThreshold]]
* [[OS2 API:CPI:MouSetThreshold|MouSetThreshold]]
*[[MouSetThreshold]]


==== Video I/O functions ====
===Video I/O functions===
* [[OS2 API:CPI:VioGetBuf|VioGetBuf]]
*[[VioGetBuf]]
* [[OS2 API:CPI:VioGetCurPos|VioGetCurPos]]
*[[VioGetCurPos]]
* [[OS2 API:CPI:VioSetCurPos|VioSetCurPos]]
* [[OS2 API:CPI:VioSetCurPos|VioSetCurPos]]
* [[OS2 API:CPI:VioGetCurType|VioGetCurType]]
* [[OS2 API:CPI:VioGetCurType|VioGetCurType]]
Line 343: Line 345:
* [[OS2 API:CPI:VioShowBuf|VioShowBuf]]
* [[OS2 API:CPI:VioShowBuf|VioShowBuf]]
* [[OS2 API:CPI:VioSetAnsi|VioSetAnsi]]
* [[OS2 API:CPI:VioSetAnsi|VioSetAnsi]]
* [[OS2 API:CPI:VioGetAnsi|VioGetAnsi]]
*[[VioGetAnsi]]
* [[OS2 API:CPI:VioSavRedrawWait|VioSavRedrawWait]]
* [[OS2 API:CPI:VioSavRedrawWait|VioSavRedrawWait]]
* [[OS2 API:CPI:VioSavRedrawUndo|VioSavRedrawUndo]]
* [[OS2 API:CPI:VioSavRedrawUndo|VioSavRedrawUndo]]
Line 352: Line 354:
* [[OS2 API:CPI:VioPopUp|VioPopUp]]
* [[OS2 API:CPI:VioPopUp|VioPopUp]]
* [[OS2 API:CPI:VioEndPopUp|VioEndPopUp]]
* [[OS2 API:CPI:VioEndPopUp|VioEndPopUp]]
* [[OS2 API:CPI:VioGetConfig|VioGetConfig]]
*[[VioGetConfig]]
* [[OS2 API:CPI:VioGetCp|VioGetCp]]
*[[VioGetCp]]
* [[OS2 API:CPI:VioSetCp|VioSetCp]]
*[[VioSetCp]]
* [[OS2 API:CPI:VioGetOrigin|VioGetOrigin]]
* [[OS2 API:CPI:VioGetOrigin|VioGetOrigin]]
* [[OS2 API:CPI:VioSetOrigin|VioSetOrigin]]
* [[OS2 API:CPI:VioSetOrigin|VioSetOrigin]]
Line 360: Line 362:
* [[OS2 API:CPI:VioSetState|VioSetState]]
* [[OS2 API:CPI:VioSetState|VioSetState]]


===== Advanced VIO =====
==== Advanced VIO ====
* [[OS2 API:CPI:VioAssociate|VioAssociate]]
* [[OS2 API:CPI:VioAssociate|VioAssociate]]
* [[OS2 API:CPI:VioCreateLogFont|VioCreateLogFont]]
* [[OS2 API:CPI:VioCreateLogFont|VioCreateLogFont]]
Line 371: Line 373:
* [[OS2 API:CPI:VioSetDeviceCellSize|VioSetDeviceCellSize]]
* [[OS2 API:CPI:VioSetDeviceCellSize|VioSetDeviceCellSize]]
* [[OS2 API:CPI:VioShowPS|VioShowPS]]
* [[OS2 API:CPI:VioShowPS|VioShowPS]]
</div>
</div>
=== Icon Legend===
=== Icon Legend===
Line 680: Line 680:
* [[OS2 API:CPI:LEGACY:DosWriteAsync|DosWriteAsync]]
* [[OS2 API:CPI:LEGACY:DosWriteAsync|DosWriteAsync]]


==== Keyboard functions ====
=== Keyboard functions ===
* [[OS2 API:CPI:LEGACY:KbdCharIn|KbdCharIn]]
* [[KbdCharIn]]
* [[OS2 API:CPI:LEGACY:KbdFlushBuffer|KbdFlushBuffer]]
* [[KbdFlushBuffer]]
* [[OS2 API:CPI:LEGACY:KbdGetCp|KbdGetCp]]
* [[KbdGetCp]]
* [[OS2 API:CPI:LEGACY:KbdSetCp|KbdSetCp]]
* [[KbdSetCp]]
* [[OS2 API:CPI:LEGACY:KbdPeek|KbdPeek]]
* [[KbdPeek]]
* [[OS2 API:CPI:LEGACY:KbdRegister|KbdRegister]]
* [[KbdRegister]]
* [[OS2 API:CPI:LEGACY:KbdDeRegister|KbdDeRegister]]
* [[KbdDeRegister]]
* [[OS2 API:CPI:LEGACY:KbdOpen|KbdOpen]]
* [[KbdOpen]]
* [[OS2 API:CPI:LEGACY:KbdClose|KbdClose]]
* [[KbdClose]]
* [[OS2 API:CPI:LEGACY:KbdGetFocus|KbdGetFocus]]  
* [[KbdGetFocus]]  
* [[OS2 API:CPI:LEGACY:KbdFreeFocus|KbdFreeFocus]]
* [[KbdFreeFocus]]
* [[OS2 API:CPI:LEGACY:KbdSynch|KbdSynch]]  
* [[KbdSynch]]  
* [[OS2 API:CPI:LEGACY:KbdSetFgnd|KbdSetFgnd]]
* [[KbdSetFgnd]]
* [[OS2 API:CPI:LEGACY:KbdGetHWId|KbdGetHWId]]
* [[KbdGetHWId]]
* [[OS2 API:CPI:LEGACY:KbdSetHWID|KbdSetHWID]] [[image:Vraag.gif]]
* [[KbdSetHWID]] [[image:Vraag.gif]]
* [[OS2 API:CPI:LEGACY:KbdSetCustXt|KbdSetCustXt]]
* [[KbdSetCustXt]]
* [[OS2 API:CPI:LEGACY:KbdGetStatus|KbdGetStatus]]
* [[KbdGetStatus]]
* [[OS2 API:CPI:LEGACY:KbdSetStatus|KbdSetStatus]]
* [[KbdSetStatus]]
* [[OS2 API:CPI:LEGACY:KbdStringIn|KbdStringIn]]
* [[KbdStringIn]]
* [[OS2 API:CPI:LEGACY:KbdXlate|KbdXlate]]
* [[KbdXlate]]
* [[OS2 API:CPI:LEGACY:KbdInit|KbdInit]] [[image:Vraag.gif]]
* [[KbdInit]] [[image:Vraag.gif]]


==== Mouse functions ====
==== Mouse functions ====
Line 785: Line 785:
* [[OS2 API:CPI:LEGACY:VioSetOrg|VioSetOrg]] [[image:Vraag.gif]]
* [[OS2 API:CPI:LEGACY:VioSetOrg|VioSetOrg]] [[image:Vraag.gif]]
* [[OS2 API:CPI:LEGACY:WinDefAVioWindowProc|WinDefAVioWindowProc]] [[image:Vraag.gif]]
* [[OS2 API:CPI:LEGACY:WinDefAVioWindowProc|WinDefAVioWindowProc]] [[image:Vraag.gif]]
</div>
</div>


===Legend===
===Legend===
* [[image:Vraag.gif]]: More information is required on this function. Information was not available on CP1 or PRCP books.
* [[image:Vraag.gif]]: More information is required on this function. Information was not available on CP1 or PRCP books.
== External References ==
* [http://cyberkinetica.homeunix.net/os2tk45/cp1/ CP1.INF - Control Program Programming Guide and Reference, Part 1 of 3 - IBM Tookit 4.5 ]
* [http://cyberkinetica.homeunix.net/os2tk45/cp2/ CP2.INF - Control Program Programming Guide and Reference, Part 2 of 3 - IBM Tookit 4.5 ]
* [http://cyberkinetica.homeunix.net/os2tk45/cp3/ CP3.INF - Control Program Programming Guide and Reference, Part 3 of 3  - IBM Tookit 4.5 ]
* [http://cyberkinetica.homeunix.net/os2tk45/apibas/ API Addendum Volume 1 (PowerPC Edition) - IBM Tookit 4.5 ]
* [http://cyberkinetica.homeunix.net/os2tk45/prcp/ Legacy OS/2 Programming Reference - IBM Tookit 4.5]


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

Revision as of 08:13, 6 January 2017

Control Programming Interface

Some general information is available at Control Program page.

Date/Time

Device I/O

Dynamic Linking Library

Error Management

Exception Management

Must Complete Management

Signaling Exception Management

File Systems/File Management

Directory Searching

Directory

Disk

Environment/Path

LibPath

File Manipulation

File Handle Manipulation

File Querying

File System Functions

Memory Management

Heap Memory

Shared Memory

Thread local Memory

Message Management

National Language/Code Page

Pipes

Named Pipes

Queues

Server

Client

Resource Management

Semaphores

Event Semaphores

Mutex Semaphores

MuxWait Semaphores

Processes/Threading

Processes

Threads

Session Management

Timer

VDD

Keyboard functions

Mouse functions

Video I/O functions

Advanced VIO

Icon Legend

  • : It seems that these functions were not implemented on the OS/2 4.5 Toolkit.
  • : These functions were documented on the Addendum of the OS/2 4.5 Toolkit.
  • : 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.

Date / Time

Device I/O

Dynamic Linking Library

Monitor functions

Dynamic Link Library

Error Management

Exception Management

File Systems/File Management

Directory Searching

Directory

Disk

Enviroment/Path

File Manipulation

File Handle Manipulation

File Querying

File System Functions

Memory Management

Heap Memory

Message Management

National Language/Code Page

Pipes

Named Pipes

Queues

Server

Client

Resource Management

Semaphores

MuxWait Semaphores

Processes/Threading

Processes

Threads

Session Management

Timer

Addressing

Spool

To SORT

Keyboard functions

Mouse functions

Video I/O functions

Advanced VIO

Legend

  • : More information is required on this function. Information was not available on CP1 or PRCP books.