Home Technology iRobot Launches Create 3, with ROS 2 Built In

iRobot Launches Create 3, with ROS 2 Built In

0


This article was first published as “Design case history: the Commodore 64.” It appeared in the March 1985 issue of IEEE Spectrum. A PDF version is available on IEEE Xplore. The diagrams and photographs of chips, circuit boards, and screens appeared in the original print version.

Charles Winterble, then director of worldwide engineering for Commodore, gave the go-ahead for the chip effort, and Charpentier’s group worked fairly independently until both chips were finished in mid-November 1981.

At a meeting with Charpentier and Winterble late that month, Jack Tramiel, then president of Commodore, decided not to proceed with the video game. Instead, he decided, the chips would go into a 64-kilobyte home computer to be introduced at the Consumer Electronics Show in Las Vegas the second week of January 1982. The computer had yet to be designed, but that was easily remedied.

In two days, the engineers laid out on paper the machine’s basic architecture. Just before the new year, they completed five working prototypes. In the meantime, enough operating-system software was copied and rewritten from the VIC-20 to give passable demonstrations of what the new machine could do. Following its enthusiastic reception at the Consumer Electronics Show, the Commodore 64 was rushed into production; volume shipments began in August 1982 and have continued unabated.

Despite complaints about quality control and the industry’s slowest disk drive, the Commodore 64 has been an unparalleled success, pushing a number of its competitors out of the market. Part of the reason for its success is the price, which keeps falling—from $595 at its introduction to $149 currently, for which the consumer gets graphics and sound equal to or better than that provided by machines that cost five times as much.

Designing the next great chips

In the late 1970s, MOS Technology was a successful semiconductor company; its engineers had designed the popular 6502 microprocessor, and it manufactured several other solidly selling products. Commodore, a West Coast company at the time, took over MOS in 1976—causing many of the MOS engineers to quit when their stock was bought at 10 cents on the dollar—but MOS was allowed to operate fairly autonomously.

In 1979 and 1980, recalls Charpentier, MOS Technology developed the 6510 microprocessor—a minor revision of the 6502 with an additional input-output port, the 6526 peripheral controller, a lot of read-only memory (ROM) chips, and a 4-kilobit random-access memory (RAM) chip. At that time, MOS was supplying equipment to Atari Inc., General Electric Co., Hewlett-Packard Co., and a number of other clients, as well as to Commodore.

When the decision was made to design the latest in superior graphics and sound chips, the first step was obvious: to find what the current high-quality chips could do. In assembling his design team, Charpentier recruited Robert Yannes, a young engineer who had joined MOS in 1979 and had designed the VIC-20 at home, from a spare prototype board. The team spent about two weeks researching comparable chips industrywide.

“We looked heavily into the Mattel Intellivision,” recalls Winterble. “We also examined the Texas Instruments 99/4A and the Atari 800. We tried to get a feel for what these companies could do in the future by extrapolating from their current technology. That made it clear what the graphics capabilities of our machine had to be.”

The MOS designers freely borrowed ideas that they liked—sprites from the TI machine, collision-detection techniques and character-mapped graphics from the Intellivision, and a bit map from their own VIC-20. They then packed as many of those ideas as they could into a predefined area of silicon.

“Al [Charpentier] was given the freedom, within a certain die size, to put in everything he could, working backward within the size we planned. When he ran out of registers he stopped,” said Winterble. “We defined in advance the silicon size that would give a yield we were willing to live with; at that time, a die size that was reasonable in 5-micrometer technology was less than 200 mils. Then we prioritized the wish list from what must be in there to what ought to be in there to what we’d like to have, so the decisions that were needed at various points became fairly automatic.”

Nine months to first-pass silicon 

For nine months, Charpentier worked with two draftsmen and one computer-aided-design operator on the graphics chip while Yannes worked with two other draftsmen and one CAD operator on the sound chip. They lacked completely the sophisticated design tools of today’s engineering workstations, but they had one readily available design tool found almost nowhere else in the home-computer industry: a chip-fabrication line on the premises. With this, Winterble explained, a circuit buried deep inside the chips could be lifted out and run as a test chip, allowing thorough debugging without concern for other parts of the circuitry. David A. Ziembicki, then a production engineer at Commodore, recalls that typical fabrication times were a few weeks and that in an emergency the captive fabrication facility could turn designs around in as little as four days.

