如何使用 Raspberry Pi 和 RetroPie 構建您自己的 NES 或 SNES Classic

已發表: 2022-01-29

NES 經典版是原始任天堂娛樂系統的官方克隆,是玩您最喜歡的複古遊戲的最佳方式之一。 SNES Classic 是它的繼任者。 不幸的是,它是如此受歡迎,以至於幾乎不可能得到你的手。 當您可以使用價格適中的 Raspberry Pi 構建自己的遊戲時,無需在 eBay 上支付 300 美元——甚至更多遊戲。

什麼是 NES 和 SNES Classic,為什麼樹莓派更好?

2016 年秋天,任天堂發布了 NES 經典版,這是 1980 年代舊任天堂娛樂系統的微型複製品。 它附帶 30 款經典遊戲,包括《超級馬里奧兄弟》、 《塞爾達傳說》和《惡魔城》 ,以及一個老式 NES 控制器(儘管電纜很短,連接器不同,以適應較小尺寸的 NES Classic)。

它的零售價為 60 美元,並附帶一個控制器——您可以額外支付 10 美元購買第二個播放器控制器,從而使您的總投資高達 70 美元。 不幸的是,這款遊戲機已被證明如此受歡迎,而任天堂的產量如此之少,以至於幾乎不可能以原始標價找到它們,僅以 200-500% 的加價出現在 eBay 等網站上。

2017 年,任天堂推出了 SNES 經典版,零售價為 70 美元,配有兩個控制器。 預購已經開始,而且已經證明很難買到。

不過不要絕望:即使它們非常稀有,以至於您從未親眼見過(更不用說有機會購買了),您也可以在家中輕鬆推出自己強大的 Classic Edition 控制台——還有更多遊戲和更多功能。 在今天的教程中,我們將結合經濟實惠的 Raspberry Pi、一些模擬 NES、SNES 和其他控制台的免費軟件,以及一些便宜的 USB NES 控制器來創建一個比原版更好的 DIY 版本。

廣告

更好怎麼做? 您的 DIY 版本不僅包含實際 NES Classic 的所有功能(例如保存狀態、用於復古遊戲的 CRT 著色器以及帶有封面藝術的精美組織),而且它還允許您玩任何遊戲(不僅僅是 30包含在 Classics 中),使用您想要的任何 USB 控制器(不僅僅是簡單的 2 按鈕 NES 控制器),並包括更好的保存狀態和組織。

不僅如此,您的系統還可以玩其他系統的遊戲,例如 Atari、Game Boy、Sega Genesis,甚至更高版本的系統,例如 PlayStation Portable 或 Nintendo 64。您可以在此處查看支持的系統的完整列表。

你需要什麼

要按照我們的教程進行操作,您需要一些東西和一點空閒時間來將它們編織在一起。

Raspberry Pi 及其配件

首先,您需要一台 Raspberry Pi 微型計算機和一些基本配件。 運行 Nintendo Entertainment System 模擬器所需的計算能力非常低,因此,如果您已經擁有較舊的 Raspberry Pi 1 或 2 型,您可以(而且應該!)使用它。 如果您需要購買新的 Pi,請務必購買最新的 Raspberry Pi 3(40 美元)。

除了 Pi,您還需要一個大小合適的 SD 卡或 microSD 卡(取決於您的 Pi 型號)、一根用於將其連接到電視的 HDMI 電纜、一個 USB 鍵盤(僅用於臨時設置)和一個良好的電源。 您可能還希望在 Pi 上訪問 Internet 以下載更新和傳輸遊戲——您可以使用以太網電纜或 Wi-Fi 進行此操作。 Raspberry Pi 3 內置了 Wi-Fi,而舊型號需要 USB Wi-Fi 適配器。

如果您是 Raspberry Pi 的新手,請不要擔心:我們已經為您需要的所有部件編寫了詳細指南,因此請查看該文章以獲取更多信息。

案例成就項目

一個受 NES 啟發的 Raspberry Pi 外殼,可在 Etsy 上找到。

為了完善您的 Pi 設置,您還需要一個案例。 如果您已經完成了一堆 Pi 項目,那麼您已經有了一個案例,這很好。 但是,如果您是從頭開始或者真的想要完整的體驗,您可能會考慮為您的 Raspberry Pi 定制一個 NES 或 SNES 主題的案例。

