构建你自己的街机游戏机,重温 80 年代!

作者:Shawn Powers

我厌倦了听到人们说 Linux 不适合游戏。在本文中,我打破了这种刻板印象,并展示了如何使用企鹅的力量来重温 80 年代。在这个很酷的项目中,我描述了如何构建一个功能齐全的街机柜。完成后,您将能够在您家的客厅(或车库——取决于配偶的容忍度)中,在无需投币的奢华环境中玩所有童年时代的投币式游戏。

该系统使用基于 MAME(多街机模拟器)项目的软件,在 Linux 中模拟原始经典游戏。MAME 使用软件来模拟原始街机硬件。本文解释了如何连接原始操纵杆和按钮,甚至提供了一些关于购买原始游戏版权的建议。

你见过的最大的机箱改装

首先,让这个项目真正令人惊叹的是街机机箱。如果您没有真正的街机柜,以及原始的街机控制装置,您还不如回去玩 Zork 在您的 TSR-80 上,来满足您的怀旧情怀。机柜是让它变得酷的关键,句号。制作机柜还是购买二手机柜由您决定。如果您从头开始制作整个东西,那么设计完全由您决定。缺点是这样做需要一些木工技能。我没有这样的技能。事实上,对我来说,“锯”是示波器上的一种波形。所以,我选择购买一台旧街机并将其掏空。除非您是木工,否则我建议您这样做。作为奖励,我免费获得了我需要的所有按钮和控制装置,而且机箱甚至闻起来有点像披萨店的味道。(好吧,这可能是我的想象。)

要找到二手机柜,请在电话簿中查找“投币式游戏机”或“街机”。我很幸运地找到一个人愿意以 30 美元的价格给我两个二手机柜。我确实不得不听他滔滔不绝地讲述街机时代的衰落,以及现在的孩子们如何不欣赏经典游戏。我想当我说我正在重建它是因为我想重温我的青春时,他送了第二个机箱给我。他喜欢这个主意,几乎和我一样喜欢。请记住,如果您碰巧得到一台街机显示器,实际上可以使用它,但这需要更多的工作。就本文而言,我假设您使用的是标准电脑显示器。

在我给妻子买了鲜花并带她出去吃饭后,我被允许把其中一个机箱搬进屋子开始玩乐。我的特定机箱来自一个旧的 Neo-Geo 游戏机,我选择保留侧面有些损坏的贴花(图 1)。

Build Your Own Arcade Game Player and Relive the '80s!

图 1. 您可以看到这个机柜不会赢得任何选美比赛,但它充满了怀旧气息。

如果您实际上是一名木工,您可能想要购买刨花板并制作一个真正定制的机柜。在 www.arcadecontrols.com 上有一些常见街机机型的设计和原始尺寸规格。事实上,该网站上有大量关于从头开始构建 MAME 机器的信息,这是一个非常宝贵的网站。但老实说,即使我能够从头开始,我实际上也更喜欢二手机柜。知道它是真货,即使内部完全不同,也有一种特别的感觉。

对我来说,最困难的施工部分是正确安装显示器。我使用了一台旧的 17 英寸 Apple 显示器,它注定要被扔进垃圾桶。正如您在图 2 中看到的那样,显示器支架必须处于正确的角度,以便屏幕的正面与有机玻璃前面板齐平。我相信有一些木工捷径可以找出如何获得正确的角度,但我最终得到了一些非常复杂的几何方程式,涉及 SINE 和 COSINE。是的,我是个极客。

Build Your Own Arcade Game Player and Relive the '80s!

图 2. 我很可能可以通过猜测来得到同样接近的结果,但我必须承认,为了计算这个支架的角度,我做了很多数学运算!

下面的支架用于放置电脑。我所做的只是将支架与前面的投币门对齐,这样我就可以伸进去打开和关闭电脑。(投币机构实际上可以接线并使用,但我的坏了,所以我从未安装它。也许下次吧。)

