一台塵封四十年的任天堂 NES 遊戲機(日版就是我們熟悉的紅白機),現在可以拿來盯飛機了。近日一名開發者 Levi Maaia 打造的開源專案 NES Radar,把 1985 年發售的 NES 主機改造成即時空中交通雷達:輸入機場的四字母 ICAO 代碼,按下 Start 鍵,電視螢幕上就會出現該機場附近正在飛行的真實航班,以 8-bit 移動目標的形式呈現。
手把輸入機場代碼,電視變成雷達
使用方式相當直覺,只要把自製卡匣插入 NES,用第一手把接口的手柄輸入目標機場的四字母 ICAO 代碼,按下 Start 鍵後,螢幕切換成雷達視圖,顯示該機場九海哩半徑內正在飛行的飛機。輸入本地小型機場的代碼,可以看到進港航班依次排隊接近跑道;輸入 KLAX(洛杉磯國際機場),螢幕上的密集航线會快速填滿。
最特別的是,這是一個任何人都能重現的 DIY 專案,不是只在 YouTube 上看個影片就完事的東西:只要有一台 NTSC NES、一個 FTDI 轉接器和一顆 Flash 卡匣,任何人都能在週末把它組出來。螢幕最多同時顯示八架飛機,每架以 16×16 像素的雙重標記呈現。對小型機場來說綽綽有餘,但大型樞紐機場很容易超出上限,此時系統只會顯示最近的八架。
NES 不聯網,靠電腦中轉
一台 1985 年的主機怎麼拿到即時航班數據?答案是一台旁邊的電腦。NES 本身完全不碰網路,而是由運行在 Mac、Windows 或 Linux 上的小型伺服器從 adsb.fi 抓取 ADS-B 航班數據,篩選出目標機場九海哩半徑內的飛機,再透過一根 5V FTDI USB 串列線送到 NES 的第二手把接口。
這根線跑的是 9,600 baud 雙向串列通訊。一條訊號線負責把雷達數據送到主機,另一條則把使用者在 NES 上輸入的 ICAO 代碼傳回伺服器,告訴它該抓取哪個空域的資料。按 Select 鍵可以回到機場編輯器換一個目標,不用重啟伺服器。
開源專案,Mac 最省事
NES Radar 已作為開源專案發布在 GitHub 上,包含 ROM、伺服器程式碼、接線說明和通訊協定文件。 倉庫裡有完整的 ROM 映像檔、Python 伺服器腳本、FTDI 接線圖和串列通訊協定的逐欄位說明,甚至包含如何把專案燒錄進 Flash 卡匣的步驟。Mac 使用者有現成的自包含二進位檔,直接執行即可;Windows 和 Linux 使用者則需要執行 Python 程式碼,目前仍屬實驗階段但功能正常。Mac 的自包含二進位檔是完整的單一檔案,下載即可運行;Windows 和 Linux 使用者則必須自行安裝 Python 環境並執行伺服器腳本,雖然目前功能正常但仍標註為實驗性質。
NES Radar GitHub
NES Radar 是近年 retro computing 社群把老硬體推向新用途的又一例,也是 8-bit 時代硬體生命力的又一次證明。它不解決任何實際問題,但 Maaia 在專案說明中寫得很清楚:這是一台「會動的裝飾品」,也是對 NES 控制器端口協議的一次公開教學,讓想動手的人有完整的參考起點。




