diff options
author | atmos4 <atmos4@b3059339-0415-0410-9bf9-f77b7e298cf2> | 2002-02-12 15:06:04 +0000 |
---|---|---|
committer | atmos4 <atmos4@b3059339-0415-0410-9bf9-f77b7e298cf2> | 2002-02-12 15:06:04 +0000 |
commit | e403e9fe9c1b0740f6423d0ed95554294fde5076 (patch) | |
tree | 0f1e2060a400ff7e9f180aabd9be648be852b3be /libvo | |
parent | 54b4b5ffe092df9063ee3fc67a6a7f341e1f2f79 (diff) | |
download | mpv-e403e9fe9c1b0740f6423d0ed95554294fde5076.tar.bz2 mpv-e403e9fe9c1b0740f6423d0ed95554294fde5076.tar.xz |
add vsync support for doublebuffering to vo_vesa
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@4668 b3059339-0415-0410-9bf9-f77b7e298cf2
Diffstat (limited to 'libvo')
-rw-r--r-- | libvo/video_out.c | 1 | ||||
-rw-r--r-- | libvo/video_out.h | 1 | ||||
-rw-r--r-- | libvo/vo_vesa.c | 8 |
3 files changed, 6 insertions, 4 deletions
diff --git a/libvo/video_out.c b/libvo/video_out.c index 1235c37321..a7835d2e5f 100644 --- a/libvo/video_out.c +++ b/libvo/video_out.c @@ -41,6 +41,7 @@ int vo_dwidth=0; int vo_dheight=0; int vo_dbpp=0; int vo_doublebuffering = 0; +int vo_vsync = 0; int vo_fsmode = 0; int vo_pts=0; // for hw decoding diff --git a/libvo/video_out.h b/libvo/video_out.h index 0a44c99d4d..ef3ff24b6e 100644 --- a/libvo/video_out.h +++ b/libvo/video_out.h @@ -177,6 +177,7 @@ extern int vo_dheight; extern int vo_dbpp; extern int vo_doublebuffering; +extern int vo_vsync; extern int vo_fsmode; extern int vo_pts; diff --git a/libvo/vo_vesa.c b/libvo/vo_vesa.c index 836e4f3919..f659fc5b94 100644 --- a/libvo/vo_vesa.c +++ b/libvo/vo_vesa.c @@ -114,7 +114,7 @@ static char * vbeErrToStr(int err) static char sbuff[80]; if((err & VBE_VESA_ERROR_MASK) == VBE_VESA_ERROR_MASK) { - sprintf(sbuff,"VESA failed = 0x4f%x",(err & VBE_VESA_ERRCODE_MASK)>>8); + sprintf(sbuff,"VESA failed = 0x4f%02x",(err & VBE_VESA_ERRCODE_MASK)>>8); retval = sbuff; } else @@ -361,7 +361,7 @@ static void flip_page(void) if(vo_doublebuffering && multi_size > 1) { int err; - if((err=vbeSetDisplayStart(multi_buff[multi_idx],1)) != VBE_OK) + if((err=vbeSetDisplayStart(multi_buff[multi_idx],vo_vsync)) != VBE_OK) { vesa_term(); PRINT_VBE_ERR("vbeSetDisplayStart",err); @@ -375,10 +375,10 @@ static void flip_page(void) else if(tripple_buffering) { - vbeSetScheduledDisplayStart(multi_buffer[multi_idx],1); + vbeSetScheduledDisplayStart(multi_buff[multi_idx],vo_vsync); multi_idx++; if(multi_idx > 2) multi_idx = 0; - win.ptr = dga_buffer = video_base + multi_buffer[multi_idx]; + win.ptr = dga_buffer = video_base + multi_buff[multi_idx]; } */ } |