CheatMaker 论坛

首页 » 游戏相关版块 » 游戏工具及相关 » [Multi] Mednafen 32位 啟用SS模擬 自編譯版 (20220120更新附件)
Blader - 2021/11/28 23:30:45
這幾天編譯完其他模擬器後
閒著沒事又回來繼續在Mednafen上折騰
本來一直編譯失敗, 但後來找到兩個問題點
如果要在MSYS2之中編譯成功, 必須要:
1. 使用make編譯而不是mingw32-make
否則會跳出找不到文件或文件夾的錯誤
2. 必須修改代碼, 有個未引用的代碼mingw_app_type必須刪掉
在mednafen/src/drivers/main.cpp之中, 有兩處要刪

這兩個要件完成以後
就可以使用模擬器作者準備好的編譯命令
照抄就能編譯成功了
至於要啟用SS模擬
必須在編譯命令中添加以下參數:
--enable-ss=yes
如此一來編譯出來的32位模擬器
也能模擬SS遊戲了

這邊順便做下記錄, 以下下載地址
需要的玩家請自取~

1.29.0正式版
Blader - 2021/11/29 4:59:11
幾個問題
64位編譯出來卻不能運行
雖然也不需要64位就是
另外就是SS調試器的內存查看
不論任何地址都顯示數值AA
我不曉得哪裡不對
大約這也是官方不肯給32位版模擬SS的原因之一
银河漫步 - 2021/11/29 7:34:57
我试了一下好像没有什么问题
内存显示是正常的
银河漫步 - 2021/11/29 10:28:50
内存和调试器都能正常使用
就是体积有点奇怪
官方的exe不到20M
你这个exe居然有126M
Blader - 2021/11/29 11:33:18
官方大約有加殼過
不過我嘗試加殼也還有33M
就是比官方版還肥
Blader - 2021/11/29 12:24:24
已經用加殼過的exe重新打包過
下載地址更新在主樓, 有需要請自取~
银河漫步 - 2021/11/29 13:35:17
其实不加壳的理论上要更好
执行效率更高
只是不清楚官方为啥可以小那么多
银河漫步 - 2021/11/29 13:45:23
所以如果这个体积只是因为无壳造成的
我觉得比较能够接受
无壳版更好用
我回头更新一下那个无壳版的基地址

Bizhawk这模拟器32位可行么?
还有
mupen64plus
duckstation
Blader - 2021/11/29 16:30:28
回复 8楼银河漫步的帖子

這3個模擬器我也有試過
BizHawk編譯32位會卡住
等很久都沒進度, 因此放棄
m64p編譯64位可以成功
但編譯32位卻有問題
卡在Parallel RSP一直編譯不能
大約這插件本身就不支持32位
DuckStation不知為何編譯不成
32/64位都一樣, 所以也放棄
银河漫步 - 2021/11/29 17:09:03
回复 8楼银河漫步的帖子

這3個模擬器我也有試過
BizHawk編譯32位會卡住
等很久都......
Blader 发表于 2021/11/29 16:30:28


无壳版的基地址更新完毕
可以不理会x64版了
Blader - 2021/11/29 17:51:50
回复 10楼银河漫步的帖子

感謝版主熱情支持
目前仍在嘗試編譯DuckStation
不過只有64位版編譯成功
32位版卡在一個庫的錯誤無法過去
這個庫會出錯又是因為xxHash不支持編譯32位
看來還是無法編譯32位版

另外版主分享基地址的帖子
表格中仍有Mednafen 1.28.0 x64
是模擬器已刪或是忘了編輯呢?
银河漫步 - 2021/11/29 19:01:29
已经删掉了
如果Bizhawk能32位就好了
我现在还留着原来可以编译32位的1.13版
因为mdcd和32x
这个模拟值的支持最好
Blader - 2021/11/29 20:04:45
回复 12楼银河漫步的帖子