The cost of developing the Commodore 64: No one knows.

The cost of developing the Commodore 64: No one knows. “I had no formal budget accountability,” said Winterble, “other than Jack [Tramiel] watching me. Jack said that budgets were a license to steal.” Because MOS Technology’s fabrication facility was not running at full capacity, the equipment used for C-64 test chips and multiple passes of silicon would otherwise have been idle. “We were using people who were there anyway,” said Ziembicki. “You waste a little bit of silicon, but silicon’s pretty cheap. It’s only sand.”

Although custom chips are usually considered expensive, the C-64 chips were not. Not only were development costs absorbed in company overhead, but there was no markup to pay, as there would have been inf the chips had been built by another company. And yields were high because the chips were designed for a mature semiconductor-manufacturing process.

The sound chip was designed with 7-micrometer technology, scaling down to 6 in places. (By contrast, the custom chip for Atari’s Video Computer System, fabricated four years earlier, was built with 6-micrometer technology.) Commodore’s video chip was designed with 5-micrometer features.

Because design time rather than silicon was at a premium, the chips were laid out simply rather than compactly. “We did it in a very modular fashion,” said Yannes. For example, he noted, “the standard way of building oscillators is to build one and then multiplex it until you have as many as you need. We just built an oscillator module and repeated it, because that was much faster than working out all the timing for the multiplexer.”

“What was remarkable,” Winterble added, “was that nine months later, when we came out with the first pass, it functioned except for one bad sprite.”

In November 1981, the chips were complete. The original intent had been a game machine, but at this point the personal-computer market was beginning to look promising. At a meeting of Charpentier, Winterble, and Tramiel, the decision was made to go for a personal computer. The next choice to be made, according to Charpentier, was between a 16-kilobyte and a 64-kilobyte machine, since the custom chips were designed to handle either option.

“Jack [Tramiel] made the bet that by the time we were ready to produce a product, 64K Rams would be cheap enough for us to use,” Charpentier said.

When the design of the Commodore 64 began, the overriding goals were simplicity and low cost. The initial production cost of the Commodore 64 was targeted at $130; it turned out to be $135. The computer would use the same case as the VIC-20 and the same-sized circuit board, to speed development. “That wasn’t even a decision,” said Charpentier. “It was just common sense. If you’ve got a product that’s a winner, why change it?” To switch from the VIC-20 to the Commodore 64, the production group had only to make the cartridge slot smaller, change the color of the case, and design a new label.

Furthermore, instead of designing for performance first and price second, as many engineers tend to do, the small design team at Commodore had cost in mind from the beginning. Yannes, for example, had made economy his credo when he was an impecunious high-school student looking for parts to build a sound synthesizer. “Anytime I design something, I want to use the minimum number of components possible. It’s a personal challenge. If there’s a spare [logic] gate in a gate package, I’ll work to get rid of the entire package, because in working with a certain number of chips, I ought to be able to use up everything that’s in them. The Commodore 64 was my attempt to build the absolute minimal system that could be built out of the video and sound chips put together.”

Happy New Year 1982!

In the consumer-electronics industry, new products are traditionally introduced to distributors, dealers, the press, and the competition twice a year—during the first weekend in January and the first weekend in June, at the Winter and Summer Consumer Electronics Shows (CESs).

“When you worked for Commodore,” said Yannes, “you always had to have something for the Winter CES.” The C-64 didn’t have much competition at the winter show in 1982. Atari was still sowing its 400/800 computer. Mattel introduced the Aquarius computer, and Spectravideo introduced its computer/game machine, both with limited memory and capabilities.

Ziembicki recalled, “All we saw at our booth were Atari people with their mouths dropping open, saying, ‘How can you do that for $595?’”

“We were a hit,” Winterble added.

After the show, Commodore, which had a reputation for sometimes showing products that never reappeared, had to get the 64 into production quickly. Only a few design changes were made to ready the machine for production. “What’s in the 64 functionally is what I wanted,’ Yannes said. “What’s in the sound chip is what I wanted, and what’s in the video chip is what Al [Charpentier] wanted.”

In fact, said Ziembicki, “after it finally got into production, we looked back and asked, why did we bother changing it after January? It wouldn’t have sold one unit less, and we would have saved a lot of money on development costs.”

