Manufacturer | Commodore Business Machines (CBM) |
---|---|
Type | Home computer |
Release date | August 1982[1] |
Introductory price | US$595 (equivalent to $1,580 in 2019) |
Discontinued | April 1994 |
Units sold | 12.5[2] – 17[3] million |
Operating system | |
CPU | MOS Technology 6510/8500 |
Memory | 64 KB RAM + 20 KB ROM |
Graphics | VIC-II (320×200, 16 colors, sprites, raster interrupt) |
Sound | SID 6581/8580 (3× osc, 4× wave, filter, ADSR, ring) |
Connectivity |
|
Predecessor |
|
Successor |
|
The Commodore 64, also known as the C64, is an 8-bit home computer introduced in January 1982 by Commodore International (first shown at the Consumer Electronics Show, January 7–10, 1982, in Las Vegas).[4] It has been listed in the Guinness World Records as the highest-selling single computer model of all time,[5] with independent estimates placing the number sold between 12.5 and 17 million units.[2] Volume production started in early 1982, marketing in August for US$595 (equivalent to $1,580 in 2019).[6] Preceded by the VIC-20 and Commodore PET, the C64 took its name from its 64 kilobytes (65,536 bytes) of RAM. With support for multicolor sprites and a custom chip for waveform generation, the C64 could create superior visuals and audio compared to systems without such custom hardware.
The C64 dominated the low-end computer market (except in the UK and Japan, lasting only about six months in Japan[7]) for most of the later years of the 1980s.[8] For a substantial period (1983–1986), the C64 had between 30% and 40% share of the US market and two million units sold per year,[9] outselling IBM PC compatibles, Apple computers, and the Atari 8-bit family of computers. Sam Tramiel, a later Atari president and the son of Commodore's founder, said in a 1989 interview, "When I was at Commodore we were building 400,000 C64s a month for a couple of years."[10] In the UK market, the C64 faced competition from the BBC Micro, the ZX Spectrum, and later the Amstrad CPC 464.[11] but the C64 was still the second-most-popular computer in the UK after the ZX Spectrum.[12] The Commodore 64 failed to make any impact in Japan, as their market was dominated by Japanese computers, such as the NEC PC-8801, Sharp X1, Fujitsu FM-7, and MSX.[13]
Part of the Commodore 64's success was its sale in regular retail stores instead of only electronics or computer hobbyist specialty stores. Commodore produced many of its parts in-house to control costs, including custom integrated circuit chips from MOS Technology. In the United States, it has been compared to the Ford Model T automobile for its role in bringing a new technology to middle-class households via creative and affordable mass-production.[14] Approximately 10,000 commercial software titles have been made for the Commodore 64, including development tools, office productivity applications, and video games.[15] C64 emulators allow anyone with a modern computer, or a compatible video game console, to run these programs today. The C64 is also credited with popularizing the computer demoscene and is still used today by some computer hobbyists.[16] In 2011, 17 years after it was taken off the market, research showed that brand recognition for the model was still at 87%.[5]
In January 1981, MOS Technology, Inc., Commodore's integrated circuit design subsidiary, initiated a project to design the graphic and audio chips for a next-generation video game console. Design work for the chips, named MOS Technology VIC-II (Video Integrated Circuit for graphics) and MOS Technology SID (Sound Interface Device for audio), was completed in November 1981.[6] Commodore then began a game console project that would use the new chips—called the Ultimax or the MAX Machine, engineered by Yash Terakura from Commodore Japan. This project was eventually cancelled after just a few machines were manufactured for the Japanese market.[17] At the same time, Robert "Bob" Russell (system programmer and architect on the VIC-20) and Robert "Bob" Yannes (engineer of the SID) were critical of the current product line-up at Commodore, which was a continuation of the Commodore PET line aimed at business users. With the support of Al Charpentier (engineer of the VIC-II) and Charles Winterble (manager of MOS Technology), they proposed to Commodore CEO Jack Tramiel a low-cost sequel to the VIC-20. Tramiel dictated that the machine should have 64 KB of random-access memory (RAM). Although 64-Kbit dynamic random-access memory (DRAM) chips cost over US$100 (equivalent to $237.72 in 2019) at the time, he knew that 64K DRAM prices were falling and would drop to an acceptable level before full production was reached. The team was able to quickly design the computer because, unlike most other home-computer companies, Commodore had its own semiconductor fab to produce test chips; because the fab was not running at full capacity, development costs were part of existing corporate overhead. The chips were complete by November, by which time Charpentier, Winterble, and Tramiel had decided to proceed with the new computer; the latter set a final deadline for the first weekend of January, to coincide with the 1982 Consumer Electronics Show (CES).[6]
The product was code named the VIC-40 as the successor to the popular VIC-20. The team that constructed it consisted of Yash Terakura,[18] Shiraz Shivji,[19] Bob Russell, Bob Yannes, and David A. Ziembicki. The design, prototypes, and some sample software were finished in time for the show, after the team had worked tirelessly over both Thanksgiving and Christmas weekends. The machine used the same case, same-sized motherboard, and same Commodore BASIC 2.0 in ROM as the VIC-20. BASIC also served as the user interface shell and was available immediately on startup at the READY
prompt. When the product was to be presented, the VIC-40 product was renamed C64. The C64 made an impressive debut at the January 1982 Consumer Electronics Show, as recalled by Production Engineer David A. Ziembicki: "All we saw at our booth were Atari people with their mouths dropping open, saying, 'How can you do that for $595?'"[6][20] The answer was vertical integration; due to Commodore's ownership of MOS Technology's semiconductor fabrication facilities, each C64 had an estimated production cost of US$135 (equivalent to $350 in 2022).[6]
In July 1983, BYTE magazine stated that "the 64 retails for $595. At that price it promises to be one of the hottest contenders in the under-$1,000 personal computer market." It described the SID as "a true music synthesizer ... the quality of the sound has to be heard to be believed", while criticizing the use of Commodore BASIC 2.0, the floppy disk performance which is "even slower than the Atari 810 drive", and Commodore's quality control. BYTE gave more details, saying the C64 had "inadequate Commodore BASIC 2.0. An 8K-byte interpreted BASIC" which they assumed was because "Obviously, Commodore feels that most home users will be running prepackaged software - there is no provision for using graphics (or sound as mentioned above) from within a BASIC program except by means of POKE commands." This was one of very few warnings about C64 BASIC published in any computer magazines. [21] Creative Computing said in December 1984 that the C64 was "the overwhelming winner" in the category of home computers under $500. Despite criticizing its "slow disk drive, only two cursor directional keys, zero manufacturer support, non-standard interfaces, etc.", the magazine said that at the C64's price of less than $200 "you can't get another system with the same features: 64K, color, sprite graphics, and barrels of available software". The Tandy Color Computer was the runner up. The Apple II was the winner in the category of home computer over $500, which was the category the Commodore 64 was in when it was first released at the price of $595.[22]
Commodore had a reputation for announcing products that never appeared, so sought to quickly ship the C64. Production began in the spring of 1982, and volume shipments began in August.[6] The C64 faced a wide range of competing home computers,[23] but with a lower price and more flexible hardware, it quickly outsold many of its competitors.
In the United States, the greatest competitors were the Atari 8-bit 400, the Atari 800, and the Apple II. The Atari 400 and 800 had been designed to accommodate previously stringent FCC emissions requirements and so were expensive to manufacture. Though similar in specifications, the C64 and Apple II represented differing design philosophies; as an open architecture system, upgrade capability for the Apple II was granted by internal expansion slots, whereas the C64's comparatively closed architecture had only a single external ROM cartridge port for bus expansion. However, the Apple II used its expansion slots for interfacing with common peripherals like disk drives, printers, and modems; the C64 had a variety of ports integrated into its motherboard, which were used for these purposes, usually leaving the cartridge port free. Commodore's was not a completely closed system, however, the company had published detailed specifications for most of their models since the Commodore PET and VIC-20 days, and the C64 was no exception. C64 sales were nonetheless relatively slow due to a lack of software, reliability issues with early production models, particularly high failure rates of the PLA chip, which used a new production process, and a shortage of 1541 disk drives, which also suffered rather severe reliability issues. During 1983, however, a trickle of software turned into a flood and sales began rapidly climbing.
Commodore sold the C64 not only through its network of authorized dealers but also through department stores, discount stores, toy stores and college bookstores. The C64 had a built-in RF modulator and thus could be plugged into any television set. This allowed it (like its predecessor, the VIC-20) to compete directly against video game consoles such as the Atari 2600. Like the Apple IIe, the C64 could also output a composite video signal, avoiding the RF modulator altogether. This allowed the C64 to be plugged into a specialized monitor for a sharper picture. Unlike the IIe, the C64's NTSC output capability also included separate luminance/chroma signal output equivalent to (and electrically compatible with) S-Video, for connection to the Commodore 1702 monitor, providing even better video quality than a composite signal.
Aggressive pricing of the C64 is considered to have been a major catalyst in the video game crash of 1983. In January 1983, Commodore offered a $100 rebate in the United States on the purchase of a C64 to anyone that traded in another video game console or computer.[24] To take advantage of this rebate, some mail-order dealers and retailers offered a Timex Sinclair 1000 (TS1000) for as little as $10 with the purchase of a C64. This deal meant that the consumer could send the TS1000 to Commodore, collect the rebate, and pocket the difference; Timex Corporation departed the computer market within a year. Commodore's tactics soon led to a price war with the major home computer manufacturers. The success of the VIC-20 and C64 contributed significantly to the exit from the field of Texas Instruments and other smaller competitors.
The price war with Texas Instruments was seen as a personal battle for Commodore president Jack Tramiel.[25] Commodore dropped the C64's list price by $200 within two months of its release.[6] In June 1983 the company lowered the price to $300 (equivalent to $800 in 2019), and some stores sold the computer for $199. At one point, the company was selling as many C64s as all computers sold by the rest of the industry combined. Meanwhile, TI lost money by selling the TI-99/4A for $99.[26] TI's subsequent demise in the home computer industry in October 1983 was seen as revenge for TI's tactics in the electronic calculator market in the mid-1970s, when Commodore was almost bankrupted by TI.[27]
All four machines had similar memory configurations which were standard in 1982–83: 48 KB for the Apple II+[28] (upgraded within months of C64's release to 64 KB with the Apple IIe) and 48 KB for the Atari 800.[29] At upwards of $1,200,[30] the Apple II was about twice as expensive, while the Atari 800 cost $899. One key to the C64's success was Commodore's aggressive marketing tactics, and they were quick to exploit the relative price/performance divisions between its competitors with a series of television commercials after the C64's launch in late 1982.[31] The company also published detailed documentation to help developers,[32] while Atari initially kept technical information secret.[33]
Although many early C64 games were inferior Atari 8-bit ports, by late 1983, the growing installed base caused developers to create new software with better graphics and sound.[34] Rumors spread in late 1983 that Commodore would discontinue the C64,[35] but it was the only non-discontinued, widely available home computer in the US by then, with more than 500,000 sold during the Christmas season;[36] because of production problems in Atari's supply chain, by the start of 1984 "the Commodore 64 largely has [the low-end] market to itself right now", The Washington Post reported.[37]
Some of the graphics modes on the 64 are really strange, and they have no analogs to the Atari or Apple, like the ability to change color of the character basis across the screen. That gave us a lot of color capability that had not been exploited.—Craig Nelson of Epyx, 1986[34]
With sales booming and the early reliability issues with the hardware addressed, software for the C64 began to grow in size and ambition during 1984. This growth shifted to the primary focus of most US game developers. The two holdouts were Sierra, who largely skipped over the C64 in favor of Apple and PC-compatible machines, and Broderbund, who were heavily invested in educational software and developed primarily around the Apple II. In the North American market, the disk format had become nearly universal while cassette and cartridge-based software all but disappeared. So most US-developed games by this point grew large enough to require multi-loading.
At a mid-1984 conference of game developers and experts at Origins Game Fair, Dan Bunten, Sid Meier, and a representative of Avalon Hill said that they were developing games for the C64 first as the most promising market.[38] By 1985, games were an estimated 60 to 70% of Commodore 64 software.[39] Computer Gaming World stated in January 1985 that companies such as Epyx that survived the video game crash did so because they "jumped on the Commodore bandwagon early".[40] Over 35% of SSI's 1986 sales were for the C64, ten points higher than for the Apple II. The C64 was even more important for other companies,[41] which often found that more than half the sales for a title ported to six platforms came from the C64 version.[42] That year, Computer Gaming World published a survey of ten game publishers that found that they planned to release forty-three Commodore 64 games that year, compared to nineteen for Atari and forty-eight for Apple II,[43] and Alan Miller stated that Accolade developed first for the C64 because "it will sell the most on that system".[44]
In Europe, the primary competitors to the C64 were British-built computers: the Sinclair ZX Spectrum, the BBC Micro, and the Amstrad CPC 464. In the UK, the 48K Spectrum had not only been released a few months ahead of the C64's early 1983 debut, but it was also selling for £175, less than half the C64's £399 price. The Spectrum quickly became the market leader and Commodore had an uphill struggle against it in the marketplace. The C64 did however go on to rival the Spectrum in popularity in the latter half of the 1980s. Adjusted to the population size, the popularity of Commodore 64 was the highest in Finland at roughly 3 units per 100 inhabitants,[45] where it was subsequently marketed as "the Computer of the Republic".[46]
By early 1985 the C64's price was $149; with an estimated production cost of $35–50, its profitability was still within the industry-standard markup of two to three times.[6] Commodore sold about one million C64s in 1985 and a total of 3.5 million by mid-1986. Although the company reportedly attempted to discontinue the C64 more than once in favor of more expensive computers such as the Commodore 128, demand remained strong.[47][48] In 1986, Commodore introduced the 64C,[49] a redesigned 64, which Compute! saw as evidence that—contrary to C64 owners' fears that the company would abandon them in favor of the Amiga and 128—"the 64 refuses to die".[50] Its introduction also meant that Commodore raised the price of the C64 for the first time, which the magazine cited as the end of the home-computer price war.[51] Software sales also remained strong; MicroProse, for example, in 1987 cited the Commodore and IBM PC markets as its top priorities.[52]
By 1988, PC compatibles were the largest and fastest-growing home and entertainment software markets, displacing former leader Commodore.[53] Commodore 64 software sales were almost unchanged in the third quarter of 1988 year over year while the overall market grew 42%,[54] but the company was still selling 1 to 1.5 million units worldwide each year of what Computer Chronicles that year called "the Model T of personal computers".[55] Epyx CEO Dave Morse cautioned that "there are no new 64 buyers, or very few. It's a consistent group that's not growing... it's going to shrink as part of our business."[56] One computer gaming executive stated that the Nintendo Entertainment System's enormous popularity – seven million sold in 1988, almost as many as the number of C64s sold in its first five years – had stopped the C64's growth. Trip Hawkins reinforced that sentiment, stating that Nintendo was "the last hurrah of the 8-bit world".[57]
SSI exited the Commodore 64 market in 1991, after most competitors.[58] Ultima VI, released in 1991, was the last major C64 game release from a North American developer, and The Simpsons, published by Ultra Games, was the last arcade conversion. The latter was a somewhat uncommon example of a US-developed arcade port as after the early years of the C64, most arcade conversions were produced by UK developers and converted to NTSC and disk format for the US market, American developers instead focusing on more computer-centered game genres such as RPGs and simulations. In the European market, disk software was rarer and cassettes were the most common distribution method; this led to a higher prevalence of arcade titles and smaller, lower-budget games that could fit entirely in the computer's memory without requiring multiloads. European programmers also tended to exploit advanced features of the C64's hardware more than their US counterparts.[citation needed]
In the United States, demand for 8-bit computers all but ceased as the 1990s began and PC compatibles completely dominated the computer market. However, the C64 continued to be popular in the UK and other European countries. The machine's eventual demise was not due to lack of demand or the cost of the C64 itself (still profitable at a retail price point between £44 and £50), but rather because of the cost of producing the disk drive. In March 1994, at CeBIT in Hanover, Germany , Commodore announced that the C64 would be finally discontinued in 1995, noting that the Commodore 1541 cost more than the C64 itself.[59]
However, only one month later in April 1994, the company filed for bankruptcy. When Commodore went bankrupt, all production on their inventory, including the C64, was discontinued, thus ending the C64's 11 and a half year production. Claims of sales of 17, 22 and 30 million of C64 units sold worldwide have been made. Company sales records, however, indicate that the total number was about 12.5 million.[60] Based on that figure, the Commodore 64 was still the third most popular computing platform into the 21st century until 2017 when the Raspberry Pi family replaced it.[61] While 360,000 C64s were sold in 1982, about 1.3 million were sold in 1983, followed by a large spike in 1984 when 2.6 million were sold. After that, sales held steady at between 1.3 and 1.6 million a year for the remainder of the decade and then dropped off after 1989. North American sales peaked between 1983 and 1985 and gradually tapered off afterward, while European sales remained quite strong into the early 1990s.[2]
In 1982, Commodore released the MAX Machine in Japan . It was called the Ultimax in the United States and VC-10 in Germany. The MAX was intended to be a game console with limited computing capability and was based on a cut-down version of the hardware family later used in the C64. The MAX was discontinued months after its introduction because of poor sales in Japan.[62]
1983 saw Commodore attempt to compete with the Apple II's hold on the US education market with the Educator 64,[63] essentially a C64 and "greenscale" monochrome monitor in a PET case. Schools preferred the all-in-one metal construction of the PET over the standard C64's separate components, which could be easily damaged, vandalized, or stolen.[64] Schools did not prefer the Educator 64 to the wide range of software and hardware options the Apple IIe was able to offer, and it was produced in limited quantities.[65]
Also in 1983, Commodore released the SX-64, a portable version of the C64. The SX-64 has the distinction of being the first commercial full-color portable computer.[66] While earlier computers using this form factor only incorporate monochrome ("green screen") displays, the base SX-64 unit features a 5 in (130 mm) color cathode-ray tube (CRT) and one integrated 1541 floppy disk drive. Even though Commodore claimed in advertisements that it would have dual 1541 drives, when the SX-64 was released there was only one and the other became a floppy disk storage slot. Also, unlike most other C64s, the SX-64 does not have a datasette connector so an external cassette was not an option.[67]
Two designers at Commodore, Fred Bowen and Bil Herd, were determined to rectify the problems of the Plus/4. They intended that the eventual successors to the C64—the Commodore 128 and 128D computers (1985)—were to build upon the C64, avoiding the Plus/4's flaws.[68][69] The successors had many improvements such as a BASIC with graphics and sound commands (like almost all home computers not made by Commodore[70][71][72]), 80-column display ability, and full CP/M compatibility. The decision to make the Commodore 128 plug compatible with the C64 was made quietly by Bowen and Herd, software and hardware designers respectively, without the knowledge or approval by the management in the post Jack Tramiel era. The designers were careful not to reveal their decision until the project was too far along to be challenged or changed and still make the impending Consumer Electronics Show (CES) in Las Vegas.[68] Upon learning that the C128 was designed to be compatible with the C64, Commodore's marketing department independently announced that the C128 would be 100% compatible with the C64, thereby raising the bar for C64 support. In a case of malicious compliance, the 128 design was altered to include a separate "64 mode" using a complete C64 environment to try to ensure total compatibility.[citation needed]
The C64's designers intended the computer to have a new, wedge-shaped case within a year of release, but the change did not occur.[6] In 1986, Commodore released the 64C computer, which is functionally identical to the original. The exterior design was remodeled in the sleeker style of the Commodore 128.[48] The 64C uses new versions of the SID, VIC-II, and I/O chips being deployed. Models with the C64E board had the graphic symbols printed on the top of the keys, instead of the normal location on the front. The sound chip (SID) was changed to use the MOS 8580 chip, with the core voltage reduced from 12V to 9V. The most significant changes include different behavior in the filters and in the volume control, which result in some music/sound effects sounding differently than intended, and in digitally-sampled audio being almost inaudible, respectively (though both of these can mostly be corrected-for in software). The 64 KB RAM memory went from eight chips to two chips. BASIC and the KERNAL went from two separate chips into one 16 KB ROM chip. The PLA chip and some TTL chips were integrated into a DIL 64-pin chip. The "252535-01" PLA integrated the color RAM as well into the same chip. The smaller physical space made it impossible to put in some internal expansions like a floppy-speeder.[73] In the United States, the 64C was often bundled with the third-party GEOS graphical user interface (GUI)-based operating system, as well as the software needed to access Quantum Link. The 1541 drive received a matching face-lift, resulting in the 1541C. Later, a smaller, sleeker 1541-II model was introduced, along with the 800 KB[74] 3.5-inch microfloppy 1581.
In 1990, the C64 was repackaged in the form of a game console, called the C64 Games System (C64GS), with most external connectivity removed.[75] A simple modification to the 64C's motherboard was made to allow cartridges to be inserted from above. A modified ROM replaced the BASIC interpreter with a boot screen to inform the user to insert a cartridge. Designed to compete with the Nintendo Entertainment System and Sega's Master System, it suffered from very low sales compared to its rivals. It was another commercial failure for Commodore, and it was never released outside Europe. The Commodore game system lacked a keyboard, so any software that required a keyboard could not be used.
In 1990, an advanced successor to the C64, the Commodore 65 (also known as the "C64DX"), was prototyped, but the project was canceled by Commodore's chairman Irving Gould in 1991. The C65's specifications were impressive for an 8-bit computer, bringing specs comparable to the 16-bit Apple IIGS. For example, it could display 256 colors on the screen, while OCS based Amigas could only display 64 in HalfBrite mode (32 colors and half-bright transformations). Although no specific reason was given for the C65's cancellation, it would have competed in the marketplace with Commodore's lower-end Amigas and the Commodore CDTV.
In 1982, the C64's graphics and sound capabilities were rivaled only by the Atari 8-bit family and appeared exceptional when compared with the widely publicized Atari VCS and Apple II. The C64 is often credited with starting the computer subculture known as the demoscene (see Commodore 64 demos). It is still being actively used in the demoscene,[76] especially for music (its SID sound chip even being used in special sound cards for PCs, and the Elektron SidStation synthesizer). Even though other computers quickly caught up with it, the C64 remained a strong competitor to the later video game consoles Nintendo Entertainment System (NES) and Master System, thanks in part to its by-then established software base, especially outside North America, where it comprehensively outsold the NES.[citation needed]
Because of lower incomes and the domination of the ZX Spectrum in the UK, almost all British C64 software used cassette tapes. Few cassette C64 programs were released in the US after 1983 and, in North America, the diskette was the principal method of software distribution. The cartridge slot on the C64 was also mainly a feature used in the computer's first two years on the US market and became rapidly obsolete once the price and reliability of 1541 drives improved. A handful of PAL region games used bank switched cartridges to get around the 16 KB memory limit.
As is common for home computers of the early 1980s, the C64 comes with a BASIC interpreter, in ROM. KERNAL, I/O, and tape/disk drive operations are accessed via custom BASIC language commands. The disk drive has its own interfacing microprocessor and ROM (firmware) I/O routines, much like the earlier CBM/PET systems and the Atari 400 and Atari 800. This means that no memory space is dedicated to running a disk operating system, as was the case with earlier systems such as the Apple II and TRS-80.
Commodore BASIC 2.0 is used instead of the more advanced BASIC 4.0 from the PET series, since C64 users were not expected to need the disk-oriented enhancements of BASIC 4.0. The company did not expect many to buy a disk drive, and using BASIC 2.0 simplified VIC-20 owners' transition to the 64.[77] "The choice of BASIC 2.0 instead of 4.0 was made with some soul-searching, not just at random. The typical user of a C64 is not expected to need the direct disk commands as much as other extensions, and the amount of memory to be committed to BASIC were to be limited. We chose to leave expansion space for color and sound extensions instead of the disk features. As a result, you will have to handle the disk in the more cumbersome manner of the 'old days'."[78]
The version of Microsoft BASIC is not very comprehensive and does not include specific commands for sound or graphics manipulation, instead requiring users to use the "PEEK and POKE" commands to access the graphics and sound chip registers directly. To provide extended commands, including graphics and sound, Commodore produced two different cartridge-based extensions to BASIC 2.0: Simons' BASIC and Super Expander 64. Other languages available for the C64 include Pascal, C,[79][80] Logo, Forth, and FORTRAN. Compilers for BASIC 2.0 such as Petspeed 2 (from Commodore), Blitz (from Jason Ranheim), and Turbo Lightning (from Ocean Software) were produced. Most commercial C64 software was written in assembly language, either cross-developed on a larger computer, or directly on the C64 using a machine code monitor or an assembler. This maximized speed and minimized memory use. Some games, particularly adventures, used high-level scripting languages and sometimes mixed BASIC and machine language.
Many third-party operating systems have been developed for the C64. As well as the original GEOS, two third-party GEOS-compatible systems have been written: Wheels and GEOS megapatch. Both of these require hardware upgrades to the original C64. Several other operating systems are or have been available, including WiNGS OS, the Unix-like LUnix, operated from a command-line, and the embedded systems OS Contiki, with full GUI. Other less well-known OSes include ACE, Asterix, DOS/65, and GeckOS. A version of CP/M was released, but this requires the addition of an external Z80 processor to the expansion bus. Furthermore, the Z80 processor is underclocked to be compatible with the C64's memory bus, so performance is poor compared to other CP/M implementations. C64 CP/M and C128 CP/M both suffer a lack of software; although most commercial CP/M software can run on these systems, software media is incompatible between platforms. The low usage of CP/M on Commodores means that software houses saw no need to invest in mastering versions for the Commodore disk format. The C64 CP/M cartridge is also not compatible with anything except the early 326298 motherboards.[citation needed]
During the 1980s, the Commodore 64 was used to run bulletin board systems using software packages such as Punter BBS, Bizarre 64, Blue Board, C-Net, Color 64, CMBBS, C-Base, DMBBS, Image BBS, EBBS, and The Deadlock Deluxe BBS Construction Kit, often with sysop-made modifications. These boards sometimes were used to distribute cracked software. As late as December 2013, there were 25 such Bulletin Board Systems in operation, reachable via the Telnet protocol.[81] There were major commercial online services, such as Compunet (UK), CompuServe (US – later bought by America Online), The Source (US), and Minitel (France) among many others. These services usually required custom software which was often bundled with a modem and included free online time as they were billed by the minute. Quantum Link (or Q-Link) was a US and Canadian online service for Commodore 64 and 128 personal computers that operated from November 5, 1985, to November 1, 1994. It was operated by Quantum Computer Services of Vienna, Virginia, which in October 1991 changed its name to America Online and continued to operate its AOL service for the IBM PC compatible and Apple Macintosh. Q-Link was a modified version of the PlayNET system, which Control Video Corporation (CVC, later renamed Quantum Computer Services) licensed.
The first graphical character-based interactive environment is Club Caribe. First released as Habitat in 1988, Club Caribe was introduced by LucasArts for Q-Link customers on their Commodore 64 computers. Users could interact with one another, chat and exchange items. Although the game's open world was very basic, its use of online avatars and the combination of chat and graphics was revolutionary. Online graphics in the late 1980s were severely restricted by the need to support modem data transfer rates as low as 300 bits per second. Habitat's graphics were stored locally on floppy disk, eliminating the need for network transfer.[82]
The C64 uses an 8-bit MOS Technology 6510 microprocessor that is almost identical to the 6502 but has three-state buses, a different pinout, slightly different clock signals and other minor changes for this application. It also has six I/O lines on otherwise-unused legs on the 40-pin IC package. These are used for two purposes in the C64: to bank-switch the machine's read-only memory (ROM) in and out of the processor's address space, and to operate the datasette tape recorder. The C64 has 64 KB of 8-bit-wide dynamic RAM, 1 KB of 4-bit-wide static color RAM for text mode, and 38 KB are available to built-in Commodore BASIC 2.0 on startup. There is 20 KB of ROM, made up of the BASIC interpreter, the KERNAL, and the character ROM. Because the processor can only address 64 KB at a time, the ROM was mapped into memory and only 38911 bytes of RAM (plus 4 KB between the ROMs) were available at startup. Most "breadbin" Commodore 64s used 4164 DRAM with eight chips totaling 64K of system RAM. Later models, featuring Assy 250466 and Assy 250469 motherboards, used 41464 DRAM (64K×4) chips which stored 32 KB per chip (so only two were required). Because 4164 DRAMs are 64K×1, eight chips are needed to make an entire byte; the computer will not function without all of them present. The first chip contains Bit 0 for the memory space, the second chip contains Bit 1, and so forth.
The C64 performs a RAM test on power-up and if a RAM error is detected, the amount of free BASIC memory will be lower than the normal 38,911. If the faulty chip is in lower memory, then an ?OUT OF MEMORY IN 0
error is displayed rather than the usual BASIC startup banner.
The C64 uses a complicated memory-banking scheme; the normal power-on default is the BASIC ROM mapped in at $A000-$BFFF, and the screen editor (KERNAL) ROM at $E000–$FFFF. RAM under the system ROMs can be written to, but not read back, without swapping out the ROMs. Memory location $01 contains a register with control bits for enabling or disabling the system ROMs and the I/O area at $D000. If the KERNAL ROM is swapped out, BASIC will be removed at the same time.[83]:264[84] BASIC is not active without the KERNAL; BASIC often calls KERNAL routines, and part of the ROM code for BASIC is in the KERNAL ROM.
The character ROM is normally invisible to the CPU. The character ROM may be mapped into $D000–$DFFF, where it is then visible to the CPU. Because doing so necessitates swapping out the I/O registers, interrupts must first be disabled. By removing I/O from the memory map, $D000–$DFFF becomes free RAM.
C64 cartridges map into assigned ranges in the CPU's address space. The most common cartridge auto-starting requires a string at $8000 which contains "CBM80" followed by the address where program execution begins. A few C64 cartridges released in 1982 use Ultimax mode (or MAX mode), a leftover feature of the unsuccessful MAX Machine. These cartridges map into $F000 and displace the KERNAL ROM. If Ultimax mode is used, the programmer will have to provide code for handling system interrupts. The cartridge port has 16 address lines, which grants access to the computer's entire address space if needed. Disk and tape software normally load at the start of BASIC memory ($0801), and use a small BASIC stub (such as 10 SYS(2064)
) to jump to the start of the program. Although no Commodore 8-bit machine except the C128 can automatically boot from a floppy disk, some software intentionally overwrites certain BASIC vectors in the process of loading so execution begins automatically (instead of requiring the user to type RUN at the BASIC prompt after loading).
About 300 cartridges were released for the C64, primarily during the machine's first 2 1⁄2 years on the market, after which most software outgrew the 16 KB cartridge limit. Larger software companies, such as Ocean Software, began releasing games on bank-switched cartridges to overcome the 16 KB cartridge limit during the C64's final years.
Commodore did not include a reset button on its computers until the CBM-II line, but third-party cartridges had a reset button. A soft reset can be triggered by jumping to the CPU reset routine at $FCE2 (64738). A few programs use this as an exit feature, although it does not clear memory.
The KERNAL ROM underwent three revisions, mainly designed to fix bugs. The initial version is only found on 326298 motherboards (used in the first production models), and cannot detect whether an NTSC or PAL VIC-II is present. The second revision is found on all C64s made from late 1982 through 1985. The final KERNAL ROM revision was introduced on the 250466 motherboard (late breadbin models with 41464 RAM), and is found in all C64Cs. The 6510 CPU is clocked at 1.023 MHz (NTSC) and 0.985 MHz (PAL),[85] lower than some competing systems; the Atari 800, for example, is clocked at 1.79 MHz). Performance can be boosted slightly by disabling the VIC-II's video output via a register write. This feature is often used by tape and disk fast loaders and the KERNAL cassette routine to keep a standard CPU cycle timing not modified by the VIC-II's sharing of the bus.
The restore key is gated directly to the CPU's NMI line, and will generate an NMI if pressed. The KERNAL handler for the NMI checks if run/stop is also pressed; if not, it ignores the NMI and exits. Run/stop-restore is normally a soft reset in BASIC which restores all I/O registers to their power-on default state, but does not clear memory or reset pointers; any BASIC programs in memory will be left untouched. Machine-language software usually disables run/stop-restore by remapping the NMI vector to a dummy RTI instruction. The NMI can also be used for an extra interrupt thread by programs, but risks a system lockup or other undesirable side effects if the restore key is accidentally pressed (which activates the NMI thread).
The C64 retained the VIC-20's DE-9 Atari joystick port and added another; any Atari-specification game controller can be used on a C64. The joysticks are read from the registers at $DC00 and $DC01, and most software is designed to use a joystick in port 2 for control rather than port 1; the upper bits of $DC00 are used by the keyboard, and an I/O conflict can result. Although it is possible to use Sega gamepads on a C64, it is not recommended; their slightly-different signal can damage the CIA chip. The SID chip's register $D419, used to control paddles, is an analog input. A handful of games, primarily released early in the computer's life cycle, can use paddles. In 1986, Commodore released two mice for the C64 and C128: the 1350 and 1351. The 1350 is a digital device read from the joystick registers, and can be used with any program supporting joystick input. The 1351 is an analog potentiometer-based mouse, read with the SID's analog-to-digital converter.
The VIC-II graphics chip features 16 colors, eight hardware sprites per scanline (enabling up to 112 sprites per PAL screen), scrolling capabilities, and two bitmap graphics modes.
Color # | Name | Hexadecimal RGB value |
---|---|---|
0 | Black | #000000 |
1 | White | #FFFFFF |
2 | Red | #9F4E44 |
3 | Cyan | #6ABFC6 |
4 | Purple | #A057A3 |
5 | Green | #5CAB5E |
6 | Blue | #50459B |
7 | Yellow | #C9D487 |
8 | Orange | #A1683C |
9 | Brown | #6D5412 |
10 | Light Red | #CB7E75 |
11 | Dark-Gray | #626262 |
12 | Mid-Gray | #898989 |
13 | Light Green | #9AE29B |
14 | Light Blue | #887ECB |
15 | Light-Gray | #ADADAD |
The standard text mode features 40 columns, like most Commodore PET models; the built-in character encoding is not standard ASCII but PETSCII, an extended form of ASCII-1963. The KERNAL ROM sets the VIC-II to a dark-blue background on power-up, with a light-blue border and text. Unlike the PET and VIC-20, the C64 uses double-width text; some early VIC-IIs had poor video quality which resulted in a fuzzy picture. Most screenshots show borders around the screen, a feature of the VIC-II chip. By utilizing interrupts to reset hardware registers with precise timing, it was possible to place graphics within the borders and use the full screen.[86]
The C64 has a resolution of 320×200 pixels, consisting of a 40×25 grid of 8×8 character blocks. It has 255 predefined character blocks, known as PETSCII. The character set can be copied into RAM and modified by a programmer.
There are two color modes: high resolution, with two colours available per character block (one foreground and one background), and multicolour (four colors per character block – three foreground and one background). In multicolor mode, attributes are shared between pixel pairs so the effective visible resolution is 160×200 pixels; only 16 KB of memory is available for the VIC-II video processor.
Since the C64 has a bitmapped screen, it is possible (but slow) to draw each pixel individually. Most programmers used techniques developed for earlier, non-bitmapped systems like the Commodore PET and TRS-80. A programmer redraws the character set, and the video processor fills the screen block by block from the top left corner to the bottom right corner. Two types of animation are used: character block animation and hardware sprites.
The user draws a series of characters of a person walking, possibly two in the middle of the block and another two walking in and out of the block. Then the user sequences them so the character walks into the block and out again. Drawing a series of these gets a person walking across the screen. By timing the redraw to occur when the television screen blanks out to restart drawing the screen, there will be no flicker. For this to happen, a user programs the VIC-II that it generates a raster interrupt when video flyback occurs. This technique is used in the Space Invaders arcade game.
Horizontal and vertical pixel scrolling of up to one character block is supported by two hardware scroll registers. Depending on timing, hardware scrolling affects the entire screen or selected lines of character blocks. On a non-emulated C64, scrolling is glass-like and blur-free.
A sprite is a character which moves over an area of the screen, draws over the background, and redraws it after it moves. This differs from character block animation, where the user flips character blocks. On the C64, the VIC-II video controller handles most sprite emulation; the programmer defines the sprite and where it goes.
The C64 has two types of sprites, respecting their color-mode limitations. Hi-res sprites have one color (one background and one foreground), and multi-color sprites have three (one background and three foreground). Color modes can be split or windowed on a single screen. Sprites can be doubled in size vertically and horizontally up to four times their size, but the pixel attributes are the same – the pixels become "fatter". There are eight sprites, and all eight can be shown in each horizontal line concurrently. Sprites can move with glassy smoothness in front of, and behind, screen characters and other sprites.
The hardware sprites of a C64 can be displayed on a bitmapped (high-resolution) screen or a text-mode screen in conjunction with fast and smooth character block animation. Software-emulated sprites on systems without support for hardware sprites, such as the Apple II and ZX Spectrum, required a bitmapped screen. Sprite-sprite and sprite-background collisions are detected in hardware, and the VIC-II can be programmed to trigger an interrupt accordingly.
The SID chip has three channels, each with its own ADSR envelope generator and filter capabilities. Ring modulation makes use of channel three to work with the other two channels. Bob Yannes developed the SID chip and, later, co-founded the synthesizer company Ensoniq. Composers and programmers of game music on the C64 include Rob Hubbard, Jeroen Tel, Tim Follin, David Whittaker, Chris Hülsbeck, Ben Daglish, Martin Galway, Kjell Nordbø and David Dunn. Due to the chip's three channels, chords are often played as arpeggios. It was also possible to continuously update the master volume with sampled data to enable the playback of 4-bit digitized audio. By 2008, it was possible to play four-channel 8-bit audio samples and two SID channels and still use filtering.[87]
File:StrikeForce8580R5.ogg There are two versions of the SID chip: the 6581 and the 8580. The MOS Technology 6581 was used in the original ("breadbin") C64s, the early versions of the 64C, and the Commodore 128. The 6581 was replaced with the MOS Technology 8580 in 1987. Although the 6581 sound quality is a little crisper, it lacks the 8580's versatility; the 8580 can mix all available waveforms on each channel, but the 6581 can only mix waveforms in a channel in a limited fashion. The main difference between the 6581 and the 8580 is the supply voltage; the 6581 requires 12 volts, and the 8580 9 volts. A modification can be made to use the 6581 in a newer 64C board (which uses the 9-volt chip).
In 1986, the Sound Expander was released for the Commodore 64. It was a sound module with a Yamaha YM3526 chip capable of FM synthesis, primarily intended for professional music production.[88][89]
Commodore made many changes to the C64's hardware, sometimes introducing compatibility issues.[90] The computer's rapid development and Commodore and Jack Tramiel's focus on cost-cutting instead of product testing resulted in several defects which caused developers like Epyx to complain and required many revisions; Charpentier said that "not coming a little close to quality" was one of the company's mistakes.[6]
Cost reduction was the reason for most of the revisions. Reducing manufacturing costs was vitally important to Commodore's survival during the price war and lean years of the 16-bit era. The C64's original (NMOS-based) motherboard went through two major redesigns and a number of revisions, exchanging positions of the VIC-II, SID and PLA chips. Much of the cost was initially eliminated by reducing the number of discrete components, such as diodes and resistors, which enabled a smaller printed circuit board. There were 16 C64 motherboard revisions to simplify production and reduce manufacturing costs. Some board revisions were exclusive to PAL regions. All C64 motherboards were manufactured in Hong Kong.
IC locations changed frequently with each motherboard revision, as did the presence (or lack) of the metal RF shield around the VIC-II; PAL boards often had aluminized cardboard instead of a metal shield. The SID and VIC-II are socketed on all boards, but the other ICs may be socketed or soldered. The first production C64s, made from 1982 to early 1983, are known as "silver label" models due to the case having a silver-colored "Commodore" logo. The power LED had a silver badge reading "64" around it. These machines have only a five-pin video cable, and cannot produce S-Video. Commodore introduced the familiar "rainbow badge" case in late 1982, but many machines produced into early 1983 also used silver-label cases until the existing stock was used up. The original 326298 board was replaced in spring 1983 by the 250407 motherboard, which had an eight-pin video connector and added S-Video support. This case design was used until the C64C appeared in 1986. All ICs switched to plastic shells, but the silver-label C64s (notably the VIC-II) had some ceramic ICs. The case is made from ABS plastic, which may become brown with time; this can be reversed with retrobright.
The VIC-II was manufactured with 5-micrometer NMOS technology[6], and was clocked at 17.73447 MHz (PAL) or 14.31818 MHz (NTSC). Internally, the clock was divided to generate the dot clock (about 8 MHz) and the two-phase system clocks (about 1 MHz; the pixel and system clock speeds differ slightly on NTSC and PAL machines). At such high clock rates the chip generated considerable heat, forcing MOS Technology to use a ceramic dual in-line package known as a CERDIP. The ceramic package was more expensive, but dissipated heat more effectively than plastic.
After a redesign in 1983, the VIC-II was encased in a plastic dual in-line package; this reduced costs substantially, but did not eliminate the heat problem.[6] Without a ceramic package, the VIC-II required a heat sink. To avoid extra cost, the metal RF shielding doubled as the VIC's heat sink; not all units shipped with this type of shielding, however. Most C64s in Europe shipped with a cardboard RF shield coated with a layer of metal foil. The effectiveness of the cardboard was questionable; it acted instead as an insulator, blocking airflow and trapping heat generated by the SID, VIC, and PLA chips. The SID was originally manufactured using NMOS at 7 micrometers and, in some areas, 6 micrometers.[6] The prototype SID and some early production models had a ceramic dual in-line package, but (unlike the VIC-II) are very rare; the SID was encased in plastic when production began in early 1982.
In 1986, Commodore released the last revision of the classic C64 motherboard. It was otherwise identical to the 1984 design, except for two 64-kilobit × 4-bit DRAM chips which replaced the original eight 64-kilobit × 1-bit ICs. After the release of the Commodore 64C,[91] MOS Technology began to reconfigure the original C64's chipset to use HMOS technology. The main benefit of HMOS was that it required less voltage to drive the IC, generating less heat. This enhanced the reliability of the SID and VIC-II. The new chipset was renumbered 85xx to reflect the change to HMOS.
In 1987, Commodore released a 64C variant with a redesigned motherboard known as a "short board". The new board used the HMOS chipset, with a new 64-pin PLA chip. The "SuperPLA", as it was called, integrated discrete components and transistor–transistor logic (TTL) chips. In the last revision of the 64C motherboard, the 2114 4-bit-wide color RAM was integrated into the SuperPLA.
The C64 used an external power supply, a linear transformer with multiple taps differing from switch mode (presently used on PC power supplies). It was encased in epoxy resin gel, which discouraged tampering but increased the heat level during use. The design saved space in the computer's case, and allowed international versions to be more easily manufactured. The 1541-II and 1581 disk drives and third-party clones also have external power-supply "bricks", like most peripherals.
Commodore power supplies often failed sooner than expected. The computer reportedly had a 30-percent return rate in late 1983, compared to the 5–7 percent rate considered acceptable by the industry;[92] Creative Computing reported four working C64s, out of seven.[93] Malfunctioning power bricks were notorious for damaging the RAM chips. Due to their higher density and single supply (+5V), they had less tolerance for over-voltage. The usually-failing voltage regulator could be replaced by piggybacking a new regulator on the board and fitting a heat sink on top.[94]
The original PSU on early-1982 and 1983 machines had a 5-pin connector which could accidentally be plugged into the computer's video output. Commodore later changed the design, omitting the resin gel to reduce costs. The following model, the Commodore 128, used a larger, improved power supply which included a fuse. The power supply for the Commodore REU was similar to that of the Commodore 128, providing an upgrade for customers purchasing the accessory.
Creative Micro Designs also produced a 2 MB REU for the C64 and C128, called the 1750 XL. The technology actually supported up to 16 MB, but 2 MB was the biggest one officially made. Expansions of up to 16 MB were also possible via the CMD SuperCPU.
Address | Size [KB] |
Description | |||
---|---|---|---|---|---|
0x0000 | 32 | RAM | [105] | ||
0x8000 | 8 | RAM | Cartridge ROM | [105] | |
0xA000 | 8 | RAM | BASIC ROM | [105] | |
0xC000 | 4 | RAM | [105] | ||
0xD000 | 4 | RAM | I/O/Color RAM | Character ROM | [105] |
0xE000 | 8 | RAM | KERNAL ROM | [105] |
Note that even if an I/O chip like the VIC-II only uses 64 positions in the memory address space, it will occupy 1,024 addresses because some address bits are left undecoded.[105]
Commodore MPS-802 dot matrix printer
Vertical integration was the key to keeping Commodore 64 production costs low. At the introduction in 1982, the production cost was US$135 and the retail price US$595. In 1985, the retail price went down to US$149 (US$350 today) and the production costs were believed to be somewhere between US$35–50 (c. US$80–120 today). Commodore would not confirm this cost figure. Dougherty of the Berkeley Softworks estimated the costs of the Commodore 64 parts based on his experience at Mattel and Imagic.
Count | Price in 1985 United States dollar | Part |
---|---|---|
3 | 1 | ROMs[6] |
8 | 1.85 | Dynamic RAMs |
4 | SID (sound) chip | |
4 | VIC-II (graphics) chip | |
3 | RF modulator package | |
1–2 | 6510 8-bit microprocessor | |
5 | A handful of TTL, buffers, power regulators and capacitors | |
10 max | Keyboard | |
1–2 | Printed circuit board | |
1–2 | Plastic case | |
5–10 | Power supply and miscellaneous connectors | |
1–2 | Packaging and manual | |
Total: | 52.8–61.8 |
To lower costs, TTL chips were replaced with less expensive custom chips and ways to increase the yields on the sound and graphics chips were found. The video chip 6567 had the ceramic package replaced with plastic but heat dissipation demanded a redesign of the chip and the development of a plastic package that can dissipate heat as well as ceramic.[6]
Clones are computers which imitate C64 functions. In mid-2004, after an absence from the marketplace of more than 10 years, PC manufacturer Tulip Computers (owners of the Commodore brand since 1997) announced the C64 Direct-to-TV (C64DTV): a joystick-based TV game based on the C64, with 30 games in its ROM. Designed by Jeri Ellsworth, a self-taught computer designer who had designed the C-One C64 implementation, the C64DTV was similar to other mini-consoles based on the modestly-successful Atari 2600 and Intellivision. The C64DTV was advertised on QVC in the United States for the 2004 holiday season.[106]
In 2015, a Commodore 64-compatible motherboard was produced by Individual Computers. Called the C64 Reloaded, it is a redesign of Commodore 64 motherboard revision 250466 with several new features.[107] The motherboard is designed to be placed in an existing, empty C64 or C64C case. Produced in limited quantities, models of this Commodore 64 clone have machined or ZIF sockets in which custom C64 chips are placed. The board contains jumpers to accept revisions of the VIC-II and SID chips and the ability to switch between the PAL and NTSC video systems. It has several innovations, including selection (via the restore key) of KERNAL and character ROMs, built-in reset toggle on the power switch, and an S-Video socket to replace the original TV modulator. The motherboard is powered by a DC-to-DC converter which uses 12 V DC from a mains adapter, rather than the original (and failure-prone) Commodore 64 power-supply brick.
C64 enthusiasts were developing new hardware in 2008, including Ethernet cards,[108] specially-adapted hard disks and flash card interfaces (sd2iec).[109] A-SID, which gives the C-64 a wah-wah effect, was introduced in 2022.[110]
The C64 brand was reused in 1998 for the Web.it Internet Computer,[111][112] a low-powered, Internet-oriented, all-in-one x86 PC running MS-DOS and Windows 3.1. It uses an AMD Élan SC400 SoC with 16 MB of RAM, a 3.5-inch floppy disk drive, 56k modem and PC Card.[113] Despite its Commodore 64 nameplate, the C64 Web.it looks different and is only directly compatible with the original via included emulation software. PC clones branded C64x sold by Commodore USA, a company licensing the Commodore trademark,[114][115] began shipping in June 2011.[116] The C64x's case resembles the original C64 computer, but – like the Web.it – it is based on x86 architecture and is not compatible with the Commodore 64.
Several Commodore 64 games were released on the Nintendo Wii's Virtual Console service in Europe and North America. They were not listed on the service in August 2013.[117]
THEC64 Mini, an unofficial Linux-based console emulating the Commodore 64, was released in 2018 by UK-based Retro Games. The console is a decorative, half-scale Commodore 64 with two USB and one HDMI port, and a mini USB connection to power the system. The console's keyboard is non-functional; the system is controlled by an included THEC64 joystick or a separate USB keyboard.[118] New software ROMs can be loaded into the console, which uses emulator x64 (as part of VICE) to run software and has a built-in graphical operating system.[119]
The full-size THEC64 was released in 2019 in Europe and Australia, and was scheduled for release in November 2020 in North America. The console and built-in keyboard are built to scale with the original Commodore 64, including a functional keyboard. Enhancements include VIC-20 emulation, four USB ports, and an upgraded joystick. Neither product has a Commodore trademark. The Commodore key on the original keyboard is replaced with a THEC64 key; Retro Games can call neither product a C64, although the system ROMs are licensed from Cloanto Corporation. The consoles can be switched between carousel mode (to access the built-in game library) and classic mode, in which they operate similarly to a traditional Commodore 64. USB storage can be used to hold disk, cartridge and tape images for use with the machine.
Commodore 64 emulators include the open source VICE, Hoxs64,[120] and CCS64. An iPhone app was also released with a compilation of C64 ports.
Wikimedia Commons has media related to Commodore 64. |
Original source: https://en.wikipedia.org/wiki/Commodore 64.
Read more |