找到編譯卡死的原因了
有一些符號連結
從7-Zip解壓縮代碼出來時沒有設置正確
Mednafen也有相同問題
重新設置後就能編譯
但我編譯出來還是64位...
不知道少做哪個步驟
Blader - 2021/11/29 22:20:38
32位BizHawk總算編譯成功
不過別太高興
我剛才發現源代碼自帶所有模擬器內核文件
但是沒有32位的文件
就是只有64位文件而已
想要32位文件必須自己另外搞出來
我不知道要如何編譯
今天弄一天也累了
是該休息下做些其他事情好好放鬆...
银河漫步 - 2021/11/29 23:58:21
32位BizHawk總算編譯成功
不過別太高興
我剛才發現源代碼自帶所有模擬器內核文件
但是沒有32位的文件
就是只有64位文件而已
想要32位文件必須自己另外搞出來
我不知道要如何編譯
今天弄一天也累了
是該休息下做些其他......
Blader 发表于 2021/11/29 22:20:38


或者可以放弃一些机种的内核
保留一些常规机种
Blader - 2021/11/30 1:40:59
回复 15楼银河漫步的帖子

貌似有部分機種的內核文件
必須在Ubuntu系統上先編譯waterbox
才能再用waterbox編譯出這些文件
melonDS就是其中一個
也就是說我或許得安裝WSL
不過目前暫無此計畫
我再看看有沒有可以在視窗系統編譯的內核
到時候簡單測試, 能用就丟上來
Blader - 2021/11/30 2:44:56
視窗系統可以編譯的內核文件
大部分都無法編譯出32位版
幾乎都提示缺失文件
那些文件怎麼無中生有...
目前有成功的單手就數得出來
只有QuickNes和Cygne(Mednafen)這兩個而已
其中mGBA更直接給我提示
32位元已不再支持
這樣的字句, 暈倒...
空有模擬器沒內核文件沒用啊
BizHawk太難搞了, 投降
银河漫步 - 2021/11/30 7:06:01
那就算了,这模拟器都是整的别人的内核,其实用那个1.13版也可以了
Blader - 2021/11/30 12:23:32
回复 4楼银河漫步的帖子

我這邊連官方64位版都顯示異常內存
看來幾乎可以確定是Win11的問題了
ares舊版本打開遊戲也會卡頓
明明記得Win10沒毛病
Blader - 2021/11/30 13:02:39
回复 4楼银河漫步的帖子

我不知道問題在哪了...
官方貌似沒加殼
剛才丟進去UPX顯示未加殼
官方版如果加殼了只剩下3MB
不清楚還有什麼參數漏掉了
银河漫步 - 2021/11/30 13:39:55
可能是某些文件重复了吧?
要不不可能体积差距这么巨大
Blader - 2021/11/30 17:06:51
回复 21楼银河漫步的帖子

已經嘗試在全新的文件夾中編譯
但還是一樣, 還把編譯環境卸載重裝
exe依然這麼大, 我唯一能想到的
大概就是Win11的問題
也許我得搞個虛擬機安裝Win10
或其他系統再試一次
Blader - 2021/12/1 0:19:30
在虛擬機安裝Win7編譯
結果還是一樣... 放棄
银河漫步 - 2021/12/1 7:38:39
编译时可以看看源代码哪个文件或者文件夹最大
有可能那个不是必要的文件
Blader - 2021/12/1 15:22:20
回复 24楼银河漫步的帖子

沒用的文件基本也不會寫進編譯命令之中
唯一的可能就是我的編譯環境差異了吧
但是編譯不出作者規定的環境
讓我很傷腦筋, 難道最新版真的行不通?
MSYS2根本沒有舊版編譯環境可用
我大概得另外想辦法
Blader - 2021/12/3 19:23:41
更新了附件
好像多包了一個dll
不知道為什麼
後來再編譯的exe
不再需要charset的dll
但是exe體積卻變大了
Blader - 2021/12/11 2:38:18
託版主的福我繼續不死心的嘗試
後來在網絡上找到MSYS2的編譯命令
發現要縮小exe體積需要的是strip這個小工具
strip --strip-debug ./mednafen.exe
這樣就能縮小不少體積了
於是今天更新主樓附件, 有需要請自取吧~
Blader - 2021/12/24 21:06:19
版本沒更新
但編譯環境升級至最新
並直接使用命令"strip mednafen.exe"
相比之前"strip --strip-debug mednafen.exe"
可以節省更多容量
不過因為編譯環境更新的關係
不確定exe容量比上次大還小
沒空確認了, 有需要的就更新
不然就等Mednafen下次更新才來下載我的自編譯版
Blader - 2022/1/20 0:25:43
追隨官方代碼1.29.0
1
查看完整版本: [Multi] Mednafen 32位 啟用SS模擬 自編譯版 (20220120更新附件)