Some of the changes were fairly significant, but they may have created as many problems as they solved. The biggest improvement was to remedy “a hiccup” in the video chip, said Winterble.

When Charpentier first designed the video chip, he explained, his goal was optimum performance in both black-and-white and color. Previous video chips, such as those used in the Atari and the Apple, had a black-and-white frequency of 7.16 MHz—twice the television color-clock frequency of 3.58 MHz—but this could not squeeze enough characters on a line, and it also induced cross talk between the two signals, causing an object to shift slightly to the left or right on the screen depending on its color. After the January 1982 CES, when he saw that 40 characters wouldn’t quite fit onto a TV screen, Charpentier sped up the black-and-white clock rate and made the two clocks completely asynchronous. But since the color and black-and-white sets of information were constantly changing phase relative to each other, “the color transitions were fantastic, but there was an overall swimming effect,” he recalled. The solution was to put a phase-locked loop into the system so the color and the black-and-white information would have a constant relationship. This, Charpentier acknowledged, was “a Band-Aid solution.”

And that is what it looks like, according to Craig Nelson, director of product development for Epyx Computer Software of Sunnyvale, Calif. “It’s a really elegant circuit,” he said, “except for the phase-locked loop, which is just stuck in the middle of it.” (Commodore now says it has redesigned the chip to eliminate the problem.)

As a result of the “Band-Aid,” the color information and the black-and-white information shift phase by 180 degrees in relation to each other on successive video fields rather than changing phase unpredictably. This conforms more closely to the National Television Systems Committee (NTSC) standard, which requires black-and-white information to have a clock rate that is an odd harmonic of the color-clock rate, so that the two automatically reverse their relationship every other field—one field in phase, the next field out of phase. (In the NTSC standard, colors are determined by the phase difference between the color signal and a color reference signal transmitted at the beginning of each line.)

At the time the standard was developed, commonly available circuitry could not completely separate the black-and-white information from the color: changes in color would lead to changes in brightness and vice versa. It was to average these changes out over time that the NTSC specified that the relative phase reversal of the two signals could occur on successive fields. The result is more pleasing color transitions, but the phase shift makes stationary figures appear to jitter. The jitter is particularly obvious on thin vertical lines, like those in alphanumeric characters. But when the Commodore 64 was conceived, it was to be primarily a game machine, not a computer.

Running a 5-micrometer-technology chip at an 8-MHz clock rate caused it to dissipate a great deal of power—nearly 1.5 watts. Not only did the chip run fast, but to prevent the colors from washing out, as they had in the VIC-20, “we went to 12 volt to drive the heck out of the color signals,” recalled Winterble. “We knew we would have a heat problem.”

At this point Winterble made another design fix—welding a small metal tab onto the inside of the lid of the shielding enclosure around the video chip. When the computer was assembled, the tab pressed against the top of the chip package, forming a heat-conducting path and turning the shielding into a heat sink.

Some changes that might have improved the machine did not get made in the rush to production. For example, Yannes said, the wires for the sound output on the printed-circuit board run alongside the wires for the video signal. As a result, the sound output picks up an annoying 15,750 -Hz whine. Rerouting the circuit would have taken time, “and we had a board that worked,” he explained. “At that point, if you had something that worked, you did not change it.” A circuit-board revision since then has rerouted these lines, Commodore said.

But the designers did in fact change some things that worked—including one revision that degraded the machine’s performance.

But the designers did in fact change some things that worked—including one revision that degraded the machine’s performance. The original design specified a high-quality radio-frequency modulator to transmit the signal to a television set, but a cheaper modulator was substituted. “It was $6.25 to $6.50 for a good one, and we ended up spending about $3,” Charpentier said.

Winterble has a different view of the $3 modulator: “The 50-cent modulator we were using on the VIC-20 wasn’t good enough,” he said, “so we went to a more expensive one.”

Electronic design wasn’t the only difficult area as the Commodore 64 went from prototype development into production—the logistics posed a complex problem. The C-64 was designed in Norristown, Pa., at MOS. The VIC-20 assembly line, which was to begin making C-64s, was in Santa Clara, Calif. As the C-64 went into production, Commodore was also opening a new assembly line in West Chester, Pa. There were additional VIC-20 assembly facilities in Japan, where the disk drive for the C-64 was to be manufactured. And the C-64 circuit boards were being made in Hong Kong.

