Jump to content

Commodore 64

From Wikipedia, the free encyclopedia

This is an old revision of this page, as edited by Ta bu shi da yu (talk | contribs) at 09:30, 18 June 2005 (Yow! You should see what that image does to low end laptops with low screen resolutions!). The present address (URL) is a permanent link to this revision, which may differ significantly from the current revision.

Commodore 64 (1982)

Commodore 64 (C64, CBM 64) was a popular home computer of the 1980s. Announced by Commodore Business Machines (founded and owned by Jack Tramiel) in January 1982 and released in August of that year at a price of US$595, it offered unprecedented value (sound and graphics performance) for the money, and enabled computerisation of many small businesses previously unable to afford a computer. Its very aggressive pricing in comparison to competitors quickly started a price war. Approximately 10,000 software titles were made available for the Commodore 64, including games, development tools, and office applications. With estimated sales between 17 and 25 million units by the time it was discontinued in 1993, the C64 became and remains the best-selling computer model of all time.

History

Origins

File:C64 artistic closeup.jpg
Close-up of C64

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 console. Design work for the chips was completed in November 1981, but the console project was soon cancelled after a meeting with Commodore president Jack Tramiel. Tramiel wanted the chips to form the base for a computer with 64 KB of RAM, which at the time was double the amount of RAM of many computers available in late 1981. Although 64KB of RAM was very expensive, Tramiel knew that DRAM prices were falling, and that it would eventually drop to an acceptable level before going into full production.

The design team was given less than two months to develop a prototype so that it could be displayed at the winter Consumer Electronics Show in January 1982. The C64 made an impressive debut as David A. Ziembicki, a former Production Engineer at Commodore recalled: "All we saw at our booth were Atari people with their mouths dropping open, saying, 'How can you do that for $595?'". The cost of building each C64 was estimated at US$135 due to Commodore's vertical integration and more crucially, MOS Technology's integrated-circuit fabrication facilities, leaving a large margin to work with.

Winning the market war

The C64 faced a wide range of competing machines after its introduction in August 1982. With an impressive price point coupled with the 64's advanced hardware, it quickly out classed many of its competitors. In the United States the greatest competitors to the C64 were the Atari 800 and Apple II. The Atari 800 was very similar in hardware terms, but it was very expensive to build which soon forced Atari to move their production to the Far East. It also forced Atari to redesign their machine to be more cost effective, resulting in the 400/800XL line. The ageing Apple II was clearly no match for the C64's hardware, however it was very expandable with its internal expansion slots, a feature lacking in the 64.

In the United Kingdom, the primary competitors to the C64 was the British-built Sinclair ZX Spectrum and the Amstrad CPC. Released a few months ahead of the C64, and selling for almost half the price, the Spectrum quickly became the market leader. The C64 would rival the Spectrum in popularity in the latter half of the 1980s eventually outliving the Spectrum when it was discontinued in 1992.

The key to the 64's success was Commodore's aggressive marketing tactics, selling it in department stores, discount stores, and toy stores in addition to its network of authorized dealers. This allowed it, like its predecessor, the VIC-20, to compete against video game consoles. While the strategy proved successful, a high price was paid as Commodore's corporate identity was tainted with the slur of selling so-called "Toy computers".

In 1983, Commodore offered a $100 rebate in the United States on the purchase of a C64 upon receipt of any video game console or computer. To take advantage of the $100 rebate, some mail-order dealers and retailers offered a Timex Sinclair 1000 for as little as $10 with purchase of a C64 so the consumer could send the computer to Commodore, collect the rebate, and pocket the difference. Timex Corporation departed the marketplace within a year. The success of the VIC-20 and C64 also contributed significantly to the departure of Texas Instruments from the home computer field (see TI-99/4A) and to the infamous video game crash of 1983.

C64 successors and the 64C

File:Sx64.jpg
Commodore SX-64

In 1984 Commodore released the SX-64 a portable version of the C64. The SX-64 has the distinction of being the first full-color portable computer. The base unit featured a 5 inch CRT and an integral 1541 floppy disk drive. Less than 10,000 were sold when it was discontinued in 1986.

