API Function Calls: Difference between revisions
Jump to navigation
Jump to search
No edit summary |
mNo edit summary |
||
| (One intermediate revision by the same user not shown) | |||
| Line 1: | Line 1: | ||
By [[Bill Earle]] | ''By [[Bill Earle]]'' | ||
The following information describes the OS/2 Application Program Interface (API) calls. I have included information under the API column as follows: | The following information describes the OS/2 Application Program Interface (API) calls. I have included information under the API column as follows: | ||
| Line 36: | Line 36: | ||
|- | |- | ||
|F|| || ||DosCreateCSAlias||Create an executable alias descriptor (second name) for the data type descriptor received | |F|| || ||DosCreateCSAlias||Create an executable alias descriptor (second name) for the data type descriptor received | ||
|- | |||
| || || ||DosCreateQueue||Create and open the queue specified for use by the calling process | |||
|- | |||
| || || ||DosCreatSem||Create a semaphore for use by the calling process | |||
|- | |||
| || || ||DosCreateThread||Create an asynchronous execution thread for the calling process. Threads are the OS/2 CPU scheduling entities. | |||
|- | |||
|R||21H||4DH||DosCWait||Wait for a child process termination and get return code | |||
|- | |||
|F||21H||41H||DosDelete||Delete the file specified by the ASCIIZ name. | |||
|- | |||
|F|| || ||DosDevConfig||Return device information about attached devices | |||
|- | |||
|F||21H||44H||DosDevIOCtl||Communicate with an opened device handle | |||
|- | |||
|F||21H||45H,46H||DosDupHandle||Return a duplicate DOS handle for the file handle provided | |||
|- | |||
| || || ||DosEnterCritSec||Mark the entrance of a critical section of code and prevent the execution of other threads of code in the same process for concurrent processing synchronization | |||
|- | |||
|R|| || ||DosError||Allow the calling process to receive OS/2 hard-error notification as Opposed to the OS/2 generation of a hard-error signal | |||
|- | |||
|R||21H||59H||DosErrorClass||Get extended error information. | |||
|- | |||
|R||21H||4BH||DosExecPgm||Spawn a secondary program as a child process | |||
|- | |||
|R||21H||00H,4CH||DosExit||Complete the current thread of information | |||
|- | |||
| || || ||DosExitCritSec||Mark the end of a critical section of code and enable other threads within the current process to execute again in a concurrent fashion | |||
|- | |||
| || || ||DosExitList||Maintain the list (add,delete,modify) of routines that the current process is to execute upon completion | |||
|- | |||
|R||21H||5CH||DosFileLock||Lock or unlock a range of bytes within a file in support of file-sharing operations | |||
|- | |||
|R|| || ||DosFindClose||Close the handle associated with the file returned by a DosFindNext API service | |||
|- | |||
|R||21H||4EH||DosFindFirst||Find the first file in a group of files matching the file specification provided | |||
|- | |||
|R||21H||4FH||DosFindNext||Find the next file in a group of files matching the file specification provided in the call to DosFindFirst | |||
|- | |||
| || || ||DosFlagProcess||Set an external event flag that other processes can access for synchronization of concurrent processes | |||
|- | |||
| || || ||DosFreeModule||Release the link to the dynamic link module specified by the module handle. | |||
This service decrements the usage for the specified module | |||
|- | |||
|F||21H||49H||DosFreeSeg||Release a previously allocated memory segment | |||
|- | |||
|F|| || ||DosGetCollate||Get the current collating sequence based upon the current code-page | |||
|- | |||
| ||21H||66H||DosGetCP||Return the code-page in use by the current application | |||
|- | |||
|R||21H||38H||DosGetCtryInfo||Return country dependent formatting information | |||
|- | |||
|F||21H||2AH,2CH||DosGetDateTime||Return the current date and time | |||
|- | |||
| ||21H||65H||DosGetDBCSEnv||Return the DBCS vector for the specified country code | |||
|- | |||
|F|| || ||DosGetEnv||Return the segment and offset address of the current process command environment | |||
|- | |||
|F|| || ||DosGetHugeShift||Return the shift count used by DosAllocHuge to allocate memory larger than one segment | |||
|- | |||
| || || ||DosGetInfoSeg||Return the address of the OS/2 system variables | |||
|- | |||
|F|| || ||DosGetMachineMode||Return the current processor mode (real or Protected) | |||
|- | |||
|F|| || ||DosGetMessage||Obtain the text from the system message file for the specified message and place it into a user-defined buffer | |||
|- | |||
| || || ||DosGetModHandle||Return a handle to a dynamic link module | |||
|- | |||
| || || ||DosGetModName||Get the complete DOS path name for the dynamic link module associated with the file handle provided | |||
|- | |||
| || || ||DosGetProcAddr||Return the far address to the procedure specified within a dynamic link library | |||
|- | |||
| || || ||DosGetPrty||Return the priority of the current process | |||
|- | |||
| || || ||DosGetResource||Return the segment selector for the handle to the specified resource | |||
|- | |||
| || || ||DosGetSeg||Obtain access to the memory segment specified by the selector provided | |||
|- | |||
| || || ||DosGetShrSeg||Obtain access to the shared memory segment specified by the name provided. The usage count of the segment is incremented | |||
|- | |||
|F||21H||30H||DosGetVersion||Return the DOS version number | |||
|- | |||
| || || ||DosGiveSeg||Allow the process specified by the process identification provided to access a shared memory segment | |||
|- | |||
|R|| || ||DosHoldSignal||Enable/disable signal processing for the current process | |||
|- | |||
|F|| || ||DosInsMessage||Place a text string into the body of a message | |||
|- | |||
| || || ||DosKillProcess||Terminate a process and return a termination code to the parent process or OS/2 | |||
|- | |||
| || || ||DosLoadModule||Load the dynamic link module specified and return a handle. | |||
|- | |||
| || || ||DosLockSeg||Lock a segment of memory marked as discardable | |||
|- | |||
| || || ||DosMakePipe||Create a communications pipe for the calling process | |||
|- | |||
| || || ||DosMemAvail||Return the size of the largest block of memory available | |||
|- | |||
|F||21H||39H||DosMkDir||Create the specified directory | |||
|- | |||
| || || ||DosMonClose||Close the handle to a serial device that the process has been monitoring | |||
|- | |||
| || || ||DosMonOpen||Open a handle to a serial device for device I/O monitoring | |||
|- | |||
| || || ||DosMonRead||Wait for and return the input records to a serial device open for I/O monitoring | |||
|- | |||
| || || ||DosMonReg||Create input and output buffer structures for device I/O monitoring | |||
|- | |||
| || || ||DosMonWrite||Write a data record to the output monitor buffer of a device open for I/O monitoring | |||
|- | |||
|F||21H||56H||DosMove||Move a file from one location to another | |||
|- | |||
| || || ||DosMuxSemWait||Suspense the execution of the current thread until one or more semaphores have been cleared | |||
|- | |||
|F|| || ||DosNewSize||Change the size of the file associated with the specified file handle | |||
|- | |||
|R||21H||3CH,3DH||DosOpen||Open an existing file (if present) or create a file with the name specified by the ASCIIZ string provided | |||
|- | |||
| || || ||DosOpenQueue||Open the queue specified by the ASCIIZ string provided for use by the current process | |||
|- | |||
| || || ||DosOpenSem||Open the semaphore specified by the ASCIIZ string provided for use by the current process | |||
|- | |||
| || || ||DosPeekQueue||Examine, but do not remove, an element from the specified queue | |||
|- | |||
| || || ||DosPFSActivate||Activate the code-page and font specified for the printer. This activation only affects the calling process. | |||
|- | |||
| || || ||DosPFSCloseUser||Notify the font-switching software that the process has closed its spool file. The font-switching software can release any related resources | |||
|- | |||
| || || ||DosPFSInit||Direct the font-switching software to initialize code-page switching and font-switching for the specified printer | |||
|- | |||
| || || ||DosPFSQueryAct||Return the current code-page and font for the specified printer | |||
|- | |||
| || || ||DosPFSVerifyFont||Ensure that the code-page and font desired are supported by the specified printer | |||
|- | |||
| || || ||DosPhysicalDisk||Return partitioned disk information | |||
|- | |||
|F|| || ||DosPortAccess||Request or release access to a hardware port or ports | |||
|- | |||
| || || ||DosPtrace||Set a Ptrace buffer that is used in debugging | |||
|- | |||
| || || ||DosPurgeQueue||Delete all of the elements contained in the queue associated with the handle provided | |||
|- | |||
| || || ||DosPutMessage||Output the message provided to the file or device associated with a given file handle | |||
|- | |||
|F||21H||47H||DosQCurDir||Return the current directory | |||
|- | |||
|F||21H||19H||DosQCurDisk||Return the current disk drive | |||
|- | |||
|R|| || ||DosQFHandState||Query the state of the file associated with the handle provided | |||
|- | |||
|F||21H||57H||DosQFileInfo||Return date and time specifics about the file associated with the file handle provided | |||
|- | |||
|F||21H||43H||DosQFileMode||Return the attribute byte for a specific file | |||
|- | |||
|F||21H||36H||DosQFSInfo||Return information about the disk in the specified drive | |||
|- | |||
| || || ||DosQHandType||Determine if the handle specified references a device or file | |||
|- | |||
| || || ||DosQueryQueue||Return the number of elements in the specified queue | |||
|- | |||
|F||21H||54H||DosQVerify||Determine whether the specified queue is active or inactive | |||
|- | |||
|F||21H||3FH||DosRead||Read the specified number of bytes from the file associated with the file handle | |||
|- | |||
| || || ||DosReadAsynch||Read the specified number of bytes from the file associated with the file handle. The I/O operation occurs concurrently with the continued execution of the process | |||
|- | |||
| || || || DosReadQueue||Read and remove an element from the specified queue | |||
|- | |||
|R|| || ||DosReallocHuge||Modify the size of a previously allocated huge (larger than 1 segment) section of memory | |||
|- | |||
|R||21H||4AH||DosReallocSeg||Modify the size of a previously allocated memory segment | |||
|- | |||
| || || ||DosResumeThread||Restart a previously suspended thread of execution for the current process | |||
|- | |||
|F||3AH|| ||DosRmDir||Remove the directory specified by the ASCIIZ string | |||
|- | |||
|F|| || ||DosScanEnv||Search a process environment segment for a specified variable and return its value if found | |||
|- | |||
| || || ||DosSearchPath||Define a search path for data files | |||
|- | |||
|F||21H||0EH||DosSelectDisk||Set the desired current drive | |||
|- | |||
| || || ||DosSelectSession||Select the desired foreground session | |||
|- | |||
| || || ||DosSemClear||Clear the specified semaphore | |||
|- | |||
| || || ||DosSemRequest||Obtain a new handle to a new semaphore | |||
|- | |||
| || || ||DosSemSet||Set the semaphore associated with the handle provided | |||
|- | |||
| || || ||DosSemSetWait||Set the semaphore associated with the handle provided and suspend execution of the current thread until the semaphore is cleared | |||
|- | |||
| || || ||DosSemWait||Suspend execution of the current thread until the semaphore associated with the handle provided is cleared | |||
|- | |||
| || || ||DosSendCtlC||Send a Ctrl-C signal to the lowest process in the tree of processes | |||
|- | |||
| ||21H||66H||DosSetCP||Set the code-page as specified for the calling process | |||
|- | |||
|F||21H||2BH,2DH||DosSetDateTime||Set the current system date and time | |||
|- | |||
|R|| || ||DosSetFHandState||Set the state of the file associated with the handle provided | |||
|- | |||
|F||21H||57H||DosSetFileInfo||Set the date information (last read, last write, creation, and so on) for the file associated with the handle provided | |||
|- | |||
|F||21H||43H||DosSetFileMode||Set the attribute byte for the file associated with the file handle provided | |||
|- | |||
|F|| || ||DosSetFsInfo||Sets information for a file system specified device | |||
|- | |||
| ||21H||67H||DosSetMaxFH||Define the maximum number of file handles (up to 255) for the current process | |||
|- | |||
| || || ||DosSetPrty||Set the priority for the current thread | |||
|- | |||
| || || ||DosSetSession||Set the status of a child process | |||
|- | |||
|R|| || ||DosSetSigHandler||Define a signal-handling routine for a specific signal | |||
|- | |||
|F||21H||25H||DosSetVec||Define an exception-handling routine for specified exceptions | |||
|- | |||
|F||21H||2EH||DosSetVerify||Enable or disable disk verification for the current process | |||
|- | |||
| || || ||DosSleep||Suspend the current thread for a specified interval of time | |||
|- | |||
| || || ||DosStartSession||Invoke a second application as an OS/2 session | |||
|- | |||
| || || ||DosStopSession||Terminate a session previously invoked thru the DosStartSession | |||
|- | |||
|F|| || ||DosSubAlloc||Allocate memory from within a segment previously allocated by DosAllocSeg or DosAllocShrSeg | |||
|- | |||
|F|| || ||DosSubFree||Free memory previously allocated by DosSubAlloc | |||
|- | |||
|F|| || ||DosSubSet||Initialize a segment for suballocation, or change the size of a previously suballocated segment | |||
|- | |||
| || || ||DosSuspendThread||Suspend the current thread of execution until a DosResumeThread service is invoked | |||
|- | |||
| || || ||DosSystemService||Request OS/2 to perform a unique function (such as system-wide event notification for the specific process) | |||
|- | |||
| || || ||DosTimerAsynch||Start a timer that runs asynchronously to the thread issuing the request. Upon completion of the time interval, this service sets the specified semaphore | |||
|- | |||
| || || ||DosTimerStart||Start a periodic interval timer that runs asynchronously to the current thread. Each time the interval completes, the service clears the specified semaphore | |||
|- | |||
| || || ||DosTimerStop||Stop a periodic interval timer previously started by DosTimerStart or DosTimerAsynch | |||
|- | |||
| || || ||DosUnlockSeg||Unlock a memory segment previously marked as discardable | |||
|- | |||
| || || ||DosWait||Suspend the current process until the child process specified by the provided process identification terminates | |||
|- | |||
|F||21H||40H||DosWrite||Write the specified number of bytes to the file associated with the file handle provided | |||
|- | |||
| || || ||DosWriteAsynch||Write the specified number of bytes to the file associated with the file handle that is provided concurrently with the threads remaining processing | |||
|- | |||
| || || ||DosWriteQueue||Place an element in a specified queue | |||
|} | |} | ||
{|class="wikitable" | {|class="wikitable" | ||
| Line 393: | Line 402: | ||
|- | |- | ||
| || || ||VioGetConfig||Return the current video display configuration | | || || ||VioGetConfig||Return the current video display configuration | ||
|- | |||
|F||10H||03H||VioGetCurPos||Return the current row and column cursor position for the specified logical video buffer | |||
|- | |||
|F|| || ||VioGetCurType||Return the cursor type and attributes for the specified logical video buffer | |||
|- | |||
| || || ||VioGetFont||Return the current font for the specified logical video buffer | |||
|- | |||
|F||10H||0FH||VioGetMode||Return the current video mode for the specified logical video buffer | |||
|- | |||
|F|| || ||VioGetPhysBuf||Return the address of the physical video buffer | |||
|- | |||
| || || ||VioGetState||Return the current video states, or the palette registers, the border color, or background intensity | |||
|- | |||
| || || ||VioModeUndo||Allow one process thread to cancel a VioModeWait service issued by another thread in the same process | |||
|- | |||
| || || ||VioModeWait||Request that a graphics mode application be notified each time it needs to restore its video mode | |||
|- | |||
| || || ||VioPopUp||Allocate a temporary popup display screen for message display | |||
|- | |||
| || || ||VioPrtSc||Print the current screen contents | |||
|- | |||
| || || ||VioPrtScToggle||The OS/2 session manager invokes this routine each time the user presses the Shift-PrtSc key combination | |||
|- | |||
|F||10H||08H||VioReadCellStr||Read a string of characters and attributes from the screen starting at a specified row and column location | |||
|- | |||
|F|| || ||VioReadCharStr||Read a character string from the display starting at ther specified row and column | |||
|- | |||
| || || ||VioRegister||Register a video subsystem with a specific screen group | |||
|- | |||
| || || ||VioSavRedraw||Request that a process be notified when it must save or redraw its contents | |||
|- | |||
| || || ||VioSavRedrawUndo||Allow one thread in a process to cancel a | |||
|- | |||
| || || ||VioSavRedrawWait||service issued by another thread within the same process | |||
|- | |||
|F||10H||07H||VioScrollDn||Scroll the screen contents down as specified by the row and column numbers and number of lines to scroll | |||
|- | |||
| || || ||VioScrLock||Lock the screen and prevent I/O operations | |||
|- | |||
|F|| || ||VioScrollLf||Scroll the screen contents to the left as specified | |||
|- | |||
|F|| || ||VioScrollRt||Scroll the screen contents to the right as specified | |||
|- | |||
|F||10H||06H||VioScrollUp||Scroll the screen contents up as specified by the row and column numbers and number of lines to scroll | |||
|- | |||
| || || ||VioScrUnlock||Unlock the screen for I/O operations | |||
|- | |||
| || || ||VioSetAnsi||Enable or disable ANSI support for the specified logical video buffer | |||
|- | |||
| || || ||VioSetCP||Set the code-page for the specified logical video buffer | |||
|- | |||
| || || ||VioSetCurPos||Set the cursor position to the row and column of the logical video buffer provided | |||
|- | |||
|F||10H||02H||VioSetCurType||Set the cursor type (attributes) for the logical video display provided | |||
|- | |||
| || || ||VioSetFont||Set the font for the logical video display | |||
|- | |||
|F||10H||00H||VioSetMode||Set the display mode for the logical video display provided | |||
|- | |||
| ||10H||0BH||VioSetState||Set the state for the palette registers, border color, or background intensity for the specified logical video display | |||
|- | |||
|F|| || ||VioShowBuf||Update the physical display with the contents of a logical display buffer | |||
|- | |||
|F||10H||09H||VioWrtCellStr||Write a character string (with attributes) to the specified video display location | |||
|- | |||
|F||10H||0AH||VioWrtCharStr||Write a character string to the specified vidoe display location | |||
|- | |||
|F|| || ||VioWrtCharStrAtt||Write a character string using a repeated attribute to the specified video display | |||
|- | |||
|F|| || ||VioWrtNAttr||Write the character attribute to the video display at the specified location. This service provides an optional repeat count | |||
|- | |||
|F|| || ||VioWrtNCell||Write a character or attribute to the video display the specified number of times | |||
|- | |||
|F|| || ||VioWrtNChar||Write a character to the video display starting at the specified location and repeating the display n times | |||
|- | |||
|F||10H||0EH||VioWrtTty||Write a character string to the video display starting at the current cursor position in TTY mode | |||
|} | |} | ||
[[Category:Technical]] | [[Category:Technical]] | ||
Latest revision as of 20:54, 7 December 2022
By Bill Earle
The following information describes the OS/2 Application Program Interface (API) calls. I have included information under the API column as follows:
- F
- is a Family API (FAPI) call. This means that this call will also run under DOS 3.3, if assembled with the BIND program.
- R
- means Restricted function. Refer to the OS/2 Technical Reference Manual for further info.
I also have attempted to provide information to assist in porting old programs over to OS/2. INT and SUBCODE columns provide the old DOS interrupt and subcode functions. In some cases, these are approximations of old DOS calls. Again, refer to the OS/2 Technical Reference Manual for further information.
| API | INT | SUBCODE | FUNCTION | DESCRIPTION |
|---|---|---|---|---|
| F | BadDynLink | Called on bad dynamic link | ||
| R | DosAllocHuge | Allocate memory greater than one segment | ||
| R | 21H | 48H | DosAllocSegment | Allocate a segment of memory |
| DosAllocShrSeg | Allocate a shared-memory segment. The segment returned has a name that each process can access. | |||
| F | DosBeep | Generate a sound frequency for the specified duration | ||
| 21H | 0DH,68H | DosBufReset | Flush the disk buffers for the requesting process | |
| F | DosCaseMap | Map a binary string into an ASCII string by using a DOS code-page | ||
| F | 21H | 3BH | DosChdir | Set the current directory |
| F | 21H | 42H | DosChgFilePtr | Move a file's read/write pointer |
| F | DosCLIAccess | Request CLI/STI privilege before performing IN/OUT operations. | ||
| F | 21H | 3EH | DosClose | Close the file associated with the specified file handle |
| DosCloseQueue | Close the queue specified for use by the calling process | |||
| DosCloseSem | Close the semaphore specified for use by the calling process | |||
| F | DosCreateCSAlias | Create an executable alias descriptor (second name) for the data type descriptor received | ||
| DosCreateQueue | Create and open the queue specified for use by the calling process | |||
| DosCreatSem | Create a semaphore for use by the calling process | |||
| DosCreateThread | Create an asynchronous execution thread for the calling process. Threads are the OS/2 CPU scheduling entities. | |||
| R | 21H | 4DH | DosCWait | Wait for a child process termination and get return code |
| F | 21H | 41H | DosDelete | Delete the file specified by the ASCIIZ name. |
| F | DosDevConfig | Return device information about attached devices | ||
| F | 21H | 44H | DosDevIOCtl | Communicate with an opened device handle |
| F | 21H | 45H,46H | DosDupHandle | Return a duplicate DOS handle for the file handle provided |
| DosEnterCritSec | Mark the entrance of a critical section of code and prevent the execution of other threads of code in the same process for concurrent processing synchronization | |||
| R | DosError | Allow the calling process to receive OS/2 hard-error notification as Opposed to the OS/2 generation of a hard-error signal | ||
| R | 21H | 59H | DosErrorClass | Get extended error information. |
| R | 21H | 4BH | DosExecPgm | Spawn a secondary program as a child process |
| R | 21H | 00H,4CH | DosExit | Complete the current thread of information |
| DosExitCritSec | Mark the end of a critical section of code and enable other threads within the current process to execute again in a concurrent fashion | |||
| DosExitList | Maintain the list (add,delete,modify) of routines that the current process is to execute upon completion | |||
| R | 21H | 5CH | DosFileLock | Lock or unlock a range of bytes within a file in support of file-sharing operations |
| R | DosFindClose | Close the handle associated with the file returned by a DosFindNext API service | ||
| R | 21H | 4EH | DosFindFirst | Find the first file in a group of files matching the file specification provided |
| R | 21H | 4FH | DosFindNext | Find the next file in a group of files matching the file specification provided in the call to DosFindFirst |
| DosFlagProcess | Set an external event flag that other processes can access for synchronization of concurrent processes | |||
| DosFreeModule | Release the link to the dynamic link module specified by the module handle.
This service decrements the usage for the specified module | |||
| F | 21H | 49H | DosFreeSeg | Release a previously allocated memory segment |
| F | DosGetCollate | Get the current collating sequence based upon the current code-page | ||
| 21H | 66H | DosGetCP | Return the code-page in use by the current application | |
| R | 21H | 38H | DosGetCtryInfo | Return country dependent formatting information |
| F | 21H | 2AH,2CH | DosGetDateTime | Return the current date and time |
| 21H | 65H | DosGetDBCSEnv | Return the DBCS vector for the specified country code | |
| F | DosGetEnv | Return the segment and offset address of the current process command environment | ||
| F | DosGetHugeShift | Return the shift count used by DosAllocHuge to allocate memory larger than one segment | ||
| DosGetInfoSeg | Return the address of the OS/2 system variables | |||
| F | DosGetMachineMode | Return the current processor mode (real or Protected) | ||
| F | DosGetMessage | Obtain the text from the system message file for the specified message and place it into a user-defined buffer | ||
| DosGetModHandle | Return a handle to a dynamic link module | |||
| DosGetModName | Get the complete DOS path name for the dynamic link module associated with the file handle provided | |||
| DosGetProcAddr | Return the far address to the procedure specified within a dynamic link library | |||
| DosGetPrty | Return the priority of the current process | |||
| DosGetResource | Return the segment selector for the handle to the specified resource | |||
| DosGetSeg | Obtain access to the memory segment specified by the selector provided | |||
| DosGetShrSeg | Obtain access to the shared memory segment specified by the name provided. The usage count of the segment is incremented | |||
| F | 21H | 30H | DosGetVersion | Return the DOS version number |
| DosGiveSeg | Allow the process specified by the process identification provided to access a shared memory segment | |||
| R | DosHoldSignal | Enable/disable signal processing for the current process | ||
| F | DosInsMessage | Place a text string into the body of a message | ||
| DosKillProcess | Terminate a process and return a termination code to the parent process or OS/2 | |||
| DosLoadModule | Load the dynamic link module specified and return a handle. | |||
| DosLockSeg | Lock a segment of memory marked as discardable | |||
| DosMakePipe | Create a communications pipe for the calling process | |||
| DosMemAvail | Return the size of the largest block of memory available | |||
| F | 21H | 39H | DosMkDir | Create the specified directory |
| DosMonClose | Close the handle to a serial device that the process has been monitoring | |||
| DosMonOpen | Open a handle to a serial device for device I/O monitoring | |||
| DosMonRead | Wait for and return the input records to a serial device open for I/O monitoring | |||
| DosMonReg | Create input and output buffer structures for device I/O monitoring | |||
| DosMonWrite | Write a data record to the output monitor buffer of a device open for I/O monitoring | |||
| F | 21H | 56H | DosMove | Move a file from one location to another |
| DosMuxSemWait | Suspense the execution of the current thread until one or more semaphores have been cleared | |||
| F | DosNewSize | Change the size of the file associated with the specified file handle | ||
| R | 21H | 3CH,3DH | DosOpen | Open an existing file (if present) or create a file with the name specified by the ASCIIZ string provided |
| DosOpenQueue | Open the queue specified by the ASCIIZ string provided for use by the current process | |||
| DosOpenSem | Open the semaphore specified by the ASCIIZ string provided for use by the current process | |||
| DosPeekQueue | Examine, but do not remove, an element from the specified queue | |||
| DosPFSActivate | Activate the code-page and font specified for the printer. This activation only affects the calling process. | |||
| DosPFSCloseUser | Notify the font-switching software that the process has closed its spool file. The font-switching software can release any related resources | |||
| DosPFSInit | Direct the font-switching software to initialize code-page switching and font-switching for the specified printer | |||
| DosPFSQueryAct | Return the current code-page and font for the specified printer | |||
| DosPFSVerifyFont | Ensure that the code-page and font desired are supported by the specified printer | |||
| DosPhysicalDisk | Return partitioned disk information | |||
| F | DosPortAccess | Request or release access to a hardware port or ports | ||
| DosPtrace | Set a Ptrace buffer that is used in debugging | |||
| DosPurgeQueue | Delete all of the elements contained in the queue associated with the handle provided | |||
| DosPutMessage | Output the message provided to the file or device associated with a given file handle | |||
| F | 21H | 47H | DosQCurDir | Return the current directory |
| F | 21H | 19H | DosQCurDisk | Return the current disk drive |
| R | DosQFHandState | Query the state of the file associated with the handle provided | ||
| F | 21H | 57H | DosQFileInfo | Return date and time specifics about the file associated with the file handle provided |
| F | 21H | 43H | DosQFileMode | Return the attribute byte for a specific file |
| F | 21H | 36H | DosQFSInfo | Return information about the disk in the specified drive |
| DosQHandType | Determine if the handle specified references a device or file | |||
| DosQueryQueue | Return the number of elements in the specified queue | |||
| F | 21H | 54H | DosQVerify | Determine whether the specified queue is active or inactive |
| F | 21H | 3FH | DosRead | Read the specified number of bytes from the file associated with the file handle |
| DosReadAsynch | Read the specified number of bytes from the file associated with the file handle. The I/O operation occurs concurrently with the continued execution of the process | |||
| DosReadQueue | Read and remove an element from the specified queue | |||
| R | DosReallocHuge | Modify the size of a previously allocated huge (larger than 1 segment) section of memory | ||
| R | 21H | 4AH | DosReallocSeg | Modify the size of a previously allocated memory segment |
| DosResumeThread | Restart a previously suspended thread of execution for the current process | |||
| F | 3AH | DosRmDir | Remove the directory specified by the ASCIIZ string | |
| F | DosScanEnv | Search a process environment segment for a specified variable and return its value if found | ||
| DosSearchPath | Define a search path for data files | |||
| F | 21H | 0EH | DosSelectDisk | Set the desired current drive |
| DosSelectSession | Select the desired foreground session | |||
| DosSemClear | Clear the specified semaphore | |||
| DosSemRequest | Obtain a new handle to a new semaphore | |||
| DosSemSet | Set the semaphore associated with the handle provided | |||
| DosSemSetWait | Set the semaphore associated with the handle provided and suspend execution of the current thread until the semaphore is cleared | |||
| DosSemWait | Suspend execution of the current thread until the semaphore associated with the handle provided is cleared | |||
| DosSendCtlC | Send a Ctrl-C signal to the lowest process in the tree of processes | |||
| 21H | 66H | DosSetCP | Set the code-page as specified for the calling process | |
| F | 21H | 2BH,2DH | DosSetDateTime | Set the current system date and time |
| R | DosSetFHandState | Set the state of the file associated with the handle provided | ||
| F | 21H | 57H | DosSetFileInfo | Set the date information (last read, last write, creation, and so on) for the file associated with the handle provided |
| F | 21H | 43H | DosSetFileMode | Set the attribute byte for the file associated with the file handle provided |
| F | DosSetFsInfo | Sets information for a file system specified device | ||
| 21H | 67H | DosSetMaxFH | Define the maximum number of file handles (up to 255) for the current process | |
| DosSetPrty | Set the priority for the current thread | |||
| DosSetSession | Set the status of a child process | |||
| R | DosSetSigHandler | Define a signal-handling routine for a specific signal | ||
| F | 21H | 25H | DosSetVec | Define an exception-handling routine for specified exceptions |
| F | 21H | 2EH | DosSetVerify | Enable or disable disk verification for the current process |
| DosSleep | Suspend the current thread for a specified interval of time | |||
| DosStartSession | Invoke a second application as an OS/2 session | |||
| DosStopSession | Terminate a session previously invoked thru the DosStartSession | |||
| F | DosSubAlloc | Allocate memory from within a segment previously allocated by DosAllocSeg or DosAllocShrSeg | ||
| F | DosSubFree | Free memory previously allocated by DosSubAlloc | ||
| F | DosSubSet | Initialize a segment for suballocation, or change the size of a previously suballocated segment | ||
| DosSuspendThread | Suspend the current thread of execution until a DosResumeThread service is invoked | |||
| DosSystemService | Request OS/2 to perform a unique function (such as system-wide event notification for the specific process) | |||
| DosTimerAsynch | Start a timer that runs asynchronously to the thread issuing the request. Upon completion of the time interval, this service sets the specified semaphore | |||
| DosTimerStart | Start a periodic interval timer that runs asynchronously to the current thread. Each time the interval completes, the service clears the specified semaphore | |||
| DosTimerStop | Stop a periodic interval timer previously started by DosTimerStart or DosTimerAsynch | |||
| DosUnlockSeg | Unlock a memory segment previously marked as discardable | |||
| DosWait | Suspend the current process until the child process specified by the provided process identification terminates | |||
| F | 21H | 40H | DosWrite | Write the specified number of bytes to the file associated with the file handle provided |
| DosWriteAsynch | Write the specified number of bytes to the file associated with the file handle that is provided concurrently with the threads remaining processing | |||
| DosWriteQueue | Place an element in a specified queue |
| API | INT | SUBCODE | FUNCTION | DESCRIPTION |
|---|---|---|---|---|
| F | 16H | 00H | KbdCharIn | Return the character scan code from the standard input device |
| KbdClose | Close a handle associated with a logical (unique to a process) keyboard | |||
| KbdCustCP | Install a user-definable custom keyboard translation table. The table only affects the keyboard handle provided | |||
| KbdDeRegister | Remove a previously registered keyboard from the current session | |||
| F | KbdFlushBuffer | Clear the keyboard buffer for a specific keyboard handle | ||
| KbdFreeFocus | Release the logical-to-physical keyboard mapping produced by KbdGetFocus | |||
| KbdGetFocus | Join a logical (process unique) keyboard to a physical keyboard | |||
| F | 16H | 00H | KbdGetStatus | Return information about a specific logical keyboard |
| KbdGetXT | Obtain information from the current keyboard translation table | |||
| KbdOpen | Open a logical keyboard and return a keyboard handle | |||
| R | 16H | 00H | KbdPeek | Return, but do not remove, a keyboard scan code if present in the keyboard buffer associated with the keyboard handle provided |
| KbdRegister | Register a keyboard subsystem for a specific session | |||
| KbdSetFgnd | Increase the priority of the foreground key board thread | |||
| KbdSetStatus | Set the size characteristics for a logical keyboard | |||
| KbdSetXT | Set the keyboard translation table for a logical keyboard | |||
| KbdShellInit | Request the shell to identify itself to the keyboard routing software | |||
| F | 21H | 0AH | KbdStringIn | Read a character string from a logical keybd |
| KbdSynch | Synchronize access to the keyboard subsystem | |||
| KbdXlate | Translate a scan code into a shift state and ASCII code |
| API | INT | SUBCODE | FUNCTION | DESCRIPTION |
|---|---|---|---|---|
| MouClose | Close the mouse device handle for the current screen group | |||
| MouDeRegister | Remove a partially registered mouse subsystem for the current session | |||
| 33H | 01H | MouDrawPtr | Notify the mouse device driver that a screen area previously restricted from access is now available | |
| MouFlushQueue | Direct the mouse device driver to purge the mouse event queue for the current session | |||
| MouGetDevStatus | Return the current mouse device driver settings | |||
| MouGetEventMask | Return the event mask for the current mouse device driver | |||
| MouGetHotKey | Return the specific mouse key used for input (left, middle, or right) | |||
| MouGetNumButtons | Return the number of buttons that the mouse driver supports | |||
| MouGetNumMickeys | Return the number of "Mickeys" per centimeter for the current mouse driver | |||
| MouGetNumQueEl | Return the status of the event queue for the current mouse device driver | |||
| 33H | 03H | MouGetPtrPos | Return the current row and column of the mouse pointer shape | |
| MouGetPtrShape | Obtain the current mouse pointer shape | |||
| MouGetScaleFact | Return the current scaling factors for the mouse pointer shape | |||
| MouInitReal | Initialize the mouse real-mode pointer | |||
| 33H | 00H | MouOpen | Open a mouse device driver for the current screen group. Return a device handle | |
| 33H | 05H,06H | MouReadEventQue | Read and remove an event from the current mouse driver event queue | |
| MouRegister | Register a mouse subsystem for use with the current screen group | |||
| 33H | 02H | MouRemovePtr | Restrict a screen area from use by the mouse pointer | |
| MouSetDevStatus | Set the current mouse device driver status flags | |||
| 33H | 0CH | MouSetEventMask | Assign an event mask to the current mouse device driver | |
| MouSetHotKey | Define which button (left, middle, or right) serves as the hot key for the current mouse driver | |||
| 33H | 04H | MouSetPtrPos | Set the mouse pointer screen coordinates | |
| 33H | 09H,0AH | MouSetPtrShape | Set the mouse pointer shape | |
| MouSetScaleFact | Set the scaling factor for the mouse pointer shape | |||
| MouShellInit | Mouse shell indentifies itself to the mouse router | |||
| MouSynch | Direct mouse subsystems to synchronize access to the mouse device driver |
| API | INT | SUBCODE | FUNCTION | DESCRIPTION |
|---|---|---|---|---|
| VioDeRegister | Remove a previously registered video subsystem from a screen group | |||
| VioEndPopUp | Remove a temporary window created by VioPopUp that is no longer required | |||
| VioGetAnsi | Specify whether ANSI support is on or off for the current video buffer | |||
| F | VioGetBuf | Return the address of the logical (process unique) video buffer specified | ||
| VioGetCP | Return the code-page used for display by the specified handle | |||
| VioGetConfig | Return the current video display configuration | |||
| F | 10H | 03H | VioGetCurPos | Return the current row and column cursor position for the specified logical video buffer |
| F | VioGetCurType | Return the cursor type and attributes for the specified logical video buffer | ||
| VioGetFont | Return the current font for the specified logical video buffer | |||
| F | 10H | 0FH | VioGetMode | Return the current video mode for the specified logical video buffer |
| F | VioGetPhysBuf | Return the address of the physical video buffer | ||
| VioGetState | Return the current video states, or the palette registers, the border color, or background intensity | |||
| VioModeUndo | Allow one process thread to cancel a VioModeWait service issued by another thread in the same process | |||
| VioModeWait | Request that a graphics mode application be notified each time it needs to restore its video mode | |||
| VioPopUp | Allocate a temporary popup display screen for message display | |||
| VioPrtSc | Print the current screen contents | |||
| VioPrtScToggle | The OS/2 session manager invokes this routine each time the user presses the Shift-PrtSc key combination | |||
| F | 10H | 08H | VioReadCellStr | Read a string of characters and attributes from the screen starting at a specified row and column location |
| F | VioReadCharStr | Read a character string from the display starting at ther specified row and column | ||
| VioRegister | Register a video subsystem with a specific screen group | |||
| VioSavRedraw | Request that a process be notified when it must save or redraw its contents | |||
| VioSavRedrawUndo | Allow one thread in a process to cancel a | |||
| VioSavRedrawWait | service issued by another thread within the same process | |||
| F | 10H | 07H | VioScrollDn | Scroll the screen contents down as specified by the row and column numbers and number of lines to scroll |
| VioScrLock | Lock the screen and prevent I/O operations | |||
| F | VioScrollLf | Scroll the screen contents to the left as specified | ||
| F | VioScrollRt | Scroll the screen contents to the right as specified | ||
| F | 10H | 06H | VioScrollUp | Scroll the screen contents up as specified by the row and column numbers and number of lines to scroll |
| VioScrUnlock | Unlock the screen for I/O operations | |||
| VioSetAnsi | Enable or disable ANSI support for the specified logical video buffer | |||
| VioSetCP | Set the code-page for the specified logical video buffer | |||
| VioSetCurPos | Set the cursor position to the row and column of the logical video buffer provided | |||
| F | 10H | 02H | VioSetCurType | Set the cursor type (attributes) for the logical video display provided |
| VioSetFont | Set the font for the logical video display | |||
| F | 10H | 00H | VioSetMode | Set the display mode for the logical video display provided |
| 10H | 0BH | VioSetState | Set the state for the palette registers, border color, or background intensity for the specified logical video display | |
| F | VioShowBuf | Update the physical display with the contents of a logical display buffer | ||
| F | 10H | 09H | VioWrtCellStr | Write a character string (with attributes) to the specified video display location |
| F | 10H | 0AH | VioWrtCharStr | Write a character string to the specified vidoe display location |
| F | VioWrtCharStrAtt | Write a character string using a repeated attribute to the specified video display | ||
| F | VioWrtNAttr | Write the character attribute to the video display at the specified location. This service provides an optional repeat count | ||
| F | VioWrtNCell | Write a character or attribute to the video display the specified number of times | ||
| F | VioWrtNChar | Write a character to the video display starting at the specified location and repeating the display n times | ||
| F | 10H | 0EH | VioWrtTty | Write a character string to the video display starting at the current cursor position in TTY mode |