diff options
author | cinap_lenrek <cinap_lenrek@felloff.net> | 2020-04-24 20:26:38 +0200 |
---|---|---|
committer | cinap_lenrek <cinap_lenrek@felloff.net> | 2020-04-24 20:26:38 +0200 |
commit | 4fb7462bd53daffa8376a752cc06ad7cacfa85a9 (patch) | |
tree | 98ac569d191771eb7fce343e6419643efea2f756 | |
parent | 759656ad4cc778b6cff47296b718cd388e762adc (diff) | |
download | plan9front-4fb7462bd53daffa8376a752cc06ad7cacfa85a9.tar.xz |
pc, pc64: use softscreen double buffering for *bootscreen= framebuffer
it is probably almost always a good idea to use
double buffering with a unaccelerated framebuffer.
-rw-r--r-- | sys/src/9/pc/screen.c | 11 |
1 files changed, 5 insertions, 6 deletions
diff --git a/sys/src/9/pc/screen.c b/sys/src/9/pc/screen.c index 2242494b6..e34a38297 100644 --- a/sys/src/9/pc/screen.c +++ b/sys/src/9/pc/screen.c @@ -573,7 +573,6 @@ Next: void bootscreeninit(void) { - static Memdata md; VGAscr *scr; int x, y, z; ulong chan, pa, sz; @@ -622,9 +621,7 @@ bootscreeninit(void) if(memimageinit() < 0) return; - md.ref = 1; - md.bdata = scr->vaddr; - gscreen = allocmemimaged(Rect(0,0,x,y), chan, &md); + gscreen = allocmemimage(Rect(0,0,x,y), chan); if(gscreen == nil) return; @@ -632,8 +629,8 @@ bootscreeninit(void) scr->memdefont = getmemdefont(); scr->gscreen = gscreen; scr->gscreendata = gscreen->data; - scr->softscreen = 0; - scr->useflush = 0; + scr->softscreen = 1; + scr->useflush = 1; scr->dev = nil; physgscreenr = gscreen->r; @@ -641,6 +638,8 @@ bootscreeninit(void) vgaimageinit(chan); vgascreenwin(scr); + drawcmap(); + scr->cur = &vgasoftcur; scr->cur->enable(scr); |