linux下各种模拟器介绍和使用方法(更新结束)

游戏讨论
回复
头像
Strange
帖子: 1824
注册时间: 2006-05-19 9:54
来自: Shanghai

Re: linux下各种模拟器介绍和使用方法(不断更新)

#76

帖子 Strange » 2009-06-29 14:37

ubunao 写了:为何.....



为何没有HGAME!!
很遗憾啊,linux下还没有好用的pc98模拟器
不过用dosbox可以玩玩很多dos上h game了
ニンニク入れますか?
x60 with gentoo
头像
zhongmingheng
帖子: 21
注册时间: 2009-01-03 1:11
来自: http://www.mancity.com.cn/bbs/
联系:

Re: linux下各种模拟器介绍和使用方法(不断更新)

#77

帖子 zhongmingheng » 2009-07-04 10:38

作为超级游戏迷 这样的好文不能不顶。 谢谢楼主的分享。 呵呵 收藏了 :em02
有没有人爱,我们也要努力做一个可爱的人。不埋怨谁,不嘲笑谁,也不羡慕谁,阳光下灿烂,风雨中奔跑,做自己的梦,走自己的路。
surran
帖子: 101
注册时间: 2009-06-07 15:58

Re:

#78

帖子 surran » 2009-07-12 12:56

Whistler 写了:补充一个 PlayStation 的模拟器: pcsx-df
apt-get install pcsx-df (Debian 肯定有,ubuntu 应该也有) 安装,自带所有插件

安装后需要找一个 bios 文件,扔到 ~/.pcsx/bios 里 (目录若不存在,执行一次 pcsx 即可自动建立)。网上的 Windows 集成版 epsxe 里都可以找到 bios 文件。没有这个 bios 文件也可以运行一部分游戏,但兼容性不太好。

经测试 FF7/8/9 和格兰蒂亚 PSX 版用这个模拟器均没什么问题 (但不用 bios 则只有 FF8 可以),而且 FF7 的进入战斗时的特效居然还可以出来 (epsxe for Windows 出不来...) :)

还有一个功能比较实用,玩游戏中按 esc 退出后,下次进入游戏时只需按 Alt+0(零) 即可恢复到上次退出的状态。
能不能贴几个抓图来看看,实际效果如何?
头像
mrzx
帖子: 168
注册时间: 2006-11-23 15:47
联系:

Re: linux下各种模拟器介绍和使用方法(不断更新)

#79

帖子 mrzx » 2009-07-29 16:03

我已经很长时间没有更新这个帖子~
首先,我写这篇文章之前,我想感谢这个ubuntu论坛游戏区的版主luojie,她给我了很多的帮助,尽可能的给了我充足的空间,让我感动万分。
其次,我也没想过,我的帖子的访问量有这么高,最初的想法其实很简单,也就是因为网上的讲模拟的文章太零散了,所以我想将他们整成一个完整的帖子。便于所有人查看~~~为此,我真心的谢谢大家这么长时间来关注这个帖子,谢谢完善帖子的热心人士们,谢谢了~~~~


写文章说起来真容易,可做起来真难。当初为了NGC模拟器的测试,从国外下的种子,几k每秒的下个光盘镜像文件就花了我几天时间。不过,我认为这些都是值得的Y^_^Y

开始入正题吧
dosbox
官方网站
http://www.dosbox.com/

MSdos系统80年代的兄弟们应该都熟悉,在这个系统上出现了很多的经典游戏,比如”红警啊,仙剑,毁灭公爵,沙丘,轩辕剑,等等,很多经典游戏“,不过很可惜的是,有些游戏因为兼容性的问题,只能在DOS上玩,难不成我们玩游戏还要装个DOS系统?
dosbox出现了,它完全的满足了你的需求.

dosbox模拟器的效能大奔腾400MHZ的CPU模拟后能流畅运行为386设计的游戏,所以大多数的DOS游戏都是可以玩的

dosbox的安装
安装无非2种,在ubuntu下比较简单
sudo apt-get install dosbox #不过版本稍微有点老,是0.72
想要新版本的去官方网站自己下个源代码编译
http://www.dosbox.com/
编译还是老样子
configure #一般报错的话,请仔细通过查看报错信息来解决,一般都是SDL开发包没装。
make
make install

