Thunderscan: Mac's First Scanner

The first project I worked on at Apple, starting in August 1979, involved writing low-level software for the Silentype printer. This affordable thermal printer for the Apple II leveraged technology licensed from Trendcom. True to Apple's style, we enhanced the design by replacing Trendcom's costly controller board with a simpler one, relying on the Apple II's microprocessor for most tasks.

Victor Bull, the hardware designer and project leader, was the only other engineer on this project. His intelligence, quiet demeanor, and ease of collaboration made him a great mentor, teaching me about thermal printers and the inner workings of Apple. We completed the project swiftly, with the Silentype launching in November 1979—just under four months after I joined.

Reconnecting with Victor Bull and Discovering Thunderware

In May 1984, during my leave of absence from Apple, Victor Bull reached out after a few years of silence. He had left Apple over a year prior to join Thunderware, a small company in Orinda co-founded with his friend Tom Petrie. Their flagship product was Thunderclock, an affordable calendar/clock card for the Apple II. Victor hinted at an intriguing new Macintosh product under development at Thunderware and invited me to see it firsthand.

First Impressions of Thunderscan

In early June, I visited Thunderware's office in Orinda, about an hour's drive from my Palo Alto home. After signing an NDA, I was ushered into a back room to witness a demonstration.

The ImageWriter, a $500 dot-matrix printer capable of rendering bitmapped graphics, was the most popular printer for both Apple II and Macintosh users. The demo showcased an ImageWriter connected to an Apple II, seemingly printing normally. Upon closer inspection, instead of blank paper, there was a glossy cat photograph on the platen, and the ribbon cartridge was replaced with a makeshift optical sensor device connected to the Apple II.

Their proposed product, Thunderscan, aimed to convert an ImageWriter into a high-resolution scanner by substituting the ribbon cartridge with an optical sensor and implementing clever software. With a price tag under $200, Thunderscan offered better resolution than flatbed scanners costing over ten times as much. I admired its ingenuity and elegance but recognized several challenges.

Addressing Thunderscan's Limitations

Thunderscan’s primary drawback was its speed: capturing only one scan line per print head pass made it nine times slower than regular printing, often taking over an hour to scan a full page at the highest resolution.

Additionally, the Apple II application used for rendering images suffered from poor quality. The software used a simple threshold algorithm that discarded most grayscale information, resulting in blotchy images. This made it difficult to assess the actual potential of the scanner.

Tom and Vic offered me a role in developing Macintosh software for Thunderscan. While I was excited about the product's potential, I needed to ensure its quality before committing. I realized that the Macintosh’s superior speed could enable better data sampling and horizontal resolution, and I had ideas for improved grayscale rendering algorithms.

Implementing Advanced Grayscale Rendering

Bill Atkinson, a talented photographer and colleague, introduced me to various grayscale rendering techniques, including the "Floyd-Steinberg" algorithm, which distributes error proportionally to neighboring pixels. I decided to join Thunderware, proposing a royalty-based arrangement.

After receiving documentation and sample code, I began developing the Macintosh software. Basic scanning functionality and advanced grayscale rendering using Bill's modified Floyd-Steinberg dithering were implemented within a few weeks. The results were impressive, consistently high-quality scans.

Innovative Features and Design Decisions

One key decision was to retain grayscale data for flexible image processing. Thunderscan documents used five bits per pixel, allowing users to adjust contrast and brightness, and dodge and burn specific areas—features that proved beneficial when adding grayscale printing for Postscript printers later on.

A standout feature I introduced was "inertial" scrolling, enabling users to push and scroll large images quickly with a MacPaint-style hand tool. This made navigating large images intuitive and efficient.

Bidirectional scanning was another significant challenge. Initially, Thunderscan scanned only left to right, wasting time repositioning the scanner. Implementing bidirectional scanning almost doubled the speed but required careful alignment of scan lines. Eventually, it became an optional feature, allowing users to trade some quality for speed.

Launch and Legacy of Thunderscan

I completed the software in November 1984, with Thunderscan launching in December 1984. It performed well from the start, with sales increasing from around 1,000 units/month to over 7,500 units/month at its peak in 1987. For a period, it was the most affordable and highest-quality scanning option for the Macintosh, despite its slow speed.

Over the years, I released three major software revisions, enhancing scan quality and adding features like grayscale printing and display for the Macintosh II. Eventually, flatbed scanners caught up and surpassed Thunderscan in cost, quality, and convenience. Nevertheless, Thunderscan sold approximately 100,000 units over its lifetime, providing Macintosh users with an accessible means to capture high-resolution graphics.


Created on .

Last edited on .

Comments

Join the conversation

Sign in to share your thoughts and engage with the community.

Sign In to Comment

Loading comments...