use*_*042 6 emulation software-installation
我总是怀念我美好的 Amiga 500 天以及我喜欢在上面玩的许多游戏。我之前在 Windows 机器上运行了 Amiga 模拟器 WinUAE,但我现在已经切换到 Ubuntu 并想在我的新 Linux 平台上尝试阿联酋。
所以我的问题是:如何在 Ubuntu 12.04(精确穿山甲)上安装 E-UAE?
总的来说,我发现这是一个比预期更痛苦的过程,所以我决定在网上分享我的经验,以防其他人想尝试。最终,我在 Ubuntu 上得到了一个运行流畅的 Amiga 模拟器,如果你也想尝试一下,请继续关注。
\n\n首先,我的一些系统规格:
\n\nUbuntu 软件中心提供了名为 E-UAE 的 Linux 版本的 WinUAE,所以我的第一个想法是:这会很容易!可惜,事实并非如此。使用 Ubuntu 软件中心安装 E-UAE 并启动它后,我收到了程序崩溃报告。好吧,这显然不是正确的方法。
\n\n所以B计划:从源代码安装。我在Richard Drummond 的网站上找到了 E-UAE 源代码
\n\n看到这个最新版本的 E-UAE (0.8.29) 的日期是 2007 年 3 月,这对我来说使用预配置的 Ubuntu 软件包安装 E-UAE 失败并不奇怪 --- E-UAE 软件包似乎不再维护。所以我立刻就放弃了让 UAE 在我心爱的 Ubuntu 上运行的希望。
\n\n无论如何,我想尝试一下。Ubuntu 帮助中有一个有点过时的从源代码安装 E-UAE 的指南。所以我从那里开始:
\n\nsudo apt-get install build-essential checkinstall\nsudo apt-get install zlibc zlib1g-dev\nRun Code Online (Sandbox Code Playgroud)\n\n接下来将此文件下载到您选择的目录中(例如您的主目录)。
\n\ntar xf e-uae-0.8.29-WIP4.tar.bz2\ncd e-uae-0.8.29-WIP4\n./configure\nmake\nRun Code Online (Sandbox Code Playgroud)\n\n下一个大失望:E-UAE 编译时出现错误,抱怨缺少 libxext 库。好吧,这不应该是一个大问题:
\n\nsudo apt-get install libxext-dev\nRun Code Online (Sandbox Code Playgroud)\n\n再次运行 make 最终获得了第一次成功:E-UAE 在我的系统上编译了!让我们启动它:
\n\nsrc/uae\nRun Code Online (Sandbox Code Playgroud)\n\n我的控制台上有很多输出,但没有 GUI。阅读 E-UAE README,它向我解释说 GUI 仅适用于支持 GTK+ 工具包的平台。该死。好吧,我不想在我的系统上安装 GTK+,所以我们必须在没有 WinUAE 中习惯的漂亮图形配置对话框的情况下继续。
\n\n在我的控制台中筛选 E-UAE 输出发现以下重要行:
\n\n"Failed to load Kickstart image \'kick.rom\'"\nRun Code Online (Sandbox Code Playgroud)\n\n呃,当然是kick.rom。我在运行 WinUAE 时仍保留该文件,因此我将其从 Windows 分区复制到romse-uae 的子目录中。E-UAE 将如何在那里找到该文件?默认情况下,E-UAE 会查找.uaerc在用户主目录中命名的配置文件,其中包含所有 E-UAE 设置。因此,我继续.uaerc在用户主目录下创建一个简单的文件,其中包含以下内容:
kickstart_rom_file=roms/kick.rom\nRun Code Online (Sandbox Code Playgroud)\n\n再次启动 E-UAE 现在向我展示了一只熟悉的手拿着一张软盘 - 不错!因此,我抓取了我最喜欢的游戏之一的 ADF 文件,并在我的 .uaerc 文件中添加了另一个条目:
\n\nfloppy0=/my/path/to/adf/collection/Lemmings_disk_1_of_2.adf\nfloppy1=/my/path/to/adf/collection/Lemmings_disk_2_of_2.adf\nRun Code Online (Sandbox Code Playgroud)\n\n重启 E-UAE 以好消息和坏消息结束。好消息是图形工作正常,并且游戏在一个漂亮的小窗口中启动!坏消息:没有音频,所以没有声音!好的,返回 E-UAE 控制台会出现以下重要行:
\n\nCan\'t open /dev/dsp: No such file or directory\nSound driver unavailable: Sound output disabled\nRun Code Online (Sandbox Code Playgroud)\n\n显然,/dev/dsp自从 Ubuntu 的早期版本以来,该设备就已经消失了。在网上搜索后发现了一个非常简单的解决方案。有一种方法可以使用 来模拟该设备padsp。我们所要做的就是将此程序放在我们的 uae 程序调用前面:
padsp src/uae\nRun Code Online (Sandbox Code Playgroud)\n\n这带回了我心爱的 Amiga 声音!
\n\n差不多了。让我恼火的一件事是 E-UAE 正在窗口模式下运行。从 WinUAE 开始,我习惯于全屏玩游戏,这使得游戏的屏幕尺寸变得更大。阅读 E-UAE 手册告诉我,按F12+s(键盘上的“'s”键,而不是 Shift 键)应该在全屏和窗口模式之间切换。唉,没工作。组合键完全没有反应。
再说一遍,E-UAE 控制台输出是我的朋友。不幸的是,我不记得给我提示的确切错误消息,但我认为问题与缺少简单直接媒体层(SDL)库( sdl.org )有关。SDL 是一个跨平台多媒体库,旨在通过 OpenGL 提供对音频、键盘、鼠标、操纵杆、3D 硬件和 2D 视频帧缓冲区的低级访问。它也被模拟器使用。
\n\n所以下载最新的SDL后下载到我的主文件夹后:
\n\ntar xvf SDL-1.2.15.tar.gz\ncd SDL-1.2.15/\n./configure\nmake\nsudo make install\nRun Code Online (Sandbox Code Playgroud)\n\n然后我重新编译了带有 SDL 支持的 E-UAE。切换到 E-UAE 的安装目录,然后键入:
\n\n./configure --with-sdl --with-sdl-gfx\nmake clean\nmake all\nRun Code Online (Sandbox Code Playgroud)\n\n重新启动 E-UAE 并点击F12+s现在切换到全屏 --- 太棒了!
我还必须在配置文件中进行一些其他调整,.uaerc以使 E-UAE 按照我喜欢的方式运行(操纵杆到键盘映射、全屏分辨率、Amiga LED 显示、可用 RAM 量、鼠标速度)。但长话短说,我将发布我的完整内容.uaerc在这里发布完整的配置文件:
kickstart_rom_file=roms/kick.rom\ngfx_width_fullscreen=1280\ngfx_height_fullscreen=800\ngfx_width_windowed=720\ngfx_height_windowed=568\ngfx_fullscreen_amiga=false\ngfx_fullscreen_picasso=false\nshow_leds=true\nchipset=ocs\ncpu_type=68000\ncpu_compatible=true\ncpu_24bit_addressing=true\nchipmem_size=2\njoyport0=mouse\njoyport1=kbd2\ninput.mouse_speed=100\nRun Code Online (Sandbox Code Playgroud)\n\n我剩下的一个问题是,从全屏模式退出 E-UAE 后,我的屏幕分辨率不会切换回默认值。如果有人知道如何解决这个问题,请发表评论!
\n\n也可以看看:
\n\n\n