home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
OS/2 Shareware BBS: 10 Tools
/
10-Tools.zip
/
APICALLS.ZIP
/
APICALLS.DOC
Wrap
Text File
|
1988-01-08
|
67KB
|
507 lines
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