其实,源代码编译的方法百遍不离其一,最重要的线索的就是编译出错时提出的信息,这是你解决问题的最好途径,如果说,你在编译的时候出错,却没有报出任何错误信息,别担心,这不是你的问题。那是作者的编程水平问题。
如果大家对于源代码编译安装不熟悉的话,推荐看这篇文章
viewtopic.php?f=56&t=151146



先说说这个模拟器的快捷键吧
ALT-ENTER 全屏模式
CTRL-F1 开始键盘布局
CTRL-F4 转换已载入的虚拟驱动器,作用是更新所有改动过的作为虚拟驱动器的目录
CTRL-F5 抓图,以PNG格式保存,路径设置见之后描述
CTRL-F6 开始录制声音,以WAV格式保存,再次按下中止
CTRL-ALT-F7 开始记录OPL命令,同样再次按下中止
CTRL-ALT-F8 开始录制最初的MIDI命令,再次按下中止。
CTRL-F7 减少跳帧
CTRL-F8 增加跳帧
CTRL-F9 关闭DOSBOX
CTRL-F10 锁定/解锁鼠标
CTRL-F11 减少cpUCycle
CTRL-F12 增加cpucycle



然后,我们说说dosbox的核心配置文件,我挑一些主要参数说说
配置文件一般都在/home/用户目录/.dosbox/目录下
memsize=16 #这里设定dosbox模拟dos用的内存大小,在当年16MB内存已经是海量内存了


[render]下
frameskip=0 #这里主要调节跳帧,0表示不跳帧,如果机器比较烂的话,可以考虑一下将这个数值调大,不过,作为参考,我这台thinkpad t60配置很烂,一样很流畅.

ASPect=false #象素高宽比,默认false是1:1,如果不是有特殊需要就不要去更改。

scaler=normal2x # 画面优化选项:备选参数none,normal2x,advmame2x,advmame3x,advinterp2x,interp2x,tv2x分别对应"无","2倍柔化","advanceMAME二倍柔化","andvanceMAME三倍柔化","加强型双线性过滤","双线性过滤","TV模式"。


[cpu]
core=normal #这里面有几个备选参数simple,normal,full,dynamic,对应简易,通常,完全,动态调整。

cycles=5000 #这里就是CPU的频率了。看你机器的好坏拉,一般设到10000以上的时候基本上没有什么明显的速度提升了。主要还是看机器的性能~~~


[mixer]
nosound=false #静音模式

rate=22050 #采样率:默认是22MHZ,如果想听CD的音质,比如仙剑CD版,可以尝试调到44100

blocksize=2048 #块大小:越大越能改善声音停顿的现象。不过也会带来副作用--延迟。

prebuffer=10 #缓冲:播放时缓冲多少毫秒,声音卡的话可以考虑加大数值,但是相应的,系统资源占用加大。


[midi]
mpu401=true # 是否进行MPU-401模拟,想听MIDI就要设置为true。

intelligent=true #智慧处理模式,使用默认

device=default #选择接受MPU-401发出的MIDI讯号的设备,备用参数:alsa,oss,win32,coreaudio,none,如果游戏无法发声,请自己尝试换不同的参数



[sblaster]
type=sb16
# 选择进行模拟的soundblaster型号:none,sb1,sb2,sbpro1,sbpro2,sb16
base=220
irq=7
dma=1
hdma=5
mixer=true
oplmode=auto
# 以上6条是能否发声的关键,游戏中的设置应该跟这里一样。以仙剑为例:base对应游戏设置程序install.exe中的I/O port;IRQ,DMA分别一一对应。

oplrate=22050
# 这个是模拟音频的采样率,也可以提高到44100,不过效果改观不大。





[dos]

xms=true
ems=false
# 针对仙剑的运行,关闭了EMS。不要动这个参数。



[modem]
modem=false
# 进行MODEM模拟,联机游戏用,如果需要使用MODEM连接,就打开。
comport=2
# 端口,使用默认
listenport=23
# 连入端口,使用默认


