每当想起我那美好的 Amiga 500 时光以及我玩过的许多游戏时,我都会感到怀旧。我以前在 Windows 机器上运行过 Amiga 模拟器 WinUAE,但现在我已切换到 Ubuntu,并想在我的新 Linux 平台上尝试一下 UAE。
所以我的问题是:如何在 Ubuntu 12.04(Precise Pangolin)上安装 E-UAE?
答案1
E-UAE 的开发者仍在。还有另一个 Amiga 模拟器:FS-阿联酋与 WinUAE 代码同步。
答案2
总的来说,我发现这个过程比我想象的要痛苦得多,所以我决定在网上分享我的经验,以防其他人想尝试。最终,我在 Ubuntu 上成功运行了 Amiga 模拟器,所以如果你也想尝试一下,请继续关注。
首先,我的一些系统规格:
- HP Pavilion dv5 笔记本电脑运行 64 位 Ubuntu 12.04
- Intel® Core™2 双核 CPU T6400 @ 2.00GHz × 2
- 图形:英特尔公司移动 4 系列芯片组集成图形控制器(rev 07)
- 音频:英特尔公司 82801I(ICH9 系列)高清音频控制器(rev 03)
Ubuntu 软件中心提供了一个名为 E-UAE 的 WinUAE Linux 版本,所以我的第一个想法是:这将会很容易!唉,事实并非如此。使用 Ubuntu 软件中心安装 E-UAE 并启动它后,我看到了一个程序崩溃报告。好吧,这显然不是解决问题的办法。
所以计划 B:从源代码安装。我在以下网址找到了 E-UAE 源代码Richard Drummond 的网站
看到 E-UAE 的最新版本 (0.8.29) 是 2007 年 3 月发布的,使用预配置的 Ubuntu 软件包安装 E-UAE 失败对我来说并不意外 --- E-UAE 软件包似乎不再维护了。所以我立刻失去了在心爱的 Ubuntu 上运行 UAE 的希望。
无论如何,我想尝试一下。这里有一个有点过时的指南,教你如何从源代码安装 E-UAEUbuntu 帮助。所以我从那里开始:
sudo apt-get install build-essential checkinstall
sudo apt-get install zlibc zlib1g-dev
下次下载这个文件进入您选择的目录(例如您的主目录)。
tar xf e-uae-0.8.29-WIP4.tar.bz2
cd e-uae-0.8.29-WIP4
./configure
make
下一个大失望:E-UAE 编译时出现错误,抱怨缺少 libxext 库。好吧,这应该不是什么大问题:
sudo apt-get install libxext-dev
再次运行 make 最终获得了第一次成功:E-UAE 在我的系统上编译成功!那么让我们启动它吧:
src/uae
我的控制台上有很多输出,但没有 GUI。阅读 E-UAE README 时,它向我解释说 GUI 仅适用于支持 GTK+ 工具包的平台。该死。好吧,我不想在我的系统上安装 GTK+,所以我们必须放弃我习惯的 WinUAE 的漂亮图形配置对话框。
通过筛选控制台中的 E-UAE 输出,可以找到以下重要内容:
"Failed to load Kickstart image 'kick.rom'"
呃,当然是 kick.rom。我在运行 WinUAE 时,这个文件仍然放在某个地方,所以我将它从我的 Windows 分区复制到roms
e-uae 的子目录中。E-UAE 如何在那里找到这个文件?默认情况下,E-UAE 会查找.uaerc
用户主目录中的配置文件,其中包含所有 E-UAE 设置。因此,我继续在我的用户主目录下创建一个简单的.uaerc
文件,其中包含以下内容:
kickstart_rom_file=roms/kick.rom
再次启动 E-UAE 时,我看到一只熟悉的手拿着软盘 - 不错!所以我抓取了我最喜欢的游戏之一的 ADF 文件,并在我的 .uaerc 文件中添加了另一个条目:
floppy0=/my/path/to/adf/collection/Lemmings_disk_1_of_2.adf
floppy1=/my/path/to/adf/collection/Lemmings_disk_2_of_2.adf
重启 E-UAE 带来了好消息和坏消息。好消息是图形可以正常工作,游戏在一个漂亮的小窗口中启动!坏消息是:音频无法正常工作,所以没有声音!好的,返回 E-UAE 控制台会出现以下重要行:
Can't open /dev/dsp: No such file or directory
Sound driver unavailable: Sound output disabled
显然,/dev/dsp
自 Ubuntu 早期版本以来,该设备就不存在了。在网上搜索后,我发现了一个出奇简单的解决方案。有一种方法可以使用 来模拟此设备padsp
。我们所要做的就是将此程序放在我们的 uae 程序调用前面:
padsp src/uae
这让我想起了我心爱的 Amiga 声音!
快完成了。有一件事让我很恼火,那就是 E-UAE 是在窗口模式下运行的。我习惯在 WinUAE 中全屏玩游戏,这样游戏在屏幕上看起来就大得多了。阅读 E-UAE 手册后,我发现按F12+s
(键盘上的“s”键,而不是 Shift 键)可以在全屏和窗口模式之间切换。唉,没用。这个组合键完全没有反应。
再次,E-UAE 控制台输出是我的好朋友。不幸的是,我不记得给我提示的确切错误消息,但我认为问题与缺少 Simple Directmedia Layer (SDL) 库有关(sdl.org)。SDL 是一个跨平台多媒体库,旨在提供对音频、键盘、鼠标、操纵杆、通过 OpenGL 的 3D 硬件和 2D 视频帧缓冲区的低级访问。它也被模拟器使用。
下载后最新的 SDL进入我的主文件夹:
tar xvf SDL-1.2.15.tar.gz
cd SDL-1.2.15/
./configure
make
sudo make install
然后我重新编译了支持 SDL 的 E-UAE。转到安装 E-UAE 的目录,然后输入:
./configure --with-sdl --with-sdl-gfx
make clean
make all
重新启动 E-UAE 并F12+s
立即切换到全屏 --- 太棒了!
我还必须在配置文件中做一些其他调整,.uaerc
以使 E-UAE 按照我喜欢的方式运行(操纵杆到键盘的映射、全屏分辨率、Amiga led 显示、可用 RAM 数量、鼠标速度)。但长话短说,我.uaerc
在这里发布了我的完整配置文件:
kickstart_rom_file=roms/kick.rom
gfx_width_fullscreen=1280
gfx_height_fullscreen=800
gfx_width_windowed=720
gfx_height_windowed=568
gfx_fullscreen_amiga=false
gfx_fullscreen_picasso=false
show_leds=true
chipset=ocs
cpu_type=68000
cpu_compatible=true
cpu_24bit_addressing=true
chipmem_size=2
joyport0=mouse
joyport1=kbd2
input.mouse_speed=100
我还遇到一个问题,离开全屏模式后,我的屏幕分辨率不会切换回默认分辨率。如果有人知道如何解决这个问题,请留言!
也可以看看:
答案3
只需输入
sudo apt-get install e-uae