Cleanups & Implementations to allow IPStack to compile
[tpg/acess2.git] / Kernel / include / tpl_drv_video.h
index b84a97e..0272078 100644 (file)
@@ -44,9 +44,8 @@ enum eTplVideo_IOCtl {
 };\r
 \r
 /**\r
- \struct sVideo_IOCtl_Mode\r
- \brief Mode Structure used in IOCtl Calls\r
-*/\r
+ * \brief Mode Structure used in IOCtl Calls\r
+ */\r
 struct sVideo_IOCtl_Mode {\r
        short   id;             //!< Mide ID\r
        Uint16  width;  //!< Width\r
@@ -55,45 +54,76 @@ struct sVideo_IOCtl_Mode {
        Uint8   flags;  //!< Mode Flags\r
 };\r
 typedef struct sVideo_IOCtl_Mode       tVideo_IOCtl_Mode;      //!< Mode Type\r
+\r
+//! \name Video Mode flags\r
+//! \{\r
 /**\r
  * \brief Text Mode Flag\r
  * \note A text mode should have the ::sVideo_IOCtl_Mode.bpp set to 12\r
  */\r
 #define VIDEO_FLAG_TEXT        0x1\r
-#define VIDEO_FLAG_SLOW        0x2     //!< Non-accelerated mode\r
+/**\r
+ * \brief Slow (non-accellerated mode)\r
+ */\r
+#define VIDEO_FLAG_SLOW        0x2\r
+//! \}\r
 \r
-typedef struct sVideo_IOCtl_Pos        tVideo_IOCtl_Pos;       //!< Position Type\r
 /**\r
+ * \brief Describes a position in the video framebuffer\r
  */\r
+typedef struct sVideo_IOCtl_Pos        tVideo_IOCtl_Pos;\r
 struct sVideo_IOCtl_Pos {\r
        Sint16  x;      //!< X Coordinate\r
        Sint16  y;      //!< Y Coordinate\r
 };\r
 \r
 /**\r
- * \struct sVT_Char\r
  * \brief Virtual Terminal Representation of a character\r
  */\r
+typedef struct sVT_Char        tVT_Char;\r
 struct sVT_Char {\r
-       Uint32  Ch;\r
+       Uint32  Ch;     //!< UTF-32 Character\r
        union {\r
                struct {\r
-                       Uint16  BGCol;\r
-                       Uint16  FGCol;\r
+                       Uint16  BGCol;  //!< 12-bit Foreground Colour\r
+                       Uint16  FGCol;  //!< 12-bit Background Colour\r
                };\r
-               Uint32  Colour;\r
+               Uint32  Colour; //!< Compound colour for ease of access\r
        };\r
 };\r
-typedef struct sVT_Char        tVT_Char;\r
 \r
+/**\r
+ * \name Basic builtin colour definitions\r
+ * \{\r
+ */\r
 #define        VT_COL_BLACK    0x0000\r
 #define        VT_COL_GREY             0x0888\r
 #define        VT_COL_LTGREY   0x0CCC\r
 #define        VT_COL_WHITE    0x0FFF\r
+/**\r
+ * \}\r
+ */\r
 \r
+//! \brief Defines the width of a rendered character\r
 extern int     giVT_CharWidth;\r
+//! \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 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 BGC  32-bit Background Colour\r
+ * \param FGC  32-bit Foreground Colour\r
+ */\r
 extern void    VT_Font_Render(Uint32 Codepoint, void *Buffer, int Pitch, Uint32 BGC, Uint32 FGC);\r
+/**\r
+ * \fn Uint32 VT_Colour12to24(Uint16 Col12)\r
+ * \brief Converts a colour from 12bpp to 32bpp\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
 #endif\r

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