Fixed `make install` issues, bugs with VESA
[tpg/acess2.git] / Kernel / include / tpl_drv_video.h
index f3313f6..1be4f2b 100644 (file)
@@ -15,8 +15,6 @@
  * Writes to the driver's file while in component colour modes\r
  * must correspond to a change of the contents of the screen. The framebuffer\r
  * must start at offset 0 in the file.\r
- * In pallete colour modes the LFB is preceded by a 1024 byte pallete (allowing\r
- * room for 256 entries of 32-bits each)\r
  * Reading from the screen must either return zero, or read from the\r
  * framebuffer.\r
  * \r
@@ -104,6 +102,7 @@ enum eTplVideo_IOCtl {
         */\r
        VIDEO_IOCTL_REQLFB\r
 };\r
+#define DRV_VIDEO_IOCTLNAMES   "getset_mode", "find+mode", "mode_info", "set_buf_format", "set_cursor", "request_framebuffer"\r
 \r
 /**\r
  * \brief Mode Structure used in IOCtl Calls\r
@@ -190,6 +189,17 @@ enum eTplVideo_2DCommands
         */\r
        VIDEO_2DOP_BLIT,\r
 \r
+\r
+       /**\r
+        * \brief Copy a region from video memory to the framebuffer\r
+        */\r
+       VIDEO_2DOP_BLITBUF,\r
+\r
+       /**\r
+        * \brief Copy and scale a region from video memory to the framebuffer\r
+        */\r
+       VIDEO_2DOP_BLITSCALEBUF,\r
+\r
        NUM_VIDEO_2DOPS\r
 };\r
 \r
@@ -234,11 +244,11 @@ extern int        giVT_CharWidth;
 //! \brief Defines the height of a rendered character\r
 extern int     giVT_CharHeight;\r
 /**\r
- * \fn void VT_Font_Render(Uint32 Codepoint, void *Buffer, int Pitch, Uint32 BGC, Uint32 FGC)\r
  * \brief Driver helper that renders a character to a buffer\r
  * \param Codepoint    Unicode character to render\r
- * \param Buffer       Buffer to render to (32-bpp)\r
- * \param Pitch        Number of DWords per line\r
+ * \param Buffer       Buffer to render to\r
+ * \param Depth        Bit depth of the destination buffer\r
+ * \param Pitch        Number of bytes per line\r
  * \param BGC  32-bit Background Colour\r
  * \param FGC  32-bit Foreground Colour\r
  * \r
@@ -246,14 +256,33 @@ extern int        giVT_CharHeight;
  * text mode by keeping the character rendering abstracted from the driver,\r
  * easing the driver development and reducing code duplication.\r
  */\r
-extern void    VT_Font_Render(Uint32 Codepoint, void *Buffer, int Pitch, Uint32 BGC, Uint32 FGC);\r
+extern void    VT_Font_Render(Uint32 Codepoint, void *Buffer, int Depth, int Pitch, Uint32 BGC, Uint32 FGC);\r
 /**\r
  * \fn Uint32 VT_Colour12to24(Uint16 Col12)\r
- * \brief Converts a colour from 12bpp to 32bpp\r
+ * \brief Converts a colour from 12bpp to 24bpp\r
  * \param Col12        12-bpp input colour\r
  * \return Expanded 32-bpp (24-bit colour) version of \a Col12\r
  */\r
 extern Uint32  VT_Colour12to24(Uint16 Col12);\r
+/**\r
+ * \brief Converts a colour from 12bpp to 14bpp\r
+ * \param Col12        12-bpp input colour\r
+ * \return 15 bits per pixel value\r
+ */\r
+extern Uint16  VT_Colour12to15(Uint16 Col12);\r
+/**\r
+ * \brief Converts a colour from 12bpp to 32bpp\r
+ * \param Col12        12-bpp input colour\r
+ * \param Depth        Desired bit depth\r
+ * \return \a Depth bit number, denoting Col12\r
+ * \r
+ * Expands the source colour into a \a Depth bits per pixel representation.\r
+ * The colours are expanded with preference to Green, Blue and Red in that order\r
+ * (so, green gets the first spare pixel, blue gets the next, and red never gets\r
+ * the spare). \n\r
+ * The final bit of each component is used to fill the lower bits of the output.\r
+ */\r
+extern Uint32  VT_Colour12toN(Uint16 Col12, int Depth);\r
 \r
 /**\r
  * \brief Handlers for eTplVideo_2DCommands\r

UCC git Repository :: git.ucc.asn.au