home *** CD-ROM | disk | FTP | other *** search
/ OS/2 Shareware BBS: 10 Tools / 10-Tools.zip / famapi.zip / INCLUDE.ZIP / OS2 / VIOCALLS.H < prev   
C/C++ Source or Header  |  1993-01-13  |  7KB  |  180 lines

  1. //
  2. //    *******************************************************************
  3. //      JdeBP C++ Library Routines      General Public Licence v1.00
  4. //          Copyright (c) 1991,1992  Jonathan de Boyne Pollard
  5. //    *******************************************************************
  6. //
  7.  
  8. //
  9. //  OS/2 VIO API
  10. //
  11.  
  12. #ifndef _VIOTYPES_DEFINED
  13. typedef struct _VIOCURSORINFO {
  14.         unsigned short   yStart;
  15.         unsigned short   cEnd;
  16.         unsigned short   cx;
  17.         unsigned short   attr;
  18. } VIOCURSORINFO;
  19.  
  20. typedef struct _VIOMODEINFO {
  21.         unsigned short cb;
  22.         unsigned char  fbType;
  23.         unsigned char  color;
  24.         unsigned short col;
  25.         unsigned short row;
  26.         unsigned short hres;
  27.         unsigned short vres;
  28.         unsigned char  fmt_ID;
  29.         unsigned char  attrib;
  30. } VIOMODEINFO;
  31.  
  32. typedef struct _VIOPHYSBUF {
  33.         unsigned char far * pBuf;
  34.         unsigned long       cb;
  35.         unsigned short      asel[1];
  36. } VIOPHYSBUF;
  37.  
  38. typedef struct _VIOCONFIGINFO {
  39.         unsigned short  cb     ;
  40.         unsigned short  adapter;
  41.         unsigned short  display;
  42.         unsigned long   cbMemory;
  43. } VIOCONFIGINFO;
  44.  
  45. typedef struct _VIOFONTINFO {
  46.         unsigned short  cb;
  47.         unsigned short  type;
  48.         unsigned short  cxCell;
  49.         unsigned short  cyCell;
  50.         void far *      pbData;
  51.         unsigned short  cbData;
  52. } VIOFONTINFO;
  53.  
  54. typedef struct _VIOPALSTATE {
  55.         unsigned short  cb;
  56.         unsigned short  type;
  57.         unsigned short  iFirst;
  58.         unsigned short  acolor[1];
  59. }VIOPALSTATE;
  60.  
  61. typedef struct _VIOOVERSCAN {
  62.         unsigned short  cb;
  63.         unsigned short  type;
  64.         unsigned short  color;
  65. }VIOOVERSCAN;
  66.  
  67. typedef struct _VIOINTENSITY {
  68.         unsigned short  cb;
  69.         unsigned short  type;
  70.         unsigned short  fs;
  71. }VIOINTENSITY;
  72. #define _VIOTYPES_DEFINED
  73. #endif
  74.  
  75. extern "C" {
  76.  
  77.     USHORT _APICALL VioRegister ( unsigned char far *, unsigned char far *, unsigned long, unsigned long );
  78.  
  79.     USHORT _APICALL VioDeRegister ( void );
  80.  
  81.     USHORT _APICALL VioGetBuf ( unsigned long far *, unsigned short far *, unsigned short );
  82.  
  83.     USHORT _APICALL VioGetCurPos ( unsigned short far *, unsigned short far *, unsigned short );
  84.     USHORT _APICALL VioSetCurPos ( unsigned short, unsigned short, unsigned short );
  85.  
  86.     USHORT _APICALL VioGetCurType ( VIOCURSORINFO far *, unsigned short );
  87.     USHORT _APICALL VioSetCurType ( VIOCURSORINFO far *, unsigned short );
  88.  
  89. #define VGMT_MONOCHROME     0x00
  90. #define VGMT_OTHER          0x01
  91. #define VGMT_GRAPHICS       0x02
  92. #define VGMT_DISABLEBURST   0x04
  93.  
  94.     USHORT _APICALL VioGetMode ( VIOMODEINFO far *, unsigned short );
  95.     USHORT _APICALL VioSetMode ( const VIOMODEINFO far *, unsigned short );
  96.  
  97.     USHORT _APICALL VioGetPhysBuf ( VIOPHYSBUF far *, unsigned short );
  98.  
  99.     USHORT _APICALL VioReadCellStr ( char far *, unsigned short far *, unsigned short, unsigned short, unsigned short );
  100.     USHORT _APICALL VioReadCharStr ( char far *, unsigned short far *, unsigned short, unsigned short, unsigned short );
  101.     USHORT _APICALL VioWrtCellStr ( const char far *, unsigned short, unsigned short, unsigned short, unsigned short );
  102.     USHORT _APICALL VioWrtCharStr ( const char far *, unsigned short, unsigned short, unsigned short, unsigned short );
  103.  
  104.     USHORT _APICALL VioScrollDn ( unsigned short, unsigned short, unsigned short, unsigned short, unsigned short, unsigned char far *,  unsigned short );
  105.     USHORT _APICALL VioScrollUp ( unsigned short, unsigned short, unsigned short, unsigned short, unsigned short, unsigned char far *,  unsigned short );
  106.     USHORT _APICALL VioScrollLf ( unsigned short, unsigned short, unsigned short, unsigned short, unsigned short, unsigned char far *,  unsigned short );
  107.     USHORT _APICALL VioScrollRt ( unsigned short, unsigned short, unsigned short, unsigned short, unsigned short, unsigned char far *,  unsigned short );
  108.  
  109.     USHORT _APICALL VioWrtNAttr ( unsigned const char far *, unsigned short, unsigned short, unsigned short, unsigned short );
  110.     USHORT _APICALL VioWrtNCell ( unsigned const char far *, unsigned short, unsigned short, unsigned short, unsigned short );
  111.     USHORT _APICALL VioWrtNChar ( const char far *, unsigned short, unsigned short, unsigned short, unsigned short );
  112.     USHORT _APICALL VioWrtTTy ( const char far *, unsigned short, unsigned short );
  113.     USHORT _APICALL VioWrtCharStrAtt ( const char far *, unsigned short, unsigned short, unsigned short, const unsigned char far *, unsigned short );
  114.  
  115.     USHORT _APICALL VioShowBuf ( unsigned short, unsigned short, unsigned short );
  116.  
  117. #define ANSI_ON     1
  118. #define ANSI_OFF    0
  119.  
  120.     USHORT _APICALL VioSetAnsi ( unsigned short, unsigned short );
  121.     USHORT _APICALL VioGetAnsi ( unsigned short far *, unsigned short );
  122.  
  123.     USHORT _APICALL VioPrtSc ( unsigned short );
  124.     USHORT _APICALL VioPrtScToggle ( unsigned short );
  125.  
  126. #define VSRWI_SAVEANDREDRAW  0
  127. #define VSRWI_REDRAW         1
  128.  
  129. #define VSRWN_SAVE           0
  130. #define VSRWN_REDRAW         1
  131.  
  132. #define UNDOI_GETOWNER          0
  133. #define UNDOI_RELEASEOWNER      1
  134.  
  135. #define UNDOK_ERRORCODE         0
  136. #define UNDOK_TERMINATE         1
  137.  
  138.     USHORT _APICALL VioSavRedrawWait ( unsigned short, unsigned short far *, unsigned short);
  139.     USHORT _APICALL VioSavRedrawUndo ( unsigned short, unsigned short, unsigned short );
  140.  
  141. #define VMWR_POPUP  0
  142. #define VMWN_POPUP  0
  143.  
  144.     USHORT _APICALL VioModeWait ( unsigned short, unsigned short far *, unsigned short );
  145.     USHORT _APICALL VioModeUndo ( unsigned short, unsigned short, unsigned short );
  146.  
  147. #define LOCKIO_NOWAIT   0
  148. #define LOCKIO_WAIT     1
  149.  
  150. #define LOCK_SUCCESS    0
  151. #define LOCK_FAIL       1
  152.  
  153.     USHORT _APICALL VioScrLock ( unsigned short, unsigned char far *, unsigned short );
  154.     USHORT _APICALL VioScrUnLock ( unsigned short );
  155.  
  156. #define VP_NOWAIT       0x0000
  157. #define VP_WAIT         0x0001
  158. #define VP_OPAQUE       0x0000
  159. #define VP_TRANSPARENT  0x0002
  160.  
  161.     USHORT _APICALL VioPopUp ( unsigned short far *, unsigned short );
  162.     USHORT _APICALL VioEndPopUp ( unsigned short );
  163.  
  164.     USHORT _APICALL VioGetConfig ( unsigned short, VIOCONFIGINFO far *, unsigned short );
  165.  
  166. #define VGFI_GETCURFONT     0
  167. #define VGFI_GETROMFONT     1
  168.  
  169.     USHORT _APICALL VioGetFont ( VIOFONTINFO far *, unsigned short );
  170.     USHORT _APICALL VioSetFont ( VIOFONTINFO far *, unsigned short );
  171.  
  172.     USHORT _APICALL VioGetCp ( unsigned short, unsigned short far *, unsigned short );
  173.     USHORT _APICALL VioSetCp ( unsigned short, unsigned short, unsigned short );
  174.  
  175.     USHORT _APICALL VioGetState ( void far *, unsigned short );
  176.     USHORT _APICALL VioSetState ( void far *, unsigned short );
  177.  
  178.  
  179. }
  180.