基于C64的Qweremin:结合传统电子乐器与现代键盘的创新尝试
作者在2022年制作了一个基于C64的电子琴后,又开发了Qweremin,这是一种结合了传统电子琴和qwerty键盘的创新乐器。Qweremin克服了传统电子琴难以演奏的问题,并利用外部DAC改善了音量控制的精度和响应速度。文章还讲述了作者与著名游戏音乐作曲家Rob Hubbard的偶遇,并得到了他的签名。
阅读更多
作者在2022年制作了一个基于C64的电子琴后,又开发了Qweremin,这是一种结合了传统电子琴和qwerty键盘的创新乐器。Qweremin克服了传统电子琴难以演奏的问题,并利用外部DAC改善了音量控制的精度和响应速度。文章还讲述了作者与著名游戏音乐作曲家Rob Hubbard的偶遇,并得到了他的签名。
阅读更多
本文深入浅出地解释了 Linux 中 TTY 子系统的运作机制。从 19 世纪末的股票行情机到现代的虚拟终端,文章追溯了 TTY 的历史,并详细阐述了 UART 驱动、行规程、TTY 驱动以及信号机制在其中的作用。文章还解释了进程状态、作业和会话管理,以及流控制和阻塞 I/O 的原理。通过清晰的图表和具体的例子,本文揭开了 Linux 控制台背后复杂而精妙的设计,为开发者和高级用户提供了深入的理解。
阅读更多
作者Linus Akesson通过定制适配器,将Family BASIC键盘连接到NES游戏机,并用其独特的三角波音色进行现场演奏。他详细介绍了适配器的制作过程,包括Family BASIC键盘的矩阵式按键布局、NES控制器端口的信号特性以及使用ATtiny85微控制器进行信号多路复用和串行化的技术细节。最终,他成功地用Family BASIC键盘演奏了一首名为《Platform Hopping》的乐曲,展现了令人印象深刻的复古硬件黑客技巧。
阅读更多
这篇文章讨论了 Brian Kernighan 关于调试的名言,即调试的难度是写代码的两倍。作者 Linus Åkesson 解释了 Kernighan 的观点,即编写复杂的代码可以促使程序员提高技能,因为调试过程中遇到的挑战会迫使他们学习和成长。作者将这种机制称为“Kernighan 定律”,并将其与“心流”的概念联系起来,强调在舒适区之外工作的重要性。
阅读更多