X-Git-Url: http://v3vee.org/palacios/gitweb/gitweb.cgi?a=blobdiff_plain;f=palacios%2Fsrc%2Fpalacios%2Fvmm_console.c;h=9ecf7803f8c3ca033ae0db80969c288d0e260823;hb=cb991b28aeea489c74e7f2f024a1de88da4a9d1c;hp=ef142b9c4100abbe72c4a51ab259fb50b77281f7;hpb=cbb6723fe28e2e448982d6b2ff444c05ea54a618;p=palacios.git diff --git a/palacios/src/palacios/vmm_console.c b/palacios/src/palacios/vmm_console.c index ef142b9..9ecf780 100644 --- a/palacios/src/palacios/vmm_console.c +++ b/palacios/src/palacios/vmm_console.c @@ -24,10 +24,48 @@ #include #include #include - +#include struct v3_console_hooks * console_hooks = 0; +v3_console_t v3_console_open(struct v3_vm_info * vm, uint32_t width, uint32_t height) { + V3_ASSERT(console_hooks != NULL); + V3_ASSERT(console_hooks->open != NULL); + + return console_hooks->open(vm->host_priv_data, width, height); +} + + +int v3_console_set_cursor(v3_console_t cons, int x, int y) { + V3_ASSERT(console_hooks != NULL); + V3_ASSERT(console_hooks->set_cursor != NULL); + + return console_hooks->set_cursor(cons, x, y); +} + +int v3_console_set_char(v3_console_t cons, int x, int y, char c, uint8_t style) { + V3_ASSERT(console_hooks != NULL); + V3_ASSERT(console_hooks->set_character != NULL); + + return console_hooks->set_character(cons, x, y, c, style); +} + + +int v3_console_scroll(v3_console_t cons, int lines) { + V3_ASSERT(console_hooks != NULL); + V3_ASSERT(console_hooks->scroll != NULL); + + return console_hooks->scroll(cons, lines); +} + + +int v3_console_update(v3_console_t cons) { + V3_ASSERT(console_hooks != NULL); + V3_ASSERT(console_hooks->update != NULL); + + return console_hooks->update(cons); +} + void V3_Init_Console(struct v3_console_hooks * hooks) { console_hooks = hooks; PrintDebug("V3 console inited\n");