创建一个简单的旧学校控制台模拟器

时间:2009-10-31 18:47:40

标签: emulation

我现在梦想着开始一个旧学校游戏机模拟器项目(Atari,Colecovision ......),但在开始之前我需要了解一些事情:

  • 哪个是最容易创建模拟器的控制台?
  • 哪里可以找到一些很好的资源来构建它?
  • 哪种语言最适合构建模拟器?

感谢。

3 个答案:

答案 0 :(得分:6)

首先,互联网上充满了涵盖此主题的资源,我可以指出您在开发我的模拟器时最基本的一个:http://fms.komkon.org/EMUL8/HOWTO.html

如果你想要更复杂的许多硬件(你会的话),请检查一下:http://www.zophar.net/

编写模拟器是一个非常复杂的故事,你必须完美地重新创建程序运行的硬件,否则它将无法工作!我建议从一个简单的hw开始,比如GameBoy(它有一个修改过的 Z80 cpu,这是一个更简单,最有趣的实现。我建议www.z80.info关于这个话题)..你不应该尝试复杂的硬件,因为你必须关心太多的东西。

当然,最好的语言是普通的C或C ++,只是因为它更多地依赖于硬件并且它非常有效。请注意,您需要编写一个与真实机器完全相同的虚拟机。

答案 1 :(得分:5)

  

哪个是最容易创建模拟器的控制台?

我发现Chip-8是一个很好的起点。开/关图形相对简单,只有一个固定的声音和40个以下的操作码。

我发现Cowgod's Chip-8 Technical Reference是一个很好的资源。

  

在哪里可以找到一些很好的资源来构建它?

您需要选择目标系统,然后研究相关的技术信息。如果您选择一个流行的系统,例如Gameboy(mentioned by Jack),这会更容易。

  

哪种语言最适合构建模拟器?

C / C ++非常棒,因为您靠近硬件,因此可以获得最佳性能。之前有过在大会上写过的模拟器,但我不推荐它(特别是如果你刚开始的话)。

尽管如此,有一些用JavaScript编写的仿真器具有可接受的帧速率。

我会选择一种你最舒服的语言,记住任何接近金属的东西理论上都能达到更好的性能。

我写了一些可能也有帮助的博客文章:

答案 2 :(得分:0)

关于第二个问题,您可以查看MAME Wiki