emuingo.JPG (7907 字节)

什么是模拟器

sico2.JPG (1023 字节)
1.什么是模拟器:

"模拟器"就是试图用软件模拟某种机型的内部设计,而"模仿"则是尝试去模拟
某种机型的功能.例如:当一个程序模拟出了街机游戏pacman的硬件环境,并能
在其下运行真正的街机pacman的游戏rom,这就是模拟器;如果一个改编了的能
运行在你电脑下的pacman游戏,只是效果和街机相似,那它就是模仿,或叫"移植".

2.都有哪些可以模拟的东东?

任何一个内有微处理器的机种都行,只要有能在它上面运行且有趣味有价值的
软件,就可以去模拟它,比如电脑,计算器,家用游戏机,街机等等,其实你可以去
模拟任何电脑系统,但是有简有繁,比如Commodore和Amiga这些复杂的系统,其
模拟器性能将有可能很低.

3.模拟硬件合法吗?

不知道,不过散发roms肯定是违法的.

4.用什么语言写模拟器最好?

用C 或汇编.

5.怎么开始呢?

先确定所用的语言,然后搜集尽可能多的关于你要模拟的机型的硬件资料,
然后写出对其CPU内核的模拟,或在网上找别人写好的内核模拟,然后再写
对其周边硬件的模拟,注意此时最好内建一个调试器以便跟踪模拟器的运行,
也许你要用到反汇编,自己写吧,最后就是运行并调试了.

6.哪去弄硬件资料呀?

新闻组:
comp.emulators.misc
comp.emulators.game-consoles
comp.sys.emulated-system
alt.folklore.computers
rec.games.video.classic

FTP:
ftp://x2ftp.oulu.fi/
ftp://ftp.spies.com/
ftp://ftp.komkon.org/pub/EMUL8/

WWW
http://www.why.net/home/adam/cem/
http://www.komkon.org/fms/
http://valhalla.ph.tn.tudelft.nl/emul8/arcade.html
http://www.classicgaming.com/EPR/


7.怎样模拟CPU

8.怎用控制内存存取

9.如何优化C 代码