2023年7月20日 星期四

steam deck 安裝其他遊戲機模擬器

比較建議用 emudeck, 這篇提到的方法是我之前玩過的模擬器, 想嘗試裝在 steam deck 上, 因為知道怎麼操作, 不用重新查閱模擬器的使用方式, 如果是用 emudeck, 就要查 emudeck 怎麼使用, 現在好像都是整合型的, 一個模擬器界面, 載入個各模擬器, emudeck 好像也是用 retroarch。

後來慢慢找到方法, 一般我都會把觸控版設定為滑鼠, 再把左鍵、右鍵綁定在 L1, R1, 選擇按鍵綁定 ESC, 開始綁定 ENTER, 並接上滑鼠、鍵盤測試整個按鍵, 之後設定 steam deck 手把按鍵, 有點繁瑣就是。

[mame 模擬器]

mame 比較特別, 獨立出來一篇, 在 steam deck 安裝獨立的 mame 如果難倒你, 建議使用 emudeck 比較好。參考: 在 steam deck 安裝 MAME 模擬器

[安裝 ps 模擬器]
fig 3. 修道院之謎

從 discover 安裝 DuckStation, 複製 BIOS 檔案到 /home/deck/.var/app/org.duckstation.DuckStation/config/duckstation/bios, 再從選單畫面選 rom 的目錄。

[ps2 模擬器 (PCSX2)]

另外也測試了 ps2 模擬器 (PCSX2), 一樣 discover 安裝 PCSX2, 設定原理都一樣, 建議裝上滑鼠、鍵盤比較好設定, 設定的基本原理都一樣。

先裝上模擬器, 跑個遊戲使用鍵盤設定按鍵, 測試沒問題之後, 寫個 ps2-emu.sh 執行檔, 從 steam app 加入 emu.sh, 再回到 steam, 進入模擬器之後設定手把按鍵, 把手把按鍵設定到鍵盤對應按鈕即可。
ps2-emu.sh  
flatpak run net.pcsx2.PCSX2
PCSX2 需要 bios, 模擬器本身不含這個, bios 從選單選還是無法正常執行, 最後把 bios 檔案放在 /home/deck/.var/app/net.pcsx2.PCSX2/config/PCSX2/bios, 就可以正常執行。

從選單設定 roms 檔案, 就可以了, 這邊沒特別紀錄, 可能花點時間找一下設定, 不會太難。

遊戲影片:


[任天堂紅白機 fc 模擬器]

nes 模擬器也是一樣的方法, 一樣從 discover 安裝 nestopia。nestopia 執行檔路徑在
/var/lib/flatpak/app/ca._0ldsk00l.Nestopia/x86_64/stable/6afecf1d545e30a90c3e03b6f1f7df77522a4dea803dc269ed28804d2c95f090/files/bin

把 s.sh 加入到 steam game, '/home/deck/nes_roms/s.nes' 是 rom 的名字。
s.sh
flatpak run ca._0ldsk00l.Nestopia '/home/deck/nes_roms/s.nes'
[安裝 disksys.rom]

如果要玩磁碟機的 rom (*.fds, 例如超級瑪莉兄弟 2), 需要 disksys.rom, 不過 disksys.rom 要放在哪裡是個問題, 畫面選單沒有這個設定, 直接執行 nestopia, 就會看到找不到 disksys.rom 的訊息, 再把 disksys.rom 放去那邊即可。

(deck@steamdeck)$ cd /var/lib/flatpak/app/ca._0ldsk00l.Nestopia/x86_64/stable/6afecf1d545e30a90c3e03b6f1f7df77522a4dea803dc269ed28804d2c95f090/files/bin
(deck@steamdeck bin)$ ./nestopia
Failed to read config file /home/deck/.config/nestopia/nestopia.conf: Using defaults.
1 joystick(s) found:
Microsoft X-Box 360 pad 0
Failed to load input config file /home/deck/.config/nestopia/input.conf: Using defaults.
Fds: BIOS not found: /home/deck/.local/share/nestopia/disksys.rom
NstDatabase.xml not found!

不過有趣的是如果是執行 flatpak run ca._0ldsk00l.Nestopia, disksys.rom 要放在
/home/deck/.var/app/ca._0ldsk00l.Nestopia/data/nestopia/disksys.rom

這邊花了不少時間才搞定。

[安裝 pc engine 模擬器]

一樣還是建議用 emudeck, 我用的方式是因為之前有執行過, 想測試能不能在 steam deck 上執行。