廣告

亞馬遜上有幾個以 NES 和 SNES 為主題的手機殼,包括 Old Skool NES 手機殼和 Super Tinytendo 手機殼。 但是,如果您出於任何原因不喜歡這些外觀,您可以隨時 3D 打印您自己的其中一個或這些,或​​者在 Etsy 等網站上找到其他的。

控制器:老式或現代舒適

接下來,您至少需要一個 USB 控制器(如果您想和朋友一起玩遊戲,則需要兩個)。 您可以通過以下兩種方式之一來處理控制器情況:首先,您可以選擇純經典並獲得一對 USB NES 控制器。

我們將首先承認,這種方法比我們最初預期的要困難得多。 僅僅購買一些便宜且製作精良的 NES 控制器似乎非常簡單,但實際上現在市場上存在這樣的情況,以至於列表通常不准確,控制器難以獲得,我們可以的最佳實踐目前的建議是一次購買多個控制器,將您不想要的退回,並保留好的(具有良好的重量,良好的按鈕響應和播放良好的控制器)。

我們在亞馬遜上測試了兩個最受歡迎的 USB NES 控制器:Retro-Link 控制器和一個通用但廣受好評的經典 USB NES 控制器(實際到貨時,它的品牌是 iNext)。 雖然我們更喜歡 Retro-Link 的重量,但 iNext 控制器的按鈕響應能力更好。 實際上,這是一次試錯的經歷。 (如果您想要經典但比 NES 控制器更舒適的東西,我們對這款 Buffalo SNES 控制器也只能說好話。)

您可以採取的另一種方法是購買更現代的控制器,例如有線 Xbox 360 控制器,這種方法不太真實,但更通用。 不僅構建質量和可用性更加一致,而且我們將要設置的仿真平台 RetroPie 不僅支持 NES,因此如果您想玩其他系統的遊戲,帶有更多按鈕的新控制器是好的。

廣告

無論哪種方式,您都需要至少一個用於該項目的 USB 控制器,因此請選擇您最喜歡的。

軟件:適用於所有您喜歡的遊戲的 RetroPie 和 ROM

除了硬件之外,您還需要一些軟件來玩遊戲。 您需要下載 RetroPie 的副本,這是一套出色的軟件,它將許多仿真工具和軟件組合到一個非常用戶友好的界面中。

出於我們的目的,我們將使用 Raspberry Pi 的預製映像(而不是將其安裝在現有操作系統上)。 在此處為您的 Pi 型號下載正確的圖像。 此外,您需要某種工具來將該映像刻錄到您的 SD 卡——我們選擇的工具是跨平台的 Etcher 映像刻錄器。

相關:下載復古視頻遊戲 ROM 是否合法?

最後,也是最重要的主題,你需要一些遊戲! 這些以 ROM 文件的形式出現,您可以自己破解(使用適當的硬件)或從網上下載。 獲取 ROM 是一項練習,因為法律問題模糊不清,最好留給讀者——我們不會在這裡直接鏈接到 ROM 或 ROM 站點。 儘管如此,一個簡單的谷歌搜索會讓你走得很遠。

第一步:準備你的 Pi

收集完所有上述材料後,是時候開始準備 Pi 了。 首先,我們將設置 SD 卡。 在您的計算機中彈出您的 SD 卡並啟動 Etcher。 過程就像1-2-3一樣簡單:選擇你下載的RetroPie鏡像,確認SD卡是選擇的磁盤,然後點擊“Flash!”

等待映像完成刻錄,從計算機中安全彈出 SD 卡,然後拿起您的 Pi 和配件。 使用 HDMI 線將 Pi 連接到電視,插入 USB 鍵盤和控制器,插入 SD 卡,然後插入電源線以啟動系統。

廣告

如果您在安裝過程中遇到困難,請隨時參考我們的 Raspberry Pi 初學者指南,其中包含有關初始設置的大量有用信息。

第二步:配置 RetroPie

