SID文件格式解析

时间:2016-03-12 00:42:07

标签: parsing converter sound-synthesis c64

我想为.sid文件(C64 chiptunes的音乐)编写一个解析器,将一些模式提取到音符中。我搜索格式并找到了这个:http://cpansearch.perl.org/src/LALA/Audio-SID-3.11/SID_file_format.txt

我可以阅读该文档中的标题,但我不了解如何提取单个注释并将其输出。

我搜索了现成的转换器并找到了这些:

我发现了更多,但StackOverflow表示我不能发布超过2个链接。

请帮忙。对不起,我的英语不好。谢谢你的考虑!

2 个答案:

答案 0 :(得分:5)

除了包含各种元数据的标题之外,.sid文件的其余部分由代码(播放器例程)和数据(乐器和音符数据)组成。

音符数据的格式取决于播放器代码,并且存在无数不同的播放器,其中任何一个可能具有多个版本,其代码和数据格式各不相同。甚至有许多曲调都有专门为这一曲调开发的代码和数据格式。

这意味着您确定音符数据格式的唯一方法是研究播放器代码(在机器代码监视器或单独的反汇编工具中),以查看它的作用以及数据的组织方式,即使您已经熟悉6510机器代码和SID芯片,也可能是一项艰巨的任务。

答案 1 :(得分:2)

如果我正在阅读this,如果你只对音符感兴趣(即音调),你应该能够通过查看写入$ d400 / $ d401的频道来获取频道1等等。