亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? videosetup.cpp

?? 93XX-WINCE4.2-BSP.rar是基于ep9315處理器的wince的BSP包。
?? CPP
?? 第 1 頁 / 共 3 頁
字號:
    { 580, VIDDIV_PDIV_25 | (116 & VIDDIV_VDIV_MASK) },
    { 582, VIDDIV_PDIV_3  | ( 97 & VIDDIV_VDIV_MASK) },
    { 585, VIDDIV_PDIV_25 | (117 & VIDDIV_VDIV_MASK) },
    { 588, VIDDIV_PDIV_3  | ( 98 & VIDDIV_VDIV_MASK) },
    { 590, VIDDIV_PDIV_25 | (118 & VIDDIV_VDIV_MASK) },
    { 594, VIDDIV_PDIV_3  | ( 99 & VIDDIV_VDIV_MASK) },
    { 595, VIDDIV_PDIV_25 | (119 & VIDDIV_VDIV_MASK) },
    { 600, VIDDIV_PDIV_3  | (100 & VIDDIV_VDIV_MASK) },
    { 605, VIDDIV_PDIV_25 | (121 & VIDDIV_VDIV_MASK) },
    { 606, VIDDIV_PDIV_3  | (101 & VIDDIV_VDIV_MASK) },
    { 610, VIDDIV_PDIV_25 | (122 & VIDDIV_VDIV_MASK) },
    { 612, VIDDIV_PDIV_3  | (102 & VIDDIV_VDIV_MASK) },
    { 615, VIDDIV_PDIV_25 | (123 & VIDDIV_VDIV_MASK) },
    { 618, VIDDIV_PDIV_3  | (103 & VIDDIV_VDIV_MASK) },
    { 620, VIDDIV_PDIV_25 | (124 & VIDDIV_VDIV_MASK) },
    { 624, VIDDIV_PDIV_3  | (104 & VIDDIV_VDIV_MASK) },
    { 625, VIDDIV_PDIV_25 | (125 & VIDDIV_VDIV_MASK) },
    { 630, VIDDIV_PDIV_3  | (105 & VIDDIV_VDIV_MASK) },
    { 635, VIDDIV_PDIV_25 | (127 & VIDDIV_VDIV_MASK) },
    { 636, VIDDIV_PDIV_3  | (106 & VIDDIV_VDIV_MASK) },
    { 642, VIDDIV_PDIV_3  | (107 & VIDDIV_VDIV_MASK) },
    { 648, VIDDIV_PDIV_3  | (108 & VIDDIV_VDIV_MASK) },
    { 654, VIDDIV_PDIV_3  | (109 & VIDDIV_VDIV_MASK) },
    { 660, VIDDIV_PDIV_3  | (110 & VIDDIV_VDIV_MASK) },
    { 666, VIDDIV_PDIV_3  | (111 & VIDDIV_VDIV_MASK) },
    { 672, VIDDIV_PDIV_3  | (112 & VIDDIV_VDIV_MASK) },
    { 678, VIDDIV_PDIV_3  | (113 & VIDDIV_VDIV_MASK) },
    { 684, VIDDIV_PDIV_3  | (114 & VIDDIV_VDIV_MASK) },
    { 690, VIDDIV_PDIV_3  | (115 & VIDDIV_VDIV_MASK) },
    { 696, VIDDIV_PDIV_3  | (116 & VIDDIV_VDIV_MASK) },
    { 702, VIDDIV_PDIV_3  | (117 & VIDDIV_VDIV_MASK) },
    { 708, VIDDIV_PDIV_3  | (118 & VIDDIV_VDIV_MASK) },
    { 714, VIDDIV_PDIV_3  | (119 & VIDDIV_VDIV_MASK) },
    { 720, VIDDIV_PDIV_3  | (120 & VIDDIV_VDIV_MASK) },
    { 726, VIDDIV_PDIV_3  | (121 & VIDDIV_VDIV_MASK) },
    { 732, VIDDIV_PDIV_3  | (122 & VIDDIV_VDIV_MASK) },
    { 738, VIDDIV_PDIV_3  | (123 & VIDDIV_VDIV_MASK) },
    { 744, VIDDIV_PDIV_3  | (124 & VIDDIV_VDIV_MASK) },
    { 750, VIDDIV_PDIV_3  | (125 & VIDDIV_VDIV_MASK) },
    { 756, VIDDIV_PDIV_3  | (126 & VIDDIV_VDIV_MASK) },
    { 762, VIDDIV_PDIV_3  | (127 & VIDDIV_VDIV_MASK) }
};