[directserial]
directserial=false
# 直接电缆连接,也是联机游戏用的,如果需要使用直接电缆连接,就打开。
comport=1
# DOSBOX中的端口,使用默认
realport=COM1
# 主机的端口,按实际情况设置

defaultbps=1200
# 标准传输速率(bps)

parity=N
# 奇偶校验,备选参数:N,E,O

bytesize=8
# 每个数据包的大小,备选参数:5,8

stopbit=1
# 停制位点,使用默认。备选参数:1,2


[ipx]
ipx=false
# IPX协议连接,联机游戏用,如果需要请选择true


[autoexec]
# 这里是dosbox启动后启动加载的命令,如果你不想每次进入dosbox都要手动挂载盘符,就可以将命令打在这里。





下面说说dosbox的一些使用方法
主要是挂载的一些例子:
比如,我们需要创建个dosbox的虚拟硬盘c:
所以我们需要将真实磁盘的一部分挂载上去,变成dosbox可用的虚拟磁盘
比如
我们先在真实的磁盘里创建个文件夹吧
mkdir -p /home/mrzx/111/
touch /home/mrzx/111/dosbox.txt

打开dosbox
sudo dosbox
在dosbox挂载真实的磁盘,并将这部分当成dosbox中的c盘
mount c: /home/mrzx/111

然后我们跳转到c:
dir查看一下,是不是发现有dosbox.txt文件阿?
(大家的dos命令还没有忘记吧?)

那么我们安装dos游戏如何安装的?大家心里有数了吗?



下面说说如何挂载光盘?
一些比如说很经典的游戏,比如仙剑dos光盘版.
我下了光盘镜像为img的,所以思路是这样的。
首先将img转换成iso,然后呢,在将iso挂载起来,最后在dosbox里挂载就可以了。
我们说下几个转换工具吧
ccd2iso #可以将img转换成iso
bchunk #可以将cue,bin转换成iso
安装很简单
sudo apt-get install ccd2iso
sudo apt-get install bchunk


转换方法
ccd2iso xxxx.img xxxx.iso
bchunk xxxx.bin xxxx.iso
bchunk xxxx.bin xxxx.cue xxxx.iso


将转好的iso镜像挂载到光驱上
有2种办法,这里我顺便给大家介绍一下,具体研究的请找男人
一种是通过mount -o loop的方法,另外一种是通过losetup,然后在mount的方法。实现的目的都是一样,但是有区别
例子:
mount -t iso9660 -o loop /home/mrzx/Pal.iso /mnt/iso/
#解释下参数
-t 表示指定用什么格式?后面跟着iso9660是种iso镜像格式
-o loop 表示就是把一个文件模拟成一个设备,典型的就是iso文件,这样挂载上去的时候,iso会被作为一个设备文件挂载到/mnt/iso/的目录上


losetup的作用
循环设备可把文件虚拟成区块设备,籍以模拟整个文件系统,让用户得以将其视为硬盘驱动器,光驱或软驱等设备,并挂入当作目录来使用。
例子:
首先呢
/dev/里目录预设了loop的7个文件,你可以随时调用,
losetup /dev/loop0 /home/mrzx/Pal.iso
#这是什么意思呢?意思就是将Pal.iso 变成一个设备文件,对应的设备名叫loop0,放在/dev/目录下

第2个应用:
这时候,mount在组合进来使用
mount /dev/loop0 /mnt
#什么意思?意思就是将刚才的光盘镜像挂载到/mnt下(这时候的光盘镜像,系统已经认为是设备文件了,linux下虽然将所有东西文件化,但文件还是分类的,请大家学习linux基础篇.)
它们之间的区别就在于,通过losetup的设备文件可以fdisk,而且呢losetup这个工具是在/sbin/目录下,这意为着什么?




