先講結論:Dreamcast(DC)在Android手機和掌機上可以順順地跑,模擬器選Flycast就對了。Flycast已經在Google Play上架正式版,直接從商店安裝就能把環境準備好。Flycast預設內建HLE BIOS(以軟體模擬BIOS),就算沒有BIOS檔案,很多遊戲也能直接開起來;不過為了相容性,還是強烈建議準備從自己主機吸出來的兩個BIOS檔(dc_boot.bin、dc_flash.bin)。多數人卡關的地方,其實就是BIOS和資料夾路徑。這篇教學會依照實際設定畫面的順序,從安裝Flycast、放置BIOS、VMU記憶卡存檔設定、多光碟遊戲換片,一路講到卡頓時的排查方式。
結論:Android玩DC就用Flycast
Flycast是開源的Dreamcast模擬器,同時提供RetroArch核心與Android獨立App兩種版本。從2024年7月起在Google Play正式上架,截至2026年8月的最新版本是v2.6(2026年1月10日更新)。除了DC本體之外,同一個App也能執行NAOMI、NAOMI 2、Atomiswave、System SP等街機基板的遊戲(街機遊戲另外需要對應的街機BIOS,例如naomi.zip)。
在Android上執行Flycast,大致有下面三種方式:
| 方式 | 特色 | 適合誰 |
|---|---|---|
| Flycast獨立App(Google Play版) | 從商店直接安裝的穩定版,更新頻率較保守 | 第一次安裝、重視穩定的玩家 |
| Flycast獨立App(GitHub nightly版) | 開發中的最新建置,錯誤修正與新功能最快進來 | 需要某個特定bug修正版本的玩家 |
| RetroArch的Flycast核心 | 可以和其他主機模擬器共用同一個啟動介面與存檔管理 | 已經用RetroArch在玩其他主機的玩家 |
本篇以「先用獨立App跑起來、搞懂運作方式」為優先,所有步驟都以Flycast獨立App為準。之後想整合進RetroArch的話,BIOS與VMU的觀念是共通的,只有BIOS的擺放位置不同(後面會說明)。
Flycast的安裝與第一次啟動
在Google Play搜尋「Flycast」安裝即可,免費、沒有廣告,要求的權限也很少。只有在需要最新功能或特定bug修正時,才考慮從Flycast官方GitHub下載Android用的nightly建置APK。因為是商店以外的APK,安裝時會跳出「未知來源應用程式」的警告;只要是Flycast官方發布頁或官方nightly建置,就可以選擇繼續安裝。請不要從非官方的APK轉載網站下載,來路不明的安裝檔可能被動過手腳。
第一次啟動時畫面上什麼都沒有,這是正常的。在完成下一節的BIOS放置和遊戲資料夾設定之前,遊戲清單會一直是空的。
準備BIOS(dc_boot.bin、dc_flash.bin)
Flycast預設使用HLE BIOS,所以沒有BIOS檔案也能啟動不少遊戲。但有些遊戲在HLE下無法正確執行,而且DC的開機畫面、BIOS選單(例如VMU記憶卡管理畫面)也需要真正的BIOS才會出現。為了減少相容性問題,強烈建議準備以下兩個BIOS檔:
- dc_boot.bin(開機ROM)
- dc_flash.bin(快閃記憶體內容)
檔名必須和上面完全一致,副檔名不同或大小寫不同都不會被辨識。BIOS是受著作權保護的系統軟體,請不要從網路上的散布網站取得,也不要分享給別人。請從自己擁有的Dreamcast主機自行吸出,這是最穩妥的取得方式。
吸出來的檔案要放到Flycast讀得到的BIOS資料夾。打開Flycast的「Settings」,往下捲到「Custom Paths」,在「BIOS Folders」按「Add」,選擇你放BIOS檔的資料夾即可。另外,也可以直接把BIOS放進Flycast主資料夾底下的「data」資料夾。
要特別注意的是:獨立App和RetroArch的BIOS位置不一樣。RetroArch的Flycast核心是讀取system資料夾裡的「dc」子資料夾(也就是system/dc/dc_boot.bin)。把兩邊的位置搞混,是出現「BIOS not found」最常見的原因。
在AYN、Retroid等部分Android掌機上,可以用檔案管理器在「Android/data/com.flycast.emulator/files/data」看到內部資料的存放位置。不過有些機種因為Android的存取限制,無法直接打開這個資料夾。只要在Custom Paths把BIOS資料夾設定好,基本上不需要去碰這個內部資料夾。
遊戲資料夾與基本設定:解析度、渲染器、手把
遊戲光碟映像檔的資料夾同樣在「Settings」裡設定:找到「Content Location」,按「Add」選擇放遊戲的資料夾。BIOS和遊戲資料夾都設好之後,遊戲清單應該就會出現標題。開始玩之前,先確認下面幾個設定,第一次就能玩得比較順:
| 設定項目 | 建議值 | 說明 |
|---|---|---|
| 渲染器(Renderer) | 先用OpenGL;若跑不動再試Vulkan | Vulkan在部分裝置上較快,但也有畫面異常的回報,依裝置表現決定 |
| 內部解析度 | 先從原生~1.5倍開始 | 拉太高容易讓中階手機掉幀 |
| Widescreen | 依個人喜好開啟 | 拉成16:9的選項,有支援的遊戲效果比較自然 |
| 跳幀(Frame Skip) | 預設關閉 | 只有在掉幀怎樣都解決不了時才考慮 |
渲染器的部分要看裝置:OpenGL沒問題就維持OpenGL;覺得太卡時可以切到Vulkan試試看,有些裝置用Vulkan反而比較快。相反地,在部分Adreno系列GPU上也有Vulkan畫面錯亂、幀數不穩的回報,這時就切回OpenGL。
手把方面,大多數藍牙手把連上後都會被自動辨識。如果按鍵位置不對,可以到設定裡的手把按鍵配置畫面逐一重新指定。只用觸控也能玩,但格鬥和賽車類遊戲有實體手把明顯好操作很多。
VMU記憶卡與存檔管理
DC主機的存檔是記錄在一種叫做「VMU(Visual Memory Unit)」的記憶卡上。Flycast會用軟體模擬這張記憶卡。問題是,預設狀態下所有遊戲共用同一張VMU,很容易發生存檔被其他遊戲覆蓋的狀況,所以建議一開始就先改下面這個設定。
打開「Settings」的「Controls」分頁,捲到最下面,把「Per Game VMU A1」打開。這樣每款遊戲都會有自己獨立的VMU存檔。打開後按「Done」,再重新啟動App確認設定有沒有保留下來。如果設定沒有保存,有玩家回報重新安裝App後就正常了。
開啟這個選項後,每款遊戲會產生自己的VMU檔(檔名類似「…_vmu_save_A1.bin」),在支援的裝置上位於「Android/data/com.flycast.emulator/files/data」裡。想沿用DC實機或其他模擬器做好的VMU檔時,請在第一次啟動該遊戲之前,把VMU檔放進和遊戲映像檔相同的資料夾,Flycast在首次啟動時會自動讀入。
另外要分清楚兩種存檔:VMU存檔是遊戲本身的存檔,等同實機的記憶卡;即時存檔(Save State)則是模擬器把當下狀態整個存下來的功能。兩者是分開管理的,本節設定的「Per Game VMU A1」只影響VMU存檔。
多光碟遊戲換片(GDI・CHD・m3u)
DC的光碟映像檔有好幾種格式,在Android上使用的優先順序如下:
| 格式 | 容量 | 在Android上的好用程度 |
|---|---|---|
| CHD | 最小(已壓縮) | 第一優先,最省microSD空間 |
| GDI | 大(未壓縮) | 可以正常執行,但很吃容量 |
| BIN/CUE・CDI | 大 | 能跑,但優先度可以往後放 |
像《莎木》這種橫跨多張光碟的遊戲,如果直接開單一映像檔,就沒辦法進到第2張以後。這時需要建立一個叫「.m3u」的播放清單檔,把多張光碟映像檔綁在一起:
- 新增一個純文字檔。
- 依序寫入該遊戲Disc 1、Disc 2……的映像檔檔名,一行一個。
- 把副檔名改成「.m3u」後存檔,放在和映像檔相同的資料夾。
之後只要從遊戲清單選這個.m3u檔啟動,遊戲內要求換片時,Flycast就會自動切換到下一張映像檔。不管是CHD、CUE還是GDI格式,.m3u的寫法都一樣。
如果要放很多款大容量的遊戲,microSD卡的容量和讀取速度也會影響使用體驗。DC遊戲一張光碟轉成CHD後仍有一定大小,收藏多的話建議選大容量的卡。
跑不順、卡頓時的處理方式
DC是1998年推出的主機,以目前主流的Android裝置來說,效能通常綽綽有餘。如果還是會卡,請依照下面的順序逐一排查:
- 先換渲染器:Vulkan在部分裝置的GPU驅動上可能不穩定,一些Adreno系列GPU有畫面錯亂、幀數不穩的回報;反過來說,也有裝置用Vulkan比較快。現在用哪個,就先切到另一個試試看效果。
- 降低內部解析度:降到原生解析度還是沒改善的話,再進行下一步。先單獨確認這一項,比較容易找出原因。
- 調整透明物件排序(Transparent Sorting):Flycast可以在「Per Triangle」(速度快)和「Per Pixel」(較精確但較吃效能)之間選擇。透明效果多的遊戲會掉幀的話,改成Per Triangle有機會改善。
- 還是不行就檢查裝置的發熱與電源管理:長時間遊玩後才出現的掉幀,多半是SoC過熱降頻(Thermal Throttling)造成的,這種情況調模擬器設定是解決不了的。可以拿掉手機殼、關閉省電模式、避免邊充電邊玩。
常見問題與解決方法
| 症狀 | 常見原因 | 解決方法 |
|---|---|---|
| 遊戲清單一片空白 | 沒有設定遊戲資料夾 | 確認Content Location是否已加入放遊戲的資料夾 |
| 出現「BIOS not found」或BIOS沒被讀到 | 檔名錯誤,或把獨立App與RetroArch的位置搞混 | 確認dc_boot.bin、dc_flash.bin的檔名,以及BIOS Folders(RetroArch則是system/dc)的設定 |
| 一啟動就黑畫面卡住 | BIOS檔損毀或吸出不完整 | 從主機重新吸出一次,或先移除BIOS改用HLE啟動看看 |
| 聲音斷斷續續、有雜音 | 音訊緩衝設定或處理負載過高 | 降低解析度,並檢查透明物件排序等偏重精確度的設定 |
| 手把按鍵對應錯誤 | 藍牙配對時按鍵對應跑掉 | 到設定裡的手把按鍵配置畫面逐一重新指定 |
| 無法進入第2張光碟 | 沒有使用.m3u,直接開單一映像檔 | 依前面的步驟建立.m3u播放清單 |
關於著作權與備份
在台灣,遊戲軟體與主機BIOS都受著作權法保護。從網路下載或散布遊戲映像檔、BIOS,屬於侵害著作權的行為,本站不提供也不介紹任何取得管道。本文的前提是:請自行備份手上擁有的正版光碟與主機,只使用從自己的DC主機、自己的遊戲光碟吸出的檔案。以上為一般性說明,並非法律意見;實際情況如有疑問,請洽詢專業人士。
總結
只要用Flycast,DC在Android手機和掌機上都能輕鬆執行。重點整理成三點:
- Flycast可以直接從Google Play安裝正式版,需要特定修正時才去官方GitHub抓nightly。
- BIOS雖然不是必要,但強烈建議準備:使用從自己主機吸出的dc_boot.bin與dc_flash.bin,檔名要完全一致,並注意獨立App與RetroArch的放置位置不同。
- 多光碟遊戲要建立.m3u播放清單,不然無法進到第2張光碟;另外記得開啟「Per Game VMU A1」避免存檔互相覆蓋。
把這三點處理好,第一次設定時遇到的問題幾乎都能解決。剩下的就是依自己的裝置微調渲染器與解析度,好好重溫DC的經典作品吧。


コメント