home *** CD-ROM | disk | FTP | other *** search
/ OS/2 Shareware BBS: 10 Tools / 10-Tools.zip / ddkx86v2.zip / DDKX86 / DBCSDD / H_DBCS / VFNTV.H < prev    next >
Text File  |  1995-04-14  |  5KB  |  132 lines

  1. /*DDK*************************************************************************/
  2. /*                                                                           */
  3. /* COPYRIGHT (C) Microsoft Corporation, 1989                                 */
  4. /* COPYRIGHT    Copyright (C) 1995 IBM Corporation                           */
  5. /*                                                                           */
  6. /*    The following IBM OS/2 WARP source code is provided to you solely for  */
  7. /*    the purpose of assisting you in your development of OS/2 WARP device   */
  8. /*    drivers. You may use this code in accordance with the IBM License      */
  9. /*    Agreement provided in the IBM Device Driver Source Kit for OS/2. This  */
  10. /*    Copyright statement may not be removed.                                */
  11. /*                                                                           */
  12. /*****************************************************************************/
  13. /*static char *SCCSID = "@(#)vfntv.h    6.0 91/07/08";*/
  14. /***    Virtual Font External Definitions
  15.  *
  16.  *      SCCSID = @(#)vfntv.h    6.0 91/07/08
  17.  *
  18.  *
  19.  *
  20.  *
  21.  *      DESCRIPTION
  22.  *      VFNTV externally defined constants, types, and function prototypes
  23.  *
  24.  *      MODIFICATION HISTORY
  25.  *      07/08/91    J-TS00  Created.
  26.  *      07/12/93    J-TS288 DCR 288.1 JIS'90 support
  27.  *      08/05/93    J-TS269 DCT 269 VTEXT support
  28.  */
  29.  
  30. // Font size definition
  31.  
  32. #define DBCS24_FONT_SIZE                72
  33. #define DBCS16_FONT_SIZE                32
  34. #define SBCS16_FONT_SIZE                16
  35. #define SBCS19_FONT_SIZE                19
  36.  
  37.  
  38. // VDD name definition
  39.  
  40. #define VFNTV_NAME                      "VFNTV$"
  41.  
  42.  
  43. // Interface definition between VDD-VDD
  44.  
  45. #define VFSYSREQ_GET_ENTRY              0
  46.  
  47. #define VFNTV_FUNC_ENTRY_COUNT          7
  48.  
  49. #define VFNTV_FUNC_GET_SBCS16_BUF       0
  50. #define VFNTV_FUNC_GET_DBCS16_FONT      1
  51. #define VFNTV_FUNC_GET_DBCS24_FONT      2
  52.  
  53.  
  54. // Mapped font definition                                           //J-TS288
  55.                                                                     //J-TS288
  56. typedef struct {                                                    //J-TS288
  57.     USHORT IntCode;                         // Internal PC code     //J-TS288
  58.     UCHAR  FontImage[DBCS16_FONT_SIZE];     // font image           //J-TS288
  59. } MAPPED_FONT;                                                      //J-TS288
  60.  
  61.  
  62. //  Interface definition between VDD-Protect mode process
  63.  
  64.                     // acknowledgement definition from monitor to VDD
  65. #define VFNT_ACK_WAIT_EVENT             0
  66. #define VFNT_ACK_GIVE_ALL_FONT          1
  67. #define VFNT_ACK_GIVE_ONE_FONT          2
  68. #define VFNT_ACK_FREE_ALL_FONT          3                           //J-TS269
  69.  
  70.                     // request definition from VDD to monitor
  71. #define VFNT_EVENT_ALL_FONT             0
  72. #define VFNT_EVENT_ONE_FONT             1
  73. #define VFNT_EVENT_FREE_ALL_FONT        2
  74.  
  75. // event parameter definition
  76.  
  77. typedef struct {                                // VFNT_EVENT_ONE_FONT parameter
  78.     USHORT row;
  79.     USHORT col;
  80.     USHORT code;
  81. } REQ_ONE_FONT;
  82.  
  83. typedef struct {                // VFNT_EVENT_ALL_FONT param        //J-TS269
  84.     USHORT size;                                                    //J-TS269
  85. } REQ_ALL_FONT;                                                     //J-TS269
  86.  
  87. typedef struct {                // VFNT_EVENT_FREE_ALL_FONT param   //J-TS269
  88.     USHORT size;                                                    //J-TS269
  89. } REQ_FREE_FONT;                                                    //J-TS269
  90.  
  91. typedef struct {                                // universal event definition
  92.     USHORT request;
  93.     union {
  94.         REQ_ONE_FONT  OneFont;
  95.         REQ_ALL_FONT  AllFont;                                      //J-TS269
  96.         REQ_FREE_FONT FreeFont;                                     //J-TS269
  97.     } param;
  98. } VFNT_EVENT;
  99.  
  100. // acknowledgement definition
  101.  
  102. typedef struct {                                // VFNT_ACK_GIVE_ALL_FONT parameter
  103.     ULONG   SBCSFont;
  104.     ULONG   DBCSIndex;
  105.     ULONG   DBCSExistFlag;
  106.     ULONG   DBCSSel;
  107.     USHORT  SegCnt;
  108.     USHORT  SegSize;
  109.     USHORT  LastSize;
  110.     UCHAR   DBCSVector[4];
  111.     UCHAR   DBCSUser[2];
  112.     USHORT  RomFontExist;
  113.     ULONG   RomFontWindow;
  114.     ULONG   RomDBCSTable;
  115.     ULONG   MapFileBuf;                                             //J-TS288
  116.     USHORT  MapFileSize;                                            //J-TS288
  117.     USHORT  MapFontCnt;                                             //J-TS288
  118.     USHORT  FontSize;                                               //J-TS269
  119. } ALL_FONT;
  120.  
  121. typedef struct {                                // VFNT_ACK_GIVE_ONE_FONT parameter
  122.     UCHAR  FontImage[DBCS24_FONT_SIZE];
  123. } ONE_FONT;
  124.  
  125. typedef struct {                                // universal acknowledgement definition
  126.     USHORT RetCode;
  127.     union {
  128.         ONE_FONT OneFont;
  129.         ALL_FONT AllFont;
  130.     } param;
  131. } VFNT_ACK;
  132.