# HG changeset patch # User se7encode # Date 987272380 0 # Node ID 53203545daa7cb6e24cf1a956be9061fb0ec63c0 # Parent ad05b8b1aa7e7887088463128e8ddcf5a7c4e796 -bpp added. diff -r ad05b8b1aa7e -r 53203545daa7 libvo/vo_svga.c --- a/libvo/vo_svga.c Sat Apr 14 18:09:46 2001 +0000 +++ b/libvo/vo_svga.c Sat Apr 14 18:19:40 2001 +0000 @@ -89,8 +89,33 @@ } pformat = format; - if (format == IMGFMT_YV12) bpp = 32; - else bpp = format & 255; + + // -bpp check + if (!vo_dbpp) { + if (format == IMGFMT_YV12) bpp = 32; + else bpp = format & 255; + } else { + bpp = vo_dbpp; + switch (bpp) { + case 32: if (!(vid_modes[_640x480x16M32] | vid_modes[_800x600x16M32] | vid_modes[_1024x768x16M32])) { + printf("vo_svga: %dbpp not supported by HW or SVGAlib",bpp); + return(1); + } + case 24: if (!(vid_modes[_640x480x16M] | vid_modes[_800x600x16M] | vid_modes[_1024x768x16M])) { + printf("vo_svga: %dbpp not supported by HW or SVGAlib",bpp); + return(1); + } + case 16: if (!(vid_modes[_640x480x64K] | vid_modes[_800x600x64K] | vid_modes[_1024x768x64K])) { + printf("vo_svga: %dbpp not supported by HW or SVGAlib",bpp); + return(1); + } + case 15: if (!(vid_modes[_640x480x32K] | vid_modes[_800x600x32K] | vid_modes[_1024x768x32K])) { + printf("vo_svga: %dbpp not supported by HW or SVGAlib",bpp); + return(1); + } + } + } + if (wid > 800) switch (bpp) { case 32: vid_mode = 36; break;