//****************************************************************************
// CalculateClosestFreq
//****************************************************************************
// CalculateClosestFreq
// 
//   ulPLLFreq           -  PLL output Frequency (Mhz)
//   ulRequestedVidFreq  -  Requested Video Clock Frequency.
//   pulActualVideoFreq  -  Returned Actual Video Rate.
//   pulVidDiv           -  Video Divider register.
//
//   Return            0 - Failure
//                     1 - Success
//
static int CalculateClosestFreq
(
    ULONG   ulPLLFreq, 
    ULONG   ulRequestedVideoFreq,
    PULONG  pulActualVideoFreq,
    PULONG  pulVidDiv
)
{
    
    ULONG   ulLower;
    ULONG   ulUpper;
    ULONG   ulDiv;
    int     x;


    //
    // Calculate the closest divisor.
    //
    ulDiv =  (ulPLLFreq * 2)/ ulRequestedVideoFreq;

    for(x = 1; x < sizeof(VidDivTable)/sizeof(DIV_TABLE); x++)
    {

        //
        // Calculate the next greater and lower value.
        //
        ulLower = VidDivTable[x - 1].ulTotalDiv;     
        ulUpper = VidDivTable[x].ulTotalDiv;     

        //
        // Check to see if it is in between the two values.
        //
        if(ulLower <= ulDiv && ulDiv < ulUpper)
        {
            break;
        }
    }

    //
    // Return if we did not find a divisor.
    //
    if(x == sizeof(VidDivTable)/sizeof(DIV_TABLE))
    {
        *pulActualVideoFreq = 0;
        *pulVidDiv          = 0;
        return 0;
    }

    //
    // See which is closer, the upper or the lower case.
    //
    if(ulUpper * ulRequestedVideoFreq - ulPLLFreq * 2 >  
      ulPLLFreq * 2 - ulLower * ulRequestedVideoFreq)
    {
        x-=1;
    }
    *pulActualVideoFreq = (ulPLLFreq * 2)/ VidDivTable[x].ulTotalDiv;
    *pulVidDiv          = VidDivTable[x].ulVidDiv;
    return(1);
}


//****************************************************************************
// CRTVideoSetup
//****************************************************************************
//
//  ulWidth                 - Screen Width
//  ulHeight                - Screen Height 
//  ulColorDepth            - Color Depth
//  ulFrequency             - Refresh rate in Hertz.
//  ulPhysicalFramePointer  - Physical Address of the frame buffer.
//  pStartStop              - OUT Start Stop values for HSYNC.
//
// Here is the video setup for standard CRT monitiors.  Remember that the 
// horizontal sync must be at least 33Mhz and the refresh rate must be
// 60 Hz.
// 
//                                                       VSync---------+
//                                                                     |
//  |                                                                  V |
//  |                                                                |< >|
//  |            |                                         |             |
//  |<  VBlank  >|<---------- Screen Height--------------->|<  VBlank   >|
//  |    Start   |                                         |     End     |
//  |                                                                    |
//  |<----------------------- VLines Total ----------------------------->|
//
//
//                                                                       
//  |                   |                                                |
//  |<--HBlank Start--->|                                                |
//  |                   |                                  |             |
//  |           |       |                                  |             |
//  |<  HSync  >|       |<---------- Screen Width--------->|<  HBlank   >|
//  |           |       |                                  |     End     |
//  |                                                                    |
//  |<----------------------- HClocks Total ---------------------------->|
//
//
//  VBlankStart = 6.04  % of Screen Height
//  VBlankEnd   = 3.54 % of Screen Height
//  VSync       = .41 % of Screen Height
//
//  HBlankEnd   = 2.34 % of Screen Width
//  HBlankStart = 20.1 % of Screen Width
//  HSyncStart  = 15 % of Screen Width 
//
//
// These are the proportions of the windows.
//
#define     VBLANKSTART_SIZE     604
#define     VBLANKEND_SIZE       354
#define     VSYNC_SIZE           41
//#define     HBLANKEND_SIZE       234
//#define     HBLANKSTART_SIZE     2010
//#define     HSYNC_SIZE           1500
#define     HBLANKEND_SIZE        400
#define     HBLANKSTART_SIZE     4010
#define     HSYNC_SIZE           2000
#define     SIZE_DIVISOR         10000