最后,我们开始用dosbox虚拟出一个光盘
刚才我们所有的光盘镜像都挂载到真实的/mnt目录下了吧?
所以我们在dosbox下在挂载一次
mount d: /mnt/ -t cdrom -usecd 0 -apsi -label PAL
#我来解释一下吧d代表dosbx下的盘符,
/mnt/是指真实系统下的文件夹(刚才不是把光盘镜像挂载到这个目录下吗?)
-t cdrom 表示挂载的d:是光盘设备,
-usecd 0 表示挂载的第1个驱动器,只是个驱动器名而已,如果是-usecd 1的话,就是第2个驱动器,
-apsi 百毒下,你们会比我更清楚,其实这是指定光驱用高级SCSI编程接口,windows98用的就是这个
-label 这是指光盘标签,一般有的DOS游戏安装时找不到光盘,设定个光盘标签试试?后面的PAL是我随便起的.

当然了,你也可以这样挂
mount d; /mnt -t cdrom -usecd 0 -ioctl -label PAL
大家现在看明白了吗?
唯一的区别就是后面的-ioctl,因为在windows xp下用的不是-apsi接口了,而是-ioctl.当然了,linux下,你用哪个都行了。

最后到d:盘下,安装dos游戏即可.仙剑的光盘版安装文件为install.exe

好了,dosbox的介绍结束,更详细请参考官方站点的手册.






对不起大家,这篇文章我一直拖了1年多。至此我终于对大家有个交代了。我对这个帖子的更新也就结束了.这1年来,我一直拼命的努力,终于通过service provider CCIE和RHCE的考试,明年我还需要换份稳定的工作,并备考IBM小型机和RHCA认证.希望大家不要怪我,因为我也需要工作,学习,各种压力已经把我压的喘不过气来了。我也只是一个普通的linux爱好者.......

ps2的模拟器我一直没写是有原因的。家里的三台电脑都是万恶的A卡,驱动问题还没解决呢。加上常年我在外出差,随身只带个笔记本,我那台t60只是普通的集成显卡,恐怕ps2模拟器运行起来够呛....
其实大家仔细搜索一下,可以发现坛子里还有不少讲述有关ps2模拟器的好文章的。我想我可以不用写了。^_^


最后,我衷心的希望,如果大家有自己的模拟器心得,不妨写出来,放到论坛上和大家共享,分享是件很快乐的事~~~~
附件
仙剑的截图
仙剑的截图
上次由 mrzx 在 2009-12-07 1:32,总共编辑 4 次。
头像
ST610
帖子: 32
注册时间: 2009-08-09 13:51

Re: linux下各种模拟器介绍和使用方法(不断更新)

#80

帖子 ST610 » 2009-08-20 19:51

静静的等待dosbox的出现。。。
人若无名,便可专心。
chaosybruin
帖子: 5
注册时间: 2009-06-14 22:55

Re: linux下各种模拟器介绍和使用方法(不断更新)

#81

帖子 chaosybruin » 2009-08-21 23:30

:em20 俄~就要把游戏瘾戒了。。~看到此神贴。。。
davidchenbin
帖子: 62
注册时间: 2008-08-22 20:04

Re: linux下各种模拟器介绍和使用方法(不断更新)

#82

帖子 davidchenbin » 2009-08-24 11:01

mark :em11
gamemanlyg
帖子: 8
注册时间: 2009-09-07 20:35

Re: linux下各种模拟器介绍和使用方法(不断更新)

#83

帖子 gamemanlyg » 2009-09-08 17:02

ps3装了Ubuntu可以用吗?
头像
flankerfc
帖子: 8
注册时间: 2006-12-19 9:59

Re: linux下各种模拟器介绍和使用方法(不断更新)

#84

帖子 flankerfc » 2009-09-19 2:22

运行 xmame报如下错误是怎么回事儿?谢谢

>>xmame /home/flanker/games/mslugx.zip

