从 homebrew 到 vintage - VCF 看展记录

2026-08-16

Vintage 原意是特定年份和产区生产出的优质葡萄酒,被引申用来指代特定历史年代的经典作品。在北美的 Vintage Computer Festival 中,可以看到展会方修复、保存、呈现的 ~~"homebrew computer club" 年代的~~经典计算机系统。下面按照年代排序记录 2026 年 8 月 1 日 VCF West 展会上所见的部分系统:

1981 - Commodore SuperPET SP9000

1980 年代出头,个人计算机革命如火如荼。整个展区展览了 1977-1986 的诸多 Commodore PC,不过单挑这一个谈谈。

这个型号是由滑铁卢大学 CSG(Computer Systems Group)和康懋达国际(Commodore,北美计算机公司,在加拿大成立,总部在宾州)合作打造的机型,主要目的是作为学生实验平台,提供 Fortran, Pascal, Basic 等编程语言的编程环境,从而摆脱对昂贵大型机的依赖。所谓 “打造”,指处理器是购入的,但剩余的主板等硬件设计和软件生态基本都是它们自行设计实现的:

具体到这个型号,它可以选择使用两个处理器之一来启动:

关于 BASIC 环境

对于并不了解 BASIC 环境的我而言,这个环境像某种现代 Shell 和编程语言 REPL 的集成:它即承担 "系统管理" 的职能,又是一个事实上被大量使用的编程语言。在摊主的演示过程中,我见识到了如下操作:

10 PRINT "Hello VCF West 2026"
20 GOTO 10

在输入完这两行程序后,输入 RUN 回车,就会执行这些在 program mode 中编写的代码。

我的初步观感是,BASIC 作为一个 Shell 也是相当基础的,即只有一个地址空间供用户使用,只用一个进程,没有进程管理。

尝试切换系统

搬动机身开关,就可以切换处理器和相应的监控程序。这种模式切换让我想到 DE1-SOC 的 MSEL 针脚,它被用来在 EPCS、HPS 和 HPS U-boot 中选择启动模式。

与这种 "硬切换" 类似还有终止程序的操作。在另一个摊位,并非 SuperPET 的拟 Commodore 机器上(名为 MEGA65,是原班成员对当年 Commodore 未发布的 Commodore 65 个人计算机的重新构建),展示人员展示了退出一个程序的方法:没有中断按键,只需要按一下键盘侧面的小按钮,断电重启或者重新 load OS。再想想如今应对死机的断电重启方法,这种原始的方法似乎并未过时。

1981.8 - IBM PC model 5150

其实没有注意到有没有展出这个机型,但它实在是其它展品太重要的背景了,所以单独为其写一节。

Commodore SuperPET 发布的当年,IBM PC 也发布,CSG 就转投 IBM PC 了,这是一个悲伤的故事。在那之后的很长时间 IBM PC 基本就成了 PC 的主流和标准(比如想想 IBM-PC compatible 这个概念),当时只有 Apple 的 Macintosh 能与之抗衡,Commodore 和 Atari 基本上就被挤到了缝隙里。请看 VCF brochure 上某个摊位的介绍词:

Experience old technology that made up compuer circuits in the 1960s and 1970s before the IC took over

1986 - Macintosh Plus

其它都忘了,似乎和如今的 Mac 使用体验相近,印象深刻的只有对 Floppy disk 的使用。摊位桌上有八台 Macintosh 模样的计算机,每台计算机边上都有一个盒子,装着若干 3.5 寸软盘,包括系统盘和游戏。

在其中一台计算机前坐下之后,首先要学习如何在 Macintosh 中弹出上一个人已经插入的软盘。这个把鼠标放到左上角的菜单,按住鼠标不松,拖动到下拉菜单中选择 Eject。算是和当下不兼容的 UI 菜单交互逻辑了。

插入软盘很简单,软盘上有一个箭头表明插入方向。放入软盘口,推一下,软盘口会把软盘吸进去。

观察软盘外部结构:

见到了两类软盘:

遇到软盘故障,请摊主帮忙弹出软盘:

顺便一提,在 VCF 的寄售区(consignment)通常有大量二手软盘和二手软盘驱动器可供交易。

1991 - NeXT Cube

NeXT Cube 是 Steve Jobs 离开 Apple 创立 NeXT 时期的创作。演示中,已经发现了很多现代 Apple 计算机人机交互逻辑的原型或开端:

外传:CHM Demo Lab

由于 VCF West 2026 在 Computer History Museum 举办,日期恰好是 8 月的第一个星期六,所以可以顺便看到 CHM 两个文物级计算机系统的现场操作演示(Demo Lab)。

1959 - PDP-1

PDP-1 (Programmed Data Processor-1) 是 DEC (Digital Equipment Corporation,读作 "deck") 公司开发的产品。让我们看看 CHM 主页对其的评价

it was the first commercial computer that focused on interaction with the user rather than the efficient use of computer cycles.

PDP-1 的实时计算传统传承自 MIT Lincoln Lab,包括人员上和技术上的传统。DEC 的创始人 Ken Olsen 和 Harlan Anderson 两人都来自 MIT Lincoln Lab,前者参与了该实验室主导的 TX-0 和 TX-2 的设计。PDP-1 的设计师(designer),Ben Gurley,也是前 Lincoln Lab 成员,他曾经参与设计 TX-0 的 CRT 显示屏和光笔(light pen),在技术上,PDP-1 是 TX-0 和 TX-2 的后继者

Ken Olsen 和 Harlan Anderson 从 Lincoln Lab 离开创立 DEC,起家的产品并非整台计算机,而是面向电气工程师的所谓 "Lab Modules"比如振荡器、加法器等等电路模块,不同模块之间可以相互连接组成更大系统。事实上,这些将这些模块组合起来是可以得到计算机系统的,于是 DEC 在一段时间的暂避风头之后大胆进入当时巨头林立的计算机市场。PDP 系列计算机的设计深受 Lincoln lab 传统的影响,而 PDP-1 也回流到了 MIT:

试玩 Spacewar!

Hingham Institute Space Warfare Study Group 鼎力开发,后续又由原作者协助修复

1961 - IBM 1401 及配套系统

先从背景(参考 CHM 主页上对 IBM 1401 的介绍)说起。在此之前,小型企业记账系统的主流机器是 tabulator,这种机器使用 plugboard(可以理解为插线板)来控制复杂运算,即通过插拔 plugboard 上的跳线来改变机器的功能。与之相对,IBM 1401 使用 punchcard 读入程序。在商业上,IBM 1401 很大程度上在小型企业记账系统市场淘汰了 tabulator,成为该市场流行的第一个 Stored-program computing 机器。

系统构成

IBM 1401 处理器是与诸多其它部件一起使用的,比如下面的部件(并非完整列表):

IBM 729 (II) Magnetic Tape Unit - 磁带的古怪之处

IBM 83 Card Sorter - 打孔卡分拣机(sorter)。了解到了它的一个样例使用方式 - 给一叠 Punchcard 按照多位数排序

IBM 1403 printer

Demo:程序、程序的运行和运行结果

程序就是如图所示的这一叠 Punchcard。

运行时,需要(大概)按照 JOB card - 这一叠程序 - 数据卡 的顺序叠放 punchcard,交给一个 IBM 1402 card reader 输入。整个机房的机器由地板下的超粗线缆相连,程序运行会让 IBM 1403 printer 打印出结果:

你甚至可以看到博物馆工作人员对程序的版本控制:BIGPRINT REV 17.1