break;\r
\r
case VIDEO_IOCTL_SETBUFFORMAT:\r
+ DrvUtil_Video_RemoveCursor( &gBGA_DrvUtil_BufInfo );\r
ret = gBGA_DrvUtil_BufInfo.BufferFormat;\r
if(Data)\r
gBGA_DrvUtil_BufInfo.BufferFormat = *(int*)Data;\r
+ if(gBGA_DrvUtil_BufInfo.BufferFormat == VIDEO_BUFFMT_TEXT)\r
+ DrvUtil_Video_SetCursor( &gBGA_DrvUtil_BufInfo, &gDrvUtil_TextModeCursor );\r
break;\r
\r
case VIDEO_IOCTL_SETCURSOR:\r
+ DrvUtil_Video_RemoveCursor( &gBGA_DrvUtil_BufInfo );\r
gBGA_CursorPos.x = ((tVideo_IOCtl_Pos*)Data)->x;\r
gBGA_CursorPos.y = ((tVideo_IOCtl_Pos*)Data)->y;\r
+ if(gBGA_DrvUtil_BufInfo.BufferFormat == VIDEO_BUFFMT_TEXT)\r
+ DrvUtil_Video_DrawCursor(\r
+ &gBGA_DrvUtil_BufInfo,\r
+ gBGA_CursorPos.x*giVT_CharWidth,\r
+ gBGA_CursorPos.y*giVT_CharHeight\r
+ );\r
+ else\r
+ DrvUtil_Video_DrawCursor(\r
+ &gBGA_DrvUtil_BufInfo,\r
+ gBGA_CursorPos.x, gBGA_CursorPos.y\r
+ );\r
break;\r
\r
default:\r
BGA_int_WriteRegister(VBE_DISPI_INDEX_YRES, Height);\r
BGA_int_WriteRegister(VBE_DISPI_INDEX_BPP, 32);\r
BGA_int_WriteRegister(VBE_DISPI_INDEX_ENABLE, VBE_DISPI_ENABLED | VBE_DISPI_NOCLEARMEM | VBE_DISPI_LFB_ENABLED);\r
- MAGIC_BREAK();\r
LEAVE('-');\r
}\r
\r