mirror of https://github.com/mpv-player/mpv
mode selection (subdev) fix by Matan Ziv-Av matan@svgalib.org
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@2983 b3059339-0415-0410-9bf9-f77b7e298cf2
This commit is contained in:
parent
cedb85f6f2
commit
92b3c286f9
|
@ -285,14 +285,48 @@ static uint32_t init(uint32_t width, uint32_t height, uint32_t d_width,
|
||||||
list = list->next;
|
list = list->next;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if(vo_subdevice) {
|
||||||
|
int vm;
|
||||||
|
vm=vga_getmodenumber(vo_subdevice);
|
||||||
|
list=modelist;
|
||||||
|
while(list) {
|
||||||
|
if(list->modenum == vm) {
|
||||||
|
buf_w = list->modeinfo.width;
|
||||||
|
buf_h = list->modeinfo.height;
|
||||||
|
res_widescr = (((buf_w*1.0)/buf_h) > (4.0/3)) ? 1 : 0;
|
||||||
|
switch(list->modeinfo.colors) {
|
||||||
|
case 32768:
|
||||||
|
bpp=16;
|
||||||
|
bpp_conv=1;
|
||||||
|
break;
|
||||||
|
case 65536:
|
||||||
|
bpp=16;
|
||||||
|
bpp_conv=0;
|
||||||
|
break;
|
||||||
|
case (1<<24):
|
||||||
|
if(list->modeinfo.bytesperpixel == 3) {
|
||||||
|
bpp=32;
|
||||||
|
bpp_conv=1;
|
||||||
|
} else {
|
||||||
|
bpp=32;
|
||||||
|
bpp_conv=0;
|
||||||
|
}
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
vid_mode=vm;
|
||||||
|
list=NULL;
|
||||||
|
} else list=list->next;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
if (verbose)
|
if (verbose)
|
||||||
printf("vo_svga: vid_mode: %d\n",vid_mode);
|
printf("vo_svga: vid_mode: %d\n",vid_mode);
|
||||||
vga_setlinearaddressing();
|
|
||||||
if (vga_setmode(vid_mode) == -1) {
|
if (vga_setmode(vid_mode) == -1) {
|
||||||
printf("vo_svga: vga_setmode(%d) failed.\n",vid_mode);
|
printf("vo_svga: vga_setmode(%d) failed.\n",vid_mode);
|
||||||
uninit();
|
uninit();
|
||||||
return(1); // error
|
return(1); // error
|
||||||
}
|
}
|
||||||
|
vga_setlinearaddressing();
|
||||||
if (gl_setcontextvga(vid_mode)) {
|
if (gl_setcontextvga(vid_mode)) {
|
||||||
printf("vo_svga: gl_setcontextvga(%d) failed.\n",vid_mode);
|
printf("vo_svga: gl_setcontextvga(%d) failed.\n",vid_mode);
|
||||||
uninit();
|
uninit();
|
||||||
|
|
Loading…
Reference in New Issue