Jump to content

Family API: Difference between revisions

From EDM2
No edit summary
No edit summary
 
(12 intermediate revisions by 2 users not shown)
Line 4: Line 4:


==Function Calls==
==Function Calls==
===Dos===
<div style="column-count:3;-moz-column-count:3;-webkit-column-count:3">
<div style="column-count:3;-moz-column-count:3;-webkit-column-count:3">
===Dos===
*BadDynLink
*BadDynLink
*[[DosBeep (Legacy)|DosBeep]]
*[[DosBeep (OS/2 1.x)|DosBeep]]
*[[DosChDir]]
*[[DosChDir]]
*[[DosChgFilePtr]]
*[[DosChgFilePtr]]
Line 13: 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 23: Line 23:
*[[DosGetVersion]]
*[[DosGetVersion]]
*[[DosInsMessage]]
*[[DosInsMessage]]
*[[DosMkDir (Legacy)|DosMkDir]]
*[[DosMkDir|DosMkDir]]
*[[DosMove (FAPI)|DosMove]]
*[[DosMove (FAPI)|DosMove]]
*[[DosNewSize]]
*[[DosNewSize]]
Line 34: Line 34:
*[[DosRmDir]]
*[[DosRmDir]]
*[[DosSelectDisk]]
*[[DosSelectDisk]]
*[[DosSetDateTime (Legacy)|DosSetDateTime]]
*[[DosSetDateTime|DosSetDateTime]]
*[[DosSetFileInfo (FAPI)|DosSetFileInfo]]
*[[DosSetFileInfo (FAPI)|DosSetFileInfo]]
*[[DosSetFileMode]]
*[[DosSetFileMode]]
Line 54: 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 69: Line 69:
*[[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 79: 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 108: Line 113:
==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 118: 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