Commodore attempted in 1984 to replace the C64 with the Commodore Plus/4, which offered a higher-color display, a better implementation of BASIC (V3.5), and built-in software. But Commodore made the colossal strategic mistake of making it incompatible with the huge C64 software library. To top it all off, the Plus/4 lacked hardware sprite capability and had much poorer sound, thus seriously underperforming in two of the areas that had made the C64 a star. The new machine flopped, to no one's surprise except Commodore's, while the C64 soldiered on. Commodore probably made this mistake because in that era hardware was still considered more significant than software, and it was not understood that in the future hardware would become a commodity item and that software would rule as the most important merchandise—to the degree that the software available on a particular hardware platform would sell the hardware and not vice versa.

Commodore 64C system with 1541-II floppy drive and 1084S RGB monitor

Commodore was determined not to repeat the same mistake, and made sure that the eventual successors to the C64—the Commodore 128 and 128D computers (1985)—were as good as, and fully compatible with, the original, as well as offering a host of long-sought improvements (such as a structured BASIC with graphics and sound commands, 80-column display capability, and full CP/M compatibility). As the Commodore 128 and other manufacturers' more advanced computers came onto the market, Commodore positioned the '64 as an entry-level computer, lowering the price as necessary.

In 1986, Commodore released the Commodore 64C (C64C) computer, which was functionally identical to the original, but whose exterior design was remodelled in the spirit of the C128 and other contemporary design trends. In the U.S., the C64C often came bundled with the third-party GEOS GUI-based operating system.

An active demoscene

At the time of its introduction, the C64's graphics and sound capabilities were rivaled only by the Atari 8-bit family. This was at a time when most IBM PCs and compatibles had text-only graphics cards, green screen monitors, and sound consisting of squeaks and beeps from the built-in tiny, low-quality tweeter. Due to its advanced graphics and sound, the 64 is often credited with starting the computer subculture known as the demoscene (see Commodore 64 demos). As of the turn of the millennium, it is still being actively used as a demo machine, especially for music (its sound chip even being used in special sound cards for PCs). For all other than die-hard enthusiasts, however, the C64 lost its top position when the 16-bit Atari ST and Commodore Amiga were released in the mid-80s.

1990s and 2000s hardware

In 1990 the C64 was re-released in the form of a games console, called the C64 Games System (C64GS). It was basically a C64 motherboard modified to orient the cartridge connector to a vertical position, 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. Needless to say, the C64GS was another commercial failure for Commodore, and was never even released outside of Europe. In 1990/91, an advanced intended successor to the C64, the Commodore 65 (also known as the "C64DX"), was prototyped, but never released.

