From 50bea0348ce8f8af3ad506affe256d22e4ffdeab Mon Sep 17 00:00:00 2001 From: cinap_lenrek Date: Sat, 23 Dec 2017 03:56:12 +0100 Subject: [PATCH] kernel: convert textmode cga screen contents to kmesg only once screeninit() might be called again by devvga when switching to textmode, so only convert the text framebuffer to kmesg the first time. --- sys/src/9/pc/cga.c | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/sys/src/9/pc/cga.c b/sys/src/9/pc/cga.c index 528db05f4..824cd62eb 100644 --- a/sys/src/9/pc/cga.c +++ b/sys/src/9/pc/cga.c @@ -199,6 +199,8 @@ cgatokmesg(void) void screeninit(void) { + static int once; + cgapos = cgaregr(0x0E)<<8; cgapos |= cgaregr(0x0F); cgapos *= 2; @@ -208,8 +210,10 @@ screeninit(void) movecursor(); } - cgatokmesg(); + if(once == 0){ + once = 1; + cgatokmesg(); + } screenputs = cgascreenputs; } -