• <tr id="yyy80"></tr>
  • <sup id="yyy80"></sup>
  • <tfoot id="yyy80"><noscript id="yyy80"></noscript></tfoot>
  • 99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看 ?

    嵌入式GameBoyAdvance模擬器移植實(shí)驗(yàn)

    2016-07-04 20:25:46葉立威姜海陽
    電腦知識(shí)與技術(shù) 2016年15期
    關(guān)鍵詞:源代碼模擬器按鍵

    葉立威+姜海陽

    摘要:論文將GameBoyAdvance游戲模擬器移植到嵌入式系統(tǒng)中。借助開放源代碼的跨平臺(tái)多媒體開發(fā)庫SDL,實(shí)現(xiàn)對(duì)現(xiàn)有基于PC的GameBoyAdvance模擬器源代碼進(jìn)行移植,包括對(duì)窗口的設(shè)計(jì)、按鍵事件的判斷和音頻播放等人機(jī)交互界面設(shè)計(jì),最終實(shí)現(xiàn)了GameBoyAdvance游戲在凌動(dòng)平臺(tái)上的運(yùn)行。

    關(guān)鍵詞: GameBoyAdvance游戲;SDL庫;嵌入式系統(tǒng)

    中圖分類號(hào):TP311 文獻(xiàn)標(biāo)識(shí)碼:A 文章編號(hào):1009-3044(2016)15-0122-04

    Abstract: GameBoyAdvance game simulator is transplanted to the embedded system. With open source cross platform multimedia development library SDL, the simulator source code based on PC is transplanted, including function such as the window design, key events of judgment and audio playback man-machine interface design, eventually the GameBoyAdvance game in the SDL operation is completed.

    Key words: GameBoyAdvance; SDL library; embedded system

    1 背景

    GameBoyAdvance游戲以其獨(dú)特的魅力吸引了大量的游戲愛好者。相對(duì)Game Boy游戲的早期版本,如GameBoy、Game BoyColor游戲,GameBoyAdvance游戲需要耗費(fèi)龐大的系統(tǒng)資源,隨著嵌入式處理器處理能力的迅猛發(fā)展,GBA游戲模擬器在嵌入式處理器的移植、運(yùn)行成為了可能。模擬器的移植工作是本論文中最大的內(nèi)容之一,移植工作顯得非常重要,它決定著這個(gè)論文是否能順利進(jìn)行下去。但是移植過程中會(huì)出現(xiàn)許多不確定因素,因素是多樣的,有被移植代碼的因素,也有來自SDL本身接口函數(shù)處理的因素,因此被移植代碼是否最終能夠在系統(tǒng)中正常運(yùn)行將遇到許多障礙。由于windows下的開發(fā)工具非常方便,因此我們的思路是先拋開SDL的移植,在去掉windows的API接口后先能夠確保代碼在windows上編譯通過,然后再將代碼進(jìn)行SDL移植,雖然看似多走了一段路,但這樣將移植風(fēng)險(xiǎn)降到了最低。

    GameBoyAdvance模擬器能夠正常在嵌入式系統(tǒng)下運(yùn)行,其移植過程是一個(gè)充滿挑戰(zhàn)的旅程,我們選擇VC++6.0,通過VC++6.0 windows開發(fā)工具的調(diào)試修改,使得GBA游戲能夠在windows下運(yùn)行,最終能夠移植到嵌入式系統(tǒng)下運(yùn)行。

    2 GameBoyAdvance在SDL上的移植

    由于GameBoyAdvance模擬器是開源代碼,所以在網(wǎng)上可以找到GameBoyAdvance模擬器的部分代碼,但這些代碼都只能在系統(tǒng)上編譯以及對(duì)GBA文件進(jìn)行解碼,但是調(diào)用windows的AIP函數(shù)會(huì)出錯(cuò),所以沒有游戲運(yùn)行窗口、按鍵響應(yīng)、音頻播放等基本功能,也就是說,一般用網(wǎng)上的開源源代碼編譯出來的可執(zhí)行程序不能直接運(yùn)行GBA游戲。

    SDL是一個(gè)用C語言編寫的免費(fèi)跨平臺(tái)多媒體開發(fā)庫,使用LGPL許可證,可用于游戲、游戲開發(fā)工具、模擬器、樣本演示、多媒體應(yīng)用等。[1]為了添加人機(jī)交互界面,我們直接將工程中的windows的API函數(shù)拋棄,與跨平臺(tái)的SDL相結(jié)合起來,調(diào)用SDL中的一些庫函數(shù),從而實(shí)現(xiàn)對(duì)GameBoyAdvance模擬器的移植。

    2.1 SDL庫函數(shù)的添加

    先將開源源代碼工程中的main.cpp文件更名newMain.cpp,把 GameBoyAdvance整個(gè)工程文件和newMain.cpp文件添加到VC++6.0的工程中,當(dāng)執(zhí)行編譯時(shí)會(huì)產(chǎn)生許多錯(cuò)誤,部分錯(cuò)誤如下:

    C:\GBV\vb_no_MMX\vb_no_MMX\win32\newMain.cpp(16): error C2062:type 'int' unexpected

    C:\GBV\vb_no_MMX\vb_no_MMX\win32\newMain.cpp(17) : error C2146: syntax error : missing ';' before identifier 'CALLBACK'

    C:\GBV\vb_no_MMX\vb_no_MMX\win32\newMain.cpp(17) : error C4430: missing type specifier - int assumed. Note: C++ does not support default-int

    C:\GBV\vb_no_MMX\vb_no_MMX\win32\newMain.cpp(17) : error C2146: syntax error : missing ';' before identifier 'WndProc'

    C:\GBV\vb_no_MMX\vb_no_MMX\win32\newMain.cpp(17) : error C2065: 'HWND' : undeclared identifier

    C:\GBV\vb_no_MMX\vb_no_MMX\win32\newMain.cpp(17) : error C2065: 'UINT' : undeclared identifier

    C:\GBV\vb_no_MMX\vb_no_MMX\win32\newMain.cpp(17) : error C2065: 'WPARAM' : undeclared identifier

    C:\GBV\vb_no_MMX\vb_no_MMX\win32\newMain.cpp(17) : error C2065: 'LPARAM' : undeclared identifier

    可以看出,編譯出錯(cuò)主要是因?yàn)樵垂こ淌侵苯诱{(diào)用windows下API函數(shù),但我們?cè)谝浦渤鯇⑦@些API函數(shù)的頭文件刪除了,部分刪除內(nèi)容如下:

    #include

    #include

    #include

    #include

    #include

    #include

    #include

    #include

    #include

    #include

    所以,如果要進(jìn)行SDL移植,就要加上SDL庫和模擬器源代碼的頭文件,添加內(nèi)容如下:

    #include

    #include

    #include

    #include

    #include

    #include

    #include "SDL.h"

    #include "GBA.h"

    #include "agbprint.h"

    #include "Flash.h"

    #include "Port.h"

    #include "debugger.h"

    #include "RTC.h"

    #include "Sound.h"

    #include "Text.h"

    #include "unzip.h"

    #include "Util.h"

    #include "gb/GB.h"

    #include "gb/gbGlobals.h"

    至此,GameBoyAdvance模擬器開源源代碼成功用SDL移植成無人機(jī)交互界面的模擬器。

    3 為GameBoyAdvance模擬器增加人機(jī)交互界面

    當(dāng)GameBoyAdvance在Windows上利用SDL實(shí)現(xiàn)了無人機(jī)交互界面移植成功后,模擬器還只是 “又聾又啞”,還需要添加人機(jī)交互界面才是一個(gè)完整的模擬器。這個(gè)過程包括了3大部分的內(nèi)容:游戲畫面、鍵盤響應(yīng)、聲音播放。

    3.1 窗體設(shè)計(jì)

    通過SDL建立窗口界面,在newMain.cpp的main函數(shù)里添加創(chuàng)建窗口語句,就可以建立在windows下的窗口,部分程序如下:

    if(cartridgeType == 0) {

    srcWidth = 240;

    srcHeight = 160;

    systemFrameSkip = frameSkip;

    } else if (cartridgeType == 1) {

    if(gbBorderOn) {

    srcWidth = 256;

    srcHeight = 224;

    gbBorderLineSkip = 256;

    gbBorderColumnSkip = 48;

    gbBorderRowSkip = 40;

    } else {

    srcWidth = 160;

    srcHeight = 144;

    gbBorderLineSkip = 160;

    gbBorderColumnSkip = 0;

    gbBorderRowSkip = 0;

    }

    systemFrameSkip = gbFrameSkip;

    } else {

    srcWidth = 320;

    srcHeight = 240;

    }

    destWidth = (sizeOption+1)*srcWidth;

    destHeight = (sizeOption+1)*srcHeight;

    surface = SDL_SetVideoMode(destWidth, destHeight, 16,SDL_ANYFORMAT|SDL_HWSURFACE|SDL_DOUBLEBUF | (fullscreen ? SDL_FULLSCREEN : 0));

    3.2 加入鍵盤響應(yīng)

    為了能響應(yīng)到按鍵事件,我們?cè)趎ewMain.cpp文件中利用SDL對(duì)按鍵事件響應(yīng)的判斷,自行編寫按鍵事件響應(yīng)函數(shù),從而可以達(dá)到對(duì)按鍵進(jìn)行響應(yīng),程序如下:

    while(SDL_PollEvent(&event) {

    if(event.type == SDL_KEYDOWN) {

    switch(event.key.keysym.sym) {

    case SDLK_UP: // GBA_UP

    ZSC_Key_UP();

    break;

    case SDLK_DOWN : //GBA_DOWN

    ZSC_Key_DOWN();

    break;

    case SDLK_LEFT: //GBA_LEFT

    ZSC_Key_LEFT();

    break;

    case SDLK_RIGHT: //GBA_RIGJT

    ZSC_Key_RIGHT();

    break;

    case SDLK_Enter: //GBA_Enter

    ZSC_Key_ Enter ();

    break;

    case SDLK_A: //GBA_A

    ZSC_Key_ A ();

    break;

    case SDLK_Z: //GBA_Z

    ZSC_Key_ Z ();

    break;

    case SDLK_X: //GBA_X

    ZSC_Key_ X ();

    break;

    case SDLK_Esc:

    ZSC_GameExit();

    break;

    ………

    }

    }

    }

    3.3 加入聲音播放引擎

    到目前為止,我們還剩最后的聲音處理了,怎樣處理聲音這一塊呢?借助SDL庫,將解碼聲音播放出來,我們最終解決了這個(gè)問題。在原本newMain.cpp中被注銷掉的代碼位置中填入SDL聲音引擎。

    首先在ZSC_systemSoundInit填入內(nèi)容下,其中是SDL庫對(duì)聲音驅(qū)動(dòng)的初始化代碼如下:

    bool ZSC_systemSoundInit()

    {

    SDL_AudioSpec audio;

    switch(soundQuality) {

    case 1:

    audio.freq = 44100;

    soundBufferLen = 1470*2;

    break;

    case 2:

    audio.freq = 22050;

    soundBufferLen = 736*2;

    break;

    case 4:

    audio.freq = 11025;

    soundBufferLen = 368*2;

    break;

    }

    audio.format=AUDIO_S16SYS;

    audio.channels = 2;

    audio.samples = 1024;

    audio.callback = ZSC_soundCallback;

    audio.userdata = NULL;

    if(SDL_OpenAudio(&audio, NULL)) {

    fprintf(stderr,"Failed to open audio: %s\n", SDL_GetError());

    return false;

    }

    soundBufferTotalLen = soundBufferLen*10;

    cond = SDL_CreateCond();

    mutex = SDL_CreateMutex();

    sdlSoundLen = 0;

    systemSoundOn = true;

    return true; }

    在SDL_AudioSpec audio結(jié)構(gòu)中,定義了聲音播放的回調(diào)函數(shù)ZSC_soundCallback,該函數(shù)將游戲中解碼的音頻數(shù)據(jù)sdlBuffer不斷拷貝到播放數(shù)據(jù)流中。部分程序如下:

    void ZSC_soundCallback(void *,u8 *stream,int len)

    {

    if(!emulating)

    return;

    SDL_mutexP(mutex);

    if(!speedup && !throttle) {

    while(sdlSoundLen < 2048*2) {

    if(emulating)

    SDL_CondWait(cond, mutex);

    else

    break;

    }

    }

    if(emulating) {

    memcpy(stream, sdlBuffer, len);

    }

    sdlSoundLen = 0;

    if(mutex)

    SDL_mutexV(mutex);

    }

    經(jīng)過分析,所播放的音頻數(shù)據(jù)是通過WriteSample函數(shù)來實(shí)現(xiàn)解碼程序和播放程序相互連接的,由 WriteSample函數(shù)代碼和WriteSample在sound.c中被調(diào)用可以看出來WriteSample函數(shù)是聲音處理的關(guān)鍵函數(shù),部分程序如下:

    void WriteSample(short int l, short int r)

    {

    if (audio_is_open == 0) {

    return;

    }

    sample[0][sample_pos] = (short) (l >> 8);

    sample[1][sample_pos] = (short) (r >> 8);

    sample_pos++;

    if (sample_pos >= AUDIOBUFFER) {

    play_sample(sample[0], sample[1]);

    sample_pos = 0;

    }

    }

    WriteSample中,當(dāng)音頻數(shù)據(jù)采集到AUDIOBUFFER的長度后 ,音頻數(shù)據(jù)通過 play_sample播放出去。我們將play_sample填入代碼,將采集到的音頻數(shù)據(jù)存儲(chǔ)在final_wave中,由回調(diào)函數(shù)waveout播放出去。部分程序如下所示:

    void play_sample(signed char *dataL, signed char *dataR)

    {

    int i;

    for (i = 0; i < 2049; i++)

    {

    sdlBuffer [waveptr] = (dataL[i] +dataR[i] );

    waveptr++;

    if ( waveptr == 2048 )

    {

    waveptr = 0;

    wavflag = 2; wavdone=0;

    }

    else if ( waveptr == 1024 )

    {

    wavflag = 1; wavdone=0;

    }

    while (!wavdone) SDL_Delay(0);

    }

    }

    因?yàn)樵a中的close_audio用來關(guān)閉聲音設(shè)備,而SDL的 SDL_CloseAudio()函數(shù)可以用來實(shí)現(xiàn)對(duì)聲音設(shè)備的關(guān)閉,因此在close_audio中填入代碼:

    void close_audio(void)

    {

    SDL_CloseAudio();

    audio_is_open = 0;

    }

    至此模擬器能夠顯示游戲畫面、播放游戲音樂、響應(yīng)用戶指令,已經(jīng)能夠運(yùn)行在凌動(dòng)平臺(tái)下了,有了上述基礎(chǔ)下一步只需要做一些小小改動(dòng)即可運(yùn)行在嵌入式系統(tǒng),如linux系統(tǒng)、WinCE等等。移植GameBoyAdvance模擬器運(yùn)行游戲如圖1所示:

    4 結(jié)束語

    論文成功的將GameBoyAdvance游戲模擬器成功移植到凌動(dòng)平臺(tái)上。通過測試,支持大部分網(wǎng)絡(luò)下載的GBA文件格式的游戲。游戲畫面清晰流暢,聲音,按鍵操作可靠。論文雖然達(dá)到了預(yù)期目的,但仍有許多可以改善的地方,如在游戲運(yùn)行中存在聲音有輕微不流暢,畫面有輕微卡、頓的現(xiàn)象,將在后續(xù)的研究過程中進(jìn)行改進(jìn)。

    參考文獻(xiàn):

    [1] 王園園, 高明煜, 曾毓. 基于 SDL 庫的嵌入式平臺(tái)中文顯示技術(shù)研究[J]. 計(jì)算機(jī)系統(tǒng)應(yīng)用, 2009(4).

    [2] 顧葉鋒,付宇卓,魯欣. 基于ARM Linux 的GameBoy模擬器移植和優(yōu)化研究[J]. 計(jì)算機(jī)仿真, 2005(9).

    [3] 趙成. 嵌入式系統(tǒng)應(yīng)用基礎(chǔ):基于S3C2410A的SKYEYE的仿真與實(shí)踐[M]. 北京: 國防工業(yè)出版社, 2012.

    [4] 謝蓉, 巢愛棠. Linux基礎(chǔ)及應(yīng)用[M]. 北京: 中國鐵道出版社, 2005.

    猜你喜歡
    源代碼模擬器按鍵
    人工智能下復(fù)雜軟件源代碼缺陷精準(zhǔn)校正
    飛行模擬器大揭秘
    航空世界(2022年3期)2022-06-01 06:13:42
    了不起的安檢模擬器
    基于有限狀態(tài)機(jī)的按鍵檢測程序設(shè)計(jì)
    電子制作(2021年3期)2021-06-16 03:14:26
    基于TXL的源代碼插樁技術(shù)研究
    盲盒模擬器
    劃船模擬器
    軟件源代碼非公知性司法鑒定方法探析
    一種多方向?qū)Ч獍存I結(jié)構(gòu)設(shè)計(jì)
    電子制作(2016年1期)2016-11-07 08:43:05
    揭秘龍湖產(chǎn)品“源代碼”
    国产伦在线观看视频一区| 成人毛片60女人毛片免费| av专区在线播放| 熟妇人妻不卡中文字幕| videos熟女内射| 极品少妇高潮喷水抽搐| 中文字幕久久专区| 99久久人妻综合| 国产精品蜜桃在线观看| 久久草成人影院| 直男gayav资源| 真实男女啪啪啪动态图| 午夜精品一区二区三区免费看| 久久久久久久亚洲中文字幕| 免费av观看视频| 黄色一级大片看看| 精品不卡国产一区二区三区| 成人毛片a级毛片在线播放| 91aial.com中文字幕在线观看| 99久久精品热视频| 国产精品日韩av在线免费观看| 亚洲aⅴ乱码一区二区在线播放| 精品久久久精品久久久| 亚洲欧美一区二区三区国产| 麻豆av噜噜一区二区三区| 午夜精品国产一区二区电影 | 街头女战士在线观看网站| 精品久久久久久久久亚洲| 免费不卡的大黄色大毛片视频在线观看 | 2018国产大陆天天弄谢| 国产精品精品国产色婷婷| av卡一久久| 欧美日韩国产mv在线观看视频 | 精品一区在线观看国产| av在线观看视频网站免费| 天天一区二区日本电影三级| 免费大片黄手机在线观看| 成人高潮视频无遮挡免费网站| 大香蕉久久网| av网站免费在线观看视频 | 日韩制服骚丝袜av| 男女国产视频网站| 91久久精品国产一区二区成人| 最近的中文字幕免费完整| 中文字幕人妻熟人妻熟丝袜美| 国产成人a区在线观看| 欧美激情久久久久久爽电影| 国产爱豆传媒在线观看| 美女黄网站色视频| 超碰av人人做人人爽久久| 国模一区二区三区四区视频| 亚洲欧美清纯卡通| 国产黄色视频一区二区在线观看| 欧美成人午夜免费资源| 国产激情偷乱视频一区二区| 精品少妇黑人巨大在线播放| av天堂中文字幕网| 午夜日本视频在线| 久久久久久久久大av| 久久久精品欧美日韩精品| 欧美xxxx黑人xx丫x性爽| 国产麻豆成人av免费视频| 亚洲精品乱码久久久v下载方式| 青春草视频在线免费观看| 内射极品少妇av片p| 大话2 男鬼变身卡| 婷婷六月久久综合丁香| 淫秽高清视频在线观看| 一区二区三区四区激情视频| 丝袜美腿在线中文| 亚洲精品日本国产第一区| 欧美日韩国产mv在线观看视频 | 亚洲欧美精品专区久久| 天堂√8在线中文| 亚洲av一区综合| 97在线视频观看| 观看美女的网站| 最近手机中文字幕大全| 久久精品国产亚洲网站| 午夜精品在线福利| 一夜夜www| www.av在线官网国产| 精品国产一区二区三区久久久樱花 | 亚洲国产精品成人久久小说| 一级毛片我不卡| 午夜精品在线福利| 久久久久精品性色| 免费黄色在线免费观看| 午夜精品在线福利| 亚洲精品乱码久久久v下载方式| 午夜免费观看性视频| 搞女人的毛片| av国产久精品久网站免费入址| 丰满少妇做爰视频| 在线免费观看不下载黄p国产| 三级国产精品片| 免费黄网站久久成人精品| 蜜桃亚洲精品一区二区三区| 特级一级黄色大片| 成人毛片60女人毛片免费| 丰满人妻一区二区三区视频av| 好男人视频免费观看在线| 亚洲美女搞黄在线观看| 99久久九九国产精品国产免费| 91午夜精品亚洲一区二区三区| 久久久国产一区二区| 亚洲精品国产av成人精品| 久久精品国产鲁丝片午夜精品| 一个人看视频在线观看www免费| 国产极品天堂在线| 亚洲熟妇中文字幕五十中出| 久久久久九九精品影院| 老师上课跳d突然被开到最大视频| 欧美日本视频| 亚洲国产高清在线一区二区三| 成人毛片60女人毛片免费| 三级国产精品欧美在线观看| 人妻夜夜爽99麻豆av| 国产精品一区二区性色av| 亚洲第一区二区三区不卡| 欧美日韩精品成人综合77777| 日本猛色少妇xxxxx猛交久久| 日日撸夜夜添| 97人妻精品一区二区三区麻豆| 日韩制服骚丝袜av| 高清日韩中文字幕在线| xxx大片免费视频| 综合色av麻豆| 最近2019中文字幕mv第一页| 国产日韩欧美在线精品| 三级国产精品欧美在线观看| av国产免费在线观看| 国产精品三级大全| 两个人视频免费观看高清| 成人av在线播放网站| 热99在线观看视频| 美女国产视频在线观看| 欧美zozozo另类| 午夜福利视频1000在线观看| 久久久久久久国产电影| 色5月婷婷丁香| 免费看光身美女| 精品久久久久久久久亚洲| 亚洲aⅴ乱码一区二区在线播放| 亚洲av电影不卡..在线观看| 国产精品一区二区在线观看99 | 又粗又硬又长又爽又黄的视频| 国产精品久久视频播放| 中文字幕亚洲精品专区| 国产成人精品福利久久| 久久久午夜欧美精品| 国产精品日韩av在线免费观看| 欧美xxxx性猛交bbbb| 国产伦精品一区二区三区四那| 国产精品综合久久久久久久免费| 亚洲欧洲日产国产| 少妇裸体淫交视频免费看高清| 91精品伊人久久大香线蕉| 18禁裸乳无遮挡免费网站照片| 亚洲成人久久爱视频| 99热全是精品| 狠狠精品人妻久久久久久综合| 午夜激情欧美在线| 亚洲av不卡在线观看| 天堂影院成人在线观看| 日韩国内少妇激情av| 国产黄色免费在线视频| 欧美一区二区亚洲| 2021少妇久久久久久久久久久| 国产大屁股一区二区在线视频| 久久久久久久久久人人人人人人| 看非洲黑人一级黄片| 听说在线观看完整版免费高清| 简卡轻食公司| av专区在线播放| 久久热精品热| 日韩强制内射视频| 精品欧美国产一区二区三| 久久久久久久亚洲中文字幕| 国产伦一二天堂av在线观看| 久久久久九九精品影院| 两个人视频免费观看高清| 婷婷色av中文字幕| av在线亚洲专区| av播播在线观看一区| 国产av在哪里看| 热99在线观看视频| 亚洲精品久久午夜乱码| 秋霞在线观看毛片| 91精品一卡2卡3卡4卡| av免费观看日本| 一二三四中文在线观看免费高清| 特大巨黑吊av在线直播| 国产精品一区二区在线观看99 | 午夜亚洲福利在线播放| 国产亚洲一区二区精品| 国产色爽女视频免费观看| 亚洲最大成人中文| 国产伦精品一区二区三区视频9| 欧美激情在线99| 成人二区视频| 女人久久www免费人成看片| 国产不卡一卡二| 亚洲国产欧美人成| 简卡轻食公司| 午夜视频国产福利| 久久精品人妻少妇| 日日撸夜夜添| 最后的刺客免费高清国语| 久久草成人影院| 国产成人午夜福利电影在线观看| 免费黄色在线免费观看| 18禁在线无遮挡免费观看视频| 国产一级毛片在线| 亚洲色图av天堂| 男女下面进入的视频免费午夜| 免费大片18禁| 春色校园在线视频观看| 十八禁国产超污无遮挡网站| 午夜福利网站1000一区二区三区| 久久久久久国产a免费观看| 三级毛片av免费| 日韩,欧美,国产一区二区三区| 精品一区二区免费观看| 亚洲综合精品二区| a级一级毛片免费在线观看| 国产极品天堂在线| 天天躁日日操中文字幕| 免费黄色在线免费观看| 国产午夜精品一二区理论片| 欧美精品一区二区大全| 婷婷六月久久综合丁香| 卡戴珊不雅视频在线播放| 亚洲av不卡在线观看| 成年女人在线观看亚洲视频 | 国产精品福利在线免费观看| 亚洲一级一片aⅴ在线观看| 天美传媒精品一区二区| 成年人午夜在线观看视频 | 久久久久久久久久久免费av| 亚洲精品色激情综合| 久久久久久久久大av| or卡值多少钱| 亚洲国产精品成人久久小说| 欧美97在线视频| 1000部很黄的大片| 国产亚洲午夜精品一区二区久久 | 麻豆av噜噜一区二区三区| 97超碰精品成人国产| 纵有疾风起免费观看全集完整版 | 免费黄色在线免费观看| 成人午夜精彩视频在线观看| 成人毛片60女人毛片免费| 亚洲熟妇中文字幕五十中出| 国语对白做爰xxxⅹ性视频网站| 天堂网av新在线| 日韩精品青青久久久久久| 亚洲精品色激情综合| 国产麻豆成人av免费视频| 亚洲国产日韩欧美精品在线观看| av播播在线观看一区| 综合色丁香网| 国产精品一二三区在线看| 免费无遮挡裸体视频| 国产精品av视频在线免费观看| 国产老妇伦熟女老妇高清| 天堂av国产一区二区熟女人妻| 国产午夜福利久久久久久| 99久久精品热视频| 亚洲精品成人久久久久久| 亚洲精品一二三| 国产成人精品久久久久久| 亚洲18禁久久av| 午夜免费激情av| 中文字幕免费在线视频6| 免费大片黄手机在线观看| 亚洲精品久久久久久婷婷小说| 免费av毛片视频| 久久久久久久久久久丰满| 国产伦在线观看视频一区| 亚洲国产精品专区欧美| 国产片特级美女逼逼视频| 欧美激情久久久久久爽电影| 一边亲一边摸免费视频| 女的被弄到高潮叫床怎么办| 免费观看av网站的网址| 狂野欧美激情性xxxx在线观看| 99久国产av精品| 网址你懂的国产日韩在线| 免费不卡的大黄色大毛片视频在线观看 | 亚洲最大成人av| 国产片特级美女逼逼视频| 又黄又爽又刺激的免费视频.| av.在线天堂| 亚洲av成人精品一二三区| 一二三四中文在线观看免费高清| 人妻系列 视频| 国产精品不卡视频一区二区| 国产三级在线视频| av卡一久久| 国产成人精品一,二区| 免费高清在线观看视频在线观看| 好男人视频免费观看在线| av在线老鸭窝| 午夜日本视频在线| 久久精品久久精品一区二区三区| 别揉我奶头 嗯啊视频| www.av在线官网国产| 亚洲无线观看免费| 汤姆久久久久久久影院中文字幕 | 免费大片黄手机在线观看| 日本午夜av视频| 免费观看无遮挡的男女| 久久久久九九精品影院| 一个人观看的视频www高清免费观看| 又爽又黄无遮挡网站| 久久久久久久久久久免费av| 欧美另类一区| 久热久热在线精品观看| 欧美不卡视频在线免费观看| 少妇的逼好多水| 国产91av在线免费观看| 最近中文字幕2019免费版| 嫩草影院精品99| 精品人妻一区二区三区麻豆| 国产av在哪里看| 色播亚洲综合网| 女人被狂操c到高潮| 欧美三级亚洲精品| 久久精品综合一区二区三区| 国产精品一二三区在线看| 伊人久久精品亚洲午夜| 国产精品国产三级国产av玫瑰| 国产亚洲一区二区精品| 麻豆久久精品国产亚洲av| 日本猛色少妇xxxxx猛交久久| 久久精品国产鲁丝片午夜精品| 亚洲精品自拍成人| 欧美成人一区二区免费高清观看| 亚洲精品中文字幕在线视频 | 亚洲最大成人手机在线| 亚洲欧美中文字幕日韩二区| 欧美潮喷喷水| 久久精品人妻少妇| 美女脱内裤让男人舔精品视频| 国产女主播在线喷水免费视频网站 | 国产成人aa在线观看| www.av在线官网国产| 又粗又硬又长又爽又黄的视频| 国产老妇伦熟女老妇高清| 国产伦在线观看视频一区| 七月丁香在线播放| 亚洲国产色片| 可以在线观看毛片的网站| 亚洲国产精品sss在线观看| 日本免费在线观看一区| 日韩中字成人| 久久韩国三级中文字幕| 国产在线男女| 精品一区二区免费观看| 简卡轻食公司| 网址你懂的国产日韩在线| 久久99蜜桃精品久久| 少妇猛男粗大的猛烈进出视频 | 亚洲三级黄色毛片| 男人舔奶头视频| 美女内射精品一级片tv| 国产在线一区二区三区精| 天天躁夜夜躁狠狠久久av| 国产精品爽爽va在线观看网站| av在线老鸭窝| 亚洲欧洲国产日韩| 人妻系列 视频| 大陆偷拍与自拍| 精品一区在线观看国产| 真实男女啪啪啪动态图| 午夜福利高清视频| 国产精品av视频在线免费观看| 亚洲精品成人av观看孕妇| 高清午夜精品一区二区三区| 国产综合精华液| 80岁老熟妇乱子伦牲交| 亚洲18禁久久av| av线在线观看网站| 日韩伦理黄色片| 久久99热6这里只有精品| 身体一侧抽搐| 卡戴珊不雅视频在线播放| 国产伦在线观看视频一区| 亚洲国产欧美人成| 免费黄网站久久成人精品| 亚洲国产高清在线一区二区三| 深爱激情五月婷婷| av播播在线观看一区| 国产亚洲91精品色在线| 建设人人有责人人尽责人人享有的 | 97精品久久久久久久久久精品| 久久久久国产网址| 国产欧美另类精品又又久久亚洲欧美| 三级国产精品片| 免费观看在线日韩| 成人漫画全彩无遮挡| 欧美极品一区二区三区四区| 国产白丝娇喘喷水9色精品| 又大又黄又爽视频免费| 97热精品久久久久久| 精品国内亚洲2022精品成人| 22中文网久久字幕| 舔av片在线| 亚洲精品一区蜜桃| 深夜a级毛片| 在线免费十八禁| 成年版毛片免费区| 国产高清国产精品国产三级 | 国产亚洲精品久久久com| 搞女人的毛片| 午夜激情久久久久久久| 丝瓜视频免费看黄片| 亚洲激情五月婷婷啪啪| 在线观看美女被高潮喷水网站| 欧美97在线视频| 久久久久久久久久黄片| 亚洲天堂国产精品一区在线| 草草在线视频免费看| 亚洲av不卡在线观看| av播播在线观看一区| 99热全是精品| 永久免费av网站大全| 最后的刺客免费高清国语| 女人久久www免费人成看片| 综合色丁香网| 人人妻人人看人人澡| 久久人人爽人人爽人人片va| 九九爱精品视频在线观看| 91午夜精品亚洲一区二区三区| 国产人妻一区二区三区在| 国产精品一区二区三区四区免费观看| 久久久午夜欧美精品| 六月丁香七月| 人人妻人人看人人澡| 777米奇影视久久| av线在线观看网站| 美女大奶头视频| 三级毛片av免费| 亚洲av日韩在线播放| 性色avwww在线观看| 色综合色国产| 综合色丁香网| 亚洲精品一二三| 有码 亚洲区| 国产单亲对白刺激| 深夜a级毛片| 欧美丝袜亚洲另类| 亚洲av日韩在线播放| 亚洲综合精品二区| 精品不卡国产一区二区三区| 精品久久久久久久末码| 看十八女毛片水多多多| 九色成人免费人妻av| 成人鲁丝片一二三区免费| 人妻夜夜爽99麻豆av| 春色校园在线视频观看| 黄色日韩在线| 国产av国产精品国产| 国产精品99久久久久久久久| 我要看日韩黄色一级片| 日韩一区二区视频免费看| 亚州av有码| 日韩欧美国产在线观看| 精品国产三级普通话版| 亚洲欧美一区二区三区国产| 国产女主播在线喷水免费视频网站 | 亚洲精品国产av成人精品| 国产成人精品福利久久| 日本免费a在线| 日日摸夜夜添夜夜添av毛片| 搡老乐熟女国产| 看黄色毛片网站| 国产成人福利小说| 久久精品熟女亚洲av麻豆精品 | 99久国产av精品国产电影| 熟女电影av网| 国语对白做爰xxxⅹ性视频网站| 人人妻人人澡人人爽人人夜夜 | 女人被狂操c到高潮| 寂寞人妻少妇视频99o| 亚洲aⅴ乱码一区二区在线播放| 国产探花极品一区二区| 欧美性感艳星| 午夜福利成人在线免费观看| 日韩欧美精品v在线| 国产精品一二三区在线看| 自拍偷自拍亚洲精品老妇| 久久久久性生活片| 2022亚洲国产成人精品| 国产乱来视频区| 亚洲欧美一区二区三区黑人 | 国产黄频视频在线观看| 亚洲aⅴ乱码一区二区在线播放| 亚洲精品一区蜜桃| 草草在线视频免费看| 亚洲av在线观看美女高潮| 我的女老师完整版在线观看| 直男gayav资源| av免费观看日本| 亚洲国产成人一精品久久久| 日韩欧美 国产精品| 美女cb高潮喷水在线观看| 国产av码专区亚洲av| 国产精品久久视频播放| 老司机影院毛片| 2021少妇久久久久久久久久久| 日韩一区二区视频免费看| 国产男人的电影天堂91| 午夜福利成人在线免费观看| 免费观看a级毛片全部| 国产一级毛片在线| 3wmmmm亚洲av在线观看| 亚洲精品国产av蜜桃| 亚洲伊人久久精品综合| 最近最新中文字幕大全电影3| 国产成人免费观看mmmm| 国产在视频线在精品| 国产精品一及| 日本一本二区三区精品| 国产av不卡久久| 成年女人在线观看亚洲视频 | freevideosex欧美| 插阴视频在线观看视频| 熟妇人妻不卡中文字幕| 99久久精品热视频| 高清毛片免费看| 在线免费观看的www视频| 日韩一区二区三区影片| av播播在线观看一区| 蜜桃亚洲精品一区二区三区| 亚洲精品日韩av片在线观看| 狠狠精品人妻久久久久久综合| 99热网站在线观看| 一级爰片在线观看| 夫妻午夜视频| 日韩在线高清观看一区二区三区| 中国国产av一级| 国产成人午夜福利电影在线观看| 一夜夜www| 亚洲成人av在线免费| 国产精品熟女久久久久浪| 国产成人精品福利久久| 婷婷色综合www| 男女啪啪激烈高潮av片| 超碰97精品在线观看| 久久精品夜夜夜夜夜久久蜜豆| 国产精品麻豆人妻色哟哟久久 | 亚洲美女搞黄在线观看| 久久99蜜桃精品久久| 大香蕉97超碰在线| 久久亚洲国产成人精品v| 亚洲欧美日韩无卡精品| 亚洲怡红院男人天堂| 少妇熟女欧美另类| 免费大片黄手机在线观看| 亚洲欧美成人综合另类久久久| 国产综合懂色| 国产一区二区亚洲精品在线观看| 亚洲人成网站高清观看| 少妇人妻一区二区三区视频| 亚洲欧美一区二区三区国产| 婷婷色综合大香蕉| 99热这里只有是精品50| 狂野欧美激情性xxxx在线观看| 国内精品一区二区在线观看| 99久久精品国产国产毛片| av在线观看视频网站免费| 日本三级黄在线观看| 欧美精品国产亚洲| 国产成人午夜福利电影在线观看| 国产av国产精品国产| 在线天堂最新版资源| 最近的中文字幕免费完整| 精华霜和精华液先用哪个| 真实男女啪啪啪动态图| 国产亚洲最大av| 国产探花极品一区二区| 国产成人a∨麻豆精品| 精品熟女少妇av免费看| 欧美xxxx性猛交bbbb| 欧美bdsm另类| 中文字幕久久专区| 国产精品精品国产色婷婷| 国产探花极品一区二区| 一区二区三区四区激情视频| 在线a可以看的网站| 国产成人aa在线观看| 黄片wwwwww| 丝袜喷水一区| 欧美另类一区| 一个人看视频在线观看www免费| 大片免费播放器 马上看| 三级国产精品欧美在线观看| 人妻系列 视频| 日韩伦理黄色片| 99久久人妻综合| 777米奇影视久久| 日本一本二区三区精品| 国产精品精品国产色婷婷| 少妇高潮的动态图| 国内精品宾馆在线| 亚洲精品久久久久久婷婷小说| 丝袜美腿在线中文| 成人鲁丝片一二三区免费| 搡女人真爽免费视频火全软件| 一级爰片在线观看| 亚洲精品国产成人久久av| 亚洲最大成人中文| 禁无遮挡网站|