[閒聊] MiSTer FPGA - 開源FPGA專案
已經使用MiSTer一年多了,但在板上都沒看到什麼討論,
在台灣相關的文章更是少之又少,想說來拋個一篇。
如果有寫錯東西的話再麻煩補充 XD
--
https://i.imgur.com/Rni5jJv.png
2019年底,我在SmokeMonster的youtube頻道以及retrorgb的blog開始看到
大量MiSTer相關的新聞和影片。
當時NeoGeo、GBA、Sega CD core陸續的釋出消息,以及預告CPS街機、PS1等core開發中
的情報,看了讓人既好奇又興奮。
在github上逛完wiki了解專案後,馬上下訂板子與材料來組出來自己的MiSTer。
專案wiki: https://github.com/MiSTer-devel/Main_MiSTer/wiki
--
其實FPGA主機發展也好幾年了,紅白機AVS、以及後來很紅的Analogue家產品。
儘管自己早已陸續收了喜歡的主機與遊戲,主機輸出從圓剛AV轉HDMI到RetroTINK搭S端子
,後來scart線也上了、OSSC也買了。
當時看了My Life In Gaming的一系列影片,
最後還是忍不住誘惑買了一台Super Nt來了解他的威力。
My Life In Gaming - Analogue Super Nt
https://www.youtube.com/watch?v=d_OW_t9RXEM
後來Analogue產品大紅,紅白機的Nt系列在去年出了昂貴(550美金)的最後一批,
Super Nt與Mega Sg則已經缺貨一陣子。
掌機的Pocket預購當時也有人貼在本板,預購就大塞車,周邊也搶購一空,一機難求。
PCE的Duo則是預計今年開放預購。
(不過還是提醒想買的人,這家的產品品質很好,但運費與服務一直受到多數人抱怨,
他們家的運費不知道為什麼就是超高,我當時Super Nt的運費是50美金,商品價的1/4)
--
把更新檔丟進SD卡更新core就能解決相關問題,FPGA主機一掃我對過去那些市場上"相容
機"的印象。
商業FPGA主機的產品,成熟度已經非常高了,遇到bug也能更新,不像大多的相容機買來
就是那樣了。
在Analogue網頁上有打著大大的「No Emulation」標語,那時讓byuu看到後寫了洋洋灑灑
一長篇「FPGAs Aren't Magic」的文章。
FPGA對上一般大家熟悉的模擬器,應該是 硬體模擬 vs 軟體模擬。
Analogue網頁上所寫的應該是「非軟體模擬」(比對市面上那些dump rom後做軟體模擬的
機器),而有些宣傳的詞彙與文章確實讓人感覺是在講FPGA就是比軟體模擬還要強。
byuu的文章則是回應這套說詞,兩者的開發都是站在同一個起跑點,共享一樣的知識
大家透過不同的方式來實做。
硬體模擬與軟體模擬在很多地方都各有優缺點差異
近年來很夯的把畫面改成寬螢幕、2D圖層變3D、或是大家最喜歡的即時存檔、倒帶功能,
這些在FPGA主機上要實作反而不容易。
相反的像Analogue主機支援各種原廠周邊,原廠手把直接插上去可以用、超任插上Super
Game Boy與GB卡夾也可以玩、MD的Mega-CD接上去也能用,這些都是dump卡夾後軟體模擬
的主機無法做到的。
少了背後OS的干擾,FPGA在延遲方面也優於一般軟體模擬,運作的穩定與一致性也相對比
較高。
FPGA的專案也常常說自己是「reimplementation」(重新實作),偶爾也會看到有些重
新實作出來的晶片,最後真的被作出來並替換到要修復的街機的板子上。
好 講的廢話有點多,該進入正題了
--
1. 組MiSTer需要什麼
- (必須) 友晶 terasic DE10-Nano FPGA板
- (必須) Micro USB OTG Hub 或 官方USB板
- (選配) SDRAM板子 (32MB ~ 128MB)
- (選配) IO板子 (類比 or 數位)
https://www.terasic.com.tw/cgi-bin/page/archive.pl?Language=Taiwan&No=1047
DE10-Nano這塊板子可以在官網買,看上面寫有學生身分還有學生價。
我自己當初是到Mouser買,切換成美金後以130幾美金就可以入手,
送台灣免運不過需要付一點點關稅。
USB Hub是拿來接手把、鍵盤、USB等裝置用的,這個必須要自己買一個。
購買官方USB Hub的好處是,板子與DE10-Nano大小相同,可以組出一座塔,還有中央連接
板,可以讓你中間連接的線不會醜醜的露在外面。
SDRAM板子是選配,但通常大家會直上128MB(約1500台幣),因為NeoGeo滿多遊戲會吃到那
麼多,kof、越南大戰等都吃滿多的(96MB)。
NeoGeo SDRAM可以看這個表查:
https://github.com/MiSTer-devel/NeoGeo_MiSTer/blob/master/releases/romsets.xml
不過大部分的core是不需要SDRAM的,可以在wiki查
core SDRAM需求:
https://github.com/MiSTer-devel/Main_MiSTer/wiki/Cores-that-use-SDRAM
IO板不是必須,不過他主要提供給你
- (類比IO板) VGA / YPbPr / RGB 輸出
- (數位IO板) 額外的預留擴充插槽(目前沒人使用)
- 風扇散熱
- 三顆按鈕與LED燈
其他還有滿多細節的,像音訊輸出、轉出IO讓SNAC可以使用之類的,可以上wiki查詢
如果不想要多花錢買IO板,也可以去列印別人的3D列印上蓋,也有留讓你上風扇的地方。
想要全配的人當然是上好上滿,順便換個貓扇 XD
但你如果沒有要碰那些需要SDRAM的core,也沒有特別需要IO板帶給你的好處
也可以先只用DE10-Nano就好,反正剩下的可以慢慢升級。
風扇上不上就看人,有些人覺得板子運作環境本來就可以承受那樣的溫度,也有人是覺得
上散熱片跟風扇比較好。
殼的部分網路上有很多3D殼可以載來印,也有雷射切割的殼可以去買銅柱回來搭配使用,
大家可以各自發揮,也有人DIY把它塞進其他裝置的鋁殼內,或是某些懷舊電腦殼內的。
第一次執行時,與樹莓派差不多,把映像檔寫進SD卡後,直接開機會自動幫你設定完成。
--
2. 控制器與儲存裝置
上面有寫MiSTer需要搭配USB hub,
MiSTer有在板子的ARM上跑了Linux系統,負責介面、控制IO、以及檔案系統,再與FPGA做
溝通。
所以你插在上面的USB手把,只要能被MiSTer的Linux辨認到都可以運作。
有線連接手把、鍵盤、或是滑鼠都可以,
使用藍芽接收器也能無線使用PS4、XBOX或是Switch、Wii的手把,8bitdo的接收器也行。
社群也有維護一份常見控制器在MiSTer的延遲表:
https://twitter.com/MisterAddons/status/1312048384119799809
也可以外接USB硬碟來擴充容量,把core與系統放在SD卡,剩下的檔案放在USB硬碟。
雖然過了一層Linux系統,但你可以透過設定1000hz polling rate來減低延遲,
若PS4手把的延遲你覺得不夠低,還有能自製daemonbite手把轉接器,將延遲壓到最低
Daemonbite: https://github.com/MickGyver/DaemonBite-Retro-Controllers-USB
當然MiSTer也支援完全沒延遲的原生手把! (須購買SNAC轉接版)
使用SNAC轉接 是直接接到IO板上的User port,不透過Linux系統的USB而沒有延遲,
讓你可以在core上使用原生手把,但是當然只有該主機的手把能對應支援該core,光線槍
也可以運作,
還不只這個功能,還有GameBoy能接對戰線。GBA也支援使用超任手把。
另外還有Bliss-Box(透過LLAPI),不過他需要第三方改core才能支援。
喜歡用大型機台的最近也有MiSTerCade,讓你用JAMMA接到大型機台裡面使用。
MiSTerCade:
https://www.youtube.com/watch?v=PVk_Z1g1qb8
另外滿多core的光線槍支援,若不使用SNAC+該主機的光線槍,那你可以使用Wii手把、滑
鼠、手把類比來替代(畫面會有十字準心)
--
3. core的安裝與更新
官方更新的方式滿原始的,就是跑shell script來更新
從官方menu選到script選項,可以進到script資料夾底下,選擇update.sh來更新
script會從github上的wiki爬列表,再從各專案的core檢查是否有新版本能使用
官方預設的 update.sh 會更新所有歸類在官方"MiSTer-devel"這個組織底下的專案
但因為後來有一些開發者會把core放在自己的github,或是專案並不想整合進官方組織底
下(因為需要遵守一些格式要求等等)。
所以又有其他人寫了update_all.sh (更新了包含官方/非官方 與其他額外的工具)
MiSTer Update All: https://github.com/theypsilon/Update_All_MiSTer
Update All的好處是統整了不少額外可手動選擇的script,像是Arcade organizer,
會幫你把街機按照類型、公司、平台,透過symbolic link的方式建成一系列目錄
跑完後就一切處理完畢,我都習慣每次開起來使用時就先跑一次更新。
陽春的UI是受限於板子上ARM的效能而做的取捨,現在就是簡單易用但陽春。
--
4. 檔案
目前MiSTer官方並沒有實作/開發周邊來支援讀取實體卡帶 / 光碟
因為直接讀取卡帶/CD的穩定性以及種種考量,目前僅能讀取dump好的檔案
雖然有看過幾篇討論是否有機會加上去,但目前這個並沒有在開發的計畫之中
看過有人說透過一些USB的Cart Reader, Rom Dumper是可以達到插實體卡的效果,
但那也是dump一份出來,就跟某些支援實體卡的軟體模擬主機一樣
如果想要原汁原味的實卡、CD,目前只能買Analogue那種商業FPGA主機才有辦法。
依照core將檔案 分類放入/game目錄底下的對應資料夾即可
不少core支援讀取壓縮檔,也就是你可以不壓縮就直接讀取內部某個檔案
--
5. 顯示設定
- 畫面設定
其實畫面大小有太多東西可以設定了,都在MiSTer的設定介面/編輯設定檔可以調整
像是調整放大倍數,vsync buffer
也可以針對個別的core去下設定 (只是要寫在設定檔內)
也有支援一些特殊的用法,像是預設有一個是iPad 3面板(2048x1536)使用的解析度
https://i.imgur.com/AkxJEU4.png
iPad 3面板延遲測試:
https://twitter.com/smokemonstertwi/status/1274195030920445952
- 掃描線
MiSTer的掃描線有非常多可以選,Interpolation、亮暗線、顏色由淺到深(10%~90%)
、銳利或柔邊、LCD模糊...等
詳細說明: https://github.com/MiSTer-devel/Filters_MiSTer
最近不少core也支援了1920x1080p, 5倍放大裁切模式
原本240高的遊戲如果放大到螢幕滿應該是4.5倍放到1080
但如果是4.5x配上掃描線效果怪怪的
所以最近就多加了一個五倍放大 多的地方裁掉的模式
剩下的功能幾乎都是每個core各自實作的
--
6. 開發者介紹
- Sorgelig (Alexey Melnikov)
創造了MiSTer專案,也參與了非常多core的移植與開發
維護了整個MiSTer的框架,方便開發者在上面開發
- srg320 ( https://twitter.com/srg320_ )
我印象中有開發了超任、Mega CD、PCE CD
而他現在正在著手開始進行Sega Saturn
不過Sega Saturn是否能塞進DE10-Nano還是未知數
但因為他之前開發太多core了,所以大家都滿期待的
不過很難知道他的開發進度,twitter跟patreon都是近期在開發Sega Saturn時才開的
- Jotego ( https://twitter.com/topapate )
以開發街機機板core為主,本身的職業就是Analog Design Engineer
(他開發的core都沒在官方github上,所以要用update_all的script才抓的到)
開發了 YAMAHA音效晶片, 雙截龍, 泡泡龍, Konami魂斗羅, CPS1 / 1.5等core
目前CPS2正在以每周釋出一版beta的速度開發中 (patreon限定, 正式版會直接釋出)
之前他調整了CPS1/1.5 core的速度,現在跟實體基板的準確度已經非常接近了
MAME,實體基板,CPS core的準確度測試比較:
https://www.patreon.com/posts/cps1-cps1-5-46899296
CPS2快打與實體基板驗證影片
https://www.youtube.com/watch?v=EblLG8geeQU
jotego對於ebay拍賣上一堆販售的天價基板感到感冒,
這也是驅使他做開源FPGA街機core的一部分原因
在最近收到了玩家捐的數塊街機基板 (EX: Psikyo SH2等)
可以預期這些基板在未來都有機會被做成MiSTer的街機core
在這之前的CPS等core也是有人捐基板 以及他自己擁有的基板
讓他能夠直接檢驗core的準確性
- Furrtek ( https://twitter.com/furrtek )
開發Neo Geo core
他Decap了Neo Geo的晶片,把研究都記錄了下來,最後做了Neo Geo的core
同時也是Neo Geo CD的ODE開發者,也幫忙Decap了一堆其他別的晶片
- FPGAzumSpass ( https://twitter.com/azumfpg )
主要以掌機開發為主,開發了GBA、現在在開發Atari Lynx
Demo過NDS的core,不過在板子的硬體限制下,評估後是無法完全的模擬
改進了原本從MiST專案移植來MiSTer的Game Boy core
同時也幫這些core都加上了 即時存檔以及倒帶功能 等較難達成的功能
協助改進GB的功能介紹: https://www.youtube.com/watch?v=_kFS4z0Q-Ms
GBA core準確度比較表: https://github.com/MiSTer-devel/GBA_MiSTer#accuracy
另外也有協助分析Holy Grail Bug
https://github.com/RobertPeip/FPGBA/wiki/Madden-06-07-%22Holy-Grail%22-Bug
- Josh Bassett ( https://twitter.com/nullobject )
移植/開發CAVE 68000 core (原本是由rwk開發,後來接手給他繼續開發並移植MiSTer)
一月時釋出了第一版 怒首領蜂 的core
- Laxer3A ( https://twitter.com/laxer3a )
從我買板子的時候開始,已經開發PS1的core一年多,後期與ultraembedded一起開發
最近這兩個月釋出了DEMO影片,目前他們是在Arty A7板子上開發
之後完成後會將core移植回DE10-Nano
--
除了家用主機、掌機、街機以外
MiSTer上也有大量的電腦core,Amiga、MSX、Sharp x68000、C64...
但這個我就比較沒有研究了 XD
MiSTer是站在過去那些人肩膀上而產生的專案
在我入手的這一年多以來看到很多 軟硬體模擬間的互動與合作
還滿期待他未來的發展
推薦給玩膩了軟體模擬,也想一起入坑試試FPGA主機的人
雖然跟樹莓派比起來貴了很多,也沒有辦法玩到像他那麼後面的新主機
可能遊玩時也感受不出更準確的模擬差異是在哪
但FPGA確實有他的一種魅力在 XD
只是如果想要插實體卡帶、光碟的話,目前還是得去跟黃牛搶Analogue家的產品了
--
最近這幾天在我斷斷續續寫這篇文章的時候
My Life In Gaming釋出了他們的ANALOG FRONTIERS紀錄片第三集
裡面討論了資料保存、軟體模擬、硬體模擬等議題
很多跟這個版息息相關的事情
裡面也有討論MiSTer專案跟AVS/Analogue的主機 有興趣大家也可以看看 XD
https://www.youtube.com/watch?v=Nt3WyfMffX0
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 1.160.115.235 (臺灣)
※ 文章網址: https://www.ptt.cc/bbs/Emulator/M.1616013274.A.30A.html
推
03/18 08:52,
3年前
, 1F
03/18 08:52, 1F
推
03/18 10:11,
3年前
, 2F
03/18 10:11, 2F
→
03/18 10:11,
3年前
, 3F
03/18 10:11, 3F
→
03/18 10:12,
3年前
, 4F
03/18 10:12, 4F
→
03/18 10:13,
3年前
, 5F
03/18 10:13, 5F
其實MiSTer的門檻已經降低很多了 XD
1. DE10-Nano是一塊CP值很高,也很好買到的板子
(有看到別人說那塊板子原本是教育用途的開發板,所以CP值才會那麼高)
2. 那些被設計好的擴充板都是買來插上去就能使用的,
各國社群也有人會賣已經組好的全配裝備、或是現成的擴充板
3. 這一年來,許多人已經寫好自動化的script幫你處理大多數更新的問題
設定東西除非你要調整很細微的設定,不然大多都已經有別人整理好的預設設定能用
4. 國外youtube上介紹MiSTer以及如何組裝的影片很多,所以讓門檻又降低了一些
板子好買、社群活躍,好的框架設計方便開發者開發,加上許多教學資源
這是MiSTer會紅起來的原因
所以門檻其實有降低不少了
但在台灣要接觸,你就要英文好一點 XD
推
03/18 10:55,
3年前
, 6F
03/18 10:55, 6F
推
03/18 11:12,
3年前
, 7F
03/18 11:12, 7F
推
03/18 11:13,
3年前
, 8F
03/18 11:13, 8F
推
03/18 11:19,
3年前
, 9F
03/18 11:19, 9F
可能要看怎麼比較 XD
跟樹莓派之類的比當然價格差很多,但就是軟硬體模擬的差異
和Analogue之類的商業主機比,少了讀取實體片的功能,但一塊板子能抵上數台機子
(有人買A家主機後是直接JB/插Everdrive配8Bitdo手把,那這樣跟MiSTer的差異不大啊..
以街機的角度而言,若準確度都像CPS那樣受到實體基板驗證過,那其實感覺還挺賺的 XD
以家用主機而言,有些家用主機無法輸出RGB還要去改,全部搞定可能也花了不少了
(我自己就只有支援RGB的用OSSC,其他都還是用S端子,改下去是大坑啊
這幾年來主機的ODE跟HDMI輸出mod滿盛行的 但每一套也都是100~200美在賣的XD
玩MiSTer大多數的東西只要一塊DE10-Nano(4000台幣出頭就能搞定)
不過其他擴充板都買起來的話 價格就...恩
推
03/18 12:25,
3年前
, 10F
03/18 12:25, 10F
推
03/18 12:35,
3年前
, 11F
03/18 12:35, 11F
推
03/18 13:09,
3年前
, 12F
03/18 13:09, 12F
推
03/18 13:42,
3年前
, 13F
03/18 13:42, 13F
MiSTer可以查一下各個core的實作,大多都已經支援原廠手把/光線槍,卡帶目前沒有歐
要卡帶周邊的話 Analogue家的產品確實是這樣沒錯
Nt mini (紅白機) => 已絕版,可接FC磁碟機
Super Nt (超任) => 可使用Super Game Boy與其他超任特殊卡夾
Mega Sg (MD) => SEGA Master System、Game Gear(需買轉接設備)、Mega-CD,
最近有公布32x可搭配他們的DAC使用
Pocket (掌機) => GB / GBC / GBA,
Game Gear、Neo Geo Pocket、Atari Lynx (需買轉接卡夾設備)
Duo (PCE) => PCE / PCE-CD
Super Nt / Mega Sg 最近3,4月會補貨
Pocket很難搶...
Duo還沒開放
對Analogue的產品有興趣的話可以去看看youtube上的Review
有針對這些做說明/測試 EX: 超任 https://youtu.be/d_OW_t9RXEM?t=390
→
03/18 14:10,
3年前
, 14F
03/18 14:10, 14F
Nt系列的價格都被炒到很貴 XDD
但確實有不少好處,本身支援 數位/類比 兩種輸出 (後來的產品只有HDMI, 類比要買DAC
另外就是在JB後 作者有額外讓他可以玩GB/GBC, MD, SMS等core
→
03/18 14:19,
3年前
, 15F
03/18 14:19, 15F
→
03/18 14:19,
3年前
, 16F
03/18 14:19, 16F
→
03/18 14:21,
3年前
, 17F
03/18 14:21, 17F
→
03/18 14:21,
3年前
, 18F
03/18 14:21, 18F
啊 原來第一批Nt的不能JB 我一直以為跟Nt mini一樣
他們家的服務真的是 唉... 每次開預購在推特上都看到有人抱怨 XD
推
03/18 16:12,
3年前
, 19F
03/18 16:12, 19F
推
03/18 19:37,
3年前
, 20F
03/18 19:37, 20F
→
03/18 19:37,
3年前
, 21F
03/18 19:37, 21F
→
03/18 19:37,
3年前
, 22F
03/18 19:37, 22F
→
03/18 19:37,
3年前
, 23F
03/18 19:37, 23F
→
03/18 19:37,
3年前
, 24F
03/18 19:37, 24F
推
03/18 22:08,
3年前
, 25F
03/18 22:08, 25F
SS現在確實還不知道可不可以
srg320有在推特上說他只有DE10-Nano這塊板子 他也別無選擇 只能塞了XD
他辦twitter跟patreon 是因為需要錢去買相關的設備回來研究SS
現在大家也是基於他過去對MiSTer社群貢獻那麼多的情況下 給予支援與期待
記得一年前PS1 core剛起步的時候 看討論也是不太樂觀 說很可能塞不下
但後來慢慢開發後 情況愈來愈樂觀
現在則是說可以 只是他們先做在另一塊板子上 之後再移植回來
推
03/18 23:56,
3年前
, 26F
03/18 23:56, 26F
我認識的都沒人在講MiSTer 跟他們說 很多人都以為是類似樹莓派的東西 XD
Analogue家的東西也沒認識的人買 在台灣感覺真的滿冷門的
推
03/19 01:19,
3年前
, 27F
03/19 01:19, 27F
感謝! 跟大大比還是差多了 寫這篇是拋磚引玉 想看有多少人也在玩 可以一起討論
但主要目的還是寫多一點 看能不能吸引一些不認識MiSTer的人進來一起玩玩看 XD
推
03/19 11:22,
3年前
, 28F
03/19 11:22, 28F
推
03/21 13:12,
3年前
, 29F
03/21 13:12, 29F
推
03/21 16:09,
3年前
, 30F
03/21 16:09, 30F
推
03/22 06:19,
3年前
, 31F
03/22 06:19, 31F
https://www.tindie.com/stores/furrtek/
https://twitter.com/caiusarcade
你說...像這樣嗎? 滿多都是拿來取代原本壞掉的
※ 編輯: chris38c28 (111.241.150.52 臺灣), 03/22/2021 21:04:38
推
03/26 00:40,
3年前
, 32F
03/26 00:40, 32F
推
03/27 20:16,
3年前
, 33F
03/27 20:16, 33F
→
03/27 20:16,
3年前
, 34F
03/27 20:16, 34F
→
03/27 20:16,
3年前
, 35F
03/27 20:16, 35F
推
03/31 05:01,
3年前
, 36F
03/31 05:01, 36F
Emulator 近期熱門文章
PTT遊戲區 即時熱門文章
-6
32
51
137