“It was a lot of fun,” said Ziembicki. “The design people would pick an English screw. The production end would pick metric. But they went with what they had. Commodore production was very good at making things fit whether they were intended to or not. Their charter was ‘Ship ‘em’”

“It takes a very tough person,” explained Charpentier, “to say ‘I’m not shipping these because they’re not as good as they could be’—especially when people are clamoring to buy them.”

​Changes continue during production

The start of production of the Commodore 64 in the spring of 1982 did not signal an end to the controversy. “The key is to be able to solve your problems while you are running,” said Ziembicki.

One of the first battles, recalled Charpentier, was over the layout of the printed-circuit board. Commodore’s assembly plant in the United States used automated component-insertion equipment, but its Japanese facility did not, and the two assembly techniques required different component spacing. In the end, the board for the C-64 was laid out for automated insertion, and production was moved to a new plant in Hong Kong that had the automated tools.

Problems also plagued a number of the components—switches, for example. “You pick a switch that’s listed as a consumer switch,” said Ziembicki. “You design it in. You call the manufacturer and get an estimate that sounds reasonable. Then California [the production division] wants 50,000 a week, but the manufacturer says, ‘We can’t make that. It’s a consumer switch, but we’re not geared for consumer quantities.’ At that point, you’re hung up.”

Since Commodore had just moved its engineering staff from California to Pennsylvania, communication between the design engineers and the production facilities was not very good, Ziembicki explained. “It got to the point where you couldn’t stop working even if you didn’t get an answer—you’d just proceed with the components that you thought the production end could get.”

And outside suppliers were not always reliable. “One provided a power supply for engineering approval,” Ziembicki recalled. “It got approved, and then the supplier changed the design and didn’t tell anybody.”

Charpentier said that his relations with the production group were fairly agreeable. Winterble’s dealings with them were not nearly as cordial, but he found this acceptable. “I personally had to play the heavy on a lot of stuff,” he said. “Then Al would go in and do some good. That technique eased a lot of tension—it was a way to get things done.”

The most notorious problem was “sparkle,” a defect that caused small spots of light to appear on the display screen. The problem was solved before Charpentier left the company in September 1982, but reports of the defect continued well into the Christmas season, with press reports citing it as an example of Commodore’s poor quality control. Canny consumers used it as an excuse to return perfectly good Commodore 64s while they were under 90-day warranty. Since the price of the machine had dropped $200 in the two months following its introduction, this ruse enabled owners to obtain a refund of the purchase price and buy another C-64 at the lower figure.

Sparkle was widely attributed to bugs in the video chip that was the heart of the system, but in fact it was caused by a ROM chip of which 3 million were in service with no problems in other systems, including the hit arcade video game Asteroids. Commodore engineers themselves first looked for the problem in the video chip. It took them three weeks to spot the ROM chip as the source of the defect, Charpentier said. “The problem was a random event—it didn’t happen all the time. We thought the video chip was for some reason seeing the wrong data. We didn’t even suspect it could be the ROM. Finally we put the logic analyzer on it and tracked it down.” The ROM, which Charpentier and his group had designed years earlier, had a special pre-charging circuit to make it run faster, but the circuit made it sensitive to spurious signals. The video circuitry and the 6510 microprocessor alternated in controlling the system bus, and when control passed form one to the other, voltage spikes were sometimes generated.

“It just happened that we hit the exact timing,” Charpentier said. “If the spike had been a few nanoseconds shorter or longer, it wouldn’t have been a problem. The spike was just wide enough that the ROM saw it as a valid address. It would ignore the next address request and give the video chip wrong data.” Since the ROM contained the C-64 character set, the screen display would be littered with random slices of characters.

According to Nelson of Epyx, “This confetti interference-looking stuff on the screen, glowingly referred to as sparkle, has an extremely un-nice property: it causes hardware collisions—the sprites believe it really exists.” Since the sparkle was caused by inappropriate data fed to the video chip, it triggered the circuitry responsible for checking whether the movable display objects—sprites—were overlaying background objects on the screen. So software that depended on collision sensing to control the movement of objects on the screen would go berserk when confronted by sparkle.

The bug in the ROM was corrected, although Commodore had to rely on outside suppliers for a while as it ramped up its new production line. Only the first few hundred thousand units shipped had the defect. But, Nelson observed, “it doesn’t matter to programmers that it was fixed. Our software has to work in every machine out there.” The best solution for programmers, he explained, is to copy the contents of the ROM into RAM, which is reliable. But this wastes 2 kilobytes of RAM.