在安裝了 RetroPie SD 卡的情況下首次啟動 Pi 後,它將自動運行一些一次性設置步驟(如擴展分區、解壓縮文件等)。 然後它將重新啟動,將您帶到控制器配置屏幕,如下所示。

正如屏幕提示的那樣,您應該按住 USB 控制器上的任何按鈕來開始配置過程。 在配置菜單中,為每個列出的條目短按相應的按鈕(例如,在方向鍵上向上啟動)。

最終,您會看到在您的控制器上可能沒有相應按鈕的按鈕條目(例如,如果您使用的是傳統的 NES 控制器並且它開始詢問您有關 X 和 Y 按鈕的信息)。 當您到達您沒有的按鈕的條目時,只需按住您已經編程的按鈕 2 秒鐘,然後鬆開它。 這將向配置嚮導發出您希望跳過該按鈕的信號。 重複此過程,直到您跳過所有不需要的條目並可以單擊“確定”繼續。

此時,您將看到以下屏幕,其下方帶有 RetroPie 徽標和“13 Games Available”。

“十三場比賽? 甜的!” 你可能在想。 沒那麼快:那些不是你可以玩的 13 款遊戲,而是 13 款用於“RetroPie”的配置工具(它被認為是你的模擬器之一,儘管它實際上是底層系統)。 不用擔心,稍後我們將討論實際的遊戲。

廣告

如果您在 Pi 上使用以太網電纜而不是 Wi-Fi 進行網絡訪問,您可以直接跳到下一部分,直接將游戲放入 RetroPie。 但是,如果您使用的是 Wi-Fi,請按控制器上的 A 按鈕以啟動菜單。 RetroPie 默認配色方案在較小的屏幕截圖中有點難以看到,但 Wi-Fi 條目是列表中的最後一個,如下所示。

當您選擇“WIFI”條目時,它將啟動一個 Wi-Fi 配置工具。 選擇“連接到 WiFi 網絡”。

接下來選擇您的家庭網絡,輸入密碼,單擊確定,然後在主屏幕上再次單擊確定退出應用程序(您將返回到您選擇 Wi-Fi 條目的屏幕)。

雖然您可以在沒有互聯網訪問的情況下使用 RetroPie,但使用網絡將游戲傳輸到設備要容易得多。

第三步:添加您的遊戲

隨著我們的 Pi 設置並連接到我們的家庭網絡,最重要的一步就在我們身上:加載甜蜜、甜蜜、復古的遊戲。 傳輸遊戲的最簡單方法是使用網絡共享。 (您可以使用 USB 驅動器,但網絡設置實際上更簡單,因此我們將在此處詳細說明該方法)。 讓我們開始吧。

默認情況下,RetroPie 框被分配了一個名為“retropie”的網絡共享,您只需在 PC 上打開 Windows 資源管理器並在地址框中鍵入\\retropie\即可瀏覽到它。 然後,只需打開“roms”文件夾,導航到您選擇的系統(我們將在本例中使用“nes”)並將任何 ROM 文件複製到該文件夾。 我們複製了我們最喜歡的 RPG 遊戲之一Crystalis作為我們的測試 ROM。

廣告

添加遊戲後,您需要重新啟動 RetroPie(或者,更具體地說,是下面的 Emulation Station 界面)。 在您的 Pi 上,按控制器上的 B 按鈕返回主菜單,然後按開始按鈕打開主菜單,如下所示。 選擇“退出”。

選擇“重新啟動 EmulationStation”並確認您確實希望重新啟動它。

當它重新啟動時,突然在主 GUI 中不會只有“RetroPie”的條目,但是(因為我們將 rom 添加到“nes”目錄中)您會看到 Nintendo Entertainment System 的條目。 這是在 RetroPie 上設置任何模擬器的關鍵步驟。 默認情況下安裝了許多適用於不同視頻遊戲平台的模擬器,但在您將至少一個 ROM 添加到其“roms”目錄之前,它們不會出現在界面中。

按 A 按鈕查看可用的遊戲。 選擇您想玩的遊戲(在我們的例子中是唯一的遊戲),然後再次按 A。

片刻之後,NES 模擬器將完成加載您的 ROM,您會看到遊戲就像您將其加載到老式 NES 設備上一樣。

廣告

