home *** CD-ROM | disk | FTP | other *** search
- Author Bill Earle
- 364 Eastgate Lane
- Martinez, Ca 94553
-
- 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
- Dos AllocShrSeg 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 synchroniza-
- tion 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
- segemnt
- 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 envir-
- onment
- 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 acces 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 discard-
- able
- 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 Suspens 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 init-
- ialize 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
- tha handle provided
- F 21H 57H DosQFileInfo Return dat 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 specif-
- ied 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 previosly 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 call-
- ing 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 assoc-
- iated 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 exeptions
- 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
- 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 keyborad
- 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
- 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
- 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 Allocvate 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 start-
- ing 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 Scrool 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 10 0EH VioWrtTty Write a character string to the video display
- starting at the current cursor position in TTY
- mode