12 double Vsync_need
; /* Number of lines for vert sync (default 3) */
13 double min_Vsync_BP
; /* Minimum vertical sync + back porch (us) (default 550)*/
14 double min_front_porch
; /* Minimum front porch in lines (default 1) */
15 double char_cell_granularity
; /* Character cell granularity in pixels (default 8) */
16 double margin_width
; /* Top/ bottom MARGIN size as % of height (%) (default 1.8) */
17 double sync_width
; /* Sync width percent of line period ( default 8) */
18 double c
; /* Blanking formula offset (default 40)*/
19 double j
; /* Blanking formula scaling factor weight (default 20)*/
20 double k
; /* Blanking formula scaling factor (default 128)*/
21 double m
; /* Blanking formula gradient (default 600)*/
24 //#ifndef __VESA_VBELIB_INCLUDED__
25 // struct VesaCRTCInfoBlock {
26 // unsigned short hTotal; /* Horizontal total in pixels */
27 // unsigned short hSyncStart; /* Horizontal sync start in pixels */
28 // unsigned short hSyncEnd; /* Horizontal sync end in pixels */
29 // unsigned short vTotal; /* Vertical total in lines */
30 // unsigned short vSyncStart; /* Vertical sync start in lines */
31 // unsigned short vSyncEnd; /* Vertical sync end in lines */
32 // unsigned char Flags; /* Flags (Interlaced, Double Scan etc) */
33 // unsigned long PixelClock; /* Pixel clock in units of Hz */
34 // unsigned short RefreshRate;/* Refresh rate in units of 0.01 Hz*/
35 // unsigned char Reserved[40];/* remainder of CRTCInfoBlock*/
36 //}__attribute__ ((packed));
38 //#define VESA_CRTC_DOUBLESCAN 0x01
39 //#define VESA_CRTC_INTERLACED 0x02
40 //#define VESA_CRTC_HSYNC_NEG 0x04
41 //#define VESA_CRTC_VSYNC_NEG 0x08
45 void GTF_calcTimings(double X
,double Y
,double freq
, int type
,
46 int want_margins
, int want_interlace
,struct VesaCRTCInfoBlock
*result
);