Signetics 2650 & 2636 编程/声音
声音电路在不同制造商之间略有不同。 目前,这里提供的信息仅适用于 Videomaster/Voltmace 数据库。寄存器 $1E80 中位的通用使用相当一致,但精确的效果可能会有所不同。 |
这些游戏机上的声音非常基本;只有一通道方波,可以通过模拟电路进行修改以添加白噪声、爆炸声并选择四种音量级别之一。
方波由 PVI 生成。在寄存器 $1FC7 中编程一个非零的八位整数 n 将生成 128(n+1)μs 的方波。在该寄存器中编程零将抑制方波的生成。当音频输出时寄存器发生变化时,变化将不会在音频信号的下一个负或正转换之前生效。
PVI 音频频率表 列出了可获得的频率。频率与 A440 音高标准不匹配,尽管大多数音符在 ±2% 以内,并且可能不会明显不同。高于 D5,许多音符根本无法获得,在第七个八度音阶中,唯一的音符是 B 和 E。
方波被馈送到一些音频效果电路,这些电路通过地址为 $1E80 的 74LS378 效果 寄存器从微处理器控制。这些电路可以
- 设置四种音量级别之一
- 发出爆炸声
- 打开白噪声
- 打开/关闭 PVI 音调
7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
---|---|---|---|---|---|---|---|
衰减 | 反转 | 爆炸 | 噪音 | PVI 音调 | - | - |
当衰减 位设置为 00 时,音量最高。
位 7 | 位 6 | 相对音量,峰峰值* |
---|---|---|
0 | 0 | 1 |
0 | 1 | 0.65 |
1 | 0 | 0.40 |
1 | 1 | 0.25 |
* 这些峰峰值电压测量是在 Voltmace 数据库上运算放大器 IC9 的引脚 14 上进行的。
此处的示波器轨迹是在 C25 和 R59 的连接处获取的。在第一步中,PVI 音调(位 2)关闭。在后续步骤中,它打开,并且在每个步骤中衰减增加。衰减会改变信号的直流电平,以及改变信号的峰峰值电压。
反转 位会影响颜色输出,请参阅 编程颜色。
当爆炸 位设置为 1 时,一个 RC 电路被充电并与白噪声信号混合。当 RC 电路放电时,白噪声的音量在约 1.6 秒内下降。RC 电路大约需要 5 毫秒才能完全充电,并且只有在位 4 变低时才会开始放电。如果位 4 保持高电平的时间短于 5 毫秒,则可以降低爆炸的音量和持续时间。
-
生成爆炸声的 RC 电路(黄色)的充电和衰减。位 4(蓝色)保持高电平 20 毫秒。
-
完全充电(蓝色) 20 毫秒后爆炸电路的输出(黄色)。
-
爆炸电路的输出,位 4 分别保持高电平 220 微秒、2.8 毫秒和 6.6 毫秒。
接下来的两位不太按我们想要的方式工作
效果 寄存器的位 3 将白噪声叠加在来自 PVI 的音调的正半周期上。
位 2 在高电平时启用PVI 音调。当设置为低电平时,PVI 音调 被关闭。
数据库电路的一个怪癖是,当白噪声 打开而PVI 音调 关闭时,音调只是降低到大约一半的音量,而不是完全关闭。