一台1996年发布的数码相机,和一台1983年发布的个人电脑,在2026年成功“握手”。这不是穿越剧,而是一位开发者刚刚发布的软件更新。

这位开发者近日发布了Quicktake for Apple II的新版本,最核心的变化是:新增了对柯达DC50 Zoom数码相机的支持。这款相机发布于1996年,比Apple IIe晚了整整13年。

打开网易新闻 查看更多图片

老相机,新玩法

打开网易新闻 查看更多图片

DC50是柯达在消费级数码相机市场的重要产品,支持通过串口连接电脑。开发者表示,这款相机的自定义数据线制作起来相当简单,而他的串口硬件方案甚至可以完全跳过自制数据线的步骤。

新版本软件支持DC50的全部功能,包括:

  • 照片下载
  • 缩略图预览
  • 日期、文件名、闪光灯、画质设置
  • 照片删除

传输速度是亮点

DC50在串口上可以达到115200bps的传输速率。开发者直言,相比之前支持的Quicktake系列相机,这个速度让照片传输“快得惊人”。

存储方面,DC50同时具备内置存储和PCMCIA扩展槽。开发者手中的这台机器配了一张6MB的存储卡,这个容量在当时堪称奢侈——可以存下92张低画质照片或36张高画质照片。软件在插入存储卡时优先读取卡内数据,否则使用内置存储。

奇怪的像素和聪明的裁剪

DC50的传感器分辨率是756×504像素,一个相当不寻常的规格。它的图像格式为KDC,采用RADC压缩算法——和Quicktake 150相同,因此开发者直接复用了已有的解码器。

打开网易新闻 查看更多图片

但问题来了:这个分辨率要快速缩放到Apple II屏幕所需的256×192分辨率,计算量太大。开发者的解决方案很务实:在解码阶段直接将图片裁剪为640×480,绕开了缩放难题。

逆向工程的“拼图”

为了摸清DC50的通信协议,开发者动用了多个开源工具和古老软件:

  • dcraw:用于解决RADC解码中与Quicktake 150格式的细微差异
  • libgphoto2的柯达DC120实现:参考了部分串口命令和数据包格式,但两款相机协议并不完全相同
  • 古老的kdcpi Perl程序:参考了其他串口相关细节,不过这个程序似乎bug不少
  • 柯达官方Windows 3.1软件pta31.exe:作为对照参考

剩下的,就是大量的十六进制缓冲区转储和对比分析。数据线的接线方式也已公布在项目主页上。

一次升级,整个项目受益

支持一个全新类别的相机,牵一发而动全身。开发者表示,这次更新带来了大量代码层面的改动,最终让整个Quicktake for Apple II项目变得更好、更易于维护。

从1983年的Apple IIe到1996年的柯达DC50,这段跨越13年的“联姻”,靠的是一位开发者对老硬件的执着和扎实的逆向工程能力。在数码相机早已被智能手机取代的今天,这种让老设备重新焕发生机的尝试,本身就是一种对技术历史的致敬。