在macOS 15.7下裝了Porting Kit的steam版,KOEI的三國志12PK
啟動遊戲後,開頭畫面要顯示動畫時,一片空白。
目前,除了關閉動畫外,無法遊玩。
試了以下組合無效:
1. Direct3D + quartz + lavfilters
2. Metal + quartz + lavfilters
在macOS 15.7下裝了Porting Kit的steam版,KOEI的三國志12PK
啟動遊戲後,開頭畫面要顯示動畫時,一片空白。
目前,除了關閉動畫外,無法遊玩。
試了以下組合無效:
1. Direct3D + quartz + lavfilters
2. Metal + quartz + lavfilters
若照正常的SFC程式設計來說....
對於漢化後的遊戲,其記憶體所能夠並呈現的文本量是遠遠不夠的!
所以漢化版採用了一項特別的技術「強刷顯存」來支援更多的漢字顯示
雖然SFC硬體本身不支援這種操作
但早期的模擬器們並沒有加入相關限制
全力模擬每一行程式碼的所呈現效果
(大概是出於運行效率的考慮吧?畢竟發行版本的遊戲不太可能加入這種本應無效的操作)
所以早期模擬器也就能夠順利運行各式各樣的漢化Rom
不過隨著電腦性能的提升和SFC模擬水準的進步
精確的再現實體機性能成為了各大SFC模擬器的最終目標
於是這項硬體本身不允許的操作理所當然的被過濾掉了....
這也就是造成我們所看到的亂碼問題最大原因!
時至今日,幾乎所有還在維護的SFC模擬器都引入了這個限制
所幸有些模擬器已經提供了高級選項「 BlockInvalidVRAMAccess」
可以手動關閉這個過濾的選項
因此使用上需要留意一下。
Snex9x 的情況
在選項中找到[設置]-[系統]
找到[限制無效的VRAM進程]並將之切換到[關閉]
或
以記事本打開snes9x.conf 或 snes9x.cfg
找出[Settings]
BlockInvalidVRAMAccess並改成BlockInvalidVRAMAccess=FALSE
存檔後重啟模擬器即可
RetroArch的情況
| 在玩 SFC 遊戲時,按下 Select + X(或你設定的 Hotkey) → 進入 Quick Menu → Core Options -> Emulation Hacks,找到 “Block Invalid VRAM Access” 選項,把它設 OFF(或 FALSE) |
| Save States或是: 修改後可以在 Overrides → 儲存 Core Overrides(儲存給這個核心) |
問題根源:為什麼 dyld 說「need arm64e」?
你的 M4 Pro Mac(硬體支援 arm64e 指令集與 Pointer Authentication)啟動的遊戲可執行檔,其 slice 是 arm64e。
Steam 在啟動遊戲時,用 DYLD_INSERT_LIBRARIES 強制先載入 steamloader.dylib,但這個檔只含 i386/x86_64/arm64 三個 slice,沒有 arm64e。
如果 SIP(System Integrity Protection)已關閉,dyld 會信守環境變數去插入這個不相容的 dylib,結果就爆出你看到的錯誤。
啟用 SIP 時,受保護的程式(已開 Hardened Runtime 的簽名 App)會被 dyld 直接忽略 DYLD_INSERT_LIBRARIES,遊戲就能正常跑。Apple Developer
適用對象:除非你平常真的需要關掉 SIP(例如裝自訂 kext),否則這是一步到位的解法。
重開機到「恢復模式」
由關機狀態,長按電源 / Touch ID → 看到「載入啟動選項」。
點「選項 (Options)」→「繼續」。
進入「工具程式 > 終端機」。
執行
bashcsrutil enable
reboot
開機後在 macOS 再確認:
bashcsrutil status # 應顯示 System Integrity Protection status: enabled
再從 Steam 啟動 CK3 / V3 / Stellaris 就不會再跳 arm64e 錯誤。Steam 討論區與 Paradox 論壇也有人證實「Enable SIP」可解決 Exit Code Null / steamloader 錯誤。
pygame2出了有一段時間了,最近才發現pygame2解決了windows下中文輸入法,
原本要自己實作的大問題,
基本上是利用start_text_input()等相關function來實作,參:https://www.pygame.org/docs/ref/key.html#pygame.key.start_text_input
詳細實作的程式碼,請參考以下URL:
https://github.com/pygame/pygame/blob/main/examples/textinput.py