色五月色开心色婷婷色丁香,五月婷婷丁香花综合网,婷婷丁香五月激情综合在线,五月婷婷六月丁香动漫,婷婷丁香五月激情综合在线,丁香花中文字幕在线观看,播五月色五月开心五月网,开心激情综合网,狠狠色丁香婷婷综合最新地址,丁香视频在线观看,狠狠做六月爱婷婷综合av,久久激情五月丁香伊人

ARTICLE DETAIL

資訊詳情

深耕商務(wù)建站與企業(yè)官網(wǎng)運營的一線實戰(zhàn)洞察。

DJGPP 2.04:DOS下32位C/C++編譯器套件搭建與使用指南

DJGPP 2.04:DOS下32位C/C++編譯器套件搭建與使用指南 簡介DJGPP 2.04 是一套面向 DOS 環(huán)境的開源 C/C 開發(fā)工具鏈主要解決在老式 PC、虛擬機或嵌入式場景中源碼編譯與程序構(gòu)建的問題適合復(fù)古計算愛好者、系統(tǒng)原理學(xué)習(xí)者以及需要在 DOS 下開發(fā)游戲或系統(tǒng)級軟件的開發(fā)者。該版本由 GNU 工具移植而來整合了 GCC 編譯器、匯編器、鏈接器、GNU Make、調(diào)試器 GDB、庫管理器及大量標(biāo)準(zhǔn)頭文件和庫文件可在沒有現(xiàn)代操作系統(tǒng)的條件下完成從編輯、編譯到鏈接的完整開發(fā)流程。整套壓縮包共 372 個文件以 h 頭文件、exe 可執(zhí)行程序、info 說明文檔以及 djl、lib、bat 等輔助文件為主壓縮后約 6.95MB體積緊湊便于在早期硬件環(huán)境部署。資源與《Linux0.01內(nèi)核分析與操作系統(tǒng)設(shè)計配書光盤》教學(xué)場景緊密相關(guān)同時附帶 man 手冊頁與示例代碼幫助讀者理解早期操作系統(tǒng)內(nèi)核、底層啟動流程及 DOS 平臺編程方式。目前已有 405 人學(xué)習(xí)下載對研究編譯工具發(fā)展史和操作系統(tǒng)教學(xué)均有獨特價值。1. DJGPP 2.04 是什么一個讓 32 位 C/C 在 DOS 里跑起來的編譯器套件DJGPP 2.04 這個名字在今天的開發(fā)者眼里很陌生但只要你碰 DOS 下的復(fù)古游戲、老式工業(yè)電腦或者想用現(xiàn)代 C 標(biāo)準(zhǔn)給老系統(tǒng)寫點正經(jīng)工具它就繞不開。它做的事是把 GCC、make、gdb 和 binutils 整個搬進 DOS 環(huán)境讓你在命令行下敲一條 gcc 命令就編譯出能在純 DOS 里運行的 32 位保護模式程序而不是 Turbo C 那種只能摸 640KB 內(nèi)存的 16 位產(chǎn)物。DJGPP 2.04 是這一系列的最后一個主流發(fā)布解決了一批老內(nèi)核的兼容性問題補齊了 C 標(biāo)準(zhǔn)庫在 DOS 下的可用度。適合它的場景很明確老硬件上的實用工具、DOS 演示和游戲開發(fā)、操作系統(tǒng)的教學(xué)實驗。它的目標(biāo)用戶不是要做現(xiàn)代 GUI 的人而是需要讓代碼在舊環(huán)境下可靠運行的人。2. 搭建 DJGPP 2.04 開發(fā)環(huán)境解壓、環(huán)境變量與第一個可執(zhí)行文件DJGPP 2.04 的安裝不是雙擊一個 exe 就完事它更像一套綠色軟件官方把整套工具鏈打散成一批 zip 包下載回歸 DOS 目錄結(jié)構(gòu)后解壓、設(shè)兩個環(huán)境變量就能用。這個流程二十多年沒變過反而成了它的優(yōu)點——不寫注冊表不留服務(wù)刪掉整個目錄就是卸載換機器遷移也只需要拷走整個目錄。2.1 下載與目錄規(guī)劃為什么堅持干凈的根目錄我一般會把所有 zip 包解壓到同一個根目錄比如 C:\DJGPP。這里的第一個坑是路徑里不能有空格DJGPP 自身的腳本和 GNU make 在解析帶空格的路徑時會切錯參數(shù)頭文件路徑拼接失敗報錯卻指向 stdio.h排查起來很繞。第二個坑是解壓時必須保留 zip 內(nèi)自帶的目錄層次很多人習(xí)慣右鍵“解壓到當(dāng)前文件夾”一下子把 bin、include、lib 全攤平在一個目錄里gcc 找不到標(biāo)準(zhǔn)庫各種 No such file 跟著來。解壓完成后檢查五個位置bin\gcc.exe、bin\g.exe、bin\make.exe、lib\libc.a、include\stdio.h。這五個在主體就算齊了。C 用戶還要確認 lib\libstdcxx.a 存在DJGPP 2.04 的 C 運行庫拆成 libstdcxx 和 libsupcxx 兩個包漏了其中一個鏈接階段會報一堆 undefined reference 到 operator new看不出是庫缺失還是代碼問題。提示不要圖省事下載別人精簡過的“綠色版 / 一鍵版”。DJGPP 工具鏈整體耦合編譯器、binutils、libc 之間對目標(biāo)文件格式的版本非常敏感混用精簡包會踩到 4.5 節(jié)的鏈接錯誤。2.2 配置 DJGPP 與 PATH兩個環(huán)境變量決定編譯器的認知DJGPP 2.04 靠兩個環(huán)境變量定位整個工具鏈一個是 DJGPP指向 djgpp.env 文件一個是 PATH指向 bin 目錄。Windows cmd 里的最小配置如下。set DJGPPC:\DJGPP\DJGPP.ENV set PATHC:\DJGPP\BIN;%PATH%第一行的邏輯是gcc、gdb、make 啟動后會讀取 DJGPP 變量指向的 djgpp.env這個 env 文件里寫好了默認 CPU 類型、默認編譯選項、庫搜索路徑和頭文件搜索路徑。變量沒設(shè)DJGPP 工具就不知道自己該按哪個平臺工作等價于一個不知道自己目標(biāo)的編譯器。第二行把 bin 塞進 PATH讓你在任何目錄下敲 gcc 都能被找到。最容易被忽略的是 DJGPP 這個名字必須全大寫工具鏈內(nèi)部按大寫變量名精確匹配cmd 的 set 不區(qū)分大小寫但傳給子進程時變量名是小寫就真的讀不到。我一般會直接把這兩個變量寫進 Windows 系統(tǒng)環(huán)境變量而不是每次開 cmd 重新 set。因為編譯老代碼時經(jīng)常同時開好幾個終端一個跑 make一個跑 gdb一個盯匯編輸出只在一個窗口 set 會漏掉另外兩個報錯時還以為編譯器壞了。寫完系統(tǒng)變量要記得重啟終端讓新進程重新加載環(huán)境當(dāng)前窗口里的舊 PATH 不會自動更新這是很多人配完環(huán)境變量發(fā)現(xiàn)不生效的第一個原因。2.3 最小編譯命令從 hello.c 到 hello.exe 的完整流程環(huán)境變量就緒后在工作目錄新建一個 hello.c。#include stdio.h int main(void) { printf(hello from DJGPP 2.04\n); return 0; }在命令行執(zhí)行編譯cd C:\DJGPP\WORK gcc -O2 -stdgnu99 -o hello.exe hello.c選項拆開看-O2 是常用的優(yōu)化級別對 DOS 目標(biāo)最穩(wěn)妥-stdgnu99 把 C 標(biāo)準(zhǔn)定到 C99 加 GNU 擴展DJGPP 的 stdio.h 對 C99 的覆蓋比 C11 完整老代碼也熟悉這套-o hello.exe 指定輸出名不寫的話默認生成 a.out在 DOS 下還得改名才能運行容易漏。編譯成功會多出 hello.exe。我跑生成的 exe 時被 Windows 彈過一次“不是有效的 Win32 應(yīng)用程序”這是正?,F(xiàn)象它是 MZ 頭的 DOS 可執(zhí)行程序頭部綁了一小段 DOS 擴展器 stubWindows 的 DOS 虛擬機不支持 32 位 DPMI 程序所以雙擊報錯不等于編譯失敗。想確認產(chǎn)物身份用 16 進制編輯器看前幾個字節(jié)MZ 頭后面不是 PE 頭而是 DOS 擴展器的實模式代碼。2.4 運行的秘密CWSDPMI 與 DOS 擴展器怎么把 32 位程序送進實模式系統(tǒng)要理解 hello.exe 為什么能跑在 DOS 里先得厘清運行模型。DOS 內(nèi)核只認識 16 位實模式程序CPU 被限制在 1MB 地址空間內(nèi)而 DJGPP 2.04 編譯出來的是 32 位保護模式代碼兩者之間隔著一層轉(zhuǎn)換這層就是 DOS 擴展器。DJGPP 使用的擴展器是 CWSDPMI一個 DPMI 服務(wù)程序。它的執(zhí)行順序是在 DOS 下敲 hello.exeDOS 按 MZ 格式把程序裝入內(nèi)存程序入口處是一小段實模式 stubstub 會在當(dāng)前目錄或 PATH 里找 CWSDPMI.EXE加載它再把 CPU 從實模式切到保護模式建立 DPMI 服務(wù)完成切換后才跳轉(zhuǎn)到真正的 32 位 C 運行時入口最后執(zhí)行 main。所以 hello.exe 不是一個獨立自足的文件發(fā)布時務(wù)必把 CWSDPMI.EXE 一起帶上否則換一臺沒有它的機器程序會在加載階段就退出界面都不給你一個。如果不想讓用戶帶外部文件可以用 bin 下的 stubedit.exe 把 CWSDPMI 靜態(tài)嵌進可執(zhí)行文件。stubedit hello.exe這個命令會打開一個底層的 stub 編輯界面在界面上把 cwsdpmi 的 stub 綁定到當(dāng)前 exe。綁定后文件會增大 10KB 左右但啟動時不依賴外部 CWSDPMI。常見做法是開發(fā)期用外部 CWSDPMI發(fā)布期靜態(tài)綁入兩邊都避免運行時缺文件。我自己的習(xí)慣是開發(fā)期也靜態(tài)綁定這樣每次在 DOSBox 里同步文件只拷一個 exe少一個遺漏點。2.5 用 DOSBox 做運行測試驗收編譯產(chǎn)物前的最后一步只有真正在 DOS 環(huán)境里跑一次才算驗收工具鏈。常見做法是裝一個 DOSBox把 C:\DJGPP 整個目錄掛載為 DOS 的 C 盤然后在虛擬機里執(zhí)行mount c c:\djgpp c: cd work hello.exe運行結(jié)果應(yīng)當(dāng)是打印出 hello from DJGPP 2.04然后正常回到 DOS 提示符。如果程序沒有輸出就直接退出先看當(dāng)前目錄有沒有 CWSDPMI.EXE如果打印輸出后系統(tǒng)卡死多半是 DOSBox 的 CPU 核心與保護模式切換沖突把 dosbox.conf 里的 coredynamic 改成 corenormal 再試。這一章的終點是把代碼、編譯、運行三條鏈穿起來。鏈通了下一章聊工具鏈的高級用法才有依托。3. 用好 DJGPP 2.04 的完整工具鏈編譯選項、Makefile 與調(diào)試DJGPP 2.04 不只是 gcc 一家獨大它還帶了一套完整的 binutils 和調(diào)試器。學(xué)會把它們組合起來老平臺開發(fā)效率才追得上現(xiàn)代環(huán)境而不是每次重編一遍全項目。3.1 gcc 常用編譯選項-O2、-std 和 -march 在 DOS 目標(biāo)下怎么選DJGPP 2.04 的 gcc 是針對 i586 目標(biāo)構(gòu)建的默認指令集基線在 Pentium 一代附近。如果你把編譯產(chǎn)物拿到更老的 386/486 上跑默認選項生成的指令會讓老 CPU 直接非法指令異常。所以第一個要明確的是目標(biāo)硬件。只在 DOSBox 里跑用默認或 -marchi586 都行要兼顧 486 機器就加 -marchi486。一個常見編譯命令模板gcc -O2 -marchi486 -stdgnu99 -Wall -c video.c gcc -O2 -marchi486 -stdgnu99 -o game.exe main.o video.o input.o參數(shù)說明-O2 是性能與體積的平衡點-Os 在空間緊張時換體積-march 限制生成的指令集決定了產(chǎn)物能跑在什么檔次的 CPU 上-Wall 打開編譯警告老代碼遷移時靠它抓未聲明函數(shù)。需要留意 DJGPP 2.04 里 -stdgnu99 與 -stdc99 的差別不大但涉及內(nèi)聯(lián)匯編和 asm 關(guān)鍵字時gnu99 更省事老 C 代碼里的asm不會被嚴(yán)格模式攔下。還有一個經(jīng)常被忽略的選項組合是 -ffunction-sections 和 -fdata-sections。它把每個函數(shù)、數(shù)據(jù)段拆成獨立小節(jié)配合鏈接器的 --gc-sections 可以把沒用到的部分整體丟棄。對 DOS 下體積敏感的工具很實用尤其從老倉庫拉來的代碼經(jīng)常整個目錄都被編譯進去實際只用到其中一小部分函數(shù)。gcc -O2 -ffunction-sections -fdata-sections -c *.c gcc -o tool.exe *.o -Wl,--gc-sections第一行編譯時按函數(shù)和數(shù)據(jù)切分段落第二行鏈接時丟棄沒人引用的段。效果在控制臺工具上通常能省 20% 到 30% 體積代價是調(diào)試時符號表變大行號定位偶爾不準(zhǔn)。所以這個選項組我一般只用在發(fā)布前的最終構(gòu)建調(diào)試階段關(guān)掉。3.2 多文件項目一個可以直接抄的 Makefile 模板DJGPP 自帶 GNU make可以在 DOS 命令行下直接跑 make 命令。寫多文件工程時我通常從 min 依賴規(guī)則的 Makefile 開始。CC gcc CFLAGS -O2 -stdgnu99 -Wall -marchi486 TARGET game.exe OBJS main.o video.o input.o $(TARGET): $(OBJS) $(CC) -o $(TARGET) $(OBJS) main.o: main.c video.h input.h $(CC) $(CFLAGS) -c main.c video.o: video.c video.h $(CC) $(CFLAGS) -c video.c input.o: input.c input.h $(CC) $(CFLAGS) -c input.c clean: del $(OBJS) $(TARGET)這套規(guī)則講了兩件事顯式依賴和隱式命令。每條“目標(biāo): 依賴列表”后面帶 Tab 縮進的行是生成目標(biāo)的命令GNU make 執(zhí)行時先比較目標(biāo)和依賴的時間戳依賴比目標(biāo)新才重建目標(biāo)。clean 用的是 del 而不是 rm因為 DJGPP 的命令行環(huán)境沒有 rmWindows cmd 下 del 同樣有效。這里最經(jīng)典的翻車點是縮進用了空格而不是 Tabmake 會報 missing separator 然后直接停止我在這上面丟過不少時間。如果源碼文件很多可以考慮模式規(guī)則和自動推導(dǎo)但不建議新手一上來就用。DJGPP 2.04 在 DOS 下跑的 make 版本較老通配符和二次展開的行為細節(jié)跟新版不一樣踩到會很難查。先用寫全依賴的笨辦法項目穩(wěn)定后再優(yōu)化省下來的時間比省下的幾行字符值錢。3.3 用 gdb 調(diào)試 DJGPP 程序從黑匣子到斷點DJGPP 2.04 的 gdb 是 DOS 原生程序意味著你可以直接在 DOSBox 里啟動它調(diào)試另一個 DOS 程序。編譯時打開調(diào)試符號并關(guān)閉優(yōu)化gcc -g -O0 -o hello.exe hello.c gdb hello.exe進入 gdb 命令行后常用流程是(gdb) break main (gdb) run (gdb) next (gdb) print i (gdb) quitbreak main 在函數(shù)入口設(shè)斷點run 啟動程序在斷點停下后 next 是單步執(zhí)行print 打印變量當(dāng)前值quit 退出。對 DOS 程序來說最實用的是拿它查段錯誤run 之后如果看到 SIGSEGV用 backtrace 看?;厮莼灸芏ㄎ坏绞悄膫€函數(shù)寫穿了數(shù)組。注意 gdb 在 DOSBox 里運行也需要 CWSDPMI.EXE而且調(diào)試器本身要占內(nèi)存DOSBox 默認的 XMS 設(shè)置太低時先把 DOSBox 配置里的 memsize 調(diào)到 16 或 32 再跑。遇到難纏的內(nèi)存問題gdb 有一種現(xiàn)代環(huán)境里不常見的玩法直接在保護模式下訪問顯存和端口。你在 gdb 里用 x/wx 0xB8000 可以直接查看 VGA 文本緩沖區(qū)的內(nèi)容在調(diào)試圖形驅(qū)動時不需要額外打日志函數(shù)比插入一堆調(diào)試代碼干凈得多。3.4 用 binutils 做產(chǎn)物瘦身與檢查strip、objcopy 的實際場景DJGPP 2.04 自帶的 binutils 里日常最常用的三條是 strip、objcopy 和 strings。strip 去掉符號表把可執(zhí)行文件體型減下來strip -s game.exe對發(fā)布版本做這一步是基本禮儀一個帶完整調(diào)試符號的 DOS 程序體積能差一倍以上。-s 表示 strip all連重定位信息一起去掉副作用是 gdb 無法再對這個 exe 下斷點所以 strip 要放在最后階段調(diào)試期間不要碰。objcopy 在自制操作系統(tǒng)和引導(dǎo)程序場景出場。DJGPP 的鏈接器默認產(chǎn)出帶 DOS 擴展器的可執(zhí)行格式但你的內(nèi)核最終要交給引導(dǎo)器加載到固定內(nèi)存地址需要的是一段沒有文件頭、沒有重定位的純二進制。命令objcopy -O binary kernel.exe kernel.bin-O binary 把 COFF 段按內(nèi)存布局原樣導(dǎo)出生成 flat binary。這個文件沒有了 MZ 頭和保護模式 stub必須由引導(dǎo)代碼按約定地址加載并自行切換保護模式。用這個命令前建議先在鏈接腳本里把內(nèi)核段布局排好常見做法是讓 .text 起始地址等于期望的加載地址否則出來的 bin 會在開頭帶一坨填充數(shù)據(jù)加載時錯位。strings 是個被低估的檢查工具strings game.exe | grep -i error\|fail它把所有可打印字符串撈出來配合 grep 看程序內(nèi)置的錯誤提示不用運行就能排查資源文件路徑、配置文件格式這類問題。我在處理老游戲漢化時經(jīng)常用它確認文本是 ASCII 還是 GBK比盲改二進制穩(wěn)得多。4. DJGPP 2.04 避坑指南環(huán)境變量、路徑分隔符與內(nèi)存模型的典型翻車現(xiàn)場DJGPP 2.04 的報錯信息往往不像現(xiàn)代編譯器那么友好很多問題表現(xiàn)為“編譯不過”或“運行崩潰”實際根源卻藏在環(huán)境配置和內(nèi)存模型里。下面按我踩過的順序列出 5 個高頻坑每條按現(xiàn)象、原因、解決的順序說清楚。4.1 stdio.h not found環(huán)境變量 DJGPP 丟失的癥狀與修復(fù)現(xiàn)象gcc 一編譯任何 .c 文件立刻報stdio.h: No such file or directory但 include\stdio.h 明明存在。原因DJGPP 環(huán)境變量沒設(shè)置或設(shè)置了但指向的 djgpp.env 路徑不對。gcc 知道自己是 DJGPP 工具鏈但沒被告知去哪找標(biāo)準(zhǔn)頭文件。另一個隱蔽點是你把 djgpp.env 的名字寫錯比如 Windows 默認隱藏擴展名文件名真實是 DJGPP.ENV.txt指針就斷了。解決先用 echo %DJGPP% 確認變量存在且路徑正確再看文件管理器里有沒有被系統(tǒng)吞掉擴展名。我在 Windows 上習(xí)慣在 cmd 里執(zhí)行 dir C:\DJGPP\DJGPP.E* 看真實文件名比肉眼省心。配好這兩個變量后gcc -v 打印的 search 路徑里能看到 include 目錄一眼就能驗證工具鏈認知是否到位。4.2 Makefile 里文件路徑被反斜杠截斷路徑分隔符的坑現(xiàn)象Makefile 里寫 C:\DJGPP\LIB\libc.amake 報錯說找不到文件或把路徑截斷成 C: 加一串亂碼。原因GNU make 把反斜杠當(dāng)作轉(zhuǎn)義字符處理DOS 風(fēng)格路徑里的 \D、\L 會被吃掉一層。這個問題在 DJGPP 2.04 自帶的舊版 make 里尤其明顯。解決Makefile 內(nèi)部統(tǒng)一用正斜杠寫路徑比如 C:/DJGPP/LIB/libc.aWindows 和 DOS 的文件系統(tǒng)層都能識別正斜杠。需要傳給編譯器參數(shù)時也盡量用正斜杠只在用戶交互的命令行里保留反斜杠習(xí)慣?,F(xiàn)在寫任何 DOS 項目 Makefile我第一件事就是全局替換反斜杠省得后面的坑連成串。4.3 長文件名支持LFN 開關(guān)與 8.3 短文件名的取舍現(xiàn)象程序在 DOSBox 里 fopen(config.dat, r) 正常放到純凈 DOS 6.22 上 fopen 返回 NULL或者文件讀到一半數(shù)據(jù)錯亂。原因DJGPP 2.04 通過 LFN 接口訪問長文件名DOS 默認沒開啟該接口時需要驅(qū)動程序支持。純凈 DOS 只有 8.3 短文件名而你的源代碼和資源文件在 Windows 下解壓時名字已經(jīng)拉長程序按長名字去找自然找不到。解決兩條路。一是給 DOS 加載 LFN 驅(qū)動但老機器環(huán)境不好說二是把涉及運行期資源訪問的文件名全部壓成 8.3 格式配置叫 config.cfg存檔叫 save.dat。我在移植老游戲時默認按短文件名規(guī)劃資源省掉一長串兼容性報告。4.4 C 異?;虼髷?shù)組段錯誤DPMI 內(nèi)存不夠時的現(xiàn)象與處理現(xiàn)象C 程序里 throw 一個異常程序直接崩潰或者 main 里聲明一個 10MB 的局部數(shù)組運行到函數(shù)入口就段錯誤。原因DJGPP 2.04 的 C 異常依賴 DPMI 提供的內(nèi)存管理CWSDPMI 分配給程序的堆大小默認從系統(tǒng)配置讀取DOSBox 默認內(nèi)存不足時異常處理棧和大的棧上數(shù)組都放不下。局部數(shù)組超過幾 MB 時往往超出內(nèi)核對堆棧段的預(yù)留運行時報段錯誤。解決給 CWSDPMI 配置更大的內(nèi)存上限。常見做法是改 dosbox.conf 的 memsize 到 64或者在發(fā)布前用 stubedit 設(shè)置程序需要的 DPMI 內(nèi)存池大數(shù)組改用 malloc 放堆不要放棧。我給老平臺移植代碼定的規(guī)矩是單塊棧數(shù)組不超過 64KB超過一律堆分配這條規(guī)矩救了不少次。4.5 undefined reference to __main工具鏈版本混用的典型癥狀現(xiàn)象鏈接時報 undefined reference to __main代碼里根本沒寫過這個符號。原因這是 DJGPP 特有的 C 運行時初始化符號。GCC 在 C 程序啟動時通過調(diào)用 __main 完成全局構(gòu)造器流程該符號由 libc.a 提供。問題是 binutils、libc 和 gcc 三者版本混搭時GCC 認為自己需要 __main而鏈接器鏈接的庫卻改了符號名或沒有導(dǎo)出目標(biāo)文件格式對不上最終鏈接失敗。解決嚴(yán)格按照同一套發(fā)布的 DJGPP 2.04 包安裝不要混用不同分支的 gcc 和 libc。檢查方法是用 nm 在 libc.a 里搜索符號nm libc.a | grep main確認存在后再查 gcc 的 specs 文件里的 crt 相關(guān)路徑是否指到同版本目錄。這個問題沒有快速補丁把環(huán)境清理干凈重裝全套是最省時間的做法比對著 ld 腳本折騰半天下班。5. 進階用法驗證編譯產(chǎn)物與移植老代碼的兩個實用習(xí)慣工具鏈跑順之后有兩件事值得固定成習(xí)慣拿到陌生 exe 先驗證遷移老代碼只動封裝層。這兩件事能幫你把“運氣好能過”變成“每次都能過”。5.1 驗證產(chǎn)物三種快速檢查手段我不太相信“剛才編譯過了”這句話。拿到一個 DJGPP 產(chǎn)物至少做三道檢查。第一道是 file 確認格式file game.exe輸出出現(xiàn) 32 位、DOS 可執(zhí)行、保護模式這些關(guān)鍵詞說明工具鏈目標(biāo)正確如果顯示 16 位 COM 或 EXE多半是環(huán)境里混入了其他 DOS 工具。第二道是 strings 掃內(nèi)嵌路徑strings game.exe | grep -i config\\如果在輸出里看到反斜杠形式的路徑程序在 DOS 下解析路徑時會出問題趁發(fā)布前改掉。第三道是完整啟動模擬發(fā)布前把 exe、CWSDPMI.EXE 和資源文件放進同一個目錄在 DOSBox 里從干凈機器模擬一次完整啟動。這步不能省我數(shù)不清多少次在開發(fā)機上有 CWSDPMI 所以沒暴露換目錄后程序直接神秘消失。5.2 把老 Turbo C 代碼遷到 DJGPP只動封裝層不動業(yè)務(wù)邏輯從 Turbo C 遷到 DJGPP 2.0490% 的工作集中在頭文件和平臺 API 替換。我給自己定的規(guī)則是造一個 target-config.h把平臺差異全壓進去。#ifndef TARGET_CONFIG_H #define TARGET_CONFIG_H /* Turbo C 的遠指針在 DJGPP 平坦內(nèi)存里不需要 */ #if defined(__DJGPP__) #include stdlib.h #define _fmalloc malloc #define _ffree free #else #include alloc.h #endif #endif這個頭文件的作用是業(yè)務(wù)代碼繼續(xù)調(diào)用 _fmalloc底層在 DJGPP 下被替換成 malloc。32 位保護模式的平坦內(nèi)存里所有指針都夠遠遠指針概念本來就該廢棄用宏映射一下業(yè)務(wù)代碼不用改。移植時我會先把編譯錯誤全部排干凈再逐個替換圖形和中斷部分最后跑回歸。圖形模式是另一個深水區(qū)保護模式訪問顯存需要映射gdb 設(shè)斷點查 VGA 緩沖比 printf 調(diào)試高效。這套流程走完一個項目基本就有了自己的移植模板。我現(xiàn)在拿到任何老代碼第一反應(yīng)是先找它的平臺依賴集中在哪幾個頭文件而不是急著編譯。這個習(xí)慣讓后來的移植工作順手不少希望幫到你。本文還有配套的精品資源點擊獲取
返回列表
PREV
查看更多資訊
NEXT
返回資訊列表
久久综合精品一区二区三区| 四月丁香婷婷| 狠狠干妹子| 亚洲av无线观看| 精品少妇一区二区| 青草香蕉网| 极品白嫩美女白浆成人福利在线看| 天天操熟妇| 草b在线| 久久久免费的精品| 久久五十路熟女人妻| 男女国产精品| 外国免费性情大片| 嗯嗯啊啊啊好爽| av东京热男人的天堂| 日本岛国黄色网址| 人妻无一区二区三区| 久久欧美按摩999| 国产极品一区二区三区三州| 淫荡少妇免费| 成人av性爱电影在线观看| 欧美少妇高潮视频| 97超碰欧美精品| 超碰亚洲欧美日韩无| 偷拍 精品 另类 四区| 国产又黄又爽又刺激久久久久久| 成人无码电影在线观看网| 四虎av在线| 四虎影视永久在线观看精品免费网站| 无码男人天堂| 欧美在线大香999| 后入式999| 日本熟妇精品九九| 老熟妇一区二区三区| 尤物网站91| 久久久久久久久久黄色网| 天天综合-91入口| 老熟妇一区二区三区| 日韩三级av片| 久久草在线综合视频| 偷拍亚洲情色| 九九热精品| 97超级色碰碰| 九九内射在线| 99re免费视频精品全部| 97青娱乐超碰久久| 国产绿奴视频在线观看| 碰超人人在线一区二区三区| 国产乱码精品一区二区三区四川| 青青在线视频日韩欧美| 亚洲91亚洲| 乱伦图av| 久久久久久久唑| 久久久久久久人妻| 一级性爱网| 97操在线| 精品久久一区二区三区四区五区| 啪啪性爱免费视频| 职场同事知名国产国产精品久久欧美日韩| 人人做天天爱| 熟女91网| 欧美999999| 日本性爱少妇| 亚洲动态色图| 夜夜免费视频| 97干色天堂| 黄色AAAAAAAAAAA大片| 我中文字幕6区| 怡红院一区二区熟女人妻| 日韩大香蕉AV影片| 日韩人妻精品| 好淫网一二三视区| 久久免费精品视频免一| 久久午夜鲁丝片| 欧美A√综合网| 人妻久久久久久| 欧美欧美啪啪视频| 青青草好吊色| 哑洲在线| 自拍视频大全亚洲专媒视频/一区二区三区 | 亚洲国产欧美中文永久| 国产成人超碰在线| 亚洲高清欧美总合| 亚洲情色1区| 亚洲精品aa久久伊人| 91色香| 欧日韩在线观看| 九九AV| 午夜一级免费毛片| gogogo免费高清看中国国语| 亚洲欧美洲综合| 久久久久久久久久久久久久久性生活视频 | 色老汉色| 99碰碰| 操www| 亚洲熟妇A V黑人| 伊人国产av| 久久综合99| 中日韩久久久| 黑人嘿嘿嘿超爽免费视频| 人人性爱视频免费| 神马九九| 成人精品水蜜桃久久久久久久| 97天天爽| 大香蕉在线视频15| 男人的天堂亚洲| 99操碰| 人妻乱仑一区二区三区| 人妻夜夜爽天天爽三区麻豆AV网站| 人人九九精| 一区二区三区 丝袜高跟| 麻豆60秒| 91久热这里只有精品| 强奸xx国产| 色久桃花影院在线观看| 日韩av免费一级电影| 大肥女高潮bbwbbwhd视频| 性爱AV天堂| 中文字幕十五区| 一区二区三区日韩欧美| 精精夜夜| 操香逼| 美女露胸露奶头| 色啪网| 囯产精品一区二区三区线|亚洲人成无码网WWW动漫|国产精品免费一级... | 天天干夜夜鈤| 欧美在线天堂| 神马久久午夜| 国产一区二区三区白丝| 69av一区二区三区| 伊人久久综合影院| 人人人人插| 九九无码视频| 97精品国产97久久久久久| 国产h片在线观看视频| 国产在线视频午夜精华在| 韩国一级做a久久久久| 国产精品农村妇女| 中文字幕国产在线天堂| 国产精品白领在线观看| 99国产精品视频尤物| 欧洲亚洲国产综合在线| 秋霞无码av鲁丝片一区| 亚洲av无码成人精品国产| 国模吧 一区二区三区| 成人精品在线| 精品99999久久久久久| 夜夜嗨AV蜜臀av| 丁香婷婷激情五月天无毒不卡| 闷骚老熟女15P| 亚州久久9| 亚洲自拍一区夜夜操| 久久久com| 色噜噜狠狠色综无码久久合欧美| 操九九九九九九| 欧洲亚洲人妻无码中字久久三区四区| 国产自产22区| 中国AV美女| 免费一级特黄特色大片在线观看看| 亚洲操逼视频网站| 手机av天堂久久久久| 久久女同性恋一二区| 熟女熟妇伦久久影院毛片一区二区| 亚洲欧洲日韩中文字幕一区| 一本大道不卡一二三区| 99久热| 欧美性,亚州色| 国产精品视频在线播放| 91中出视频| 免费看片黄| 思思热在线cao| 人人艹亚洲| www.久久| 天天激色| 99热在线观看| 91丨熟女丨丰满熟女| 97超级久久强资源| 中国少妇啪啪视频| 日韩激情毛片一级久久久| 啊视频在线| 色一射色一射| 少妇高潮九九九九九九九| 成年人网站在线免费观看| 操逼网站地址| 97精品在线| 美女裸体无遮挡永久免费观看网站 | 最近二区三区视频大全| 玖玖玖玖精品国产剧情| 天天色踪合| 91综合网站| 成年人性爱日韩| 男人天堂.AB| 中文字幕第95页| 超碰色男人操熟女| 99热99re超碰精品| 99999久久精| 五月丁香社区婷婷日韩欧美精品影院 | GVH-003 母子姦 青木玲-麻豆视频,麻豆视传媒短视频网站入口,麻豆视传媒官网直 | 99热在线不卡| 蜜臀视频网站| 99激情| 免费草草草草草视频| 日本韩国国产精品一区| 日韩99神马视频片| 被窝影院午夜看片无码| 天天干天天日天天射黄色| ai欧美亚洲小说| 四虎国产精品永久在线囯在线| 欧美色棕合| 久久久偷拍| 久久草在线综合视频| 欧美日韩青操| 国产成人欧美一区二区三区的国产| 久久天天躁日日躁狠狠躁 | 国产又大又粗又色生活片亚洲国产精品成人久久久综合免费 | 色噜噜人妻av中文字幕| 岛国精品视频在线观看| 色臀AV| 亚洲色综合| 久草成人影片| 国产又爽又黄| 日本不卡在线二区三区| 看看小穴| 看免费一级在线播放毛片| 精品v1区| 亚洲91在线播放影院| 中文字幕AV片| 操逼1区| 亚洲色棕合| 一区二区三区欧美激情| 秋霞 色色| 日韩欧美成人大香蕉| 亚洲精品自拍| 久久伦理视频久久大香蕉视频| 欧美日韩黄片精品在线| 熟妇高潮二区三区| 中文字幕一区av| 97超碰精品| 日本999精品视频| 超碰色男人操熟女| 色大师网站www永久网站视频| 亚洲国产第一页综合视频| 友优传媒精品在线一区二区| 七久久久| 亚洲av影音先锋| 久久中文字幕女同性恋一区| 亚洲综合另类| 色哟哟 日韩精品| 亚洲欧洲久久天堂| 女优免费一区二区永久| 777琪琪午夜免费A片| 超碰97在线中文| 91精品丝袜久久久久久| av三级电影在线播放| 亚洲中文电影| 欧美亚洲综合色| 亚洲成人性爱网站在线播放| 色综合 加勒比| 亚洲第一无码播放立川理惠| 亚洲欧美黄| 美骚妇av高清在线| 婷婷亚洲天堂| 日韩图区 偷拍| 欧美97av| 极品粉嫩少妇视频| 久久久亚洲精品电影免费看| 亚州一区二区成人片免费| 欧美成人一区二区三区在线播放| 99亚洲精品| 伊人久久婷婷| 亚洲日韩美女中文字幕乱| 东京热av影院| 97超碰中文| 777奇米影视777四色| 超碰人人在线| 国产真实子伦对白| 67914在线兔费成人视频| 少妇无码999| 天天干天天日天天射黄色片| 久久久婷婷| 国语av狠狠色丁香婷婷综合激情| 国产丸一视频| 精品176精品2| 91色女| 亚洲欧美日韩精品久久久一区二区 | 久热91| 国产精品香蕉热久久新品| 东京热视频网| 91一区二区三区蜜桃| 亚洲熟女av中文字幕| 天天欧美97| 啊啊啊久久久视频| 超碰碰97| 性性久久| 亚洲乱熟女一区二区| 精品一区二区三区四区外站| 国产丝袜高跟美女av免费观看| 91性生活久久久| 一牛影视久久久一区二区三区| 99∨VTV| 国产刺激视频| 日韩一999精品| 精品人妻1237| 抽插爽| 殴洲老熟女| 91 亚洲情侣偷拍 久久| 久草毛片| 91天天综合日韩欧美| 男人精品区| 亚洲激情视频| 性久久| 欧美一区二区观看在线| 综合婷婷| 99re不伦| 久久久成人免费av电影| 亚洲全色网| 日本人妻最新在线中| 欧美高清无码免费视频高清版| 成人小说另类在线| 国产Aα| 国产尤物AV尤物在线观看不卡| 亚洲少妇中文字幕网址| 五月丁香网站| 动漫av中文| 国产视频97| 免费试看60秒| 日本十八禁免费看污网站| 黄色小视频日本txt| 啪啪综合网| 天堂av2019| 四虎免费看黄| 欧姜老司机| 日韩成人无码| 免费一级毛片在线视频观看| 不卡人妻少妇精品毛片一区23区视频| 秋霞福利网| 91性网| 亚洲欧美日韩制服另类| 人妻精品视频一区二区| 国产久久久9999| 99爱爱| 清纯唯美亚洲综合| 手机在线观看不卡无码av| 欧美亚洲玖玖玖| 日日日大屁股骚女人精品| 中文字幕人妻丝袜乱一区三区| 超碰在线人人射| 日韩AC| 97超久碰| 婷婷综合伊人一区| 欧美日韩性爱操大逼| av中文字幕在线熟女| 国产视频第2页| 天天亚洲| 五月丁香六月婷| 青青草五月天| 操婢日韩| 欧美熟妇视频| 亚洲天天操| 久久免费精品视频免一| 91国产大片| 91丝袜美女视频| 亚洲国产午夜真人一级片中文字幕精品黄网站 | 一区二区影院| 超碰无码五月97| a片久久久久久久久久久久 | 97超级欧美| 五月情色天| 天天做日日爱夜夜爽| 欧美精品久久96人妻无码| 日韩啪啪视频| 国产原创自拍| 91n欧美| 五月婷婷爱六月丁香色| 黄色一区三区| 男人a天堂手机在线版| 欧美色图中文字幕| 狠狠婷婷亚洲中文综合久久| 国产毛片精品一区二区色欲黄A片| 伊人国产视频| 午夜a成v人电影| 又大又长又爽| 国产精品白丝| 久久熟女人| 2017,超碰| 欧美成人性爱视频大全| 日韩 女同 综合| 中文字幕精品一区欧美| 九九九九九九九九九五码| 17c嫩草51久久91嫩草| av天天在线观看| 国产一区二区精品久久久不卡蜜臀| 夜间福利片1000无码| 97国产色图 | 欧美综合色| 久久久久久AV无码免费网站| 亚洲人久久久网| 日本一区二区三区四区免费观看| 影音先锋一区二区在线资源| 欧美亚洲尤物久久| 免看60秒涩涩视频| 成人综合久久精品色婷婷| 欧美视频一区二区三区| 日韩操人| 日韩一级欧美一级国产一级台湾| 久久久久久精品免费看A级| 加勒比伊人综合| 午夜爽爽爽在线观看永久入口姬片| 久热精品色情| 国产精品久久久三级无码| 九九九九九九九九九九九蜜桃| 国产精品无码在线| 亚洲视频精选| 国产青一二三| 在线亚洲欧美| 久久水蜜臀亚洲AV无码精品| 老鸭窝黄色视频网站| 一区在线精品中文字幕| 懂色AV一区二区三区| 成人性交免费视屏| 九九九九九九九精品视频| 久操大香蕉| 蜜桃香蕉久草精品在线| 亚洲天堂男人天堂网| 乱伦色图网址是多少| 亚洲一曲日韩精品| 国产又大又硬又长又粗| 伊人网一本| 高清国产av无码| 久久这里只| 强上我不卡卡| 人妻加勒比东京热| 日韩97超碰中文字幕| 探花精品视频| 在线情色电影 91大| 亚洲激情在线观看一区| 97超碰色屌| 69少妇一区二区| 99久久综合| 伊人久久在线视频观看| 四虎影视永久在线观看精品免费网站| 亚洲黄色网址视频| 黑人精品XXX一区一二区| 后入 亚洲 美女 射| 一本道综合色图| 亚洲高清色综合| 99999久久精| 国产www色在线观看| 鸥美极品| 夜夜操老骚逼视频网站| 一级性爱啪啪视频| 我想要啊 啊 啊| 国产又爽又黄| 免费日韩黄片| 天天操福利视频综合网站| 亚洲丝袜色| 岛国福利在线精品播放| 淫纸中9区| 欧美最婬乱婬爆婬性视频 | 国产特级毛片AAAAAA高潮流水| 久久九精品| 精品久久視頻在线| 在线v中文字幕一区二区三区| 北约熟女超碰| 亚洲在钱| 伊人激情五月天一区二区 | 翔田千里AV无码秘 三区| 超碰这里只有精品| 97视频在线观看播放与子乱对白在线……| 国产一区二区精品久久99| 日骚逼视频| 深爱伊人影院| 99热这里只有精品1| 97超碰免费人人性爱| 91N欧美| 黄片色区软件| 少妇一级婬片免费放一级a性色.| 亚洲欧美综合| 国产亚洲色停停久久99精品91| 久久久久久久97| 91精品导航| 亚洲 日本 不卡| 国内毛片四区| 干B网| 强乱老妇中文字幕| 国产熟女无套内射| 97超碰中文在线| 2019天天干| 久久久久亚洲| 国产Aα| 天天日天天干天天整| 欧美顶级黄片AAAAA在线免费看| 国产精品一区二区亚洲人成毛片| 收看日本人日bb| 国产精品露脸在线观看| 无码精品久久久天天影视| 国产精品视频麻豆入口| 国产成人精品亚洲日本| 色婷婷成人| 国产性感在线观看| 国产精品一级二级在线| 久热伊人| 美女熟妇色| 中文字幕日本久久| 天天看片天天爽| 久久久久久裸体| 熟妇色99| 欧美人妻久久精品二区三区| 激情四射五月天| 亚洲大色堂| 色路综合| 凹凸久久人人| 91女在线观看| 五十路成人在线视频二区三区| 欧美在线天堂| 欧美综合区| 96AV久久久| 久久国产精品m码| 岛国网址国产 | 日韩电影在线观看网址| 日本护士高潮| 天综合网欧美| 午夜视频久久久久一区| 亚洲熟妇图片| 国产精品久久久久9999小说| 婷婷影院入口| 啊啊啊啊啊啊啊啊啊啊在线观看| 日韩欧美亚洲自拍偷拍| 丁香激情网| 日日骚av| 欧美成人一区二区三区在线播放 | 亚洲日韩AV视色| 亚洲色性| 人妻-91porn| 欧美在线 亚洲| 操逼啊啊啊91| AV色图| 欧美性巨大╳╳╳╳╳高跟鞋| 国产精品2020| 志村玲子视频一区二区| 亚洲无套久久嗯嗯| www.狠狠干.coom| 97国产中文| 久久,精品一二三| 亚洲一区亚洲天堂| 精品区国产区一区二区三区| 欧美一级专区免费大片| 国产 v乱码一区二| 久久久青草青青国产亚洲免观精品高清完整版_97久久综合区小说区图片区,国精品 | 91无人区卡一卡二卡三乱码入口最新版:能让用户有更多选择的选择-经典说说-爱 | 色超碰综合| 性久久久| 久久精品中文字幕女同| 婷婷综合五月天| 色婷婷一区二区三区久久| 色五月亚洲| 欧美呦呦性爱| 天天天做天天天爱天天天爽| 一二三四免费视频| 日韩福利综合一区| 一卡二卡三卡| 99国产天美| 六月激情婷婷| 成人无码在线超碰网| 欧美最婬乱婬爆婬牲视频| 久久久九九网站| 亚洲最新Av| 亚洲色欲一区二区三区| 户外裸露刺激视频第一区| 伦理第一页| 免费看污网址| 最新欧洲欧美日本激情网站| 中文欧丝袜诱惑| 秋霞视频一区二区| 91在线视频免费播放| 69天堂| 任你干在线视频| 五月香婷婷| 精品久久97| a片亚洲一本通视频| 超碰人妻久久人妻中文97| 欧美午夜精品久久久久久超碰| 精品久久久久久中文| 国产精品一区二区手机看片| 亚洲色图亚洲| 美女诱惑一区| 农村女一级毛卡片| 精品一区二区三区麻豆| 青青五月天| 亚洲干B| KK色在线影院| 伊人九九九| 欧美人妻少妇| 日韩大香蕉AV影片| 在线日韩日本亚洲国产| 国产在线视频午夜精华在| 在线观看中文字幕| 欧美激情性久久久久久| 久久久久国产亚洲一区欧美色图日韩| 另类小说五月天| 日韩在线观看三级电影| 亚洲少妇在线观看| 国产AV人人 夜夜人人澡| 日日操夜夜操天天操免费观看麻豆| 日本一区二区三区精品| 日韩中文字幕2020| 国产精品黄色三级av| 国模不卡| 情色AV电影| 亚洲成人综合在线| 丁香五月成人| 亚洲18禁| 亚洲怡春院| 超碰97国产欧美| 国产女s强制榨精视频| 中文久久| 爱av免费| 青青草吊丝| 嫩草黄页| 看日韩黄片| 国产精品午夜高潮呻吟久久av| 嗯嗯啊中文字幕| 99re在线视频国产| 欧美少妇人妻| 人人操人人摸人| 欧美色图私拍91| 日本色日夜干| 中文字幕av亚洲在线| 四虎影库国产精品免费| 9久9久| 日韩av不卡在线看| 九九九九九九九九九九九免费国产| 91精品久久久久久久久久| 久久精品熟妇丰满人妻99| 91视频精品| 五月天精品| 国产蜜臀在线| blacked精品一区国产| 欧美啪啪女女| 日本高清一本二本免费不卡| 国产一区二区免费福利片| 免费观看欧美日韩操逼视频| 午夜九九| 任你爽视频| 精品无av| 久久HD| 色图四区| 精品国产一区二区三区av在线资源| 亚洲成人妻日韩在线| 久久久久久网址| 久久天天躁日日躁狠狠躁| 夜夜爽夜夜高潮夜夜爽| 乱伦图av| 九九久精品| 国产乱码久久| 一本精品日本在线视频精品| 日韩色女精品| 久久午夜伦| 人妻精品免费一二三区| 中文字幕老熟妇黄色视频| 高潮精品| 99黄页网站| 国产 v乱码一区二| 欧色网址| 天天天天做夜夜夜夜做| 91快色色色色色| 男人的天堂com| 五月婷婷色色| 蜜臀AV秘一区翔田千里| 亚州Av天美传媒| 日日夜夜干| 日韩精品资源专区二区| 亚洲诱惑| 91亚州日韩高清| 黄色视频60分钟| 97亚洲综合在线| 五月天综合网| 欧美综合站| 丝袜狠狠草尤物人妻av91| 爱爱久久| 久久久精久久久| 婷婷亚洲综合| 日本色色网| 性爱1区| 日本三级网页| 啊啊啊好多水| 91美女精品| 天天综合网~91综合网| 91无人区卡一卡二卡三乱码入口最新版:能让用户有更多选择的选择-经典说说-爱 | 性饥渴少妇av无码毛片| 欧美亚州综合网图片| 色偷综合| 国产第二页| 超碰性爱97| 亚洲天堂男人在线| 久操大香蕉| 国产一区二区啪啪视频| 爽极品影院| 一本精品日本在线视频精品| 日韩av无码网站| 亚洲欧洲激情卡通另类文学四射小说网站 | 国产精品粉嫩福利在线| 国产农村妇女精品1区二区| 亚洲精品九九九九九九| 激情自拍 校园春色| 精品久久久久久无码| 中文字幕、久久精品国产2020、久久综合久久自在自线精品自、亚洲 | 人人做人人妻人人夜视频| 看黄片视频免费| 九九黄色视频在线观看| 操逼日韩无码 | 蜜臀AV午夜精品久| 综合欧美色图| 污污汅18禁网站在线永久免费观看 | 免费A V在线| 九九热九九| 91老司机精品| 久久久久白虎| 国产精品一区二区麻豆| 国产精品乱码久久久久久| 欧美一区二区成人一卡| 亚洲视频,小说| 97精品视频免费| 九九九热精品| 91青青在线视频| 成年在线视频日本亚洲在线视频区精品江靖宇公司 | 国产乱伦亚洲色图高清无码| 97视频在线| 国产精品久久aV| 26uuu性物| 日本一级性爱| 夜夜爽爽爽| 麻豆 欧美 日韩| 美女主播色欲91抠b在线播放| 精品九九九九九九九九九| 九七人妻在线| 97色碰| 久久社区一区二区三区| 日本综合久久| 狠狠做深爱婷婷久久二区| 中文字幕成人乱码熟女精品国50 | yy少妇精品久久| 亚洲精品97p| 欧美97| 久久这里只精品99re66图| 中文字幕一区av| 午夜福利在线合集| 亚洲国产精品成人久久蜜臀| 久久男人精品| 亚洲天堂女优在线| 日韩精品一区二区人人人| 在线观看AV片| 国产精品经典一卡久久久| 96一区二区三区| 尤物国产一区在线观看| 男人的天堂色偷偷青青草视频婷婷网| 超碰天天去日穴| 精品久久久久av影院| 国产日本熟女顶级一区二区三区视频| 国产精品久久久久久久免牛肉蒲团| 丁香色狠狠色综合久久小说| 五月婷婷六月色| 学生妹天天看| 国产 亚洲 丝袜 制服| 青久操| 国产91亚洲精品一区二区三区| 丁香婷婷色五月| 超碰久久.com| 久久色情| 国产日本顶级一区二区三区| 五月丁香成人网| 亚洲综合在线91| 色情综合| 粉嫩av平台| 超碰97久久国| 婬女免费一二三区A片| 日韩三级av片| 射丝袜高跟鞋99| 亚洲一区日韩精品| 嗯嗯嗯啊啊啊操的我好爽| 尤物av网站免费在线播放| 欧美 亚洲 大香| 很黄很色的视频在线观看| 久久日本熟女精品一区| 玖玖爱免费观看视频| 亚洲人久久久久日| 亚洲男人的天堂一区二区| 白丝被操91| WWW美腿丝袜香蕉中文| 大地资源在线观看中文第二页 | 97视频网站| 亚洲美女色图| 91超级碰| 91制服丝袜中文字幕| 91狠狠综合久久| 亚洲欧美综合色| 日本十八禁免费看污网站| 限制级中的三级片中的黑粗大屌屌日人妻熟女| 久热久| 大香蕉专区| 日韩兔费看黄片| 97在线观看视频| 欧色综合| 91狠婷| 五月婷婷激情综合| 日韩 欧美 另类 人妻| 免费观看日本操逼视频| 99re99在线视频| julia中文字幕在线观看| 骚货人妻偷情自拍在线视频| 在线性黄高清免费视频| 日本激情免费大片| 人妻二区| 人人操肉肉| 日韩欧美午夜一区二区| 欧美日韩啪啪电影| 午夜人人操| 亚洲激情视频| 亚洲情色欧美| 88xx成人精品视频| 中文久久| 欧美日韩国产成人高清| 五月丁香黄色网| 国产日韩精品suv| 日韩免费三级黄片电影| 免费一级精品啪啪视频| 91丨国产丨白浆秘 洗澡动漫| 九九九九亚洲| 麻豆熟妇乱妇熟色A片在线看| 91精品国| 亚洲成人贴图| 极品欧美一区二区三区| 欧美黄色片在线播放| 中文字幕在线免费观看2| 久久久久久久强迫| 国产人妖的免费的视频| 欧美亚洲另类在线蜜桃| 亚洲综合一区二区| 久久久久久夜夜夜夜夜| 用力操死我| 亚洲美女黄色| 性猛交| 国产一区二区a毛片| 久久久97| 国产精品色哟哟| 97中文字幕一区| 熟女探花啪啪| 99热这里只有精品地址| 国产高清1234区| 国产精品粉嫩福利在线| 五月婷亚洲精品天堂| 久久九九视频九九视频| 久久日韩毛| 97久久久久久久久久| 欧美夜夜草视频| 日本一级性爱| 亚州中文字幕超碰97| 亚洲男人天堂手机版| 国内偷拍精品一区二区| 91精品丝袜久久久久久| 青青草国产一区二区三区| 男人天堂网址| 久久久一级| 欧美色交| 青娱乐日韩无码| 久久综合久色欧美综合狠狠 | 国产97在线播放| 国产精品久久成人免费| 精品小视频在线| 日韩中文字墓| 9/A片 | 9色在线| 久夜视频| 亚洲天堂,男人| 日日躁夜夜躁狠狠躁超爽| 国产精品久久久久久久久AV大片| 中国黄色特级精品一区二区三区片| 九九综合久久中文字幕| 国产乱子伦一区二区三区免看| 操逼无码操逼| 欧美日韩人妻婷婷一区| 2018天天干在线视频| 亚洲欧美国产中文字幕| 人妻少妇精品久久久久久| 日本中文字幕不卡视频| 亚洲色图20p| 人人干黄色| 在线情色电影 91大 | 啊啊啊啊嗯嗯在线久久久| 亚洲欧美大香蕉| 国产精品片| 一本久道久久综合狠狠爱| 天天拍夜夜| 欧美78| 黄网在线播放| 亚欧毛片基地国产毛片基地| 精品制服美女中文一区二区三区| 99久久久| 少妇3P性爱自拍| 青青草原伊人网| 高树玛利亚无码流出| 8050无码八戒| www亚洲免费| 亚洲国产精品成人久久蜜臀| 中文字幕丝袜人妻| 人妻精品视频一区二区| 另类小说综合网| 97免费在线观看视频| 蜜屁Av| 另类小说五月天| 日韩激情毛片一级久久久| 夫妻天天操岛国视频| 成人在线午夜视频一区| 极品白嫩福利在线| 日本三级韩三级99久久| 精品一区二区成人动漫| 亚洲成人一区二区精品| 日韩欧美大力操| 欧在线一二区| 99re综合伊人| 日韩无码AB| 欧洲亚洲天堂精品| 国产中文福利| 精品国产久久乱码| 亚洲天堂人人妻| 欧美亚州综合图片| 成人一区二区三区四区| 第四色色综合91| 亚av顶级裸体一区二区三区四区五区 | 国产剧情一区在线观看| 欧美成人黄网色网站| 国产粉嫩出水在线播放| 日韩乱中文| 日韩激情中文字幕有码| 自拍视频一区在线观看| 午夜福利在线合集| 国产女人成人精品视频| 人妻久久久久久| 麻豆天美久久91| 91熟女综合| 亚洲91射| 人妻一区二区三区四区视频| 性videos欧美熟妇hdx| 淫荡少妇免费| 正在播放:深夜激情大战,自带黑丝袜全力输出骚穴 | 东北丰满熟女国产一区 | 国产精品午夜高潮呻吟久久av| 国语对白在线播放视频| 婷婷月色| 超碰97男人| 中文字幕黄色一起草| CCYY草草影院地址入口| 午夜寂寞欧美| 自拍盗摄一区| 日本亚欧爱爱| 一个人免费视频观看在线WWW| 热久久国产| 亚洲人妻一区二区三区| 久久9精品网站| 亚洲人妻在线精品| 欧美一级色| 97超碰超欧美。| 亚洲无码视频免费在线观看网址!| 亚洲精品性爱片| 熟女人妻av在线资源,黄色的资源| 青青草久久| 欧美激情性爱视频网站| 美日韩一卡二卡三卡免费人妻精品| 欧洲精品久久| 极品综合| 亚洲欧洲视频小说在线观看| 综合亚州欧美| 日韩精品永久在线观看| 免费网色网站| 国产精品女生av| 亚洲 图片 欧美 色图| 91这里只有精品| www.婷婷六月天| 夜夜夜爽www精品视频| 操操逼操操逼操操逼逼| 香蕉久久精品| 女同女同恋久久级三级| 97色欧州| 国产 日韩 欧美 中文 另类,国产 欧美 另类 制服 变态,高清 日韩 欧美 中文,高 | 亚洲另类色综合网站| 色99视频| 白嫩少妇| 麻豆国产成人精品| 欧美日韩性爱无码| 国产91 丝袜在线播放| 大香蕉碰碰| 东京热视频网| av久日| 日本三级日本三级99| 超碰久超碰久| 黄色成品网站| 岛国黄色大片网站| 久草这里只有精品| 物尤视频一区二区| 国产亚洲禁久一区二区| 天天做天天爱| 亚洲自拍欧美国产首页网曝| 欧美久久伊人| 无码人妻一区二区三区免费九色| 国产亚卅97| 国语av最新自产拍在线观看| 天天干电影| 午夜欧美神马久久久久| 91色色色| 国产一区二区三区导航| 91精品人| 一区二区视频在看| 国厂麻豆77q4| 久久久久日本视| 色婷婷丁香五月| 色色色天美视频| 日语五十路和六十路亚洲国产精品| 熟妇高潮二区三区| 极品少妇99| 午夜人妻精品综合在线| 亚洲天堂在线怕怕视频| 国产丁香精品露脸视频 | 欧美一品道| 欧美成人亚洲精品| 特污免视频| 开心五月婷婷激情| 欧美日本中字另类在线| 精品午夜福利导航| 欧美肥臀在线| 中文字幕人乱码中文字的预防方法 | 乱伦一二三区| 亚洲成人黄色在线观看| 极品色| 丝袜美腿亚洲| 久久成年片色大黄全免费网站| 欧美色网络| 日本视频在线中文字幕| 2024黄色视频| 久久性爱视频99| 亚洲AV无码乱码| 人人摸人人摸人人干| 久噜噜| 美女上床网站| 国产精品农村妇女| 欧美影院一区二区三区| 1000部熟女视频在线观看| 中国一级操逼视频| 搡老熟女老女人老熟妇免费视频| 超碰免费在线| 国产性刺激| 青操影院| 欧美综合色,www| 亚洲无992tv| 欧美性爱视频免费一区一A| 亚洲第一在线视频| 亚洲色图超碰在线| 久久鲁夜| 国内精品久9| 国产精品分类在线观看| 偷拍自拍在线视频观看| 亚洲AV免费在线| 亚洲国产综合久久久性感熟妇| 男人把坤坤插入女人的下体| 亚洲在线综合| 国产精品无码久久久久2028| www欧美性爱| 欧洲乱码视频| 1024精品在线| 国产高清MV操逼视频| 黑丝少妇麻豆| 日夜伊人网| 日本三级日本三级99| 91综合国产精品| 伊人一区二区在线播放| 久久久人体| 俺去啦自拍| α√在线| 少妇精品久久久八区九区| 人人操人人操人人操人人操人人操人人人11.CM| 色婷婷电影| 亚洲Av诱惑| 99精品在线播放| 99久在线精品99re8热视频在线| 日本爽爽爽爽爽爽免费视频| 久久人妻视频| 亚洲色图欧美| 人妻少妇久久久| suv精产一二三区| 五月婷婷五月天| 极品另类| 国产天天骚| 日韩精品碰碰| 国产女主播视频在线观看| 99久久婷婷丁香| 亚洲se电影| www.激情| 久久久久亚洲熟妇熟女| AV色五月天| 国模一区二区三区| 超碰在线人妻中文字幕| 北条麻妃性愛视频| 国产 日韩 另类 视频一区爱| 热G综合热G中文| 99热综合在线| 国产亚洲性生活视频播放| 亚洲,欧美,综合网| 天天日少妇逼AV| 狠狠中文字幕| 超碰诱惑| 国产视频小说| 啊啊啊操一区| 日小BB小视频| 男女国产精品| 丰满人妻一区| 亚洲熟妇丝袜在线观看| 久久免费精品视频免一| 亚乱色| 超碰公开久久网| 五月丁香社区婷婷日韩欧美精品影院| 91色欧美| 香一区二区三区| 啊视频在线| 99婷婷一区二区| 久久久久女教师免费一区 | 97丝袜亚洲在线播放| 日本一区三级韩国| 人人干人人操人人..com| 91一区二区三区蜜桃| 麻豆成人影音在线| 91超碰丝袜制服| 99日免费视频中文字幕| 超碰97在线 欧美 国产| 久久久久性熟视频| 亚洲激情av| 99精品视频在线观看| 亚洲综合九九| 女人高潮抽搐喷水视频网站| 精品亚洲国产成人精品| 国产辣妈在线视频福利| 国产在线视频午夜精华在| 麻豆成人AV| 伊人嫩草| 欧美综合 站| 97bbn| 久操大香蕉超碰碰碰碰碰碰碰碰碰碰碰碰碰碰碰碰碰碰碰碰碰碰碰碰碰碰碰碰碰碰 | 99爱在线视频| 少妇精品久久久八区九区| 久久超碰久| 色网在线视频观看免费| 日韩兔费看黄片| 亚洲激情天堂网| 五月婷在线| 精品一区二区亚洲国产| 97超碰站| 美女黄页网站| 大白逼三四级| 打av高清| 欧美黑人猛交春色影视大全| 日本十八禁免费看污网站| 男人天堂新|