void CRTVideoSetup
(
    ULONG           ulWidth, 
    ULONG           ulHeight, 
    ULONG           ulColorDepth, 
    ULONG           ulFrequency, 
    ULONG           ulPhysicalFramePointer,
    StartStop *     pStartStop
)
{

    ULONG   ulVStartBlankSize;
    ULONG   ulVEndBlankSize;
    ULONG   ulVSyncSize;
    ULONG   ulVLinesTotal;
    ULONG   ulHStartBlankSize;
    ULONG   ulHEndBlankSize;
    ULONG   ulHSyncSize;
    ULONG   ulHClocksTotal;
    
    ULONG   ulVBlankStart;
    ULONG   ulVBlankStop;
    ULONG   ulVSyncStart;
    ULONG   ulVSyncStop;
    ULONG   ulHBlankStart;
    ULONG   ulHBlankStop;
    ULONG   ulHSyncStart;
    ULONG   ulHSyncStop;
    ULONG   ulVidDiv, ulVid1Div, ulVid2Div;
    ULONG   ulVid1Freq, ulVid2Freq;
    ULONG   ulRequestedVideoFreq;
    ULONG   ulTemp;

    ulTemp = *GPIO_PADDR;
    *GPIO_PADDR = ulTemp | 0x2;

    ulTemp = *GPIO_PADR;
    *GPIO_PADR = ulTemp | 0x2;

        
    //
    // Calculate the sizes of each of the blocks in pixels
    //
    ulVStartBlankSize   = (VBLANKSTART_SIZE * ulHeight) / SIZE_DIVISOR;
    ulVEndBlankSize     = (VBLANKEND_SIZE * ulHeight) / SIZE_DIVISOR;
    ulVSyncSize         = 1 + (VSYNC_SIZE * ulHeight) / SIZE_DIVISOR;
    ulVLinesTotal       = ulVStartBlankSize + ulVEndBlankSize + ulHeight;
    ulHStartBlankSize   = (HBLANKSTART_SIZE * ulWidth) / SIZE_DIVISOR;
    ulHEndBlankSize     = (HBLANKEND_SIZE * ulWidth) / SIZE_DIVISOR;
    ulHSyncSize         = (HSYNC_SIZE * ulWidth) / SIZE_DIVISOR;
    ulHClocksTotal      = ulHStartBlankSize + ulHEndBlankSize + ulWidth;

    //
    // Calculate the starting and stoping pointer for each in the frame.
    //
    pStartStop->ulVActiveStop   = ulVEndBlankSize;
    pStartStop->ulVActiveStart  = ulVEndBlankSize + ulHeight;
    pStartStop->ulHActiveStop   = ulHEndBlankSize;
    pStartStop->ulHActiveStart  = ulHEndBlankSize + ulWidth;
    ulVBlankStop                = ulVEndBlankSize;
    ulVBlankStart               = ulVEndBlankSize + ulHeight;
    ulVSyncStart                = ulVSyncSize;
    ulVSyncStop                 = 0;
    ulHBlankStop                = ulHEndBlankSize;
    ulHBlankStart               = ulHEndBlankSize + ulWidth;
    ulHSyncStop                 = ulHClocksTotal - ulHSyncSize;
    ulHSyncStart                = ulHClocksTotal;


    //
    // Change to Raster on P3.
    //
    HalWriteCommonReg(CSC_DEVCFG, DEVCFG_RAS | DEVCFG_RASONP3, DEVCFG_RASONP3);

    ulRequestedVideoFreq = ( ulFrequency * ulHClocksTotal * ulVLinesTotal);

    CalculateClosestFreq
    (
        PLL1_CLOCK, 
        ulRequestedVideoFreq,
        &ulVid1Freq,
        &ulVid1Div
    );
    CalculateClosestFreq
    (
        PLL2_CLOCK, 
        ulRequestedVideoFreq,
        &ulVid2Freq,
        &ulVid2Div
    );

    //
    // See which is closer, Video rate 1 or video rate 2.
    //
    if(abs(ulVid1Freq - ulRequestedVideoFreq) <abs(ulVid2Freq -ulRequestedVideoFreq))
    {
        ulVidDiv =ulVid1Div;
    }
    else
    {
        ulVidDiv =ulVid2Div | VIDDIV_PSEL;
    }
    

    HalWriteCommonReg(CSC_VIDDIV, 0xFFFFFFFF, VIDDIV_VENA | VIDDIV_ESEL | ulVidDiv);

    *RASTER_REALITI_SWLOCK   = 0xaa;
    *RASTER_VLINESTOTAL      = ulVLinesTotal;
    ASSERT(ulVLinesTotal <VLINESTOTAL_MASK);

    *RASTER_REALITI_SWLOCK   = 0xaa;
    *RASTER_VSYNCSTRTSTOP    = (ulVSyncStart<<RASTER_START_SHIFT) | (ulVSyncStop<<RASTER_STOP_SHIFT);

    *RASTER_REALITI_SWLOCK   = 0xaa;
    *RASTER_VBLANKSTRTSTOP   = (ulVBlankStart<<RASTER_START_SHIFT) | (ulVBlankStop<<RASTER_STOP_SHIFT);

    *RASTER_REALITI_SWLOCK   = 0xaa;
    *RASTER_VACTIVESTRTSTOP  = ( pStartStop->ulVActiveStart<<RASTER_START_SHIFT) | 
                               ( pStartStop->ulVActiveStop<<RASTER_STOP_SHIFT);

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
国产激情精品久久久第一区二区| 日韩三级电影网址| 中文字幕欧美激情| 91亚洲国产成人精品一区二区三| 中文字幕在线不卡视频| 欧美色偷偷大香| 久久精品99国产精品| 久久精品视频一区二区| 白白色 亚洲乱淫| 国产寡妇亲子伦一区二区| heyzo一本久久综合| 一区二区三区中文在线| 制服丝袜国产精品| 成人中文字幕电影| 亚洲激情网站免费观看| 制服.丝袜.亚洲.另类.中文| 国产高清成人在线| 夜夜嗨av一区二区三区| 91麻豆精品国产自产在线| 国产综合色视频| 亚洲欧美日韩在线| 欧美mv和日韩mv国产网站| 99精品一区二区三区| 婷婷国产在线综合| 欧美激情中文不卡| 欧美日韩高清在线| 国产91丝袜在线播放0| 亚洲最大成人网4388xx| 久久伊人蜜桃av一区二区| 欧洲在线/亚洲| 春色校园综合激情亚洲| 五月天一区二区| 国产精品色呦呦| 欧美一级黄色大片| 色香色香欲天天天影视综合网 | 久久夜色精品一区| 欧美综合色免费| 国产suv精品一区二区6| 性做久久久久久免费观看| 国产区在线观看成人精品| 欧美精品久久一区二区三区| eeuss鲁片一区二区三区| 日本免费新一区视频| 亚洲精品日产精品乱码不卡| 久久一区二区三区国产精品| 欧美日韩在线不卡| 99国产精品久久久久久久久久久 | 日韩理论电影院| 欧美成人精精品一区二区频| 欧美三级日韩三级| 91老师片黄在线观看| 国产精品亚洲专一区二区三区 | 色欧美乱欧美15图片| 黑人巨大精品欧美一区| 日av在线不卡| 亚洲一级在线观看| 亚洲视频图片小说| 国产精品久久久久一区| 国产女主播一区| 精品福利在线导航| 日韩欧美视频一区| 91精品国产福利在线观看| 欧美丝袜丝nylons| 在线中文字幕不卡| 欧美亚洲国产一卡| aaa欧美色吧激情视频| 欧美另类z0zxhd电影| 色88888久久久久久影院按摩 | 欧美在线视频你懂得| 91麻豆视频网站| 91丨porny丨最新| 99久久国产综合精品麻豆| 成人激情动漫在线观看| 国产91清纯白嫩初高中在线观看| 国产专区综合网| 国产一区二区女| 国产精品自拍一区| 成人精品免费网站| 97超碰欧美中文字幕| www.欧美精品一二区| av中文字幕一区| 91极品视觉盛宴| 欧美电影影音先锋| 日韩欧美国产三级| 精品国产免费人成在线观看| 久久久亚洲高清| 国产精品久久久久久久久久免费看| 国产精品美女久久久久久 | 久久久久久久久久久久久夜| 久久久精品影视| 国产精品久久久久天堂| 亚洲男女毛片无遮挡| 亚洲va在线va天堂| 久久精品国产99久久6| 国产精品一区久久久久| 成人av电影在线播放| 在线中文字幕一区| 欧美电视剧在线观看完整版| 精品剧情在线观看| 国产精品久久看| 天天综合日日夜夜精品| 久久精品国产亚洲aⅴ| 丰满少妇久久久久久久| 一本色道综合亚洲| 欧美一区二区三区视频在线观看 | 亚洲乱码国产乱码精品精可以看| 一区二区免费在线| 麻豆国产欧美一区二区三区| 丁香婷婷综合五月| 欧美久久久久中文字幕| 国产喷白浆一区二区三区| 一区二区三区不卡视频在线观看 | 欧美日韩国产美| 26uuu欧美| 一级特黄大欧美久久久| 九色|91porny| 欧美性色黄大片| 久久久99精品免费观看不卡| 亚洲精品少妇30p| 国产又粗又猛又爽又黄91精品| 94-欧美-setu| 久久久综合激的五月天| 亚洲v精品v日韩v欧美v专区| 成人永久免费视频| 欧美一区二区成人6969| 99久久伊人精品| 成人av在线播放网站| 欧美日韩久久久| 亚洲欧洲精品成人久久奇米网| 麻豆精品国产传媒mv男同| 在线看国产一区| 亚洲国产精品黑人久久久| 视频一区在线播放| 91在线无精精品入口| 久久久精品一品道一区| 美女一区二区视频| 欧美色中文字幕| 亚洲日韩欧美一区二区在线| 激情综合色播激情啊| 欧美日韩中字一区| 最新热久久免费视频| 国产精一品亚洲二区在线视频| 91麻豆精品国产91久久久更新时间| 亚洲天堂久久久久久久| 大桥未久av一区二区三区中文| 欧美一级片免费看| 午夜久久久久久久久| 在线免费观看日韩欧美| 亚洲丝袜另类动漫二区| 国产成人精品免费看| 26uuu欧美| 久久99国产精品久久| 日韩三级中文字幕| 奇米色一区二区三区四区| 欧美精品色综合| 亚洲亚洲人成综合网络| 一本久久综合亚洲鲁鲁五月天| 国产精品久线在线观看| 成人在线综合网站| 国产精品午夜久久| www.99精品| 亚洲欧美中日韩| 91网站最新地址| 亚洲欧美日韩国产成人精品影院 | 亚洲一区视频在线| 91久久精品日日躁夜夜躁欧美| 亚洲精品中文在线影院| 91福利小视频| 性做久久久久久免费观看| 在线不卡中文字幕| 日本不卡一区二区三区高清视频| 欧美精品第一页| 免费观看一级特黄欧美大片| 日韩一区二区三区三四区视频在线观看| 午夜精品福利一区二区三区蜜桃| 久久99精品久久久久久久久久久久| 成人激情黄色小说| 亚洲激情av在线| 欧美视频中文字幕| 免费看欧美女人艹b| 26uuu国产在线精品一区二区| 国产精品996| 亚洲欧美一区二区三区国产精品| 色哟哟一区二区| 日本不卡中文字幕| 中文字幕av一区二区三区高| 99久久精品免费看国产免费软件| 亚洲黄色小视频| 日韩视频123| 99视频精品免费视频| 亚洲午夜国产一区99re久久| 欧美一区二区三区婷婷月色| 国产伦精品一区二区三区免费迷 | 成人午夜电影久久影院| 亚洲欧洲三级电影| 欧美午夜电影在线播放| 毛片一区二区三区| 国产精品毛片高清在线完整版| 91久久精品一区二区二区| 蜜臀精品一区二区三区在线观看|