​“A screw-up in my timing”

In addition to the difficulty with the ROM, “I made a logic error,” Charpentier recalled. The error, which was corrected sometimes after Charpentier left Commodore, caused the early C-64s to generate the wrong number of clock cycles on each horizontal video line. “It was off by one,” he said. “Instead of 65 clock cycles per line, I had 64.”

As a result, the 180-degree phase shift between the black-and-white and color information, which would have eliminated color-transition problems, didn’t occur. Depending on their color and the color of the background, the edges of some objects on the screen would appear slightly out of line. This was corrected approximately five months into production.

But leading edges are still a problem with the C-64. The circuitry that displays either sprite information or background information at any point on the screen is sometimes slow to respond and overlays the sprite on the background information only after it has missed a few pixels.

The C-64 designers weren’t the only ones revising their machine; even some assembly-line workers got into the act.

The C-64 designers weren’t the only ones revising their machine; even some assembly-line workers got into the act. Since testing color quality automatically is virtually impossible, assembly-line workers were instructed to turn a potentiometer that controls the color and black-and-white signals until they saw color. As Charpentier recalled, the workers soon discovered that if they turned the potentiometer as far as possible, it resulted in saturated color—but it also wiped out the black-and-white signal. Several thousand computers had been shipped before the assembly-line workers’ “revision” was noticed; by then, some reviewers were lambasting the C-64 for its “garish” colors.

​Quality still lacking

Though these modifications have been made in the C-64 since its introductions, designers who write commercial software for the machine would like to see a few more. One such change would be adequate quality control. “They don’t test,” said Nelson of Epyx. “I’ve opened up brand-new Commodores and found traces cut. They obviously use a power screwdriver to assemble the C-64, sometimes miss the screw, and chop the traces. How, might you wonder, could that have passed final inspection? Well, those traces are hooked up to the disk-drive connectors, which they obviously don’t test.”

In hindsight, Charpentier called one of Commodore’s mistakes “not coming a little closer to quality.”

One complaint voiced by designers of add-on hardware for the C-64 is that its minimalist design results in undesirable interactions between parts of the hardware and software. For example, the circuitry used to control the joystick and the game-paddle port is borrowed once every 1/60 second to scan the keyboard for keys that have been pressed. If the joystick switches are closed, the keyboard-scanning software will report that a key has been pressed. Devices that attach to the joystick ports can cause unpredictable responses—a problem that would not occur if separate hardware had been used for the two functions.

Another flaw is the computer’s crude internal software. The system comes up in Basic when it is turned on. This is a leftover from the days of the first Pet computer produced by Commodore, which had no disk-operating system, since there were no disk drives to be had then. “A decent disk-operating system wasn’t developed until Pet Basic 4.0,” Charpentier said. The C-64 doesn’t use this advanced version of Basic because “it would have required more ROM than we could put in.” Instead, the machine uses a far more primitive version of Basic, borrowed from the VIC-20.

“Software wasn’t tangible—you couldn’t hold it, feel it, or touch it—so it wasn’t worth spending money for.”

The most glaring omissions from the Commodore 64’s Basic are commands to control the sound and graphics chips. “There was never any intention that the system would have built-in software to control the graphics or the sound,” said Yannes. “That was an obvious part of the Commodore philosophy; you don’t waste money on things that make the product more expensive and that the majority of buyers aren’t going to use.”

“Commodore has always paid lip service to software,” Charpentier said. “They do enough to get by and then rely on outside sources to fill the gap. Commodore was an extension of Jack Tramiel, and to him software wasn’t tangible—you couldn’t hold it, feel it, or touch it—so it wasn’t worth spending money for.”

The C-64 designers had plans of their own for changes which haven’t yet been implemented. They used the VIC-20 case to shortcut development, but they did have a new case designed that they intended to substitute in eight to ten months. “It was thinner in front and had more of a wedge shape to it,” said Charpentier. “I always thought the VIC-20 case looked clunky.” A few new features were also to be added to the machine.

The fact that these changes have not been made has not really affected the success of the C-64, asserted Brian Dougherty, president of the Berkeley Softworks of Berkeley, Calif. “This machine has the best graphics-display capability of anything that has yet been done for a TV screen,” he said. “It came sloe to being an awesome system.”