最后一点木工活是最复杂的。您必须决定您想要的按钮布局。我是那种看晚餐菜单要花 20 分钟的人,所以像这样的决定对我来说几乎是不可能的。我阅读、我谷歌、我比较、我调查。我的建议是您避免所有这些,并采用我选择的布局。为什么?因为它适用于大多数游戏,而且您可以随时更改它。图 3 显示了我选择的按钮布局,它恰好是标准的 街头霸王 II 布局。

Build Your Own Arcade Game Player and Relive the '80s!

图 3. 我真的很幸运,从机柜那里免费得到了这些按钮。如果我尝试,我不可能计划出更好的颜色。您会从我钻的额外孔中看到我的木工缺陷的证据。

您会注意到中间有一个额外的操纵杆,它不是 街头霸王 布局的一部分。这是一个原始的 吃豆夫人 操纵杆,是我妻子作为迟到的高中毕业礼物送给我的。(我们是一个奇怪的家庭。)它直接连接到玩家一的操纵杆,所以如果您没有这样的东西,请不要担心,它实际上不是额外的,只是一个替代品。

操纵杆和按钮孔的大小会有所不同,但标准按钮使用 1 1/8 英寸的孔。您可以随意布置按钮。我特意确保按钮的位置完美,但对于这些东西没有规则。不要忘记用于投币的按钮!我的按钮从机器正面伸出来,大约在您放入四分之一美元的地方,如果它是一个真正的街机的话。

现在您应该有一个大部分是空的机箱,带有一个显示器支架、电脑支架和一个布满孔洞的木制控制面板。如果您是在家里做这项工作,并且您碰巧已婚,请花时间吸尘。您可以稍后感谢我。

如果您是艺术型,并且想要粉刷控制面板和机柜,请继续这样做。我迫不及待,直到今天我的机柜仍然有一个原木控制面板。

告别键盘,你好,焊接

这就是魔法发生的地方。如果您和我一样,您已经在您的电脑上尝试过 MAME,并用您的键盘玩过经典游戏。这很有趣,但它绝对不像原版。在这一步中,我们将真正的街机控制装置连接到电脑。首先,如果您没有幸运地在机柜上获得二手操纵杆和按钮,您需要购买一些。有一些地方可以购买街机控制装置,但最受欢迎的地方之一是 Happ Controls (www.happcontrols.com)。如果您查看前面提到的 Arcade Controls 网站的控制装置部分,您会找到大量此类物品的供应商。

一旦您有了实际的按钮和操纵杆,您需要决定是购买键盘编码器还是自己破解键盘。前一种选择更容易也更可靠,但后一种选择具有某种极客魅力。我选择了后者。Arcade Controls 网站上有关于如何正确计算按钮布局的非常深入的说明,但请参阅“键盘破解”侧边栏以获得快速描述,以便您可以自己决定选择哪种方式。如果您确实选择破解键盘,我鼓励您想出一种比我更好的方式来连接电线。图 4 显示了我可怕的电线缠结。它很丑陋,但它有效。

Build Your Own Arcade Game Player and Relive the '80s!

图 4. 这张照片几乎不言自明。这是一个关于如何不整理电线的很好的例子。

无论您选择创建自己的键盘控制器,还是从 Hagstrom Electronics 等地方购买一个,您仍然必须将电线连接到街机控制装置。因为我木工活很糟糕,您可能会认为宇宙中会存在某种平衡,表明我可以很好地焊接。让我向您保证,这种平衡不存在。我认为避免焊接所有按钮会非常好。我买了一些铲形连接器,它们可以直接滑到端子上(图 5)。尽管这个想法听起来仍然很棒,但事实证明,按钮和操纵杆中的微动开关确实需要牢固的连接。除非您想不时拆开您的控制面板来摆弄电线(像我一样),否则我强烈建议您焊接所有东西。邀请一位朋友,因为我个人认为焊接需要三只手。也许您的两只手比我的好,但至少朋友可以拿着灯。

Build Your Own Arcade Game Player and Relive the '80s!

