说白了,主程序是用普通65816汇编语言编写的,音乐驱动程序是用SPC700汇编语言编写的。 恐怕你无法在21世纪的设备上找到这些商品。
不过,任天堂、Intelligent Systems和理光分发了一些工具,使程序员过的更加轻松,这些工具包括 :
- 不同类型的开发单元,可由主机(通常运行 MS-DOS)上的调试器控制。
- 可烧录卡带(又称_烧录卡(Flashcarts))。 不是用于_盗版,而是让开发人员能够在零售设备上试用他们的代码。
- 65816和SPC700编译器。
- 开发手册,从底层角度解释游戏机的工作原理。 这些手册还可能包括开发人员必须遵守的准则和规范,以便他们的游戏获得任天堂的批准(发行所需)。
奇怪的是,Argonaut Software、Accolade、SN Systems 等多家游戏工作室也开发了自己的内部设备,提供了比官方产品更多的功能(如内存编辑器、软盘读取器、作为 ISA 子板的开发套件等)。
卡带配置
与NES相对简单的映射模式相比,在访问卡带时,其机制变得更加扑朔迷离。 尽管如此,我还是觉得很有意思,尤其是在了解如何扩展方面。
65C816使用24位地址总线,因此最多可访问16 MB的数据。 不过,由于该主机的设计方式,部分地址空间被内存映射组件占用。 此外,65C816只有16根地址线,然后与一个内部寄存器组合成24位地址。 这就好比安装了一个内部映射器,需要通过内存地址组切换来访问地址总线边界以外的额外数据。 如果你阅读过同世代的其他游戏机的文章,你会发现这种方法有些熟悉。

采用不同配置设计的卡带电路板示例
从上到下依次为:LoROM(带电池供电SRAM的双ROM)、LoROM(带电池供电SRAM的单ROM)和 LoROM(单ROM)
尽管如此,在设计盒式磁带时,ROM和CPU之间的地址引脚有多种电气连接方式。 每种方式都能以不同的方式利用内存地址库切换。 有两种基本模式可以访问多达4 MB的ROM和64 KB的SRAM,它们是这样工作的:
- 在LoROM型下,ROM数据以32KB为一块,有128个地址库可供选择[25]。 另一方面,SRAM有两个地址库,但可通过15个地址库访问,ROM数据也可在这些地址库中找到。
- 这意味着游戏/程序在执行过程中可能需要进行大量的地址库切换。 另一方面,有一半的地址库也映射到WRAM的一部分(这意味着无需切换地址库即可访问ROM、SRAM和WRAM)。
- HiROM型下,ROM空间现在占据了全部的地址库,这意味着数据可以64 KB为一块,有64个地址库可供选择。 这就减少了库切换次数,但代价是无法读取同一地址库中的ROM、WRAM和SRAM。
在这两种情况下,ROM空间的很大一部分被镜像到CPU地址空间的剩余区域,但有趣的是:一半空间的读取频率约为~2.68 MHz,而另一半空间的读取频率可达3.58 MHz。 这只有在ROM芯片支持更高速度且CPU的FastROM标志被启用时才会发生。
我还没有提到的一点是,捆绑SRAM的卡带还需要内置一个MAD-1(或类似的)芯片,用于执行地址解码。 这对于正确锁存ROM和SRAM芯片之间的选择引脚尤为重要。
超越传统
现在,如果程序员需要更多空间,LoROM和HiROM的衍生型号就可以派上用场了。 例如,通常被称为ExHiROM和ExLoROM的两种变体通过减少镜像区域来扩展ROM的寻址空间。 两者都能访问~7.9 MB的ROM。

星际火狐(1993)使用Super FX GSU芯片渲染3D表面(S-PPU只能看到由_不规则_图块组成的背景层)。
另外,最重要的是,LoROM和HiROM也可用于在卡带中安装增强芯片。 这些额外的处理器可以扩展游戏机的功能。 下面举几个新配置的例子:
- MMC型可通过本地增强芯片实现内存库切换。 这被S-DD1或SPC7110等组件所采用,它们都是硬件图块解压缩器。
- 超级加速器系统(Super Accelerator System)型是为备受赞誉的SA-1设计的,SA-1是基于65C816的副CPU,工作频率为10.74 MHz,并集成了额外的功能。 它以 MMC 型号为基础,为额外的内存映射组件配备了额外的电路。
- 两个额外的配置(一个基于LoROM,另一个基于HiROM)为DSP系列芯片让路。 这些芯片是NEC µPD77C25 CPU的衍生产品,但运行不同的程序。 它们提供矢量和矩阵计算,不同的游戏用它来计算仿射变换、图形解压缩和最短路径计算。
- SFX型采用流行的Super FX GSU芯片。 这种配置映射了多达8 MB的ROM,其中2 MB由主CPU和Super FX共享。 其余地址空间还包括额外的备份RAM和SRAM。 Super FX是Argonaut制造的专有处理器,专门用于3D 曲面渲染和2D仿真变换,然后将结果以图块的形式流式传输,供S-PPU显示。 一些著名的游戏使用它来绘制3D模型和/或扩展模式7来绘制精灵(因为模式7只能变换背景)。
很难忽视这项工程设计对90年代游戏的影响,许多游戏在不需要扩展模块的情况下就能超越这款游戏机的预期。 可以说,这让任天堂推出这款游戏机后续机型的计划变得复杂起来(这也解释了为什么星际火狐2等先进的游戏被取消)。