home *** CD-ROM | disk | FTP | other *** search
/ Media Share 9 / MEDIASHARE_09.ISO / pascal / vdl020d.zip / VFONT.DOC < prev    next >
Text File  |  1993-04-14  |  5KB  |  256 lines

  1. {
  2.  ════════════════════════════════════════════════════════════════════════════
  3.  
  4.  Visionix EGA/VGA Font Manipulation Unit (VFONT)
  5.  Copyright 1991,92,93 Visionix
  6.  ALL RIGHTS RESERVED
  7.  
  8.  ────────────────────────────────────────────────────────────────────────────
  9.  
  10.  Revision history in reverse chronological order:
  11.  
  12.  Initials  Date      Comment
  13.  ────────  ────────  ────────────────────────────────────────────────────────
  14.  
  15.  lpg       03/15/93  Added Source Documentation
  16.  
  17.  mep       02/11/93  Cleaned up code for beta release
  18.  
  19.  jrt       02/08/93  Sync with beta 0.12 release
  20.  
  21.  jrt       12/15/92  Updated to work in protected mode for BP 7.0
  22.  
  23.  jrt       12/07/92  Sync with beta 0.11 release
  24.  
  25.  jrt       11/25/92  Moved VFontVGAWidthSet to here from VCRT.
  26.                      Wrote template for VFontDefaultLoad.
  27.                      Rename VPutFont/VGetFont to VFontPut/VFontGet.
  28.  
  29.  jrt       11/21/92  Sync with beta 0.08
  30.  
  31.  jrt       09/01/92  First logged revision.
  32.  
  33.  ════════════════════════════════════════════════════════════════════════════
  34. }
  35.  
  36. Unit VFont;
  37.  
  38.  
  39. Uses
  40.  
  41.   DOS,
  42.   VDPMI,
  43.   VEQUIP;
  44.  
  45. {────────────────────────────────────────────────────────────────────────────}
  46.  
  47. Const
  48.  
  49.   Font_EGA_8x14 = 2;
  50.   Font_VGA_8x16 = 6;
  51.  
  52.  
  53. Procedure VFontGet(      FontType              : BYTE;
  54.                      Var BytesPerChar          : BYTE;
  55.                      Var Table                 : POINTER     );
  56.  
  57. Procedure VFontPut(      StartChar             : WORD;
  58.                          NumChars              : WORD;
  59.                          BytesPerChar          : BYTE;
  60.                          Table                 : POINTER      );
  61.  
  62. Procedure VFontROM8x16Load;
  63.  
  64. Procedure VFontROM8x14Load;
  65.  
  66. Procedure VFontROM8x8Load;
  67.  
  68. Procedure VFontDefaultLoad;
  69.  
  70. Procedure VFontVGAWidthSet(       CharWidth    : BYTE           );
  71.  
  72.  
  73. {────────────────────────────────────────────────────────────────────────────}
  74.  
  75.  
  76. ──────────────────────────────────────────────────────────────────────────────
  77.  
  78.  
  79. [FUNCTION]
  80.  
  81. Procedure VFontGet(     FontType              : BYTE;
  82.                     Var BytesPerChar          : BYTE;
  83.                     Var Table                 : POINTER     );
  84.  
  85. [PARAMETERS]
  86.  
  87. FontType     ?
  88. BytesPerChar VAR Returned Bytes Per Character
  89. Table        VAR Returned Pointer to Font Bit-Map Table
  90.  
  91. [RETURNS]
  92.  
  93. Function : None
  94. (VAR     : [BytesPerChar] Bytes Per Character)
  95. (VAR     : [Table] Pointer to Font Bit-Map Table)
  96.  
  97. [DESCRIPTION]
  98.  
  99.   { gets font bit-map data from the display card }
  100.  
  101. [SEE-ALSO]
  102.  
  103. [EXAMPLE]
  104.  
  105.  
  106. ──────────────────────────────────────────────────────────────────────────────
  107.  
  108.  
  109. [FUNCTION]
  110.  
  111. Procedure VFontPut(     StartChar             : WORD;
  112.                         NumChars              : WORD;
  113.                         BytesPerChar          : BYTE;
  114.                         Table                 : POINTER      );
  115.  
  116. [PARAMETERS]
  117.  
  118. StartChar    Starting Character Number
  119. NumChars     Number of Characters in Table
  120. BytesPerChar Number of Bytes Per Character
  121. Table        Pointer to Font Bit-Mapped Table
  122.  
  123. [RETURNS]
  124.  
  125. (None)
  126.  
  127. [DESCRIPTION]
  128.  
  129.   { changes the display cards font bit-map data }
  130.   { redefines the font }
  131.  
  132. [SEE-ALSO]
  133.  
  134. [EXAMPLE]
  135.  
  136.  
  137. ──────────────────────────────────────────────────────────────────────────────
  138.  
  139.  
  140. [FUNCTION]
  141.  
  142. Procedure VFontROM8x16Load;
  143.  
  144. [PARAMETERS]
  145.  
  146. (None)
  147.  
  148. [RETURNS]
  149.  
  150. (None)
  151.  
  152. [DESCRIPTION]
  153.  
  154.   { loads the ROM based 8x16 pixel font }
  155.  
  156. [SEE-ALSO]
  157.  
  158. [EXAMPLE]
  159.  
  160.  
  161. ──────────────────────────────────────────────────────────────────────────────
  162.  
  163.  
  164. [FUNCTION]
  165.  
  166. Procedure VFontROM8x14Load;
  167.  
  168. [PARAMETERS]
  169.  
  170. (None)
  171.  
  172. [RETURNS]
  173.  
  174. (None)
  175.  
  176. [DESCRIPTION]
  177.  
  178.   { loads the ROM based 8x14 pixel font }
  179.  
  180. [SEE-ALSO]
  181.  
  182. [EXAMPLE]
  183.  
  184.  
  185. ──────────────────────────────────────────────────────────────────────────────
  186.  
  187.  
  188. [FUNCTION]
  189.  
  190. Procedure VFontROM8x8Load;
  191.  
  192. [PARAMETERS]
  193.  
  194. (None)
  195.  
  196. [RETURNS]
  197.  
  198. (None)
  199.  
  200. [DESCRIPTION]
  201.  
  202.   { loads the ROM based 8x8 pixel font }
  203.  
  204. [SEE-ALSO]
  205.  
  206. [EXAMPLE]
  207.  
  208.  
  209. ──────────────────────────────────────────────────────────────────────────────
  210.  
  211.  
  212. [FUNCTION]
  213.  
  214. Procedure VFontDefaultLoad;
  215.  
  216. [PARAMETERS]
  217.  
  218. (None)
  219.  
  220. [RETURNS]
  221.  
  222. (None)
  223.  
  224. [DESCRIPTION]
  225.  
  226.   { loads the default ROM based font }
  227.  
  228. [SEE-ALSO]
  229.  
  230. [EXAMPLE]
  231.  
  232.  
  233. ──────────────────────────────────────────────────────────────────────────────
  234.  
  235.  
  236. [FUNCTION]
  237.  
  238. Procedure VFontVGAWidthSet(       CharWidth      : BYTE     );
  239.  
  240. [PARAMETERS]
  241.  
  242. CharWidth   Desired Character Pixel Width
  243.  
  244. [RETURNS]
  245.  
  246. (None)
  247.  
  248. [DESCRIPTION]
  249.  
  250.   { sets the with of the font characters when in VGA text mode }
  251.  
  252. [SEE-ALSO]
  253.  
  254. [EXAMPLE]
  255.  
  256.