將Game Boy及其他掌上遊戲機的畫面輸出至電視的現代化訊號鏈方案
比較GB Interface、Retro Freak、Analogue Pocket底座與MiSTer FPGA將Game Boy畫面輸出至電視的方案,涵蓋非標準幀率兼容與整數倍縮放效果。
Game Boy 掌上遊戲機畫面輸出電視方案比較:由 59.73Hz 開始
Game Boy 的畫面更新率是 59.73Hz,並非電視標準的 60.00Hz。這個 0.27Hz 的差異是所有輸出方案的核心挑戰。任何不處理這個幀率差異的方案,都會導致畫面每隔數秒出現一次微卡頓(micro stutter)。電視會強制以 60.00Hz 顯示,週期性地重複或丟棄一個幀。以下四種主要方案, , GB Interface、Retro Freak、Analogue Pocket 底座及 MiSTer FPGA, , 以不同方式應對這個問題,各在畫質、延遲與功能上有明確取捨。
官方方案的限制:Super Game Boy 與 Game Boy Player
任何輸出方案都無法繞過任天堂官方硬件本身的限制。Super Game Boy(1994 年)是首個將 Game Boy 帶到電視的方案。它運行於 Super NES 上,輸出解像度為 256×224。它的時鐘速度與原始 Game Boy 不同,導致音樂節拍輕微偏快。Super Game Boy 2(1998 年)修正了這個問題,並加入了 Link Cable 連接埠,但僅在日本發售。
Game Boy Player(2003 年)將 Game Boy、Game Boy Color 與 Game Boy Advance 帶到 GameCube 上。它的官方輸出解像度為 480i,若使用 GameCube 數碼 AV 輸出端子可達 480p。問題在於 Game Boy Player 的啟動光碟(識別碼 DOL-017)強制將 240p 訊號當作 480i 處理,導致現代電視誤判畫面模式,產生不必要的去交錯偽影。這正是 GB Interface 這類第三方軟件存在的理由:它繞過啟動光碟的限制,直接輸出純粹的 240p 訊號。
GB Interface:最低成本的原生 240p 輸出方案
GB Interface 由開發者 Extrems 於 2020 年首次發布,運行於搭載 Game Boy Player 硬件的 Nintendo GameCube 上。它取代官方啟動光碟,直接從 GameCube 的數碼 AV 輸出端子(需轉接 HDMI)輸出純粹的 240p 訊號。標準版輸出 240p,高速版輸出 360p,兩者輸入延遲皆低於 1 幀(60Hz 環境下)。
GB Interface 提供三種色彩校正預設:GBA(模擬 GBA 屏幕)、GBC(模擬 GBC 屏幕)及 GB(模擬 GB 屏幕)。這對於 Game Boy Advance 遊戲尤其重要,因為原始 GBA 屏幕的 Gamma 曲線與電視完全不同。
訊號鏈與升頻器配合
GB Interface 輸出的 240p 訊號需要外接升頻器才能在高解像度電視上顯示。最常見的組合是接駁 OSSC 或 RetroTINK 5X-Pro。OSSC 可以將 240p 進行 Line Triple 至 720p 或 Line Quadruple 至 960p,延遲接近零。RetroTINK 5X-Pro 則提供更多濾鏡選項,包括整數倍縮放與 LCD 模擬濾鏡。直接將 240p 輸入電視,大部分電視會將其誤判為 480i 並進行錯誤的去交錯,導致畫面模糊與延遲增加。
GB Interface 的失敗情況
GB Interface 無法解決 Game Boy 的 59.73Hz 幀率問題。當 OSSC 或 RetroTINK 5X-Pro 以 60.00Hz 輸出至電視時,週期性微卡頓仍然存在。解決方法是使用支援自訂輸出幀率的升頻器,例如 RetroTINK 4K 或 MiSTer FPGA。它們可以跟隨原始幀率輸出,徹底消除這個問題。
Retro Freak:一機多平台的妥協方案
Retro Freak 是一部整合式主機,透過另購的轉換器支援 Game Boy、Game Boy Color 及 Game Boy Advance 卡帶。它直接輸出 HDMI 訊號,解像度可選 480p、720p 或 1080p。影像縮放模式包括標準(4:3)、全屏幕(16:9)及點對點,並支援掃描線濾鏡。
升頻效果與實際限制
Retro Freak 的升頻效果取決於其內建的縮放引擎。在點對點模式下,它會以整數倍放大原始像素,但最高只到 1080p。對於 Game Boy 的解像度而言,整數倍縮放後電視仍需進一步放大,引入非整數縮放的模糊。與 Analogue Pocket 或 MiSTer FPGA 相比,Retro Freak 不支援自訂的 LCD 模擬濾鏡或像素網格效果,掃描線濾鏡的密度亦無法配合輸出解像度精確繪製。
Retro Freak 的優勢在於即插即用:無需改造主機,無需外接升頻器。但它的幀率處理方式不透明,無法確認是否正確跟隨 Game Boy 的 59.73Hz。若它強制以 60Hz 輸出,微卡頓就會出現。
Analogue Pocket 底座:FPGA 硬體模擬的 HDMI 輸出
Analogue Pocket 是一部可攜式 FPGA 遊戲機,其底座 Dock 支援透過 HDMI 輸出畫面至電視。輸出解像度可選 480p、720p 或 1080p。Analogue Pocket 使用兩顆 FPGA 晶片:主要晶片為 Altera Cyclone V(49K 邏輯單元),用於執行核心模擬;第二顆為 Altera Cyclone 10(15K 邏輯單元),用於系統管理。
顯示模式與整數倍縮放
Analogue Pocket 的原創主機模擬顯示模式包括 Analogue GB、Analogue GBC 及 Analogue GBA。這些模式模擬原始屏幕的像素排列與色彩特性。它亦支援第三方開發的 FPGA 核心顯示濾鏡。關鍵在於底座輸出時,Analogue Pocket 能否執行整數倍縮放。以 Game Boy 的解像度為例,整數倍縮放後在 1080p 輸出下,電視必須進行非整數縮放才能填滿屏幕。Analogue 並未在底座輸出中提供自訂縮放倍率或裁剪選項,這與 MiSTer FPGA 的自訂縮放功能形成對比。
藍牙控制器支援與延遲
底座 Dock 支援藍牙控制器(如 8BitDo 等兼容控制器)。這引入了一個延遲變數:藍牙控制器的延遲在香港居住環境密集的 2.4GHz 干擾下,可增加至 20 毫秒以上。追求最低輸入延遲,應使用有線控制器。
Analogue Pocket 的 59.73Hz 處理方式:官方文檔未明確說明底座輸出是否跟隨原始幀率。實測報告(RetroRGB)顯示,Analogue Pocket 的 HDMI 輸出在部分韌體版本中會鎖定在 60.00Hz,導致微卡頓。這個問題在後續韌體更新中可能已被修正,但讀者應查閱最新韌體版本的變更日誌。
| 方案 | 輸出解像度 | 輸入延遲 | 幀率跟隨 | 整數倍縮放 | LCD 模擬濾鏡 |
|---|---|---|---|---|---|
| GB Interface + OSSC | 240p -> 720p/960p | <1 幀 | 否(需升頻器支援) | 是(透過 OSSC) | 否 |
| GB Interface + RetroTINK 5X-Pro | 240p -> 1440p | <1 幀 | 否(需升頻器支援) | 是 | 是 |
| Retro Freak | 480p/720p/1080p | 未公開 | 不確定 | 有限(點對點模式) | 掃描線濾鏡 |
| Analogue Pocket + Dock | 480p/720p/1080p | 低(依賴底座) | 部分韌體鎖定 60Hz | 有限 | 是(Analogue 原生模式) |
| MiSTer FPGA | 最高 1440p @ 60Hz | 極低 | 是(可自訂輸出幀率) | 是(5x 縮放倍率) | 是(多種遮罩及掃描線) |
MiSTer FPGA:幀率跟隨與自訂縮放的終極方案
MiSTer FPGA 平台使用 Altera Cyclone V SE(DE10-Nano 開發板,110K 邏輯單元)執行硬體模擬。Game Boy 與 Game Boy Color 核心由 Robert Peip 開發,Game Boy Advance 核心同樣由 Robert Peip 開發。MiSTer FPGA 輸出解像度在原生模式下為 240p 或 480p(視主機核心而定),縮放模式下最高可達 1920×1440(1440p)@ 60Hz。影像輸出端子包括 HDMI 與 VGA(類比)。
整數倍縮放與自訂濾鏡
MiSTer FPGA 支援自訂縮放濾鏡,包括 5x 縮放倍率與自訂多邊形濾鏡。對於 Game Boy 的解像度,5x 縮放後在 1440p 輸出下,電視可以整數倍放大,實現完美的像素網格顯示。MiSTer FPGA 亦支援多種陰極射線管模擬濾鏡,包括遮罩及掃描線選項。這些濾鏡配合輸出解像度精確繪製,不會出現不均勻的網紋。
幀率跟隨:解決 59.73Hz 問題
MiSTer FPGA 的核心優勢在於它可以自訂輸出幀率,跟隨 Game Boy 的 59.73Hz。在 MiSTer 的 ini 設定檔中,用家可以設定 vsync_adjust=2,使 HDMI 輸出以原始核心幀率運作。這徹底消除了 59.73Hz 與 60.00Hz 之間的微卡頓問題。此設定需要電視支援非標準幀率,部分電視會顯示「不支援的訊號」。在這種情況下,可設定 vsync_adjust=1,讓 MiSTer 輸出 60.00Hz 但以幀重複方式補償差異,延遲極低但畫面仍然流暢。
MiSTer FPGA 的訊號鏈
MiSTer FPGA 的 HDMI 輸出可以直接連接電視,無需外接升頻器。若追求類比輸出至 CRT 屏幕,其 VGA 輸出可接駁 Sony PVM/BVM 系列或 Extron DSC 301 HD 等專業縮放器。MiSTer FPGA 的延遲在 HDMI 輸出下低於 1 幀,在 VGA 輸出下接近零。
GB Interface HDMI 輸出設定:實戰步驟
使用 GB Interface 時,最常見的設定順序如下:
- 準備一部搭載 Game Boy Player 硬件(識別碼 DOL-017)的 Nintendo GameCube,以及一條 GC Video 轉 HDMI 轉接器。
- 將 GB Interface 的韌體寫入 SD 卡,插入 GameCube 的記憶卡插槽。
- 啟動 GameCube,GB Interface 會自動載入。選擇標準版(240p)或高速版(360p)。
- 將 GC Video 的 HDMI 輸出接駁至升頻器(OSSC 或 RetroTINK 5X-Pro)。
- 在升頻器上設定整數倍縮放:OSSC 使用 Line Triple 或 Line Quadruple,RetroTINK 5X-Pro 使用自訂縮放倍率。
失敗情況:若電視顯示「不支援的訊號」,原因通常是 OSSC 輸出的非標準時序超出電視 HDMI 接收範圍。解決方法是調整 OSSC 的輸出模式,例如從 Line Quadruple 降至 Line Triple,或更換兼容性較好的電視。另一個常見問題是 Game Boy Player 的硬件接觸不良,導致畫面閃爍或黑屏。清潔卡帶與主機接口的接點可解決此問題。
Retro Freak 掌機升頻效果:何時值得使用
Retro Freak 的升頻效果在點對點模式下最佳。它的最高輸出解像度為 1080p,對於 Game Boy Advance 的 240×160 解像度,整數倍縮放後電視必須進行非整數縮放。使用 480p 輸出,電視的縮放倍率更大,模糊更明顯。Retro Freak 的掃描線濾鏡在 1080p 輸出下效果較佳,因為掃描線密度與解像度配合較好。
Retro Freak 的延遲數據未公開。從實測報告(RetroRGB)推測,其內部縮放引擎引入約 1 至 2 幀的延遲。對於節奏遊戲或射擊遊戲,這可能造成可感知的延遲。延遲是首要考慮的話,選擇 GB Interface 或 MiSTer FPGA。
Retro Freak 的適用場景:你需要在一部主機上遊玩多種卡帶格式(Game Boy、Game Boy Color、Game Boy Advance、FC、SFC 等),且不願意投資多個升頻器或改造主機。它是一個方便的妥協方案。
Analogue Pocket 底座輸出電視:設定與限制
將 Analogue Pocket 連接至底座 Dock 時,設定選項有限。輸出解像度可選 480p、720p 或 1080p。追求像素完美顯示,選擇 720p 輸出。Game Boy 的解像度在 720p 下可以整數倍縮放,電視只需輕微放大即可填滿屏幕。1080p 輸出下,整數倍縮放後電視的非整數縮放倍率較大,模糊較明顯。
Analogue Pocket 的顯示模式中,Analogue GB 模式模擬原始 Game Boy 的綠色屏幕,Analogue GBA 模式模擬 GBA 屏幕的較高對比度與 Gamma 曲線。這些模式在底座輸出時同樣有效。第三方開發的 FPGA 核心顯示濾鏡(如像素網格模擬)亦可在底座輸出中使用,但需透過 Pocket 的開放 FPGA 平台載入。
限制:Analogue Pocket 的底座輸出不支援自訂縮放倍率或裁剪。這與 MiSTer FPGA 的靈活性有明顯差距。你需要在電視上以完美整數倍縮放顯示 Game Boy 畫面,MiSTer FPGA 是更好的選擇。
MiSTer FPGA Game Boy 畫面升頻:設定與最佳實踐
在 MiSTer FPGA 上設定 Game Boy 畫面升頻,核心設定在 MiSTer.ini 檔案中。關鍵參數包括:
vscale_mode=1(啟用整數倍縮放),vscale_border=0(移除黑邊),video_mode=12(1920×1440 @ 60Hz)。電視支援非標準幀率,設定 vsync_adjust=2 以跟隨 Game Boy 的 59.73Hz。電視不接受的話,設定 vsync_adjust=1,MiSTer 會以 60.00Hz 輸出,但以幀重複方式補償差異。
MiSTer FPGA 支援多種 LCD 模擬濾鏡,包括像素網格(Pixel Grid)與掃描線濾鏡。這些濾鏡在 1440p 輸出下效果最佳,因為高解像度容許濾鏡精確繪製每個像素的邊界。對於 Game Boy Advance 的 240×160 解像度,MiSTer 的 5x 縮放可達 1200×800。在 1440p 輸出下,電視以 1.2x 放大,引入輕微的非整數縮放。解決方法是使用自訂縮放倍率,將輸出解像度設定為 1200×800 並讓電視以整數倍放大。
其他相關方案:GB Operator 與 GBA Consolizer
GB Operator(Epilogue,2021 年出貨)是一個 USB-C 接口的卡帶讀取器,透過其 Playback App 軟件模擬器將 Game Boy、Game Boy Color 及 Game Boy Advance 遊戲顯示在電腦屏幕上。它支援 .sav 格式的存檔讀寫。此方案不涉及電視輸出,但對於需要備份存檔或進行直播的玩家是一個方便的選擇。它的延遲取決於電腦的模擬器設定與顯示器,通常高於 FPGA 方案。
GBA Consolizer(Gamebox Systems / Woozle,2020 年推出)是一個將 Game Boy Advance 主機改造為 HDMI 輸出設備的套件。它輸出 720p 解像度,輸入延遲低於 1 幀。此方案需要焊接改機,不適合沒有經驗的玩家。改機後的 GBA 不再具備手提功能。
最終建議:按你的優先次序選擇方案
首要考慮是畫質與幀率準確度,選擇 MiSTer FPGA。它提供整數倍縮放、自訂濾鏡與幀率跟隨,是唯一徹底解決 59.73Hz 問題的方案。已經擁有 GameCube 與 Game Boy Player,GB Interface 搭配 OSSC 或 RetroTINK 5X-Pro 是低成本的高畫質方案,但需接受微卡頓。需要一機多平台且不願意投資多個設備,Retro Freak 提供方便但畫質與延遲有妥協。已有 Analogue Pocket 並希望偶爾在電視上遊玩,底座輸出是合理的選擇,但不要期望它達到 MiSTer 的縮放靈活性。
最常出錯的地方:用家購買 GB Interface 後直接將 240p 訊號輸入電視,沒有使用升頻器。結果電視誤判為 480i 並進行錯誤的去交錯,畫面模糊且延遲極高。無論選擇哪個方案,訊號鏈的每個環節都必須正確設定,否則最終畫質會遠低於方案本身的潛力。
Common Questions
Game Boy 的 59.73Hz 幀率對電視輸出有甚麼實際影響?
當升頻器或電視以 60.00Hz 顯示 59.73Hz 的來源時,畫面會每隔約 37 秒重複或丟棄一個幀,造成可感知的微卡頓。MiSTer FPGA 設定 vsync_adjust=2 可以跟隨原始幀率,徹底消除這個問題。GB Interface 與 Analogue Pocket 底座則需要外接支援自訂幀率的升頻器(如 RetroTINK 4K)才能解決。
GB Interface 與 RetroTINK 5X-Pro 組合的輸入延遲是多少?
GB Interface 本身的輸入延遲低於 1 幀(60Hz 環境下)。RetroTINK 5X-Pro 在 240p 輸入下的處理延遲約為 0.5 至 1 幀。總延遲約為 1.5 至 2 幀(約 25 至 33 毫秒),對於多數玩家而言無法察覺。若使用 OSSC 取代 RetroTINK,總延遲可降至 1 幀以下。
Analogue Pocket 底座輸出時,整數倍縮放如何設定?
Analogue Pocket 底座不提供自訂縮放倍率設定。輸出解像度選項僅有 480p、720p 與 1080p。建議選擇 720p,因為 Game Boy 的解像度可以整數倍縮放,電視只需輕微放大。1080p 下整數倍縮放後的非整數縮放倍率較大,畫面較模糊。
Retro Freak 的掃描線濾鏡效果如何?
Retro Freak 的掃描線濾鏡在 1080p 輸出下效果較佳,因為掃描線密度與解像度配合較好。但在 480p 或 720p 輸出下,掃描線會出現不均勻的網紋,因為濾鏡無法配合輸出解像度精確繪製。MiSTer FPGA 與 RetroTINK 4K 的掃描線濾鏡效果明顯更佳。
哪種方案最適合追求最低延遲的玩家?
MiSTer FPGA 搭配 HDMI 輸出,設定 vsync_adjust=2,提供最低延遲與最準確的幀率。若使用類比 VGA 輸出至 CRT 屏幕,延遲接近零。GB Interface 搭配 OSSC 是第二低延遲的方案,總延遲低於 1 幀。Retro Freak 與 Analogue Pocket 底座的延遲較高,不適合節奏遊戲或射擊遊戲。