​The albatross of the C-64: its disk drive

The one major flaw of the C-64 is not the machine itself, but in its disk drive. With a reasonably fast disk drive and an adequate disk-operating system (DOS), the C-64 could compete in the business market with the Apple and perhaps with other business computers. With the present disk drive, though, it is hard-pressed to lose its image as a toy.

“Business-oriented software does not look as good as it should on the C-64,” said Dougherty, “not because the base system isn’t good enough but because the disk-drive access is too slow; any business application requires a lot of disk access.” And since the DOS is so weak and lacks features such as the automatic creating and maintaining of directories and keeping track of files, “it is a lot more difficult to develop business software” for the C-64, he added. “Somebody like Lotus [Development Corp., manufacturer of a popular integrated business-software package] is facing a lot more difficulty than they did developing software for the IBM PC, because the PC has an operating-system structure that just doesn’t exist for this product.

“The basic input-output system in ROM is done fairly cleanly, according to operating-system principles. All the routines that need to be there are there, but there should also be a facility for automatically reading the first track of the disk and booting a more sophisticated operating system into memory.”

The disk drive does in fact have a facility for automatically reading the first track of a disk, according to Nelson of Epyx, but because it is not documented, it is not widely used.

How did the Commodore engineers botch up the disk drive?

“The disk drive? What a gory story!”

“The disk drive? What a gory story!” Charpentier said. “That had to do with the one marketing input we did accept. Marketing said the C-64 had to be compatible with the VIC-20.”

The disk drive on the VIC-20, Charpentier explained, was a direct descendant of the drive on the Commodore Pet computer. “We had a parallel IEEE-488 bus for the Pet disk drive; and we used a strange format in the early days in order to pack data: on the outer tracks, the disk moves faster than on the inner tracks, so the data rate changes in order to pack more data out there. It was a nice idea, but it was clumsy, in that you’re incompatible with everyone else. That is the nut this all started with.”

The VIC-20 disk drive was designed in Japan, and the bus was changed from parallel to serial to economize. The drive is very slow because the serial-interface portion of the interface controller (the 6522) used on the VIC-20 does not work. As a result, the 6502 processor sends out one bit at a time under direct software control, rather than sending a byte to the peripheral controller and letting it take care of clocks, data, and hand shaking.

“We fixed the serial-shift register for the 6526 [the interface controller used on the C-64 to replace the 6522] but we couldn’t use it, because the disk drive had to be compatible,” Charpentier continued. “And, because the processor in the C-64is turned off for 40 microseconds every 512 microseconds, it kept missing the interrupt signals that control the disk interface. The solution: slow the drive down even further.”

Speed was the only factor that could have been changed without incurring the cost of radical changes in the disk drive; if the C-64 designers had been able to forgo VIC-20 compatibility, they could have done much better. And in the end, of course, the C-64 was not compatible with the disk drive of the IC-20 anyway.

“It all stemmed from the 6522 serial interface not working,” Charpentier concluded.

Other manufacturers are trying to solve the disk-drive problem of the C-64. Some are selling their own disk drives for use with the C-64, but they have found it difficult to break into a market that Commodore controls. Others are selling programs that can be loaded into RAM to speed up disk-transfer rates, but this option applies only to use of the C-64 for programming in Basic; prepackaged software loaded into the system knocks the programs out of RAM. Epyx has released a ROM-based program to speed disk transfer fivefold. According to Nelson, the program will work with any disk-based software. “That’s possible,” said Charpentier. “The C-64 disk drive has its own microprocessor and memory, and you can ship information to it to change the operating system and to speed up the serial-bus protocol.”

The standard software for the C-64 disk drive can read a 256-byte sector every 2.5 revolutions of the disk, or 512 byes per second. Programming tricks used by Epyx have yielded transfer rates of up to 2.5 kilobytes per second. (Among other slow disk drives, Atari’s 810 transfers 1000 bytes per second, and the Apple II disk drive runs at a maximum of 15,000 bytes per second.)

Clever design shaves pennies

The Commodore team had worked hard to ensure a low initial production cost for the C-64. Vertical integration helped keep parts costs down, and Winterble vetoed ideas for added features. The designers themselves believed in counting pennies; Charpentier said he had learned a lot” from Jack Tramiel, who was “a real stickler for cost. We agonized over every transistor.”