图 5. 我的目标是避免焊接。铲形插头看起来很棒,但它们实际上并没有提供很好的连接——另一个不该做的例证。

需要多少 GHz 来模拟 2.5MHz?

所以现在,您应该有一个机柜、安装好的控制装置、某种键盘接口和一个空架子,等待着一台电脑。最后一步是放入一台电脑并安装软件。您需要的马力真正取决于您想玩什么游戏。如果您计划玩经典游戏,如 吃豆人小行星,奔腾 II 应该足够了。但是,如果您想玩 街头霸王 II 或任何更新的游戏,您应该购买奔腾 III 或 4。我有一台中等水平的奔腾 4。如果您想要我的建议,我会说使用您已有的。如果您觉得以后需要投入更多,您可以随时这样做。

现在是企鹅时间!

要在街机柜中运行 MAME,您必须配置两个独立的程序:MAME 本身和一个前端。因为 MAME 是一个命令行程序,所以您需要一个前端来使用操纵杆和按钮启动游戏。最后一步真的是我最喜欢的部分。如果您认为我对按钮布局的犹豫不决是过分的,您一定不想知道我花了多长时间来决定运行什么软件。显然,我选择运行 Linux。查看“选项”侧边栏,了解关于发行版和前端的一些常见选择的比较。

选项

软件:AdvanceCD,自定义 Linux 安装。

  • 优点:创建一个自定义 CD 或可启动 USB 密钥,直接启动到 AdvanceMENU 前端。

  • 缺点:如果您不使用标准按钮布局,则很难配置。如果您的硬件未正确检测到,也很难修复。而且它有点慢,尤其是从 USB 1.1 启动时。

软件:LinCade,基于 Gentoo。

  • 优点:也使用漂亮的 AdvanceMENU 前端,并且更可配置,可以选择在安装后添加和修改游戏。

  • 缺点:如果您不使用标准 MAME 按钮布局,仍然很难配置。

软件:KnoppixMame,基于 Knoppix。

  • 优点:出色的硬件检测。

  • 缺点:真的不是为街机柜设计的,而是为那些有键盘和鼠标的人设计的。

软件:标准 Ubuntu 和 WahCade 前端。

  • 优点:非常容易配置。Ubuntu 安装程序处理所有硬件检测。这是我选择的选项。

  • 缺点:并非专门为街机柜设计。

我选择安装一个标准的 Ubuntu 发行版。实际上任何发行版都可以工作,但我只是碰巧喜欢 Ubuntu 的单 CD 安装。此外,WahCade 前端有一个非常好的 .deb 安装程序,因此 Ubuntu 的 Debian 根基确实很有意义。首先,像普通的桌面用户一样安装 Ubuntu。我选择安装 Feisty Fawn,因为它是最新的版本,而且我碰巧已经刻录了一张 CD。我强烈建议您使用计划在街机柜中使用的显示器运行安装程序。这将节省以后很多麻烦。

Ubuntu 安装完成后,打开一个终端窗口,并安装 xMame(MAME 的 X Window 系统版本)

# sudo apt-get install xmame-x

然后,转到 www.anti-particle.com 并获取最新版本的 WahCade。您需要获取 .deb 文件。要安装它,请输入

# sudo dpkg -i wahcade-xxx.deb

现在,您已准备好配置事物。WahCade 主页上的安装说明非常清楚,但请务必仔细遵循它们。您将不得不做一些命令行操作,并弄清楚您想在哪里存储 ROM 等。有一个非常好的 GUI 配置工具,您可以在其中分配适当的键(来自您的操纵杆)来控制界面。一旦您配置了前端并将 ROM 放置到位,这确实需要一段时间,请继续启动 WahCade。请务必为 xmame 添加 -fullscreen 和 -skip_disclaimer 选项,后者是因为仅用操纵杆很难输入 OK。(MAME 默认情况下会显示一个免责声明,强制您输入 OK 才能继续。)

