Jump to content

Family API: Difference between revisions

From EDM2
Ak120 (talk | contribs)
No edit summary
 
(16 intermediate revisions by 2 users not shown)
Line 5: Line 5:
==Function Calls==
==Function Calls==
===Dos===
===Dos===
<div style="column-count:3;-moz-column-count:3;-webkit-column-count:3">
*BadDynLink
*BadDynLink
*[[DosBeep (Legacy)|DosBeep]]
*[[DosBeep (OS/2 1.x)|DosBeep]]
*[[DosChDir]]
*[[DosChDir]]
*[[DosChgFilePtr]]
*[[DosChgFilePtr]]
Line 12: Line 13:
*[[DosCreateCSAlias]]
*[[DosCreateCSAlias]]
*[[DosDelete (FAPI)|DosDelete]]
*[[DosDelete (FAPI)|DosDelete]]
*[[DosDevConfig (Legacy)|DosDevConfig]]
*[[DosDevConfig (OS/2 1.x)|DosDevConfig]]
*[[DosDupHandle (FAPI)|DosDupHandle]]
*[[DosDupHandle (FAPI)|DosDupHandle]]
*[[DosFreeSeg]]
*[[DosFreeSeg]]
*[[DosGetDateTime (Legacy)|DosGetDateTime]]
*[[DosGetDateTime (OS/2 1.x)|DosGetDateTime]]
*[[DosGetEnv]]
*[[DosGetEnv]]
*[[DosGetHugeShift]]
*[[DosGetHugeShift]]
Line 22: Line 23:
*[[DosGetVersion]]
*[[DosGetVersion]]
*[[DosInsMessage]]
*[[DosInsMessage]]
*[[DosMkDir (Legacy)|DosMkDir]]
*[[DosMkDir|DosMkDir]]
*[[DosMove (FAPI)|DosMove]]
*[[DosMove (FAPI)|DosMove]]
*[[DosNewSize]]
*[[DosNewSize]]
Line 33: Line 34:
*[[DosRmDir]]
*[[DosRmDir]]
*[[DosSelectDisk]]
*[[DosSelectDisk]]
*[[DosSetDateTime (Legacy)|DosSetDateTime]]
*[[DosSetDateTime|DosSetDateTime]]
*[[DosSetFileInfo (FAPI)|DosSetFileInfo]]
*[[DosSetFileInfo (FAPI)|DosSetFileInfo]]
*[[DosSetFileMode]]
*[[DosSetFileMode]]
Line 53: Line 54:
*[[DosExit (FAPI)|DosExit]]
*[[DosExit (FAPI)|DosExit]]
*[[DosFileLocks]]
*[[DosFileLocks]]
*DosFindClose
*[[DosFindClose (OS/2 1.x)|DosFindClose]]
*[[DosFindFirst (FAPI)|DosFindFirst]]
*[[DosFindFirst (FAPI)|DosFindFirst]]
*[[DosFindNext (FAPI)|DosFindNext]]
*[[DosFindNext (FAPI)|DosFindNext]]
Line 63: Line 64:
*[[DosQFileInfo]]
*[[DosQFileInfo]]
*[[DosRead (FAPI)]]
*[[DosRead (FAPI)]]
*[[DosReAllocHuge]]
*[[DosReallocHuge]]
*[[DosReAllocSeg]]
*[[DosReallocSeg]]
*DosSetCtryCode
*DosSetCtryCode
*DosSetFHState
*[[DosSetFHState]]
*[[DosSetSigHandler]]
*[[DosSetSigHandler]]
</div>


===Kbd===
===Kbd===
<div style="column-count:3;-moz-column-count:3;-webkit-column-count:3">
*[[KbdCharIn (FAPI)|KbdCharIn]]
*[[KbdCharIn (FAPI)|KbdCharIn]]
*[[KbdFlushBuffer (FAPI)|KbdFlushBuffer]]
*[[KbdFlushBuffer (FAPI)|KbdFlushBuffer]]
*[[KbdGetStatus (FAPI)|KbdGetStatus]]
*[[KbdGetStatus (FAPI)|KbdGetStatus]]
*[[KbdInit]]
*[[KbdRegister]]
*[[KbdRegister]]
*[[KbdSetStatus (FAPI)|KbdSetStatus]]
*[[KbdSetStatus (FAPI)|KbdSetStatus]]
Line 78: Line 82:
Restricted
Restricted
*[[KbdPeek (FAPI)|KbdPeek]]
*[[KbdPeek (FAPI)|KbdPeek]]
</div>


===Vio===
===Vio===
<div style="column-count:3;-moz-column-count:3;-webkit-column-count:3">
*[[VioGetBuf (FAPI)|VioGetBuf]]
*[[VioGetBuf (FAPI)|VioGetBuf]]
*[[VioGetCurPos (FAPI)|VioGetCurPos]]
*[[VioGetCurPos (FAPI)|VioGetCurPos]]
Line 90: Line 96:
*[[VioScrollRt]]
*[[VioScrollRt]]
*[[VioScrUnLock (FAPI)|VioScrUnLock]]
*[[VioScrUnLock (FAPI)|VioScrUnLock]]
 
*[[VioSetCurPos (FAPI)|VioSetCurPos]]
*[[VioSetCurType (FAPI)|VioSetCurType]]
*[[VioSetMode (FAPI)|VioSetMode]]
*[[VioShowBuf (FAPI)|VioShowBuf]]
*[[VioWrtCellStr (FAPI)|VioWrtCellStr]]
*[[VioWrtCharStr (FAPI)|VioWrtCharStr]]
*[[VioWrtCharStrAtt (FAPI)|VioWrtCharStrAtt]]
*[[VioWrtNAttr (FAPI)|VioWrtNAttr]]
*[[VioWrtNCell (FAPI)|VioWrtNCell]]
*[[VioWrtNChar (FAPI)|VioWrtNChar]]
*[[VioWrtTTY (FAPI)|VioWrtTTY]]
*[[VioWrtTTY (FAPI)|VioWrtTTY]]
Restricted
Restricted
*[[VioScrLock (FAPI)|VioScrLock]]
*[[VioScrLock (FAPI)|VioScrLock]]
</div>


==Limitations==
==Limitations==
;Real Mode:max. 640K memory
;Real Mode:max. 640K memory
:no virtual adress space
:no virtual address space
:no multitasking
:no multitasking
:no undocumented OS services
:no undocumented OS services
Line 107: Line 123:


==Article==
==Article==
*[[Hints for writing simple programs for both OS/2 and DOS]]
*Roger Orr: [[Hints for writing simple programs for both OS/2 and DOS]]
 
==Links==
* [https://jdebp.eu/Softwares/famapi.html The 16-bit Family API toolkit] - C/C++


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

Latest revision as of 02:45, 1 May 2023

Family API (FAPI) is a subset of function calls for development of OS/2 protected mode and real mode programs.

OS/2 1.0 introduced 91 function calls that could be used in FAPI programs.

Function Calls

Dos

Kbd

Vio

Limitations

Real Mode
max. 640K memory
no virtual address space
no multitasking
no undocumented OS services
If the filename of an executable produced by BIND is changed, then it will not run under DOS 2.1.
Protected Mode
16 MB memory
1GB virtual address space

Article