In the summer of 2004, after an absence from the marketplace of more than 10 years, PC manufacturer Tulip Computers BV (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 built into ROM. Designed by Jeri Ellsworth, a self-taught computer designer who had earlier designed the modern C-One C64 implementation, the C64DTV was similar in concept to other mini-consoles based on the Atari 2600 and Intellivision which had gained modest success earlier in the decade. The product was advertised on QVC in the United States for the 2004 holiday season.

Hardware

Graphics and sound

The C64 used an 8-bit MOS Technology 6510 microprocessor (a close derivative of the 6502 with an added 6-bit internal I/O port that in the C64 is mainly used to bank-switch the machine's ROM in and out of the processor's address space) and had 64 kilobytes of RAM, of which 38 KB were available to built-in Commodore BASIC 2.0.

The graphics chip, VIC-II, featured 16 colors, eight sprites, scrolling capabilities, and two bitmap graphics modes. The standard text mode featured 40 columns, like most Commodore PET models. Computer/video game and demo programmers quickly learned how to exploit quirks in the VIC-II to gain additional capabilities, like making more than 8 sprites appear, and move, simultaneously. (In fact, one webmaster of a Commodore 64 games museum website mentioned that to this day, he does not know how the game Clystron's title screen managed to display 4 different colours on the same 8×8 pixel block without halving the horizontal resolution.)

An early C64 motherboard. (Rev A. PAL 1982)

The sound chip, SID, had three channels with several different waveforms, ring modulation and filter capabilities. It, too, was very advanced for its time. It was designed by Bob Yannes, who would later co-found synthesizer company Ensoniq. Yannes criticized other contemporary computer sound chips as "primitive, obviously (...) designed by people who knew nothing about music." Often the game music became a hit of its own among C64 users. Well-known composers and programmers of game music on the C64 were Rob Hubbard and Martin Galway, among many others.

A C64c motherboard ("C64E" Rev. B PAL 1992)

Hardware revisions

In 1987 Commodore began to ship C64Cs with a totally redesigned motherboard in an effort to further reduce the cost of manufacturing the C64. The new board, commonly known as a "short board", featured a new and larger 64-pin PLA chip, which integrated many discrete TTL logic chips. The colour RAM was also integrated in later revisions of the PLA. The IC's were also re-numbered to 85xx in order to reflect the change to the newer HMOS chip manufacturing process. This made the C64C far more reliable, because these chips ran cooler than the previous generation of NMOS chips used in the C64.


Peripheral units

Floppy and tape drives

Although not always supplied with the machine, floppy disk drives of the 5¼ inch (Commodore 1541 and 1571) and, later, 3½ inch (1581) variety were available. The 1541 was excruciatingly slow in loading programs because of a poorly implemented serial bus. It used to be a common joke to 'go grab a cup of coffee [or hot chocolate]' after entering the command to load a program on the C64, like in the following example, where '*' designates the first program on the disk ('*' by itself means the last program loaded, or the first), '8' is the disk drive device number, and the '1' signifies that the file is to be loaded not to the standard memory address, but to the address where its program header says—this usually signifies an executable file, as opposed to a BASIC program.

LOAD "*",8,1

Commodore sold an IEEE-488-standard parallel bus converter for the C64 which plugged into the machine's expansion port, but few C64 owners took advantage of this and the accompanying IEEE devices that Commodore sold (the SFD-1001 1-megabyte 5¼ inch floppy disk drive, and the peripherals originally made for the IEEE equipped PET computers, such as the 4040 and 8050 drives and the 9060/9090 hard disk drives).

Because the 1541 was so slow and the IEEE converter (and drives) so expensive, a number of aftermarket drives became available, offering better reliability, quieter operation, or simply a lower price, than the 1541, although often at the expense of compatibility. In addition, a company called Epyx released their FastLoad cartridge for the C64 which replaced some of the 1541's slow routines with its own custom code, thus allowing users to load programs at a fraction of the time (~ 1/5th). The cartridge was so well-received by grateful C64 owners that many Commodore dealers started selling the Epyx cartridge as a standard item when selling a new C64 with the 1541. Competing fastloaders with even better speed later became available, either on cartridge or even as replacement ROM chips that were fitted into the C64 and any disk drives attached.

In Europe, the C64 was often used with cassette tape drives (Datassettes), which were much cheaper, but also much slower than floppy drives. Many European software developers wrote their own fast tape loaders which replaced the internal kernel code in the C64 and offered loading times often faster than standard-speed floppy disc. Novaload was the most popular tape loader used by the majority of British and American software developers. In the United States, the floppy drives were much more common.

Serial communications

Likewise, because Commodore offered a number of inexpensive modems for the C64, the machine also helped popularize the use of modems for telecommunications. In the United States, Quantum Computer Services (later America Online) offered an online service called Quantum Link for the C64 that featured chat, downloads, and online games. In the UK, Compunet was a very popular online service for C64 users (requiring special Compunet modems) from 1984 to the early 1990s. In Germany the very restictive rules of the state-owned telephone system prevented widespread use of modems, prompting the use of inferior acoustic couplers instead.

Like the VIC-20, the C64 lacked a real UART chip such as the 6551 and used a software emulation. This limited the maximum speed to about 2400bps. Third party cartridges with UART chips offered better performance.

Other peripherals

The Commodore 1701 was a 13" color monitor for the C64, which accepted analog composite video as input, as well as separate chrominance and luminance signals (today we call this S-Video) for superior performance with the C64.

Like the Apple II family, third-party acceleration units providing a faster CPU appeared late in the C64's life. Due to timing issues with the VIC-II chip, however, C64 accelerators were much more complex and expensive to implement than their counterparts for other computers. So while accelerators based on the Western Design Center 65C02, usually running at 4 MHz, and on the 65816 at up to 20 MHz appeared, they appeared too late and at a price of US$199 or higher were too expensive to gain widespread use.

Software

Some BASIC drawbacks

Unfortunately, the onboard BASIC programming language offered no easy way to tap the machine's advanced graphics and sound capabilities, so the user needed to either use PEEK and POKE commands to directly access the associated memory addresses to achieve the required results, use third party BASIC extensions such as Simons' BASIC, or program in assembly language. Commodore had a better implementation of BASIC but chose to ship the C64 with the same BASIC 2.0 used in the VIC-20 to minimize cost.

File:C64scrn.png
Startup screen of C64, and rudimentary BASIC program ready to run

The C64 amassed a large software library of nearly 10,000 commercial titles, rivaled in its day only by the Apple II family. An Apple II+ emulator called The Spartan, manufactured by Mimic Systems Inc., was available for the C-64 but never gained much popularity. The C64's programs may still be run today even if one lacks the hardware, due to an abundance of software emulators for Amiga, Atari, Mac, MSDOS, Win32, Palm OS, and Linux systems. Most of them do not get the sound quite right, however; the SID chip contains complex analog circuitry that is extremely difficult to emulate well in a digital implementation, which a software emulator inherently is. There are also special interface cables available, with software, to connect 1541 disk drives or C64s to PCs for emulation, archiving, and backup purposes.

Development tools

Aside from games and office applications such as word processors, spreadsheets, and database programs, the C64 was well equipped with development tools from Commodore as well as third-party vendors. Various assembler solutions were available, though perhaps the Rolls-Royce of these was the MIKRO assembler, which came in cartridge form and integrated seamlessly with the standard BASIC screen editor. Several companies sold BASIC compilers, C compilers and Pascal compilers, to mention but a few popular languages available for the machine.

Type-ins and bulletin boards

Besides prepackaged commercial software, the C64, like the VIC before it, had a large library of type-in programs. Numerous computer magazines offered type-in programs, usually written in BASIC or assembly language or a combination of the two. Because of its immense popularity, many general-purpose magazines that supported other computers offered C64 type-ins (Compute! was one of these), and at its peak, there were five magazines in North America (Ahoy!, Commodore Magazine, Compute!'s Gazette, RUN, and Transactor) dedicated to Commodore computers exclusively. Books of type-ins were also common, especially in the machine's early days. A large library of public domain and freeware programs, distributed by online services such as Q-Link and CompuServe, BBSs, and user groups also emerged.

Perhaps because of its low cost and easy availability of inexpensive modems, the C64 had widespread problems with software piracy. Many BBSs offered cracked commercial software, sometimes requiring special access and usually requiring users to maintain an upload/download ratio. A large number of warez groups existed, including Fairlight, which continued to exist more than a decade after the C64's demise. Some members of these groups turned to telephone phreaking and credit card or calling card fraud to make long-distance calls, either to download new titles not yet available locally, or to upload newly cracked titles released by the group.

Retrocomputing efforts

The magnetic tapes and disks upon which home computer software were stored are decaying at an alarming rate. In order to preserve game software for future users, efforts are underway to copy from these degrading media onto fresh media which will help ensure a long life for the software and make it available for emulation. One such effort is the GameBase 64 (GB64) organization (see external link below). The GoodGB64 variant of Cowering's Good Tools allows users to audit their C64 game collections (the 2.02 version of GoodGB64 lists 15,712 "ROM"s).

If someone wants to transfer his own, personal discs to or from the PC, there are additional tools available. For example, The Star Commander is a DOS-based tool, cbm4linux is a Linux tool, and cbm4win is a Windows tool to transfer data from an original floppy drive to the PC, or vice versa, using a simple X-cable.

In addition, there is now a growing number of emulators available, which allow the use of an emulated C64 on modern computing hardware. The most popular & compatible are VICE, which is free and runs on most modern as well as some older platforms, CCS64, which is a shareware program and is currently available only for Windows and Power64, which is designed for the OS X platform only.

Representative screenshots

Screenshot Multiplan Screenshot Koala Painter Screenshot GEOS (Graphical User Interface) Screenshot geoWrite
Multiplan Koala Painter GEOS (desktop) geoWrite
Microsoft (1983) Koala/Audio Light (1983) Berkeley Softworks (1986) Berkeley Softworks (1987)
Screenshot Donkey Kong Screenshot Winter Games Screenshot International Karate+ Screenshot Creatures II
Donkey Kong Winter Games International Karate+ Creatures II
Nintendo (1983) Epyx (1985) System 3 (1987) Thalamus/Apex (1993)


Additional screenshots can be found on the Commodore 64 software page.

Specifications

Internal hardware

  • Video hardware: MOS Technology VIC-II MOS 6567/8567 (NTSC) MOS 6569/8569 (PAL)
    • 16 colors
    • Text mode: 40×25; 256 user-defined characters; smooth scrolling
    • Bitmap modes: 320×200, 160×200 (multicolor)
    • 8 hardware sprites, 24×21 pixels
  • RAM:
    • 64 KB (65,536 bytes). 38911 bytes were available for BASIC programs.
    • 0.5 KB Color RAM (1K nybbles)
    • Expandable to 320 KB with Commodore 1764 256K RAM Expansion Unit (REU); although only 64KB directly accessible; REU mostly intended for GEOS. REUs of 128K and 512K, originally designed for the C128, were also available, but required the user to also buy a stronger power supply from some third party supplier; with the 1764 this was included.
  • ROM:
    • 20 KB (9 KB BASIC 2.0, 7 KB KERNAL, 4 KB character generator providing two 2 KB character sets)

I/O ports and power supply

  • I/O ports:
    • High-quality Y/C (S-Video) (8-pin DIN plug) with chroma/luma out and sound in + out, used with some Commodore video monitors (DIN-to-phono plug converter delivered with monitor). This was not available on the earliest units, which used a 5 pin DIN. The now-standard 4-pin Mini-DIN S-Video plug didn't yet exist back then, but adapters are easy to build.
    • Composite video (one-signal video output to monitor included in afore mentioned 8-pin DIN plug, and separate integrated RF modulator antenna output, which also carries sound, to TV on an RCA socket)
    • 2 × screwless DE9M game controller ports (Atari 2600 de facto standard, supporting one digital joystick and/or one pair of analog paddles each; one of them also supports a light pen. Later a C64-specific computer mouse was released by Commodore that (ab)uses the paddle pins to transmit its signals)
    • Cartridge expansion slot (slot for edge connector with 6510 CPU address/data bus lines and control signals, as well as GND and voltage pins; used for program modules and memory expansions, among others)
    • PET-type Datassette 300 baud tape interface (edge connector with cassette motor/read/write/sense signals and GND and +5V pins; the motor pin is powered to directly supply the motor)
    • User port (edge connector with TTL-level RS-232 signals, for modems, etc; and byte-parallel signals which can be used to drive third-party parallel printers, among other things; with 17 logic signals, 7 GND and voltage pins, including 9V AC voltage)
    • Serial bus (serial version of IEEE-488, 6-pin DIN plug) for CBM printers and disk drives
  • Power supply: 5V DC and 9V AC from external "monolithic power brick", attached to computer's 7-pin female DIN-connector

Trivia

See also

References

  • Commodore Business Machines, Inc., Computer Systems Division (1982). Commodore 64 Programmer's Reference Guide. Self-published by CBM. ISBN 0-672-22056-3.
  • Angerhausen, M.; Becker, Dr. A.; English, L.; Gerits, K. (1983, 84). The Anatomy of the Commodore 64. Abacus Software (US ed.) / First Publishing Ltd. (UK ed.). ISBN 0-948015-004 (UK ed.). German original edition published by Data Becker GmbH, Düsseldorf.
  • Perry, Tekla S.; Wallich, Paul. "Design case history: the Commodore 64". IEEE Spectrum. March 1985. [1]
  • Jeffries, Ron. "A best buy for '83: Commodore 64". Creative Computing, January 1983. [2]

Emulators

Archives

  • The Digital Dungeon (TDD) – FTP site full of old and recent C64 software
  • www.c64.ch – An archive of C64 demos
  • GameBase 64 – C64 game software preservation site
  • Lemon 64 – Site with general information, game reviews and a forum
  • C64HQ – Graphically nice site with interviews of famous C64 game creators & sceners, game- and demodownloads and more
  • C64 Walkthrough Site – Walkthrough and solution archive for C64 adventure games also with discussion forum
  • Project 64 – manuals for C64/128 games and software
  • The Ultimate C64 Tape Page – Large preservation archive of C64 cassettes. Also contains scans of cassette covers and manuals
  • The Commodore Zone – archive of C64 games, discussion forum, searchable databases, links directory

Other