Family API: Difference between revisions
Appearance
m →Links |
No edit summary |
||
(19 intermediate revisions by 2 users not shown) | |||
Line 2: | Line 2: | ||
OS/2 1.0 introduced 91 function calls that could be used in FAPI programs. | OS/2 1.0 introduced 91 function calls that could be used in FAPI programs. | ||
==Function Calls== | |||
===Dos=== | |||
<div style="column-count:3;-moz-column-count:3;-webkit-column-count:3"> | |||
*BadDynLink | |||
*[[DosBeep (OS/2 1.x)|DosBeep]] | |||
*[[DosChDir]] | |||
*[[DosChgFilePtr]] | |||
*[[DosClose (FAPI)|DosClose]] | |||
*[[DosCreateCSAlias]] | |||
*[[DosDelete (FAPI)|DosDelete]] | |||
*[[DosDevConfig (OS/2 1.x)|DosDevConfig]] | |||
*[[DosDupHandle (FAPI)|DosDupHandle]] | |||
*[[DosFreeSeg]] | |||
*[[DosGetDateTime (OS/2 1.x)|DosGetDateTime]] | |||
*[[DosGetEnv]] | |||
*[[DosGetHugeShift]] | |||
*[[DosGetMachineMode]] | |||
*[[DosGetMessage]] | |||
*[[DosGetVersion]] | |||
*[[DosInsMessage]] | |||
*[[DosMkDir|DosMkDir]] | |||
*[[DosMove (FAPI)|DosMove]] | |||
*[[DosNewSize]] | |||
*[[DosPutMessage (FAPI)|DosPutMessage]] | |||
*[[DosQCurDir]] | |||
*[[DosQCurDisk]] | |||
*[[DosQFileMode]] | |||
*[[DosQFSInfo]] | |||
*[[DosQVerify]] | |||
*[[DosRmDir]] | |||
*[[DosSelectDisk]] | |||
*[[DosSetDateTime|DosSetDateTime]] | |||
*[[DosSetFileInfo (FAPI)|DosSetFileInfo]] | |||
*[[DosSetFileMode]] | |||
*[[DosSetVerify (FAPI)|DosSetVerify]] | |||
*[[DosSleep (FAPI)|DosSleep]] | |||
*[[DosSubAlloc]] | |||
*[[DosSubFree]] | |||
*[[DosSubSet]] | |||
*[[DosWrite (FAPI)|DosWrite]] | |||
Restricted | |||
*[[DosAllocHuge]] | |||
*[[DosAllocSeg]] | |||
*[[DosCaseMap (FAPI)|DosCaseMap]] | |||
*[[DosCWait]] | |||
*[[DosDevIOCtl (FAPI)|DosDevIOCtl]] | |||
*[[DosError (FAPI)|DosError]] | |||
*[[DosExecPgm (FAPI)|DosExecPgm]] | |||
*[[DosExit (FAPI)|DosExit]] | |||
*[[DosFileLocks]] | |||
*[[DosFindClose (OS/2 1.x)|DosFindClose]] | |||
*[[DosFindFirst (FAPI)|DosFindFirst]] | |||
*[[DosFindNext (FAPI)|DosFindNext]] | |||
*[[DosGetCtryInfo]] | |||
*[[DosGetDBCSEv]] | |||
*DosGetSpecChar | |||
*[[DosHoldSignal]] | |||
*[[DosOpen (FAPI)]] | |||
*[[DosQFileInfo]] | |||
*[[DosRead (FAPI)]] | |||
*[[DosReallocHuge]] | |||
*[[DosReallocSeg]] | |||
*DosSetCtryCode | |||
*[[DosSetFHState]] | |||
*[[DosSetSigHandler]] | |||
</div> | |||
===Kbd=== | |||
<div style="column-count:3;-moz-column-count:3;-webkit-column-count:3"> | |||
*[[KbdCharIn (FAPI)|KbdCharIn]] | |||
*[[KbdFlushBuffer (FAPI)|KbdFlushBuffer]] | |||
*[[KbdGetStatus (FAPI)|KbdGetStatus]] | |||
*[[KbdInit]] | |||
*[[KbdRegister]] | |||
*[[KbdSetStatus (FAPI)|KbdSetStatus]] | |||
*[[KbdStringIn (FAPI)|KbdStringIn]] | |||
Restricted | |||
*[[KbdPeek (FAPI)|KbdPeek]] | |||
</div> | |||
===Vio=== | |||
<div style="column-count:3;-moz-column-count:3;-webkit-column-count:3"> | |||
*[[VioGetBuf (FAPI)|VioGetBuf]] | |||
*[[VioGetCurPos (FAPI)|VioGetCurPos]] | |||
*[[VioGetCurType (FAPI)|VioGetCurType]] | |||
*[[VioGetPhysBuf]] | |||
*[[VioReadCellStr (FAPI)|VioReadCellStr]] | |||
*[[VioReadCharStr (FAPI)|VioReadCharStr]] | |||
*[[VioScrollDn]] | |||
*[[VioScrollLf]] | |||
*[[VioScrollRt]] | |||
*[[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]] | |||
Restricted | |||
*[[VioScrLock (FAPI)|VioScrLock]] | |||
</div> | |||
==Limitations== | ==Limitations== | ||
;Real Mode:max. 640K memory | ;Real Mode:max. 640K memory | ||
:no virtual | :no virtual address space | ||
:no multitasking | :no multitasking | ||
:no undocumented OS services | :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 | ;Protected Mode | ||
Line 13: | Line 122: | ||
:1GB virtual address space | :1GB virtual address space | ||
==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]] | ||
[[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
- BadDynLink
- DosBeep
- DosChDir
- DosChgFilePtr
- DosClose
- DosCreateCSAlias
- DosDelete
- DosDevConfig
- DosDupHandle
- DosFreeSeg
- DosGetDateTime
- DosGetEnv
- DosGetHugeShift
- DosGetMachineMode
- DosGetMessage
- DosGetVersion
- DosInsMessage
- DosMkDir
- DosMove
- DosNewSize
- DosPutMessage
- DosQCurDir
- DosQCurDisk
- DosQFileMode
- DosQFSInfo
- DosQVerify
- DosRmDir
- DosSelectDisk
- DosSetDateTime
- DosSetFileInfo
- DosSetFileMode
- DosSetVerify
- DosSleep
- DosSubAlloc
- DosSubFree
- DosSubSet
- DosWrite
Restricted
- DosAllocHuge
- DosAllocSeg
- DosCaseMap
- DosCWait
- DosDevIOCtl
- DosError
- DosExecPgm
- DosExit
- DosFileLocks
- DosFindClose
- DosFindFirst
- DosFindNext
- DosGetCtryInfo
- DosGetDBCSEv
- DosGetSpecChar
- DosHoldSignal
- DosOpen (FAPI)
- DosQFileInfo
- DosRead (FAPI)
- DosReallocHuge
- DosReallocSeg
- DosSetCtryCode
- DosSetFHState
- DosSetSigHandler
Kbd
Restricted
Vio
- VioGetBuf
- VioGetCurPos
- VioGetCurType
- VioGetPhysBuf
- VioReadCellStr
- VioReadCharStr
- VioScrollDn
- VioScrollLf
- VioScrollRt
- VioScrUnLock
- VioSetCurPos
- VioSetCurType
- VioSetMode
- VioShowBuf
- VioWrtCellStr
- VioWrtCharStr
- VioWrtCharStrAtt
- VioWrtNAttr
- VioWrtNCell
- VioWrtNChar
- VioWrtTTY
Restricted
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