Merge branch 'master' of git://git.ucc.asn.au/tpg/acess2
[tpg/acess2.git] / Kernel / include / api_drv_video.h
index 1a5fe6a..ff9c395 100644 (file)
@@ -371,10 +371,26 @@ typedef struct sDrvUtil_Video_BufInfo
         * \}\r
         */\r
 \r
+       /*\r
+        * \name Internal fields\r
+        * \{\r
+        */\r
+\r
        /**\r
         * \brief Buffer to store the area under the cursor\r
         */\r
        void    *CursorSaveBuf;\r
+       \r
+        int    CursorReadX;    //!< X offset in cursor bitmap corresponding to \a CursorDestX\r
+        int    CursorReadY;    //!< Same as \a CursorReadX but for Y\r
+        int    CursorRenderW;  //!< Width of rendered cursor\r
+        int    CursorRenderH;  //!< Height of rendered cursor\r
+        int    CursorDestX;    //!< X coordinate Destination for rendered cursor\r
+        int    CursorDestY;    //!< Y coordinate destination for rendered cursor\r
+\r
+       /*\r
+        * \}\r
+        */\r
 } tDrvUtil_Video_BufInfo;\r
 \r
 /**\r
@@ -419,7 +435,7 @@ typedef struct sDrvUtil_Video_2DHandlers
  * \param SizeofHandlers       Size of \a tDrvUtil_Video_2DHandlers according\r
  *        to the driver. Used as version control and error avoidence.\r
  */\r
-extern int     DrvUtil_Video_2DStream(void *Ent, void *Buffer, int Length,\r
+extern int     DrvUtil_Video_2DStream(void *Ent, const void *Buffer, int Length,\r
        tDrvUtil_Video_2DHandlers *Handlers, int SizeofHandlers);\r
 \r
 /**\r
@@ -433,7 +449,7 @@ extern int  DrvUtil_Video_2DStream(void *Ent, void *Buffer, int Length,
  * Handles all write modes in software, using the VT font calls for rendering.\r
  * \note Calls the cursor clear and redraw if the cursor area is touched\r
  */\r
-extern int     DrvUtil_Video_WriteLFB(tDrvUtil_Video_BufInfo *FBInfo, size_t Offset, size_t Length, void *Src);\r
+extern int     DrvUtil_Video_WriteLFB(tDrvUtil_Video_BufInfo *FBInfo, size_t Offset, size_t Length, const void *Src);\r
 \r
 /**\r
  * \name Software cursor rendering\r
@@ -444,7 +460,7 @@ extern int  DrvUtil_Video_WriteLFB(tDrvUtil_Video_BufInfo *FBInfo, size_t Offset,
  * \param Buf  Framebuffer descriptor\r
  * \param Bitmap       New cursor bitmap\r
  */\r
-extern void    DrvUtil_Video_SetCursor(tDrvUtil_Video_BufInfo *Buf, tVideo_IOCtl_Bitmap *Bitmap);\r
+extern int     DrvUtil_Video_SetCursor(tDrvUtil_Video_BufInfo *Buf, tVideo_IOCtl_Bitmap *Bitmap);\r
 /**\r
  * \brief Render the cursor at (\a X, \a Y)\r
  * \param Buf  Framebuffer descriptor, see type for details\r
@@ -457,6 +473,11 @@ extern void        DrvUtil_Video_DrawCursor(tDrvUtil_Video_BufInfo *Buf, int X, int Y);
  * \param Buf  Framebuffer descriptor, see type for details\r
  */\r
 extern void    DrvUtil_Video_RemoveCursor(tDrvUtil_Video_BufInfo *Buf);\r
+\r
+/**\r
+ * \brief Text mode cursor image\r
+ */\r
+extern tVideo_IOCtl_Bitmap     gDrvUtil_TextModeCursor;\r
 /**\r
  * \}\r
  */\r

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