我一直在做一些读数有关人民建设一个模拟器的Wii游戏机看来,鉴于它是什么,然后加强了象,或Nintendo64,那么什么使得建立模拟用于这些系统的这么难?

在一个轻微的位的一个侧面说明的硬件,为这些系统是令人惊讶的是低:
Wii:
729MHz PPC CPU
88MB存储器
243MHz GPU
N64:
93.75MHz CPU(64位)
4M存储器

有帮助吗?

解决方案

有关游戏机的CPU架构与一般台式机相比往往是有点异国情调。 模拟的装置,使得原有的硬件没有软件的一切来执行。即,当原来的控制台可能有专用的图形,音频等的芯片,以及与不同的指令集的CPU,仿真器必须在速度执行这些并行资源的所有功能。

除非主机的GPU是旧的,几乎可以肯定必须在主机的GPU模拟,为现代图形卡,即使便宜的,吞吐量有很多次(图形工作量),即使是最昂贵的多核CPU 。配合这一困难的事实是,CPU,GPU,任何其它车载DSP和存储器之间的通信可能是高度优化的在控制台上采取硬件配置的具体的优点,因此,这些资源必须速率匹配也是如此。

私了所有这些困难,往往知之甚少控制台的硬件的细节,因为这是由设计保持非常处于保密状态。逆向工程越来越少可行的业余爱好者做。

要放东西进入的角度来看,一个建筑模拟器(其可运行一个程序,例如,PowerPC的程序中的x86计算机上,并收集各种相关统计信息的)可能1000倍之间运行,并100000X比实时慢。一个RTL仿真现代CPU(即组成一个芯片所有的门和触发器的仿真)通常只能在10Hz至几百赫兹之间运行。甚至非常优化的仿真很可能是在10个100倍的本机代码更慢,因此限制了可以什么令人信服今天被仿真(尤其是考虑到游戏控制台模拟器隐含的实时交互)。

其他提示

有一些原因为什么仿真是困难的。

  1. 模拟一个系统需要更多的电力于该目标系统

有时,主机系统需要一个数量级更多的功率(速度的)比目标系统。这是很容易理解如果你考虑的主机计算机需要做的所有工作的原始系统 再多一些 工作管理之间的所有通信组件,同时也分享系统的资源与其他应用程序。这就是为什么需要一个2GHz处理器忠实地效仿的一个掌上迷你跑在一个可怜的21MHz.

  1. 有时候,该指令设置和/或子系统的运作都是未知的人们

最硬件基本上是一个黑匣子和了解它是如何工作的,是想通过反向工程,它需要花费大量的时间和耐心。不用说,公司尽力使逆向工程的困难和企业已经得到了更好的在这个岗位Playstation1时代。

  1. 缺乏人建立的模拟器

仿真是一个漂亮的领域,需要大量的工作知识在许多领域。坦率地说,没有很多的人能够效仿的许多现代化的系统。模仿这些系统需要花费大量的时间和精力,只有大多数专用实际上将这样做。

写作模拟器很难,因为你必须完全/完全/完全复制项目说硬件的行为,包括它在软件操作系统的行为。

老年人游戏机模拟器写作在某些情况下比写模拟器现代游戏机更难。因为,很多现代游戏机使用某种形式的Linux或* nix中所以一旦硬件仿真软件是倾销机器的BIOS和处理超过控制的问题。

旧游戏机做硬件的一切,这意味着反向工程发挥更大的作用。你需要很好的低水平黑客帮你记录了旧控制台是如何工作的以及每个幻数的意思。

今天,有较少的神奇数字,而是标准GFX显卡和CPU。虽然现代的硬件有很多更多的指令和闪亮装饰物来模拟。很多东西更现代的游戏机做的是有据可查的,不像旧的控制台。

正是由于游戏程序是针对特定的硬件编写的,因此它可以利用其所有的硬件收益。即使你有一个超级计算机不能正常运行,不能在超级计算机本身的硬件进行通信的特殊程序。如果你运行控制台的PC游戏,如PS3 / 4或Xbox一个同样的情况。的作品99%的唯一的仿真器是SNES模拟器和PS1。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top