From 754f6a23806c0eb9878f35410b4ce37d69b2f4f8 Mon Sep 17 00:00:00 2001 From: Kaleb Keithley Date: Fri, 14 Nov 2003 16:48:43 +0000 Subject: XFree86 4.3.0.1 --- xf86vmode.h | 110 ++++++++++++++++------ xf86vmstr.h | 308 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++--- 2 files changed, 376 insertions(+), 42 deletions(-) diff --git a/xf86vmode.h b/xf86vmode.h index 508fa2c..99e6323 100644 --- a/xf86vmode.h +++ b/xf86vmode.h @@ -1,4 +1,4 @@ -/* $XFree86: xc/include/extensions/xf86vmode.h,v 3.20.2.1 1997/07/13 14:44:57 dawes Exp $ */ +/* $XFree86: xc/include/extensions/xf86vmode.h,v 3.31 2002/12/22 00:46:50 dawes Exp $ */ /* Copyright 1995 Kaleb S. KEITHLEY @@ -51,6 +51,17 @@ from Kaleb S. KEITHLEY #define X_XF86VidModeSwitchToMode 10 #define X_XF86VidModeGetViewPort 11 #define X_XF86VidModeSetViewPort 12 +/* new for version 2.x of this extension */ +#define X_XF86VidModeGetDotClocks 13 +#define X_XF86VidModeSetClientVersion 14 +#define X_XF86VidModeSetGamma 15 +#define X_XF86VidModeGetGamma 16 +#define X_XF86VidModeGetGammaRamp 17 +#define X_XF86VidModeSetGammaRamp 18 +#define X_XF86VidModeGetGammaRampSize 19 +#define X_XF86VidModeGetPermissions 20 + +#define CLKFLAG_PROGRAMABLE 1 #ifdef XF86VIDMODE_EVENTS #define XF86VidModeNotify 0 @@ -73,6 +84,9 @@ from Kaleb S. KEITHLEY #define XF86VidModeZoomLocked 6 #define XF86VidModeNumberErrors (XF86VidModeZoomLocked + 1) +#define XF86VM_READ_PERMISSION 1 +#define XF86VM_WRITE_PERMISSION 2 + #ifndef _XF86VIDMODE_SERVER_ typedef struct { @@ -80,6 +94,7 @@ typedef struct { unsigned short hsyncstart; unsigned short hsyncend; unsigned short htotal; + unsigned short hskew; unsigned short vdisplay; unsigned short vsyncstart; unsigned short vsyncend; @@ -100,6 +115,7 @@ typedef struct { unsigned short hsyncstart; unsigned short hsyncend; unsigned short htotal; + unsigned short hskew; unsigned short vdisplay; unsigned short vsyncstart; unsigned short vsyncend; @@ -122,7 +138,7 @@ typedef struct { typedef struct { char* vendor; char* model; - float bandwidth; + float EMPTY; unsigned char nhsync; XF86VidModeSyncRange* hsync; unsigned char nvsync; @@ -141,6 +157,13 @@ typedef struct { Time time; /* event timestamp */ } XF86VidModeNotifyEvent; +typedef struct { + float red; /* Red Gamma value */ + float green; /* Green Gamma value */ + float blue; /* Blue Gamma value */ +} XF86VidModeGamma; + + #define XF86VidModeSelectNextMode(disp, scr) \ XF86VidModeSwitchMode(disp, scr, 1) #define XF86VidModeSelectPrevMode(disp, scr) \ @@ -149,120 +172,147 @@ typedef struct { _XFUNCPROTOBEGIN Bool XF86VidModeQueryVersion( -#if NeedFunctionPrototypes Display* /* dpy */, int* /* majorVersion */, int* /* minorVersion */ -#endif ); Bool XF86VidModeQueryExtension( -#if NeedFunctionPrototypes Display* /* dpy */, int* /* event_base */, int* /* error_base */ -#endif +); + +Bool XF86VidModeSetClientVersion( + Display* /* dpy */ ); Bool XF86VidModeGetModeLine( -#if NeedFunctionPrototypes Display* /* dpy */, int /* screen */, int* /* dotclock */, XF86VidModeModeLine* /* modeline */ -#endif ); Bool XF86VidModeGetAllModeLines( -#if NeedFunctionPrototypes Display* /* dpy */, int /* screen */, int* /* modecount */, XF86VidModeModeInfo*** /* modelinesPtr */ -#endif ); Bool XF86VidModeAddModeLine( -#if NeedFunctionPrototypes Display* /* dpy */, int /* screen */, XF86VidModeModeInfo* /* new modeline */, XF86VidModeModeInfo* /* after modeline */ -#endif ); Bool XF86VidModeDeleteModeLine( -#if NeedFunctionPrototypes Display* /* dpy */, int /* screen */, XF86VidModeModeInfo* /* modeline */ -#endif ); Bool XF86VidModeModModeLine( -#if NeedFunctionPrototypes Display* /* dpy */, int /* screen */, XF86VidModeModeLine* /* modeline */ -#endif ); Status XF86VidModeValidateModeLine( -#if NeedFunctionPrototypes Display* /* dpy */, int /* screen */, XF86VidModeModeInfo* /* modeline */ -#endif ); Bool XF86VidModeSwitchMode( -#if NeedFunctionPrototypes Display* /* dpy */, int /* screen */, int /* zoom */ -#endif ); Bool XF86VidModeSwitchToMode( -#if NeedFunctionPrototypes Display* /* dpy */, int /* screen */, XF86VidModeModeInfo* /* modeline */ -#endif ); Bool XF86VidModeLockModeSwitch( -#if NeedFunctionPrototypes Display* /* dpy */, int /* screen */, int /* lock */ -#endif ); Bool XF86VidModeGetMonitor( -#if NeedFunctionPrototypes Display* /* dpy */, int /* screen */, XF86VidModeMonitor* /* monitor */ -#endif ); Bool XF86VidModeGetViewPort( -#if NeedFunctionPrototypes Display* /* dpy */, int /* screen */, int* /* x return */, int* /* y return */ -#endif ); Bool XF86VidModeSetViewPort( -#if NeedFunctionPrototypes Display* /* dpy */, int /* screen */, int /* x */, int /* y */ -#endif +); + +Bool XF86VidModeGetDotClocks( + Display* /* dpy */, + int /* screen */, + int* /* flags return */, + int* /* number of clocks return */, + int* /* max dot clock return */, + int** /* clocks return */ +); + +Bool XF86VidModeGetGamma( + Display* /* dpy */, + int /* screen */, + XF86VidModeGamma* /* Gamma */ +); + +Bool XF86VidModeSetGamma( + Display* /* dpy */, + int /* screen */, + XF86VidModeGamma* /* Gamma */ +); + +Bool XF86VidModeSetGammaRamp( + Display* /* dpy */, + int /* screen */, + int /* size */, + unsigned short* /* red array */, + unsigned short* /* green array */, + unsigned short* /* blue array */ +); + +Bool XF86VidModeGetGammaRamp( + Display* /* dpy */, + int /* screen */, + int /* size */, + unsigned short* /* red array */, + unsigned short* /* green array */, + unsigned short* /* blue array */ +); + +Bool XF86VidModeGetGammaRampSize( + Display* /* dpy */, + int /* screen */, + int* /* size */ +); + +Bool XF86VidModeGetPermissions( + Display* /* dpy */, + int /* screen */, + int* /* permissions */ ); _XFUNCPROTOEND diff --git a/xf86vmstr.h b/xf86vmstr.h index 0a216eb..db6f6e6 100644 --- a/xf86vmstr.h +++ b/xf86vmstr.h @@ -1,4 +1,4 @@ -/* $XFree86: xc/include/extensions/xf86vmstr.h,v 3.16 1996/10/16 14:28:58 dawes Exp $ */ +/* $XFree86: xc/include/extensions/xf86vmstr.h,v 3.28 2002/12/22 00:46:50 dawes Exp $ */ /* Copyright 1995 Kaleb S. KEITHLEY @@ -35,16 +35,17 @@ from Kaleb S. KEITHLEY #ifndef _XF86VIDMODESTR_H_ #define _XF86VIDMODESTR_H_ -#include "xf86vmode.h" +#include #define XF86VIDMODENAME "XFree86-VidModeExtension" -#define XF86VIDMODE_MAJOR_VERSION 0 /* current version numbers */ -#define XF86VIDMODE_MINOR_VERSION 7 +#define XF86VIDMODE_MAJOR_VERSION 2 /* current version numbers */ +#define XF86VIDMODE_MINOR_VERSION 2 /* * major version 0 == uses parameter-to-wire functions in XFree86 libXxf86vm. * major version 1 == uses parameter-to-wire functions hard-coded in xvidtune * client. + * major version 2 == uses new protocol version in XFree86 4.0. */ typedef struct _XF86VidModeQueryVersion { @@ -78,11 +79,15 @@ typedef struct _XF86VidModeGetModeLine { } xXF86VidModeGetModeLineReq, xXF86VidModeGetAllModeLinesReq, xXF86VidModeGetMonitorReq, - xXF86VidModeGetViewPortReq; + xXF86VidModeGetViewPortReq, + xXF86VidModeGetDotClocksReq, + xXF86VidModeGetPermissionsReq; #define sz_xXF86VidModeGetModeLineReq 8 #define sz_xXF86VidModeGetAllModeLinesReq 8 #define sz_xXF86VidModeGetMonitorReq 8 #define sz_xXF86VidModeGetViewPortReq 8 +#define sz_xXF86VidModeGetDotClocksReq 8 +#define sz_xXF86VidModeGetPermissionsReq 8 typedef struct { BYTE type; /* X_Reply */ @@ -94,14 +99,39 @@ typedef struct { CARD16 hsyncstart B16; CARD16 hsyncend B16; CARD16 htotal B16; + CARD16 hskew B16; CARD16 vdisplay B16; CARD16 vsyncstart B16; CARD16 vsyncend B16; CARD16 vtotal B16; + CARD16 pad2 B16; CARD32 flags B32; + CARD32 reserved1 B32; + CARD32 reserved2 B32; + CARD32 reserved3 B32; CARD32 privsize B32; } xXF86VidModeGetModeLineReply; -#define sz_xXF86VidModeGetModeLineReply 36 +#define sz_xXF86VidModeGetModeLineReply 52 + +/* 0.x version */ +typedef struct { + BYTE type; /* X_Reply */ + BOOL pad1; + CARD16 sequenceNumber B16; + CARD32 length B32; + CARD32 dotclock B32; + CARD16 hdisplay B16; + CARD16 hsyncstart B16; + CARD16 hsyncend B16; + CARD16 htotal B16; + CARD16 vdisplay B16; + CARD16 vsyncstart B16; + CARD16 vsyncend B16; + CARD16 vtotal B16; + CARD32 flags B32; + CARD32 privsize B32; +} xXF86OldVidModeGetModeLineReply; +#define sz_xXF86OldVidModeGetModeLineReply 36 typedef struct { CARD32 dotclock B32; @@ -109,14 +139,34 @@ typedef struct { CARD16 hsyncstart B16; CARD16 hsyncend B16; CARD16 htotal B16; + CARD32 hskew B16; CARD16 vdisplay B16; CARD16 vsyncstart B16; CARD16 vsyncend B16; CARD16 vtotal B16; + CARD16 pad1 B16; CARD32 flags B32; + CARD32 reserved1 B32; + CARD32 reserved2 B32; + CARD32 reserved3 B32; CARD32 privsize B32; } xXF86VidModeModeInfo; +/* 0.x version */ +typedef struct { + CARD32 dotclock B32; + CARD16 hdisplay B16; + CARD16 hsyncstart B16; + CARD16 hsyncend B16; + CARD16 htotal B16; + CARD16 vdisplay B16; + CARD16 vsyncstart B16; + CARD16 vsyncend B16; + CARD16 vtotal B16; + CARD32 flags B32; + CARD32 privsize B32; +} xXF86OldVidModeModeInfo; + typedef struct { BYTE type; /* X_Reply */ BOOL pad1; @@ -141,24 +191,64 @@ typedef struct _XF86VidModeAddModeLine { CARD16 hsyncstart B16; CARD16 hsyncend B16; CARD16 htotal B16; + CARD16 hskew B16; CARD16 vdisplay B16; CARD16 vsyncstart B16; CARD16 vsyncend B16; CARD16 vtotal B16; + CARD16 pad1 B16; CARD32 flags B32; + CARD32 reserved1 B32; + CARD32 reserved2 B32; + CARD32 reserved3 B32; CARD32 privsize B32; CARD32 after_dotclock B32; CARD16 after_hdisplay B16; CARD16 after_hsyncstart B16; CARD16 after_hsyncend B16; CARD16 after_htotal B16; + CARD16 after_hskew B16; CARD16 after_vdisplay B16; CARD16 after_vsyncstart B16; CARD16 after_vsyncend B16; CARD16 after_vtotal B16; + CARD16 pad2 B16; CARD32 after_flags B32; + CARD32 reserved4 B32; + CARD32 reserved5 B32; + CARD32 reserved6 B32; } xXF86VidModeAddModeLineReq; -#define sz_xXF86VidModeAddModeLineReq 60 +#define sz_xXF86VidModeAddModeLineReq 92 + +/* 0.x version */ +typedef struct _XF86OldVidModeAddModeLine { + CARD8 reqType; /* always XF86VidModeReqCode */ + CARD8 xf86vidmodeReqType; /* always X_XF86VidModeAddMode */ + CARD16 length B16; + CARD32 screen B32; /* could be CARD16 but need the pad */ + CARD32 dotclock B32; + CARD16 hdisplay B16; + CARD16 hsyncstart B16; + CARD16 hsyncend B16; + CARD16 htotal B16; + CARD16 vdisplay B16; + CARD16 vsyncstart B16; + CARD16 vsyncend B16; + CARD16 vtotal B16; + CARD32 flags B32; + CARD32 privsize B32; + CARD32 after_dotclock B32; + CARD16 after_hdisplay B16; + CARD16 after_hsyncstart B16; + CARD16 after_hsyncend B16; + CARD16 after_htotal B16; + CARD16 after_vdisplay B16; + CARD16 after_vsyncstart B16; + CARD16 after_vsyncend B16; + CARD16 after_vtotal B16; + CARD32 after_flags B32; +} xXF86OldVidModeAddModeLineReq; +#define sz_xXF86OldVidModeAddModeLineReq 60 typedef struct _XF86VidModeModModeLine { CARD8 reqType; /* always XF86VidModeReqCode */ @@ -169,14 +259,38 @@ typedef struct _XF86VidModeModModeLine { CARD16 hsyncstart B16; CARD16 hsyncend B16; CARD16 htotal B16; + CARD16 hskew B16; CARD16 vdisplay B16; CARD16 vsyncstart B16; CARD16 vsyncend B16; CARD16 vtotal B16; + CARD16 pad1 B16; CARD32 flags B32; + CARD32 reserved1 B32; + CARD32 reserved2 B32; + CARD32 reserved3 B32; CARD32 privsize B32; } xXF86VidModeModModeLineReq; -#define sz_xXF86VidModeModModeLineReq 32 +#define sz_xXF86VidModeModModeLineReq 48 + +/* 0.x version */ +typedef struct _XF86OldVidModeModModeLine { + CARD8 reqType; /* always XF86OldVidModeReqCode */ + CARD8 xf86vidmodeReqType; /* always X_XF86OldVidModeModModeLine */ + CARD16 length B16; + CARD32 screen B32; /* could be CARD16 but need the pad */ + CARD16 hdisplay B16; + CARD16 hsyncstart B16; + CARD16 hsyncend B16; + CARD16 htotal B16; + CARD16 vdisplay B16; + CARD16 vsyncstart B16; + CARD16 vsyncend B16; + CARD16 vtotal B16; + CARD32 flags B32; + CARD32 privsize B32; +} xXF86OldVidModeModModeLineReq; +#define sz_xXF86OldVidModeModModeLineReq 32 typedef struct _XF86VidModeValidateModeLine { CARD8 reqType; /* always XF86VidModeReqCode */ @@ -188,18 +302,47 @@ typedef struct _XF86VidModeValidateModeLine { CARD16 hsyncstart B16; CARD16 hsyncend B16; CARD16 htotal B16; + CARD16 hskew B16; CARD16 vdisplay B16; CARD16 vsyncstart B16; CARD16 vsyncend B16; CARD16 vtotal B16; + CARD16 pad1 B16; CARD32 flags B32; + CARD32 reserved1 B32; + CARD32 reserved2 B32; + CARD32 reserved3 B32; CARD32 privsize B32; } xXF86VidModeDeleteModeLineReq, xXF86VidModeValidateModeLineReq, xXF86VidModeSwitchToModeReq; -#define sz_xXF86VidModeDeleteModeLineReq 36 -#define sz_xXF86VidModeValidateModeLineReq 36 -#define sz_xXF86VidModeSwitchToModeReq 36 +#define sz_xXF86VidModeDeleteModeLineReq 52 +#define sz_xXF86VidModeValidateModeLineReq 52 +#define sz_xXF86VidModeSwitchToModeReq 52 + +/* 0.x version */ +typedef struct _XF86OldVidModeValidateModeLine { + CARD8 reqType; /* always XF86OldVidModeReqCode */ + CARD8 xf86vidmodeReqType; + CARD16 length B16; + CARD32 screen B32; /* could be CARD16 but need the pad */ + CARD32 dotclock B32; + CARD16 hdisplay B16; + CARD16 hsyncstart B16; + CARD16 hsyncend B16; + CARD16 htotal B16; + CARD16 vdisplay B16; + CARD16 vsyncstart B16; + CARD16 vsyncend B16; + CARD16 vtotal B16; + CARD32 flags B32; + CARD32 privsize B32; +} xXF86OldVidModeDeleteModeLineReq, + xXF86OldVidModeValidateModeLineReq, + xXF86OldVidModeSwitchToModeReq; +#define sz_xXF86OldVidModeDeleteModeLineReq 36 +#define sz_xXF86OldVidModeValidateModeLineReq 36 +#define sz_xXF86OldVidModeSwitchToModeReq 36 typedef struct _XF86VidModeSwitchMode { CARD8 reqType; /* always XF86VidModeReqCode */ @@ -242,11 +385,11 @@ typedef struct { CARD8 modelLength; CARD8 nhsync; CARD8 nvsync; - CARD32 bandwidth B32; CARD32 pad2 B32; CARD32 pad3 B32; CARD32 pad4 B32; CARD32 pad5 B32; + CARD32 pad6 B32; } xXF86VidModeGetMonitorReply; #define sz_xXF86VidModeGetMonitorReply 32 @@ -275,4 +418,145 @@ typedef struct _XF86VidModeSetViewPort { } xXF86VidModeSetViewPortReq; #define sz_xXF86VidModeSetViewPortReq 16 +typedef struct { + BYTE type; + BOOL pad1; + CARD16 sequenceNumber B16; + CARD32 length B32; + CARD32 flags B32; + CARD32 clocks B32; + CARD32 maxclocks B32; + CARD32 pad2 B32; + CARD32 pad3 B32; + CARD32 pad4 B32; +} xXF86VidModeGetDotClocksReply; +#define sz_xXF86VidModeGetDotClocksReply 32 + +typedef struct _XF86VidModeSetClientVersion { + CARD8 reqType; /* always XF86VidModeReqCode */ + CARD8 xf86vidmodeReqType; + CARD16 length B16; + CARD16 major B16; + CARD16 minor B16; +} xXF86VidModeSetClientVersionReq; +#define sz_xXF86VidModeSetClientVersionReq 8 + +typedef struct _XF86VidModeGetGamma { + CARD8 reqType; /* always XF86VidModeReqCode */ + CARD8 xf86vidmodeReqType; + CARD16 length B16; + CARD16 screen B16; + CARD16 pad B16; + CARD32 pad1 B32; + CARD32 pad2 B32; + CARD32 pad3 B32; + CARD32 pad4 B32; + CARD32 pad5 B32; + CARD32 pad6 B32; +} xXF86VidModeGetGammaReq; +#define sz_xXF86VidModeGetGammaReq 32 + +typedef struct { + BYTE type; + BOOL pad; + CARD16 sequenceNumber B16; + CARD32 length B32; + CARD32 red B32; + CARD32 green B32; + CARD32 blue B32; + CARD32 pad1 B32; + CARD32 pad2 B32; + CARD32 pad3 B32; +} xXF86VidModeGetGammaReply; +#define sz_xXF86VidModeGetGammaReply 32 + +typedef struct _XF86VidModeSetGamma { + CARD8 reqType; /* always XF86VidModeReqCode */ + CARD8 xf86vidmodeReqType; + CARD16 length B16; + CARD16 screen B16; + CARD16 pad B16; + CARD32 red B32; + CARD32 green B32; + CARD32 blue B32; + CARD32 pad1 B32; + CARD32 pad2 B32; + CARD32 pad3 B32; +} xXF86VidModeSetGammaReq; +#define sz_xXF86VidModeSetGammaReq 32 + + +typedef struct _XF86VidModeSetGammaRamp { + CARD8 reqType; /* always XF86VidModeReqCode */ + CARD8 xf86vidmodeReqType; + CARD16 length B16; + CARD16 screen B16; + CARD16 size B16; +} xXF86VidModeSetGammaRampReq; +#define sz_xXF86VidModeSetGammaRampReq 8 + +typedef struct _XF86VidModeGetGammaRamp { + CARD8 reqType; /* always XF86VidModeReqCode */ + CARD8 xf86vidmodeReqType; + CARD16 length B16; + CARD16 screen B16; + CARD16 size B16; +} xXF86VidModeGetGammaRampReq; +#define sz_xXF86VidModeGetGammaRampReq 8 + +typedef struct { + BYTE type; + BOOL pad; + CARD16 sequenceNumber B16; + CARD32 length B32; + CARD16 size B16; + CARD16 pad0 B16; + CARD32 pad1 B32; + CARD32 pad2 B32; + CARD32 pad3 B32; + CARD32 pad4 B32; + CARD32 pad5 B32; +} xXF86VidModeGetGammaRampReply; +#define sz_xXF86VidModeGetGammaRampReply 32 + +typedef struct _XF86VidModeGetGammaRampSize { + CARD8 reqType; /* always XF86VidModeReqCode */ + CARD8 xf86vidmodeReqType; + CARD16 length B16; + CARD16 screen B16; + CARD16 pad B16; +} xXF86VidModeGetGammaRampSizeReq; +#define sz_xXF86VidModeGetGammaRampSizeReq 8 + +typedef struct { + BYTE type; + BOOL pad; + CARD16 sequenceNumber B16; + CARD32 length B32; + CARD16 size B16; + CARD16 pad0 B16; + CARD32 pad1 B32; + CARD32 pad2 B32; + CARD32 pad3 B32; + CARD32 pad4 B32; + CARD32 pad5 B32; +} xXF86VidModeGetGammaRampSizeReply; +#define sz_xXF86VidModeGetGammaRampSizeReply 32 + +typedef struct { + BYTE type; + BOOL pad; + CARD16 sequenceNumber B16; + CARD32 length B32; + CARD32 permissions B32; + CARD32 pad1 B32; + CARD32 pad2 B32; + CARD32 pad3 B32; + CARD32 pad4 B32; + CARD32 pad5 B32; +} xXF86VidModeGetPermissionsReply; +#define sz_xXF86VidModeGetPermissionsReply 32 + + #endif /* _XF86VIDMODESTR_H_ */ + -- cgit v1.2.1