add functions to query cursor position to video layer

Signed-off-by: Stefan Reinauer <stepan@coresystems.de>


Index: include/libpayload.h
===================================================================
--- include/libpayload.h	(revision 3519)
+++ include/libpayload.h	(working copy)
@@ -120,7 +124,12 @@
 void video_console_putc(u8 row, u8 col, unsigned int ch);
 void video_console_clear(void);
 void video_console_cursor_enable(int state);
+void video_console_get_cursor(unsigned int *x, unsigned int *y, unsigned int *en);
+void video_console_set_cursor(unsigned int cursorx, unsigned int cursory);
 
+/* drivers/option.c */
+int get_option(void *dest, char *name);
+
 /* libc/console.c */
 void console_init(void);
 int putchar(int c);
Index: drivers/video/video.c
===================================================================
--- drivers/video/video.c	(revision 3519)
+++ drivers/video/video.c	(working copy)
@@ -141,6 +141,26 @@
 	video_console_fixup_cursor();
 }
 
+void video_console_get_cursor(unsigned int *x, unsigned int *y, unsigned int *en)
+{
+	*x=0;
+	*y=0;
+	*en=0;
+
+	if (console->get_cursor)
+		console->get_cursor(x, y, en);
+
+	*x = cursorx;
+	*y = cursory;
+}
+
+void video_console_set_cursor(unsigned int x, unsigned int y)
+{
+	cursorx = x;
+	cursory = y;
+	video_console_fixup_cursor();
+}
+
 int video_console_init(void)
 {
 		int i;
