上一篇:仙劍奇俠傳1系列:1.本地運行環境及兼容性設置html
介紹
仙劍奇俠傳1是dos時代的經典遊戲,相信如下圖片能勾起你們的不少回憶。git
sdlpal是仙劍奇俠傳1的主程序。github項目sdlpal,項目地址:https://github.com/sdlpal/sdlpal,最先由國內仙劍奇俠傳愛好github
者 Wei Mingzhi發起維護,現由 SDLPAL開發團隊維護,項目核心成員以下:windows
palxex <palxex.ys168.com>測試
louyihua <louyihua繞過@爬蟲21cn.com>spa
以上第二位和第三位在上一篇文章仙劍奇俠傳1系列:1.本地運行環境及兼容性設置中提到過。.net
louyihua就是那個北航的博士,他的github地址:https://github.com/louyihua3d
編譯
sdlpal官網說擴展瞭如下框架,注:該版本不能在dos下運行,各位看官不要浪費時間在dosbox裏面測試。code
- SDL
- SDL_mixer
- libmad
- libogg & libvorbis
- FLTK
- OPL player from Adplug
- OPL emulation cores from DOSBOX project, MAME project and Chocolate Doom project
- Audio resampler from foo_input_adplug
- AVI player from ffmpeg
- Image decoder from stb
按常規思惟,筆者聯想到,可能會依賴這些庫。按圖索驥到sdl官網http://www.libsdl.org下載sdl回來。
通過筆者最終測試,sdlpal再也不像windows95/98那個版本把sdl靜態編譯到主程序裏。而是以動態庫方式和主程序sdlpal.exe共存的。
一、編譯sdl
sdlpal主程序依賴於sdl,因而優先編譯sdl,筆者本地使用Visual Studio 2019企業版,安裝時勾選如下幾項
sdl的編譯還須要Directx的sdk,各位看官須要去微軟下載Microsoft DirectX SDK (June 2010),地址
https://download.microsoft.com/download/A/E/7/AE743F1F-632B-4809-87A9-AA1BB3458E31/DXSDK_Jun10.exe
安裝後得到Directx SDK文件C:\Program Files (x86)\Microsoft DirectX SDK (June 2010)
截至編寫此文章時官網SDL最新版本SDL2-2.0.10,下載地址http://www.libsdl.org/release/SDL2-2.0.10.zip
將SDL2-2.0.10下載回來放到sdlpal的3rd目錄
打開SDL2-2.0.10項目後將SDL2和SDL2main更改SDK爲Visual Studio 2017 - Windows XP (v141_xp)
必定要更改爲這個,不然編譯報錯
c2118:負下標
筆者曾嘗試下載 1.2.15編譯,這個版本的是從Visual C++6.0升級過來的,這個版本不是本程序編譯的最低依賴版本。
這裏遇到的錯誤頁分享如下,將庫文件目錄
C:\Program Files (x86)\Microsoft DirectX SDK (June 2010)\Lib\x64
C:\Program Files (x86)\Microsoft DirectX SDK (June 2010)\Lib\x86
分別在添加到編譯的庫文件類路徑,此處再也不詳述。
打開目錄3rd\SDL\SDL2-2.0.10\VisualC中的SDL.sln編譯項目,得到
如下三個文件
SDL2.lib
SDL2main.lib
SDL2.dll
將3rd\SDL\SDL2-2.0.10\include目錄拷貝到
3rd\include
目錄以下
二、編譯sdlpal
打開項目sdlpal-master\win32目錄下的sdlpal工程文件,修改配置以下
更改SDK爲Visual Studio 2017 - Windows XP (v141_xp)
庫目錄添加..\3rd\SDL
編譯經過。得到如下文件sdlpal.exe
將編譯SDL2-2.0.10得到的SDL2.dll和sdlpal.exe複製到仙劍奇俠傳1的運行目錄,以下(上面的第5張圖片)
打開sdlpal.exe程序界面以下
啓動遊戲
資料:
中國仙劍聯盟懷舊版資料庫 http://palunion.ys168.com/