comparison libvo/vo_fbdev.c @ 245:cb4c682746c0

disabled scrollback buffer (virtual fb size set to real screen size)
author szabii
date Thu, 29 Mar 2001 13:58:54 +0000
parents 0e430b433f63
children 5673f9146c54
comparison
equal deleted inserted replaced
244:1c3029be6713 245:cb4c682746c0
105 } 105 }
106 #endif 106 #endif
107 if (!fb_dev_name && !(fb_dev_name = getenv("FRAMEBUFFER"))) 107 if (!fb_dev_name && !(fb_dev_name = getenv("FRAMEBUFFER")))
108 fb_dev_name = "/dev/fb0"; 108 fb_dev_name = "/dev/fb0";
109 printf("fb_init: using %s\n", fb_dev_name); 109 printf("fb_init: using %s\n", fb_dev_name);
110
110 if ((fb_dev_fd = open(fb_dev_name, O_RDWR)) == -1) { 111 if ((fb_dev_fd = open(fb_dev_name, O_RDWR)) == -1) {
111 printf("fb_init: Can't open %s: %s\n", fb_dev_name, strerror(errno)); 112 printf("fb_init: Can't open %s: %s\n", fb_dev_name, strerror(errno));
112 return 1; 113 return 1;
113 } 114 }
115
114 if (ioctl(fb_dev_fd, FBIOGET_VSCREENINFO, &fb_var_info)) { 116 if (ioctl(fb_dev_fd, FBIOGET_VSCREENINFO, &fb_var_info)) {
115 printf("fb_init: Can't get VSCREENINFO: %s\n", strerror(errno)); 117 printf("fb_init: Can't get VSCREENINFO: %s\n", strerror(errno));
116 return 1; 118 return 1;
117 } 119 }
120
121 /* disable scrolling */
122 fb_var_info.xres_virtual = fb_var_info.xres;
123 fb_var_info.yres_virtual = fb_var_info.yres;
124
125 if (ioctl(fb_dev_fd, FBIOPUT_VSCREENINFO, &fb_var_info)) {
126 printf("fb_init: Can't put VSCREENINFO: %s\n", strerror(errno));
127 return 1;
128 }
129
118 if (ioctl(fb_dev_fd, FBIOGET_FSCREENINFO, &fb_fix_info)) { 130 if (ioctl(fb_dev_fd, FBIOGET_FSCREENINFO, &fb_fix_info)) {
119 printf("fb_init: Can't get VSCREENINFO: %s\n", strerror(errno)); 131 printf("fb_init: Can't get VSCREENINFO: %s\n", strerror(errno));
120 return 1; 132 return 1;
121 } 133 }
122 switch (fb_fix_info.type) { 134 switch (fb_fix_info.type) {
143 printf("fb_init: FB_TYPE_PACKED_PIXELS: OK\n"); 155 printf("fb_init: FB_TYPE_PACKED_PIXELS: OK\n");
144 break; 156 break;
145 default: 157 default:
146 printf("fb_init: unknown FB_TYPE: %d\n", fb_fix_info.type); 158 printf("fb_init: unknown FB_TYPE: %d\n", fb_fix_info.type);
147 return 1; 159 return 1;
148 } 160 }
161
149 fb_bpp = fb_var_info.bits_per_pixel; 162 fb_bpp = fb_var_info.bits_per_pixel;
150 screen_width = fb_fix_info.line_length; 163 screen_width = fb_fix_info.line_length;
151 fb_size = fb_fix_info.smem_len; 164 fb_size = fb_fix_info.smem_len;
152 if ((frame_buffer = (uint8_t *) mmap(0, fb_size, PROT_READ | PROT_WRITE, 165 if ((frame_buffer = (uint8_t *) mmap(0, fb_size, PROT_READ | PROT_WRITE,
153 MAP_SHARED, fb_dev_fd, 0)) == (uint8_t *) -1) { 166 MAP_SHARED, fb_dev_fd, 0)) == (uint8_t *) -1) {