如何复制C64般的声音?

15

我做了一些研究,发现SID芯片只有少量硬件支持的合成特性。这些包括三个音频振荡器,具有四种可能的波形(锯齿波、三角波、脉冲、噪声),带有ADSR包络和环行调制器,以及振荡器同步和环行调制器。还了解到有一种方法可以播放单个PCM声音。

这很少,但我从我的电视机里听到了许多不同的声音。它们是如何结合起来产生所有这样多样化的声音的呢?

为了更具体地说明,我想知道如何组合这些元件以产生吉他、钢琴或鼓等声音?另一个有趣的事情是C64特有的不同响声和声音。

4个回答

20

我曾经在C64上为游戏、演示甚至服务编写音乐(我甚至创作了官方的QuantumLink主题曲)。至于你的问题,通常会将四种不同的波形与同步和环形调制(因为不同版本的SID芯片上环形调制是不可预测的)叠加使用,并且有时会干净地使用。

例如,典型的“贝斯鼓”声音将由噪声波形组成,具有非常快的攻击和延音,取决于您想要鼓槌或刷子声音,要么是非常快的衰减和适度短的释放,要么是短衰减和较慢的释放。

通常需要试错才能获得正确的声音,并且限制相当严重。由于简单的波形没有可叠加的谐波波形,因此您真正无法得到钢琴或吉他的声音,最好的情况是听起来像哔哔声,马林巴风格的声音以及像爵士鼓的声音。

最常用的扩展声音的技巧之一是使用快速的机器码播放程序,在语音上快速更改播放的音符,以给人更丰富、谐波的音调印象。我们只是称其为琶音,尽管每秒进行10到12次音符变化的时候,它听起来更像是一个嗡嗡作响的和弦。

至于采样波形,它们仅作为单比特和后来的4位采样率可用。尽管我们尽力而为,但这些声音听起来很糟糕,因为基本上64播放采样的方法是播放白噪声波形并快速改变SID芯片上的音量以产生上升和下降的波形。如果足够快地做到这一点,它会有点像原始的声音,在静电收音机上调得不好。

我建议您获取PC上的C64模拟器(CCS64是一个不错的选择)和一个64 BASIC编程指南,并尝试玩耍......从BASIC可以完全操纵SID芯片。

总之,我们如何在C64上获得所有那些钢琴和吉他的声音?我们真的没有。


2
我听过的最好的曲子(在我的C-64上)是在游戏“超级摩托”背景音乐中播放的那个 :) 我仍在寻找mp3 :) - Ryan Fernandes

4

非常酷的信息和漂亮的复古风! - mP.

3
这种音乐属于“芯片音乐”类别。我建议尝试使用一些现代的跟踪器软件,例如MilkyTracker,用来创建这种风格的音乐。还有像libmodplug这样的库可以让你在自己的软件中播放跟踪器音乐。

2

看看市面上的一些C64模拟器。我已经读到有些模拟器声音还原度达到了100%,与原版完全相同。


如果您比较原件和仿真件,您一定能够听出差别。 - Toad
64-C的后期制造版本与经典的Commodore 64声音不同,因为它们使用了不同版本的SID芯片。reSID引擎非常接近,但要获得真正的声音,唯一的方法是找到一个工作正常的SID芯片(最好是6581)和一个HardSID板连接到PC上。 - Chris Charabaruk

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接