#include #include #include #include int main(int argc, char** argv) { int h,r; struct fb_fix_screeninfo fix; struct fb_var_screeninfo var; h = open("/dev/fb0",O_RDONLY); if (h==-1) { printf("could not open /dev/fb0; are you root?\n"); exit(0); } r = ioctl(h,FBIOGET_FSCREENINFO,&fix); if (r==0) { printf("frame buffer: %s\n",fix.id); printf("video memory: %p\n",fix.smem_start); printf("video length: %p\n",fix.smem_len); printf("io registers: %p\n",fix.mmio_start); printf("scan line: %d bytes\n",fix.line_length); } else { printf("ioctl failed with %d, errno %d\n",r, errno); } r = ioctl(h,FBIOGET_VSCREENINFO,&var); if (r==0) { printf("resolution: %d by %d\n",var.xres,var.yres); printf("virtual res: %d by %d\n",var.xres_virtual,var.yres_virtual); printf("screen shift: %d, %d\n",var.xoffset,var.yoffset); printf("bits per pixel: %d\n",var.bits_per_pixel); } else { printf("ioctl failed with %d, errno %d\n",r,errno); } close(h); }