en:docs:fapi:implementation_details

This is an old revision of the document!


This is part of Family API which allow to create dual-os version of program runs under OS/2 and DOS

Note: This is legacy API call. It is recommended to use 32-bit equivalent

2021/09/17 04:47 · prokushev · 0 Comments
2021/08/20 03:18 · prokushev · 0 Comments
Name Description Cross-platform
BadDynLink This is DOS specific version function which called during module loading if linking error is detected. It shows message and terminates via int 21h Terminate call -
DosBeep Generate sound from the speaker using direct port I/O No
DosBufReset Flushes a file cache buffers
DosChDir Defines the current directory for the requesting process
DosChgFilePtr Moves the read/write pointer
DosClose Closes a handle to a file, pipe, or device
DosCreateCSAlias Create CS alias from data segment
DosCLIAccess Request I/O privilege for disabling and enabling interrupts
DosPortAccess Request or release access to ports for I/O privilege
DosDelete Removes a directory entry associated with a file name
DosDevConfig Return device configuration
DosDupHandle Returns a new file handle for an open file
DosFreeSeg Deallocates a memory segment
DosGetDateTime Get the current date and time
DosGetEnv Return process environment for the current process from LocalInfoSeg Yes
DosGetHugeShift Return a shift count used to derive the selectors that address memory allocated with DosAllocHuge
DosGetMachineMode Returns the current mode of the processor
DosGetMessage Retrieve a message from the specified system message file
DosGetVersion Return the OS version number via GlobalInfoSeg Yes
DosInsMessage Insert variable text string information into the body of a message
DosMkDir Create a subdirectory
DosMkDir2 Create a subdirectory with EA
DosMove Move a file object to another location, change its name
DosNewSize Changes the size of a file
DosPutMessage Output the message
DosQCurDir Returns the full path name of the current directory
DosQCurDisk Determines the current default drive for the requesting process
DosQFileMode Queries the mode (attribute) of the specified file
DosQFSInfo Query file system info
DosQVerify Returns the value of the verify flag
DosRmDir Removes a subdirectory from the specified disk
DosSelectDisk Selects the drive specified as the default drive
DosSetDateTime Set the date and time
DosSetFileInfo Set attribute and extended attribute information for a file
DosSetFileMode Changes the mode (attribute) of the specified file
DosSetVerify Sets write verification
DosSleep Suspend the current thread for a specified time
DosSubAlloc Suballocate portions of a segment
DosSubFree Free memory previously allocated by DosSubAlloc
DosSubSet Initialize a segment for suballocation
DosWrite Write buffer to file
DosAllocHuge Allocate multiple segments as a huge block of memory
DosAllocSeg Allocate a data segment up to 64KB in size
DosCaseMap Case mapping on a string
DosDevIOCtl Control functions on a device
DosDevIOCtl2 Control functions on a device
DosError Receive hard error notification
DosErrClass Receive hard error code information
DosExecPgm Execute another program as a child process
DosExit End The current thread or process
DosFileLocks Locks and unlock a range in an opened file
DosFindClose Finish DosFindFirst or DosFindNext directory search function sequence
DosFindFirst Finds the first file object or group of file objects whose name(s) match the specification
DosFindFirst2 Finds the first file object or group of file objects whose name(s) match the specification
DosFindNext Locate the next set of directory entries
DosGetCtryInfo Obtain country-dependent formatting information that resides in the country information file
DosGetDBCSEv Obtain a DBCS (double byte character set) environmental vector that resides in the country information file
DosGetCP Query the current process code page and the prepared system code pages
DosSetCP Set process code page and the session's display code page and keyboard code page
DosGetCollate Obtain a collating sequence table
DosHoldSignal Temporarily disable or enable signal processing for the current process
DosOpen Open a file, a named pipe, or a device
DosOpen2 Open a file with extended attributes
DosQFileInfo Return information for a specific file
DosRead Read the specified number of bytes from a file, pipe, or device to a buffer location
DosReallocHuge Change the size of memory originally allocated by DosAllocHuge
DosReallocSeg Reallocate a segment after discard or changes the size of a segment already allocated
DosSetCtryCode
DosSetFHandState Set the state of the specified file
DosSetSigHandler Set signal handler
DosAllocShrSeg Allocate a named shared memory segment to a process
DosGetShrSeg Accesses a shared memory segment previously allocated by another process
DosLoadModule Load a dynamic link module and returns a handle for the module
DosFreeModule Free the reference to a dynamic link module for a process
DosQHandType Get handle type
DosGetProcAddr Get module procedure address
DosGetPID Get process id
DosSetMaxFH Set maximum file handlers
DosGetModHandle Get module handle
DosQPathInfo Get path information
DosQFSAttach Query information about an attached file system
DosQSysInfo Query system variablies values
DosMemAvail Query maximum availabe huge memory block
DosGetInfoSeg Query global and local information segments
KbdCharIn Return a character data record from the keyboard
KbdFlushBuffer Clear the keystroke buffer
KbdGetStatus Get the current state of the keyboard
KbdSetStatus Set the characteristics of the keyboard
KbdStringIn Read a character string (character codes only) from the keyboard
KbdPeek Return any available character data record from the keyboard without removing it from the buffer
KbdOpen Create a new logical keyboard
KbdClose Close the existing logical keyboard
KbdGetFocus
KbdFreeFocus
KbdGetCp
KbdSetCp
KbdXlate
KbdSetCustXt
KbdGetHWId
KbdRegister
KbdDeRegister
MouRegister
MouDeRegister
MouGetNumButtons
MouGetNumMickeys
MouGetDevStatus
MouGetNumQueEl
MouReadEventQue
MouGetScaleFact
MouGetEventMask
MouSetScaleFact
MouSetEventMask
MouGetHotKey
MouSetHotKey
MouOpen
MouClose
MouGetPtrShape
MouSetPtrShape
MouDrawPtr
MouRemovePtr
MouGetPtrPos
MouSetPtrPos
MouInitReal
MouFlushQue
MouSetDevStatus
VioGetBuf Return the address of the logical video buffer (LVB)
VioGetCurPos Return the coordinates of the cursor
VioGetCurType Get cursor type
VioGetPhysBuf Get addressability to the physical display buffer
VioReadCellStr Read a string of character-attribute pairs from the screen
VioReadCharStr Read a string of characters from the display
VioScrollDn Scroll the entire display buffer (or area specified within the display buffer) down
VioScrollLf Scroll the entire display buffer (or area specified within the display buffer) to the left
VioScrollRt Scroll the entire display buffer (or area specified within the display buffer) to the right
VioScrUnLock Release ownership of (unlocks) the physical display buffer
VioSetCurPos Set the cursor's coordinates on the screen
VioSetCurType Set the cursor type
VioSetMode Set the mode of the display
VioShowBuf Update the physical display buffer with the logical video buffer (LVB)
VioWrtCellStr Write a string of character-attribute pairs (cells) to the display
VioWrtCharStr Write a character string to the display
VioWrtCharStrAtt Write a character string with repeated attribute to the display
VioWrtNAttr Write an attribute to the display a specified number of times
VioWrtNCell Write a cell (character-attribute pair) to the display a specified number of times
VioWrtNChar Write a character to the display a specified number of times
VioWrtTTY Write a character string to the display starting at the current cursor position
VioScrLock Request ownership of (locks) the physical display buffer
VioGetMode Return the mode of the display
VioGetConfig Return the video display configuration
VioGetAnsi Return the current ANSI status On/Off state
VioSetAnsi Activate or deactivate ANSI support
VioScrollUp Sroll the entire display buffer (or area specified within the display buffer) up
VioDeRegister Deregister alternate video system
VioRegister Register alternate video system
VioGetState Return the current settings of adapter
VioSetState Set the current settings of adapter
VioGetCP Query the code page for display
VioSetCP Set the code page for display
VioGetFont Get current font
VioSetFont Set current font
VioModeWait Notify process about it must restore its video mode
VioModeUndo
VioPopUp Show temporary screen to display message
VioEndPopUp Return from temporary screen
VioSavRedrawWait Notifies application when it must save/redraw its screen
VioSavRedrawUndo
VioPrtSc Dump screen to printer
VioPrtScToggle Toggle VioWrtTty also write to printer