« 超级任天堂的架构 (index)

超级任天堂的架构

Chapter 6: 游戏


目录

  1. 卡带配置
    1. 超越传统

说白了,主程序是用普通65816汇编语言编写的,音乐驱动程序是用SPC700汇编语言编写的。 恐怕你无法在21世纪的设备上找到这些商品。

不过,任天堂、Intelligent Systems和理光分发了一些工具,使程序员过的更加轻松,这些工具包括 :

奇怪的是,Argonaut Software、Accolade、SN Systems 等多家游戏工作室也开发了自己的内部设备,提供了比官方产品更多的功能(如内存编辑器、软盘读取器、作为 ISA 子板的开发套件等)。

卡带配置

与NES相对简单的映射模式相比,在访问卡带时,其机制变得更加扑朔迷离。 尽管如此,我还是觉得很有意思,尤其是在了解如何扩展方面。

65C816使用24位地址总线,因此最多可访问16 MB的数据。 不过,由于该主机的设计方式,部分地址空间被内存映射组件占用。 此外,65C816只有16根地址线,然后与一个内部寄存器组合成24位地址。 这就好比安装了一个内部映射器,需要通过内存地址组切换来访问地址总线边界以外的额外数据。 如果你阅读过同世代的其他游戏机的文章,你会发现这种方法有些熟悉。

Image
采用不同配置设计的卡带电路板示例
从上到下依次为:LoROM(带电池供电SRAM的双ROM)、LoROM(带电池供电SRAM的单ROM)和 LoROM(单ROM)

尽管如此,在设计盒式磁带时,ROM和CPU之间的地址引脚有多种电气连接方式。 每种方式都能以不同的方式利用内存地址库切换。 有两种基本模式可以访问多达4 MB的ROM64 KB的SRAM,它们是这样工作的:

在这两种情况下,ROM空间的很大一部分被镜像到CPU地址空间的剩余区域,但有趣的是:一半空间的读取频率约为~2.68 MHz,而另一半空间的读取频率可达3.58 MHz。 这只有在ROM芯片支持更高速度且CPU的FastROM标志被启用时才会发生。

我还没有提到的一点是,捆绑SRAM的卡带还需要内置一个MAD-1(或类似的)芯片,用于执行地址解码。 这对于正确锁存ROM和SRAM芯片之间的选择引脚尤为重要。

超越传统

现在,如果程序员需要更多空间,LoROM和HiROM的衍生型号就可以派上用场了。 例如,通常被称为ExHiROMExLoROM的两种变体通过减少镜像区域来扩展ROM的寻址空间。 两者都能访问~7.9 MB的ROM

Image
星际火狐(1993)使用Super FX GSU芯片渲染3D表面(S-PPU只能看到由_不规则_图块组成的背景层)。

另外,最重要的是,LoROM和HiROM也可用于在卡带中安装增强芯片。 这些额外的处理器可以扩展游戏机的功能。 下面举几个新配置的例子:

很难忽视这项工程设计对90年代游戏的影响,许多游戏在不需要扩展模块的情况下就能超越这款游戏机的预期。 可以说,这让任天堂推出这款游戏机后续机型的计划变得复杂起来(这也解释了为什么星际火狐2等先进的游戏被取消)。


Previous: 5. 音频

Next: 7. 反盗版/锁区


Rodrigo Copetti © 2026 RSS Feed

切换至现代版

主页 · 文章 · 支持 · 关于作者 · 关于此网站