此時,您可以像玩原版一樣玩遊戲。 如果您需要重新開始遊戲,只需同時按下 SELECT 和 B。 如果您想退出遊戲回到 RetroPie 菜單,請同時按下 SELECT 和 START。 隨意對 SNES 遊戲、Genesis 遊戲以及您想玩的任何其他系統重複此步驟。

Juicy Extras:封面藝術、著色器和保存遊戲

這就是您開始演奏所需的全部內容。 但是,如果您想要完整的“我構建了我自己的 NES Classic”體驗,我們還需要利用一些額外的功能:封面藝術(使您的庫漂亮且易於瀏覽)、著色器(使遊戲看起來更現代電視上的複古)和保存狀態(即使原始遊戲不支持它,您也可以保存遊戲。這些都是官方 NES Classic 中包含的所有功能。

將封面藝術添加到您的圖書館

將一堆遊戲複製到“roms”文件夾後,返回 NES 菜單(我們剛剛啟動測試遊戲的地方),按“開始”按鈕打開菜單,然後選擇“Scraper”。

在下一個屏幕中,您可以調整設置。 將刮板保留為“THEGAMESDB”。 如果需要,您可以關閉評級(我們將其保留)。 然後選擇“立即抓取”。

因為這是我們的第一次抓取,所以將過濾器切換到“所有遊戲”。 默認情況下,scraper 設置為僅使用它加載的系統(在本例中為 NES),因此無需更改任何內容。 最後,確保“用戶決定衝突”已打開。 這一點很重要,否則如果無法確定遊戲是雙龍還是雙龍 II ,刮板可能會刮到錯誤的數據。

您不想使用該設置的唯一原因是如果您有數百個遊戲要抓取並且不想手動確認每個選擇(但是,您將不得不返回並稍後手動修復任何衝突,逐個遊戲) . 準備好後,選擇“開始”。

當系統工作時,系統會提示您確認每個選擇(即使只有一個選擇)。 選擇正確的遊戲後按 A。

廣告

完成後,您將擁有一個井井有條的遊戲收藏。

使用平滑和著色器獲得老式 CRT 氛圍

玩遊戲後您可能會立即註意到的一件事是圖形看起來多么生動和清晰。 事實上,在加載我們的演示遊戲Crystalis時,我注意到的第一件事是顏色比我記憶中的要亮得多,線條也比我記得的要清晰得多。

這種差異的主要原因是圖像在數字顯示器上與模擬 CRT 顯示器上的顯示方式。 您的計算機顯示器和 HDTV 以完美的 1:1 像素與像素比呈現遊戲,而您的舊 CRT 顯示器是基於熒光粉的,具有更柔和的圖像和屏幕上各個點周圍的光/顏色“綻放”。

為了彌補這一點,您可以將系統設置為應用著色器或平滑算法,以重新創建 CRT 效果。 不確定這是否是您關心的事情? 讓我們比較在同一時間從同一遊戲中捕獲的圖像,並應用不同的效果。 首先,讓我們看看Crystalis中第一個可玩時刻在沒有著色器或平滑的情況下看起來如何。

請注意,線條都非常清晰,比您可能記得的要清晰得多(如果您在原始硬件上玩原始遊戲)。 如果您喜歡這種帶有鋒利邊緣的清爽外觀,那麼請務必以這種方式玩遊戲。

讓我們看一下使用平滑算法平滑圖形後遊戲的外觀。 如果您使用的是較舊的 Pi,這是一個很好的選擇,因為平滑算法(與著色器不同)對 GPU 幾乎沒有負載。

廣告

在您的計算機顯示器或具有清晰高分辨率屏幕的移動設備上查看此內容時,您可能會想“看起來……很模糊”。 但是當在遠處觀看時(比如沙發和電視之間的距離),平滑效果確實會給遊戲帶來更像 CRT 的感覺,並且模糊感不會那麼強烈。 退後一步,看看圖片邊緣的岩石與第一張圖片相比,你會明白我的意思。

最後,您可以使用著色器創建 CRT 效果,如掃描線甚至輕微失真(因為 CRT 顯示器的正面在大多數情況下略微彎曲)。 這是應用的簡單 CRT 著色器。

同樣,當我們在這裡看到的近距離比較裁剪時,效果似乎很明顯(就像你坐在非常靠近 CRT 屏幕一樣)。 但是從遠處看,它看起來很自然。 事實上,即使我不介意遊戲在沒有平滑或著色器的情況下看起來如何,但當我打開 CRT 著色器時,我會說“哦! 看起來像我記得的比賽!”

平滑和著色器設置都位於同一個地方,但是在我們進入該菜單之前,我們必須進行一些調整。 儘管 RetroPie 應該已經預裝了著色器,但根據我們的經驗,您需要手動更新著色器列表(您需要互聯網連接,因此如果還沒有,請立即插入該以太網電纜)。 返回我們最初訪問的 RetroPie 設置菜單,然後從菜單中選擇“RetroArch”,如下所示。

這將啟動非常復古的 RetroArch 配置菜單。 選擇條目“在線更新程序”。

在“在線更新程序”菜單中,選擇“更新 GLSL 著色器”。

在左下角的黃色小文本中,您會看到一個小的更新指示器,顯示“shaders_gsls.zip”正在下載。 等待它完成。 完成該過程後,按鍵盤上的 Esc 鍵或控制器上的 B 按鈕退出菜單一直到主菜單。 在那裡,選擇“退出 RetroArch”。 回到 RetroPie 菜單後,選擇“RetroPie 設置”。

廣告

在 RetroPie 設置菜單中,選擇“configedit – Edit RetroPie/RetroArch 配置”。

選擇“配置基本 libretro 模擬器選項”。

在這裡,您可以選擇在逐個模擬器的基礎上配置著色器和平滑,或普遍應用它。 除非您想為每個系統設置不同的著色器設置,否則最好只選擇“為所有 libretro 模擬器配置默認選項”。

在此菜單中,您將找到平滑和著色器所需的所有設置。 重要的是要注意平滑和著色器是一種非此即彼的解決方案——您不能同時使用兩者。 如果您試圖在兩者之間做出決定,請記住,Pi 資源上的平滑比著色器要輕得多。

如果要使用平滑,請選擇“視頻平滑”並將“假”更改為“真”。 然後,您可以返回主菜單並啟用平滑播放。

如果你想使用著色器,你有兩個步驟。 確保“視頻平滑”設置為默認值 false。 然後將“視頻著色器啟用”設置為“真”。 最後,選​​擇“Video Shader File”以選擇您要使用的著色器。

著色器列表可能看起來有點令人生畏,但有一個簡單的解決方案。 只需查找名稱中帶有“pi”的著色器文件,例如上面看到的“crt-pi.glslp”文件。 這些著色器已針對 Raspberry Pi 功能較弱的 GPU 進行了優化。 您始終可以使用其他著色器,但如果性能受到影響,請不要感到驚訝。

廣告

如果在任何時候您不再希望使用平滑或著色器(或希望更改您正在使用的著色器),您可以簡單地返回這些菜單並將值設置為 false 或更改著色器文件。

設置保存狀態……因為魂斗羅真的很難

如果你是一個純粹主義者,你可能只想完全跳過這一部分。 有些遊戲本身支持保存進度,有些遊戲則不支持(例如,您可以在《塞爾達傳說》中保存遊戲,但在《超級馬里奧兄弟》中則不能)。

即使是那些支持保存的遊戲也需要您以特定方式保存遊戲,通常使用一些遊戲內機制,例如訪問旅館或在空間站登記。 使用模擬器,您可以隨時隨地保存遊戲,就像您處理文件時將文件保存在 Microsoft Word 中一樣。 它還為每個遊戲提供多個存檔位,因此您可以擁有任意數量的存檔文件。 這可能不是最純粹的方法,但伙計,這是一種在玩極其困難的遊戲時減少挫敗感的好方法。

您可以使用基於控制器的熱鍵在玩遊戲時保存和加載遊戲。 對於那些使用帶有許多按鈕的控制器(如前面提到的 Xbox 360 控制器)的人來說,您根本不需要做任何繁瑣的按鍵映射,您可以簡單地為您的控制器使用默認的 RetroPie/RetroArch 按鈕映射。 查看此 RetroPie wiki 條目以查看默認的遊戲手柄熱鍵。

但是,如果您使用的是 NES 控制器,那麼有限數量的按鈕確實會帶來一些負擔。 如果你想使用保存狀態系統,你需要做一些小的鍵盤映射編輯。 保存和加載保存狀態的默認鍵盤映射使用控制器上的肩部按鈕,NES 控制器上不存在這些按鈕。 我們需要重新映射這些按鈕才能訪問這些功能。 有兩種方法可以做到這一點:您可以編輯位於\\retropie\configs\all\retroarch.cfg中的 retroarch.cfg 文件(這非常繁瑣),或者您可以使用 RetroArch 界面(這是一個正常數量乏味的)。 我們將介紹後者。

要使用鍵盤映射界面,請再次啟動 RetroArch 菜單系統(從主 RetroPie 菜單中,選擇 RetroPie 類別,然後選擇“RetroArch”)。 在主菜單中,選擇“設置”。 在進行任何更改之前,我們需要打開退出時保存設置以保留這些更改。

在設置菜單中,選擇“配置”。

廣告

在該菜單中,選擇“退出時保存配置”以打開保存。 如果沒有這個設置,當我們退出 RetroArch 菜單系統時,我們所做的任何更改都不會被保留。

按 B 按鈕或 Esc 鍵退出菜單,直到您再次進入 RetroArch 主菜單。 選擇設置菜單。

選擇“輸入”。 在這裡您可以找到鍵綁定和相關配置的所有設置。

選擇“輸入熱鍵綁定”。 在這裡,我們可以更改控制器上的熱鍵組合的作用。

為了在遊戲中解鎖對 RetroArch 菜單的訪問,以及讓我們能夠正確訪問保存狀態,我們需要映射三個按鈕組合:保存、加載和訪問 RetroArch 菜單。 您可以選擇對每個按鈕組合使用您希望的任何按鈕組合,但我們為本教程選擇的按鈕組合是最佳的,因為它們不會干擾任何現有的鍵盤映射。

讓我們從“加載狀態”開始。 選擇該條目並按控制器上的 A。 系統將提示您四秒倒計時,以按您希望映射到此功能的鍵。

您想在方向板上映射 Down 鍵,以便當您按下熱鍵激活器(選擇按鈕)和 Down 時,它將保存您的遊戲。 選擇“保存狀態”並將其映射到方向鍵盤上的向上鍵。 繼續保留“Savestate slot +/-”條目,因為它們很好(設置為您可以單擊左或右來更改保存槽)。

廣告

最後,一直向下滾動到列表底部,直到看到“菜單切換”。 選擇它,然後在遊戲中將 A 按鈕映射到它(這將允許您按 Select+A)以訪問 RetroArch 菜單。

按 B 按鈕退出菜單,直到您進入主屏幕,然後選擇“退出 RetroArch”以保存您的更改。

至此,您已準備就緒,現在可以使用以下按鈕組合:

  • 選擇+開始:退出模擬器。
  • 選擇+B:重置模擬器。
  • Select+A:暫停遊戲並從模擬器中打開 RetroArch 菜單。
  • Select+Right:增加保存槽(例如從保存槽#1移動到#2)
  • 選擇+左:減少保存槽(例如從保存槽#2移動到#1)
  • Select+Up:將游戲保存到當前選擇的保存槽。
  • Select+Down:從當前存檔槽中的存檔加載遊戲。

現在,您甚至可以玩最難的遊戲,而無需每次遊戲結束時都從頭開始。


你終於完成了:我們不僅重現了使用 NES Classic 的體驗,而且我們實際上創建了一個更高級的版本,因為它可以玩任何 NES 遊戲,支持比 NES Classic 更多的存檔槽,更多著色器和視頻選項,並且(如果您願意)您可以超出本教程的範圍,甚至可以使用類似 Game Genie 的作弊碼、即時回放等。 查看 RetroPie 和 RetroArch wiki,了解有關平台中所有高級功能的更多信息,以及我們的 RetroArch 高級設置指南。

相關:如何設置 RetroArch,終極多合一複古遊戲模擬器

圖片來源:Fynsya/Etsy 和 Clive Darra/Flickr。