在它首次亮相近半个世纪后, 微软发布了 6502 BASIC 的源代码 采用开放许可证。这款历史悠久的解释器首次正式完整地发布在 GitHub 存储库中,因此任何人都可以不受法律限制地进行研究、编译或改编。
此次发布澄清了数十年来 非官方副本和零散片段,提供规范且有文档的版本。代码中保留的原始标头内容为“微软 BASIC M6502 8K 版本 1.1”,这是一个真正的时间胶囊,让人回想起该公司在 MS-DOS 或 Windows 之前的业务是如何建立的。
微软到底发布了什么?

这是一个 适用于 1.1 微处理器的 Microsoft BASIC 版本 6502,发布于 1978 年中期,并根据宽松的 MIT 许可证发布。该存储库共享 6.955 行 MOS 6502 汇编代码,可供下载、修改、重新分发,甚至在需要时用于商业用途。
源代码树包括 几个先锋系统的条件编译:Apple II(Applesoft)、Commodore PET、Ohio Scientific(OSI)和 MOS KIM-1 套件,以及 10 的 PDP-6502 模拟环境。作为历史参考,GitHub 本身有时间戳,将文件“48年“。
从功能上来说,解释器提供 BASIC 语言的完整实现、浮点运算、字符串处理、数组支持(整数和字符串)、输入/输出操作以及 8 位系统的高效内存策略。它还包含 链式垃圾收集器 以及变量的动态存储。
家庭计算的支柱

旅程始于 1975 年,当时比尔·盖茨和保罗·艾伦编写了该公司的第一款产品: Altair 8080 的 Intel 8800 的 BASIC 解释器一年后,盖茨和里克·韦兰德 (Ric Weiland) 将该基础应用于 MOS 6502,诞生了 6502 BASIC,现已作为开源共享。
在1977 Commodore 以 6502 美元的固定费用获得了 25.000 BASIC 的许可这项协议将解释器引入了 Commodore PET,后来又引入了推广家庭编程的生态系统,例如 VIC-20 和传奇的 Commodore 64。这是写下如下台词的十年: 10 PRINT "HELLO", 20 GOTO 10 然后按 RUN 去看看魔术。
同时,相同的代码主干作为 Apple II 上的 Applesoft BASIC取代了史蒂夫·沃兹尼亚克的 Integer BASIC。因此,在个人计算诞生的过程中,一个单一的源代码家族为多个关键平台提供了动力。
MOS 6502 微处理器为 Apple II 和 Commodore 系列等标志性设备以及带有该芯片变体的其他机器和控制台(Atari 2600 或 NES)提供动力。 他们共享架构并不意味着他们运行这个解释器 在这些娱乐系统中,但它解释了为什么社区仍然对它们的研究和保存感兴趣。
为什么将其发布为开源很重要

对于历史学家、教师和爱好者来说, 官方授权字体,现代而清晰 这真是金玉良言。多年来,资料保护者们一直在重建编译环境,并验证历史资料能否逐字节生成 ROM;如今,这项工作已得到法律保护和经过验证的资料的巩固。
复古场景正在蓬勃发展,这得益于 基于 FPGA 的项目 以及仿真,忠实地复制 8 位系统需要了解其底层软件。开放的 6502 BASIC 使得移植、测试和恢复经典硬件变得轻而易举,并且能够达到仅靠部分重建难以实现的真实程度。
1.1 版包含 Commodore 确定的垃圾收集器修复,并由 约翰·费根斯和比尔·盖茨 1978年,与PET BASIC V2一样,正式面向用户。也就是当时实际使用中最具有代表性的版本。
这一运动与该出版社之前的出版物相联系,例如 GW-基础版,它们属于同一解释器家族,最终演变为 QBASIC 和 Visual Basic。它们的共同点在于开放其遗产的关键部分,以供研究、教育和实验。
任何想深入了解的人都可以去 GitHub 上的官方存储库,其中还记录了各种系统的构建目标,并引用了社区工作(例如,使用 cc65 等现代工具链),这使得构建和运行代码变得更加容易 当前环境.
微软的举动让早期 PC 时代帮助标准化编程的解释器重新回到了人们的视野。 MIT 许可证,支持经典目标,以及 6.955 行的数据库现在,社区有了可靠的参考资料来学习、试验和保存个人计算历史的基本部分。