在 1960 年代的 UNIVAC 電腦上執行 Minecraft 伺服器與更多應用

Hacker News·

我在一台 1960 年代的 UNIVAC 1219B 電腦上成功執行了 Minecraft 伺服器和 NES 模擬器,透過建立一套自定義工具鏈來模擬 RISC-V 指令,克服了這台古董機器極其有限的硬體限制。

背景

這篇文章記錄了開發者 Nathan 如何在 1960 年代的 UNIVAC 1219B 大型主機上,成功運行 Minecraft 伺服器、NES 模擬器以及 OCaml 程式。這台古董電腦原本是美國海軍用於雷達訊號處理與火砲控制的軍事設備,運算頻率僅有 250khz 且記憶體容量極小,作者透過在 UNIVAC 上開發 RISC-V 模擬器,克服了硬體架構過時與缺乏現代編譯器支援的難題。

社群觀點

Hacker News 的討論主要圍繞在技術實作的定義與極限挑戰。針對文章標題提到的 Minecraft 伺服器,社群中出現了兩極化的看法。部分評論者認為這帶有標題黨的成分,批評該實作僅是讓 Minecraft 客戶端能夠連線的極簡程式,與真正的遊戲伺服器功能相去甚遠,甚至稱其為毫無意義的噱頭。然而,也有支持者反駁,認為只要能讓客戶端成功連線並進行基礎通訊,在技術定義上就足以稱為伺服器,且在如此受限的硬體上達成此目標,其象徵意義大於實質功能。

關於效能表現,留言者對作者選擇「模擬器套模擬器」的策略感到好奇。由於 UNIVAC 採用 18 位元字組與一補數運算,直接編寫編譯器極其困難,因此作者透過 40 條 UNIVAC 指令來模擬 1 條 RISC-V 指令。社群成員指出,雖然這種做法導致運算速度大幅下降至約 6khz,但若能針對該硬體手寫專用的現代 C 編譯器,效能理論上可提升 10 到 40 倍。不過,考慮到硬體架構的特殊性,開發專用編譯器的工程量巨大,模擬 RISC-V 仍是目前兼顧開發效率與相容性的最優解。

此外,討論也延伸到了經典的「能否執行 Doom」問題。技術愛好者分析,雖然透過 RISC-V 模擬器理論上可以執行重新編譯後的 Doom 程式碼,但受限於 UNIVAC 唯一的輸出設備是電傳打字機(Teletype),即便程式能跑,每渲染一幀畫面可能需要花費半小時,且最終只能在紙張上輸出 ASCII 字元。也有參與過 VCF East 復古電腦展的網友提到,現場親身體驗這台機器的運作聲響與油墨氣味令人印象深刻,儘管展覽曾因意外中斷,但這類將現代軟體強行移植到古董硬體的計畫,依然是復古運算社群中最受矚目的焦點。

延伸閱讀

在討論中,網友分享了 TheScienceElf 製作的專題影片,詳細記錄了這台 UNIVAC 1219B 的修復過程與技術細節。此外,GitHub 上也已經公開了針對該機型開發的模擬器與相關工具鏈原始碼,供對 1960 年代大型主機架構感興趣的開發者研究。對於想了解該機器歷史背景的人,YouTube 上甚至能找到當年 UNIVAC 在電視節目中播放的古董廣告。

Hacker News

相關文章

其他收藏 · 0