With a production cost of $135 and a retail price of $595 at its introduction, the Commodore 64 would have a retail markup comfortably above the industry standard of one to three (perhaps one to two when volumes climb). But Commodore has continued to find ways to reduce both the retail price, now $149, and the production cost, believed to be between $35 and $50 today.

Commodore would not confirm this cost figure. Dougherty of the Berkeley Softworks estimated the costs of C-64 parts, base don his experience at Mattel and Imagic.

  • Three ROMS at $1 each.
  • Eight dynamic Rams at $1.85 each.
  • SID (sound) chip and VIC (graphics) chip at $4 each.
  • RF modulator package, $3
  • 6510 microprocessor, $1 to $2
  • A handful of TTL, buffers, power regulators, and capacitors for a total of $5
  • Keyboard, less than $10
  • PC board, $1 to $2
  • Plastic case, $1 to $2
  • Power supply and miscellaneous connectors, $5 to $10
  • Packaging and manual, $1 to $2

In further cost-cutting moves, Commodore has replaced the TTL with less expensive custom chips and has found ways to increase yields on the sound and graphics chips.

Not all cost-cutting steps were without detrimental effect on the system. The 6567 video chip was originally packaged in ceramic, even though plastic is much cheaper. “We tried all kinds of things,“ Charpentier said, “copper-lead frames, metal inserts in the package, and an ungodly number of other things to get a plastic package, because a ceramic package is very expensive. But we couldn’t find a package that ran cool enough. Before I left Commodore, I listed some ideas to reduce the power, but half of the chip was still running at an 8-MHzclip. Without a major redesign, you could not get the power out.”

The design team was autonomous—they did their own market research, developed their own specifications, and took their baby right up through production.

The chip is now encased in plastic. Commodore engineers said that in addition to redesigning the chip, they have developed a plastic package that can dissipate heat as well as ceramic.

Since the change to plastic packaging, a number of new problems with the C-64 have been reported—problems that are machine-specific or temperature-dependent. One failing that is widely known throughout the software industry is a tendency for the chip to lock up when a program switches graphics modes—from displaying a bit map to displaying characters [see sidebar, “A Rich Collection of Graphics Modes”]. “A game we were producing started to fail on the production line,” said Nelson of Epyx. “Then we’d test [defective disks] again and they’d work. It depended on which machine we put them on and what the temperature was.” Charpentier speculated that some circuit lines had been left floating in the original design; poor processing and high operating temperatures would stress chips to the failure point.

Another problem that has begun to emerge in some C-64s is faulty horizontal scrolling of bit-mapped screens. In a recent review of the Summer Games, an Epyx sports game for the C-64, the San Jose, Calif., Mercury News criticized the “flashbulb effect” noticeable during the swimming event. That, according to Nelson, is not an “effect”—the C-64 used by the Mercury News reviewer simply doesn’t do horizontal scrolling properly.

The freedom ended

Although the machine has its flaws, the designers of the Commodore 64 believe they came up with many significant advances because of the freedom they enjoyed during the early stages of the project. The design team was autonomous—they did their own market research, developed their own specifications, and took their baby right up through production. But as soon as the production bugs were worked out and Commodore knew it had a winner, the corporate bureaucracy, which until then had been on the West Coast dealing with the VIC-20 and the Pet computer, moved in.

“At that point, many marketing groups were coming in to ‘help’ us,” Winterble recalled. “The next product definition was going to be thought up by one group, and another group was to be responsible for getting things into production, and Al’s group would do R&D on chips only.”

“If you let marketing get involved with product definition, you’ll never get it done quickly,” Yannes said. “And you squander the ability to make something unique, because marketing always wants a product compatible with something else.”

Charpentier summed up their frustration: “When you get many people involved in a project, all you end up doing is justifying yourself. I knew the Commodore 64 was technically as good and as low-cost as any product that could be made at the time, but now I had to listen to marketing people saying, ‘It won’t sell because it doesn’t have this, it can’t do that.’

“The freedom that allowed us to do the C-64 project will probably never exist again in that environment.”

​Postscript (as of March 1985)