GLINFO: loaded OpenGL library libGL.so!
GLINFO: loaded GLU library libGLU.so!
info: trying to parse: /etc/xmame/xmamerc
error: unknown option history_file, on line 13 of file: /etc/xmame/xmamerc
ignoring line
error: unknown option mameinfo_file, on line 14 of file: /etc/xmame/xmamerc
ignoring line
error: unknown option fuzzycmp, on line 33 of file: /etc/xmame/xmamerc
ignoring line
error: unknown option skip_disclaimer, on line 35 of file: /etc/xmame/xmamerc
ignoring line
info: trying to parse: /home/flanker/.xmame/xmamerc
info: trying to parse: /etc/xmame/xmame-x11rc
info: trying to parse: /home/flanker/.xmame/xmame-x11rc
info: trying to parse: /etc/xmame/rc/mslugxrc
info: trying to parse: /home/flanker/.xmame/rc/mslugxrc
xmame: could not connect to socket
xmame: No such file or directory
LIRC disabled
loading rom 0: 250-p1.bin
loading rom 1: 250-p2.bin
loading rom 2: 250-s1.bin
loading rom 3: sfix.sfx
loading rom 4: sp-s2.sp1
loading rom 5: sm1.sm1
loading rom 6: 250-m1.bin
loading rom 7: 000-lo.lo
loading rom 8: 250-v1.bin
loading rom 9: 250-v2.bin
loading rom 10: 250-v3.bin
loading rom 11: 250-c1.bin
loading rom 12: 250-c2.bin
loading rom 13: 250-c3.bin
loading rom 14: 250-c4.bin
loading rom 15: 250-c5.bin
loading rom 16: 250-c6.bin
done
info: set to 16bit linear stereo 44100Hz
info: sysdep_dsp: using alsa plugin
error: unable to find simple control: Socket operation on non-socket
MIT-SHM Extension Available. trying to use... Success.
Using Shared Memory Features to speed up
Initialized no effect: bitmap depth = 15, color format = RGB 888 (32bpp)
Initialized no effect: bitmap depth = 15, color format = RGB 888 (32bpp)
User cancelled
defy all challenges
accelerate your life
qq4387974
帖子: 8
注册时间: 2008-06-11 14:39

Re: linux下各种模拟器介绍和使用方法(不断更新)

#85

帖子 qq4387974 » 2009-10-02 2:32

强贴留个名。
头像
honghong
帖子: 317
注册时间: 2009-05-14 14:06

Re: linux下各种模拟器介绍和使用方法(不断更新)

#86

帖子 honghong » 2009-10-09 22:05

一会再来看
That is in my life!
头像
牛奶夹心饼
帖子: 513
注册时间: 2009-09-14 0:46
来自: 广东惠州

Re: linux下各种模拟器介绍和使用方法(不断更新)

#87

帖子 牛奶夹心饼 » 2009-10-23 9:18

希望楼主早日回复啊!我用的是sdlmame

我按照楼主的帖子一部一部照做的,但是就是不成功

终端输入sdlmame,出现以下画面
Screenshot-3.png
选择neogeo,或者kof97,都提示
Screenshot.png
如果在终端直接输入

代码: 全选

 sdlmame -v kof97
则出现信息

代码: 全选

Parsing mame.ini
Parsing mame.ini
Build version:      0.129 (Feb 17 2009)
Build architecure:  SDLMAME_ARCH=-march=pentium2 DISTRO=generic 
Build defines:      SDLMAME_UNIX=1 SDLMAME_X11=1 SDLMAME_LINUX=1 LSB_FIRST=1 NDEBUG=1 
SDL/OpenGL defines: SDL_COMPILEDVERSION=1213 USE_OPENGL=1 USE_DISPATCH_GL=1 
Compiler defines A: __GNUC__=4 __GNUC_MINOR__=3 __GNUC_PATCHLEVEL__=3 __VERSION__="4.3.3" 
Compiler defines B: __unix__=1 __i386__=1 
Compiler defines C: __USE_FORTIFY_LEVEL=0 
SDL Device Driver     : x11
SDL Monitor Dimensions: 1280 x 1024
Using SDL single-window OpenGL driver (SDL 1.2)
Loaded opengl shared library: <default>
OpenGL: NVIDIA Corporation
OpenGL: GeForce 7300 LE/PCI/SSE2/3DNOW!
OpenGL: 2.1.2 NVIDIA 173.14.16
OpenGL: texture rectangle supported
OpenGL: non-power-of-2 textures supported (new method)
OpenGL: vertex buffer supported
OpenGL: pixel buffers supported
OpenGL: framebuffer object supported
OpenGL: GLSL supported, but disabled
OpenGL: max texture size 4096 x 4096
Keyboard: Start initialization
Input: Adding Kbd #1: System keyboard
Keyboard: Registered System keyboard
Keyboard: End initialization
Mouse: Start initialization
Input: Adding Mouse #1: System mouse
Mouse: Registered System mouse
Mouse: End initialization
Joystick: Start initialization
Joystick: End initialization
Audio initialized - driver: alsa, frequency: 48000, channels: 2, samples: 512
sdl_create_buffers: creating stream buffer of 57344 bytes
ouput: unable to open output notifier file /tmp/sdlmame_out
OpenGL: VBO supported
OpenGL: PBO supported
OpenGL: FBO supported
OpenGL: using vid filter: 1
sfix.sfix NOT FOUND
000-lo.lo WRONG LENGTH (expected: 00020000 found: 00010000)
000-lo.lo WRONG CHECKSUMS:
    EXPECTED: CRC(5a86cff2) SHA1(5992277debadeb64d1c1c64b0a92d9293eaf7e4a)
       FOUND: CRC(e09e253c) SHA1(2b1c719531dac9bb503f22644e6e4236b91e7cfc)
