mirror of
git://projects.qi-hardware.com/openwrt-packages.git
synced 2025-04-21 12:27:27 +03:00
Port of SVGAlib; patched to only use the linux frame buffer
Try the svgalib-demo programs: vgatest, speedtest etc. seem to work.
This commit is contained in:
24
svgalib/patches/100-fbdev-setpage.patch
Normal file
24
svgalib/patches/100-fbdev-setpage.patch
Normal file
@@ -0,0 +1,24 @@
|
||||
Index: svgalib-1.4.3/src/fbdev.c
|
||||
===================================================================
|
||||
--- svgalib-1.4.3.orig/src/fbdev.c 2011-01-06 14:24:59.000000000 +0100
|
||||
+++ svgalib-1.4.3/src/fbdev.c 2011-01-06 14:27:39.000000000 +0100
|
||||
@@ -141,9 +141,17 @@
|
||||
if (page != oldpage)
|
||||
{
|
||||
// munmap(BANKED_MEM_POINTER, __svgalib_banked_mem_size);
|
||||
- mmap(BANKED_MEM_POINTER, __svgalib_banked_mem_size,
|
||||
+ long size = __svgalib_banked_mem_size;
|
||||
+ long offs = page * __svgalib_banked_mem_size;
|
||||
+ if (size + offs > __svgalib_linear_mem_size)
|
||||
+ size = __svgalib_linear_mem_size - offs;
|
||||
+ if (size <= 0) {
|
||||
+ fprintf (stderr, "invalid page %i requested", page);
|
||||
+ }
|
||||
+
|
||||
+ mmap(BANKED_MEM_POINTER, size,
|
||||
PROT_READ | PROT_WRITE, MAP_SHARED | MAP_FIXED,
|
||||
- fbdev_fd, page * __svgalib_banked_mem_size);
|
||||
+ fbdev_fd, offs);
|
||||
oldpage = page;
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user