如果一切配置正确,您应该会看到 WahCade 程序,并且能够相应地选择和启动游戏(图 6)。我讨厌承认这一点,但我花了 几个小时 试图弄清楚如何配置 xmame 的按钮。我尝试编辑配置文件,但这对我来说太复杂了。最后,事实证明 MAME 有一个内置的方法来重新分配键。当我意识到它真的有多简单时,我真想踢自己一脚。我现在可能还会这样做。只需在游戏中按下 Tab 键一次,您就会得到一个很好的配置屏幕,您可以在其中配置默认键或特定于游戏的键。

Build Your Own Arcade Game Player and Relive the '80s!

图 6. 这是 WahCade 的主屏幕。此屏幕截图由 WahCade 开发人员 Andy Balcombe 提供。谢谢 Andy!

MAME 的优点之一是它可以将命令分配给组合键。例如,我不想仅仅为了退出游戏而安装一个按钮,所以我将“退出游戏”映射到同时按下玩家 1 和玩家 2。这确实限制了所需的按钮数量。MAME 还有一个暂停选项,这是原始街机从未有过的,但对于家庭使用来说非常棒。我控制面板上的黄色按钮映射到暂停。

一旦 MAME 和 WahCade 正常工作,您需要自动化该过程。设置 GNOME 登录管理器以自动登录用户帐户,并创建一个 .xsession 文件,以避免 GNOME 环境并直接启动 WahCade。以下是如何创建 .xsession 文件的示例

# cat > ~/.xsession
# wahcade
# ^D  (actually press control-D)
#
# chmod +x ~/.xsession (this makes it executable)

所以您就拥有了一个街机系统,配备了真正的控制装置和原始游戏。您可以自定义您的系统以满足您的需求。也许您想要一个耳机插孔,这样您就可以在不打扰别人的情况下玩游戏。也许您想添加音乐支持,让您的街机机器兼作点唱机。因为机柜有一台安装了 Linux 的完整计算机,所以可能性是无限的。玩得开心!

键盘破解

破解键盘的四个简单步骤

  1. 拆开键盘,确保不要损坏 PCB。

  2. 在 PCB 上找到两组连接器,并在图表上将它们标记为 X 和 Y。

  3. 追踪柔性塑料片上非常小、精细的线条,以确定每个键的 X 和 Y 坐标。不,真的,我不是在开玩笑。

  4. 将电线焊接到每个 X 和 Y 端子,并使用这些电线连接到街机控制装置。

获取合法的 ROM

MAME ROM 很容易在互联网上找到下载,但是使用这些 ROM 的合法性是值得怀疑的。有两种方法可以确保您拥有使用 ROM 的合法权利。

  1. 从原始游戏中购买实际的主板。这听起来可能很牵强,但从当地的投币式游戏机供应商或 eBay 在线购买损坏的街机板并不太困难。因为您只是在寻找使用下载的 ROM 的合法权利,所以电路板是否损坏并不重要。

  2. 您可以购买 X-Arcade 键盘,它附带一些经典 ROM。

  3. 查看 arcadecontrols.com。那里有一些免费的、非商业游戏可供下载,以及更多关于获取合法 ROM 的想法。即使您想花钱,通常也很难找到向谁购买版权。

资源

MAME 街机模拟器:www.mame.net

WahCade 前端:www.anti-particle.com

街机控制 (机柜构建信息):www.arcadecontrols.com

Happ Controls:www.happcontrols.com

Hagstrom Electronics:www.hagstromelectronics.com

Ubuntu Linux:www.ubuntulinux.com

AdvanceMAME/AdvanceMENU:advancemame.sf.net

LinCade:www.pc2jamma.org

Shawn Powers 是密歇根州北部一所小型学校的极客技术主管。他确实设法找到了一位爱他的妻子,并有三个可爱的女儿。他的妻子甚至和他一起看 星际迷航,但他怀疑这只是因为她爱他。请发送电子邮件至 shawn@brainofshawn.com 与他联系。

加载 Disqus 评论