sm1.sm1 WRONG CHECKSUMS:
    EXPECTED: CRC(94416d67) SHA1(42f9d7ddd6c0931fd64226a60dc73602b2819dcf)
       FOUND: CRC(97cf998b) SHA1(977387a7c76ef9b21d0b01fa69830e949a9a9626)
ERROR: required files are missing, the game cannot be run.
Ignoring MAME exception: ERROR: required files are missing, the game cannot be run.
选择cpzn1,cpzn2都提示
Screenshot-1.png
输入ok,出现
Screenshot-2.png
再按enter,自动推出,终端显示的信息如下

代码: 全选

memory_set_bankptr called NULL base
Ignoring MAME exception: memory_set_bankptr called NULL base
AMD3800+, 1GX2 ,500G
Ubuntu 10.04| openbox+tint2+pcmanfm+nitrogen+chrome+xcompmgr

----------再也不换头像----------
头像
Strange
帖子: 1824
注册时间: 2006-05-19 9:54
来自: Shanghai

Re: linux下各种模拟器介绍和使用方法(不断更新)

#88

帖子 Strange » 2009-10-23 16:40

牛奶夹心饼 写了:希望楼主早日回复啊!我用的是sdlmame

我按照楼主的帖子一部一部照做的,但是就是不成功
你用lz附件的romset,那也必须用和lz同样的mame版本
去找正确的rom去吧...
ニンニク入れますか?
x60 with gentoo
头像
牛奶夹心饼
帖子: 513
注册时间: 2009-09-14 0:46
来自: 广东惠州

Re: linux下各种模拟器介绍和使用方法(不断更新)

#89

帖子 牛奶夹心饼 » 2009-10-23 18:40

Strange 写了:
牛奶夹心饼 写了:希望楼主早日回复啊!我用的是sdlmame

我按照楼主的帖子一部一部照做的,但是就是不成功
你用lz附件的romset,那也必须用和lz同样的mame版本
去找正确的rom去吧...
这么麻烦啊?那我怎么知道怎么对应呢?
AMD3800+, 1GX2 ,500G
Ubuntu 10.04| openbox+tint2+pcmanfm+nitrogen+chrome+xcompmgr

----------再也不换头像----------
头像
Strange
帖子: 1824
注册时间: 2006-05-19 9:54
来自: Shanghai

Re: linux下各种模拟器介绍和使用方法(不断更新)

#90

帖子 Strange » 2009-12-07 0:24

牛奶夹心饼 写了:
Strange 写了:
牛奶夹心饼 写了:希望楼主早日回复啊!我用的是sdlmame

我按照楼主的帖子一部一部照做的,但是就是不成功
你用lz附件的romset,那也必须用和lz同样的mame版本
去找正确的rom去吧...
这么麻烦啊?那我怎么知道怎么对应呢?
多学习模拟器知识呀 :em05
ニンニク入れますか?
x60 with gentoo
回复