Of the original Commodore 64 design team, only Robert Russell remains at Commodore; he is currently a design manager. The rest of the team—Albert Charpentier, Robert Yannes, and Charles Winterble, along with David Ziembicki and Bruce Crocket, who helped debug the project and bring it into production—left Commodore in the spring of 1983 and formed the company Peripheral Visions. Their plan was to design another computer. To obtain working capital, they took on a contract from Atari—to design a keyboard for the Video Computer System, which was previewed but then, as the videogame market crashed, never released. Peripheral Visions was sued by Commodore, which said the VCS keyboard was a project that belonged to Commodore. At this writing, the suit had not been resolved.

Peripheral Visions has been renamed Ensoniq and will soon release its first product, a music synthesizer. Albert Charpentier is currently vice president of engineering at Ensoniq, Bob Yannes is senior designer, and David Ziembicki is manager of production control. Charles Winterble left Peripheral Visions and is now group vice president of electronics at Coleco Industries Inc. of West Hartford, Conn. And Jack Tramiel is currently chief executive officer of Atari Corp., the company that was Commodore’s chief competitor in the home-computer market before losing nearly a billion dollars in competing against the C-64.

To probe further

Computer bookstores carry a wide selection of books on the C-64. Among those recommended are
What’s really inside the Commodore 64, by Bilton Bathurst, published by DataCap of Feneur, Belgium, and The Anatomy of the 1541 disk drive, by Lothar Englisch and Norbert Szczepanowski, published by Abacus Software of Grand Rapids, Mich. Computer magazines such as Creative Computing and Compute! review software and publish programs that run on the C-64. The Commodore 64 itself can be found at most large retailers.

How Programmers Exploited the C-64 Hardware (Slideshow)

1
/
7

A Synthesizer on a Chip

“I’d worked with synthesizers, and I wanted a chip that was a music synthesizer,” said Robert Yannes, the sound-chip designer and systems architect for the Commodore 64. He began working on the chip in the spring of 1981, assisted by two draftsmen and one CAD operator. “Nobody else had a good idea of what we were doing,” he said. “Beyond basic research, which I’d been doing since high school, the actual design took only about four or five months.”

The major differences between his chip and the typical videogame sound chips, Yannes explained, were its more precise frequency control and its independent envelope for shaping the intensity of a sound. “With most of the sound effects in games, there is either full volume or no volume at all. That really makes music impossible. There’s no way to simulate the sound of any instrument even vaguely with that kind of envelope, except maybe an organ.”

Although it is theoretically possible to use the volume controls on other sound chips to shape the envelope of a sound, very few programmers had ever tackled such a complex task. To make sound shaping easy, Yannes put the envelope controls in hardware: one register for each voice to determine how quickly a sound builds up; two to determine the level at which the note is sustained and how fast it reaches that level; and one to determine how fast the note dies away. “It took a long time for people to understand this,” he concluded.

Yannes also put a lookup table in the hardware to convert data from musical notes to the equivalent frequencies, but that required excessive silicon. “I took that out,” said Charles Winterble, who was worldwide-engineering director at Commodore during the C-64 design.

The precise capabilities of the sound chip are not clear even today, largely because of incorrect specifications having been written when the chip was first designed. “The spec sheet got distributed and copied and rewritten by various people until it made practically no sense anymore,” said Yannes. An example of the faulty documentation is the claim that the chip can logically AND several waveforms. The chip can produce either a triangular wave, a sawtooth, or a square wave, depending on which bit is set in one of its control registers. “There is no interlock to make sure that if one bit is on, the others are off,” Yannes said. “That would have taken too much silicon.” So if more than one waveform is elected, the internal notes of the output multiplexer are discharged, and what emerges is the minimum of amplitudes.

Another error in the spec sheet concerns the on-chip filters. “The filter was the last thing that was worked on,” Yannes acknowledged. “I ran out of time. The computer simulation said, ‘This will not work very well’—and it didn’t.” The filter may have been mediocre, but the equations describing how it worked were just plain wrong, Yannes recalls. “They didn’t hang together. No one gave me a chance to correct them.”

Confronted by these incorrect equations, most software designers use only the sound chip.

Some of the Japanese programmers who wrote early game software for the C-64 took a different approach, Yannes noted: “They wrote it according to the spec. It didn’t matter to them whether something worked or not. As a result, programs made sound effects you couldn’t hear.”

From Your Site Articles

Related Articles Around the Web

LEAVE A REPLY

Please enter your comment!
Please enter your name here