使用的是 Magic Engine 0.90 版本, 需要在 dos 下執行, 想到使用 dosbox 來執行, pce.sh 是整個指令, 一樣把這個指令加到 steam 遊戲上, 就是在 dosbox 執行 Magic Engine 模擬器。因為這是早期的機器, 就算透過2層模擬, 還是很順。
(deck@steamdeck ~)$ cat pce.sh
flatpak run com.dosbox.DOSBox -c "mount c /home/deck/Documents/PCE/" -c c: -c "cd PCE090" -c "PCE.EXE c:\ROMS\MOTOROA1.PCE" -fullscreen -noconsole -exit




使用 Magic Engine 0.91 有一些按鍵問題, 測試之後, Magic Engine 0.90 會比較有機會正常, 上述4個畫面是模擬器對應的按鍵, 所以要把手把設定成對應鍵盤按鍵, 不過在實測中, 有時候按鍵還是會怪怪的, 無法正常按下, 例如有時候 alt, ctrl 會失效。
設定鍵方面:

    * ESC ----->主選單
    * Pause ----->暫停遊戲
    * 0 (右手邊的數字零)---->慢動作
    * + / - 鍵----->調節音亮大小
    * F1~F4----->畫面跳格數,F4 畫面跳格最嚴重,但在較慢的電腦上..這是唯一
      的方法
    * F5 ----->打開或關閉搖桿功能
    * F6 ----->一人玩模式
    * F7 ----->二人玩模式,在這個模式玩家1是用鍵盤控制
               玩家2是用搖桿控制
    * F9 ----->打開或關閉聲音功能
    * F11 ----->打開或關閉資料功能
    * F12 ----->打開或關閉電視掃瞄線功能

 控制鍵方面:

    * 方向鍵 ----->這還用說嗎??
    * 空白鍵---->選擇鈕
    * Enter----->開始鈕
    * Alt----->I 號按鈕
    * Ctrl ----->II 號按鈕
    * X----->打開 I 號按鈕的連發功能,一共有三段
    * Z----->打開 II 號按鈕的連發功能,一共有三段
執行的遊戲是未來賽車I、另外有未來賽車II, 這是我很喜歡的遊戲, 畫面簡單, 但很好玩, 尤其是 5 人一起玩的時候很有趣。

會有車身、引擎、輪胎之類的升級, 名次越高獎金越多, 可以購買的零件就越高檔, 速度就可以再提昇, 所以如果一開始拿不到好名次, 會惡性循環, 成績會越來越差, 買不起好裝備。一般我都會買 B+2 的方向盤, 比較好操控。

另外如果落到最後, 會被拖行一段距離, 大約被拖行 40 次之後, 就會被宣告遊戲失敗。

有趣的是我買了「NEC PC Engine GT 掌上型主機」結果現在透過模擬器, 也是在掌機上玩。







看到「[教學] Magic Engine 1.1.3 簡易教學」才知道原來已經到 1.1.3 版, 也不是 dos 執行擋了。

Magic Engine 1.1.3 測試了一下, 也可以跑的起來。

dosbox 不知道被我設定了什麼 (後來知道是調整了 dosbox 執行時的解析度), 在桌面執行 dosbox 時, 會造成桌面畫面轉了90度。從 setting/display and monitor 改解析度即可, 選 "旋轉 + 800X1280" 這個。
[安裝 yuzu switch 模擬器]

一樣從 discover 從安裝 yuzu, 需要安裝 keys 和 firmware files, 合法的方式是從你購買的 switch 取出這些檔案, 這是利用 switch 程式漏洞作到的, 早期的機器比較沒問題, 新的機器可能無法取出這些檔案, 因為這些漏洞後來被修正。

複製 keys, firmware 到相對應的目錄。
cp keys_files ~/.var/app/org.yuzu_emu.yuzu/data/yuzu/keys/
cp firmware_files ~/.var/app/org.yuzu_emu.yuzu/data/yuzu/nand/system/Contents/registered

參考文件: Setting up the Decryption Keys and Firmware

再來的都一樣, 已經做很多次了, 把 yuzu.sh 加入到 steam 遊戲項目。

deck@steamdeck ~)$ cat yuzu.sh 
flatpak run org.yuzu_emu.yuzu

[n64 模擬器]

從 discover 安裝 Rosalie241。

cat n64.sh
flatpak run com.github.Rosalie241.RMG

沒有留言:

張貼留言

使用 google 的 reCAPTCHA 驗證碼, 總算可以輕鬆留言了。

我實在受不了 spam 了, 又不想讓大家的眼睛花掉, 只好放棄匿名留言。這是沒辦法中的辦法了。留言的朋友需要有 google 帳號。