Enable -display to be used to specify the /devb/fbX framebuffer device when using fb driver. Also, when using fb driver, FRAMEBUFFER will be used if set. Order of precedence: -display, then FRAMEBUFFER, then /dev/fb0 James 2015.08 diff -ur links-2.10-old/default.c links-2.10/default.c --- links-2.10-old/default.c 2015-06-21 00:39:44.000000000 +1000 +++ links-2.10/default.c 2015-08-20 23:45:13.144600193 +1000 @@ -1507,7 +1507,8 @@ " For Xwindow it is size of a window in format WIDTHxHEIGHT.\n" "\n" " -display \n" -" Set Xwindow display.\n" +" Set Xwindow display. For fb driver, set the framebuffer (/dev/fbX) to use.\n" +" Framebuffer can also be set using environment FRAMEBUFFER.\n" "\n" " -force-html\n" " Treat files with unknown type as html rather than text.\n" Only in links-2.10: default.c.orig diff -ur links-2.10-old/framebuf.c links-2.10/framebuf.c --- links-2.10-old/framebuf.c 2015-07-04 22:37:20.000000000 +1000 +++ links-2.10/framebuf.c 2015-08-20 23:48:20.814601424 +1000 @@ -115,6 +115,7 @@ static void fb_draw_bitmap(struct graphics_device *dev,struct bitmap* hndl, int x, int y); static unsigned char *fb_driver_param; +static unsigned char *fb_fbdev; /* /dev/fbXXX fbdev to use */ extern struct graphics_driver fb_driver; static int have_cmap; static volatile int fb_active; @@ -1091,7 +1092,7 @@ /* don't check error */ } -static unsigned char *fb_init_driver(unsigned char *param, unsigned char *ignore) +static unsigned char *fb_init_driver(unsigned char *param, unsigned char *fbdev) { unsigned char *e; struct stat st; @@ -1174,12 +1175,17 @@ return e; } - fb_handle = c_open(cast_uchar "/dev/fb0", O_RDWR | O_NOCTTY); + /* james: choose which fbdev to use */ + if (fbdev && *fbdev) fb_fbdev=stracpy(fbdev); + else fb_fbdev=stracpy(cast_uchar getenv("FRAMEBUFFER")); + if (!fb_fbdev || !*fb_fbdev) fb_fbdev=stracpy(cast_uchar "/dev/fb0"); + + fb_handle = c_open(fb_fbdev, O_RDWR | O_NOCTTY); if (fb_handle==-1) { fb_switch_shutdown(); if(fb_driver_param) { mem_free(fb_driver_param); fb_driver_param=NULL; } fb_show_cursor(); - return stracpy(cast_uchar "Cannot open /dev/fb0.\n"); + return stracpy(cast_uchar "Cannot open framebuffer device.\n"); } EINTRLOOP(rs, ioctl(fb_handle, FBIOGET_VSCREENINFO, &vi)); Only in links-2.10: framebuf.c.orig Only in links-2.10: framebuf.c.rej diff -ur links-2.10-old/links.1 links-2.10/links.1 --- links-2.10-old/links.1 2015-02-01 18:41:29.000000000 +1100 +++ links-2.10/links.1 2015-08-20 23:45:13.144600193 +1000 @@ -64,7 +64,8 @@ .TP \f3-display \f2\f1 -Set Xwindow display. +Set Xwindow display. For fb driver, set the framebuffer (/dev/fbX) to use. +Framebuffer can also be set using environment FRAMEBUFFER. .TP \f3-force-html\f1