Misplaced Pages

Commodore Plus/4

Article snapshot taken from Wikipedia with creative commons attribution-sharealike license. Give it a read and then ask your questions in the chat. We can research this topic together.

The Commodore Plus/4 is a home computer released by Commodore International in 1984. The "Plus/4" name refers to the four-application ROM -resident office suite ( word processor , spreadsheet , database , and graphing ); it was billed as "the productivity computer with software built in".

#339660

116-552: Internally, the Plus/4 shared the same basic architecture as the lower-end Commodore 16 and 116 models, and was able to use software and peripherals designed for them. The Plus/4 was incompatible with the Commodore 64 's software and some of its hardware. Although the Commodore 64 was more established, the Plus/4 was aimed at the more business-oriented part of the personal computer market. In

232-499: A numeric keypad and built-in voice synthesis . The latter two models never made it to production. All these computers used a 6502 compatible MOS 7501 or 8501 that was clocked approximately 75% faster than the CPUs used in the VIC-20 and C64, and a MOS Technology TED all-in-one video, sound, and I/O chip. The Plus/4's design is thus philosophically closer to that of the VIC-20 than that of

348-530: A shared memory architecture, in which screen data resided in main memory. This means that the video chip has to access the memory while it is displaying the picture, in effect slowing down the CPU to less than half its full speed in this screen area. Only during those periods when the video chip is displaying the screen border or putting out the horizontal and vertical retrace signals is the CPU able to run at full speed. This means that, on average, with standard 40x25 screen

464-701: A 1 MHz and a 2 MHz system clock; at the higher speed the VIC-II's video output is merely displaying every second byte in the code as black hires bit-pattern on the screen, suggesting use of the C128's 80-column mode at that speed (via the 8563 VDC RGB chip). Rather unofficially, the two extra registers are also available in the C128's C64 mode, permitting some use of the extra keys, as well as double-speed-no-video execution of CPU-bound code (such as intensive numerical calculations) in self-made C64 programs. The extra registers are also one source of minor incompatibility between

580-461: A C16-family-specific Datassette (the Commodore 1531) and joysticks , but the pins are identical to those used on the Commodore 64 , so can be used with a simple adapter, in fact Commodore themselves sold Commodore 16 models with C2N datasettes designed for the Commodore 64 with adapters after the initial production run. The reason for changing the joystick ports was to reduce size. The C16's serial port (Commodore's proprietary "serial CBM-488 bus",

696-575: A consumer-oriented computer and undercut everyone's prices. Although Japanese companies would soon dominate the U.S. video game console market, their feared dominance of the home computer field never materialized. Additionally, Timex, Mattel, and TI departed the computer market before the C16 was released. Outwardly the C16 resembles the VIC-20 and the Commodore 64 , but with a dark-gray or dark-brown case and light-gray keys. The keyboard layout differs slightly from

812-587: A defender of the machine acknowledged that the Plus/4 was expensive compared to the C64, and that the built-in applications' quality was poor. Computer dealers disliked Commodore's usual practice of introducing new computers incompatible with existing ones. Steve Leininger, the designer of the Tandy TRS-80 Model I , said in July 1984 that the new computer's incompatibility with C64 software "makes you wonder". He added "It's

928-408: A feature. However, in order to use as little additional circuitry as possible, they organized it in the same manner as character mode, i.e. 8x8 and 4x8 tiles. Bitmap graphics require an 8k page for the pixel data and each byte corresponds to one row of eight or four pixels. The next byte is the row underneath it and after the 8th row, returning to the top of the next tile. In hi-res bitmaps, screen RAM

1044-487: A little on the spooky side", unfavorably comparing the Plus/4 to the Apple IIc 's compatibility with the tens of thousands of Apple II software packages. Another problem that kept the Plus/4 from selling was that even though the three machines (116, C16 and Plus/4) were all compatible with one another, developers tended to write programs for the lowest common denominator in a computer family. So as not to alienate buyers of

1160-495: A lower cost plastic shell and 65 color clocks per line (for NTSC, 63 for PAL), as well as separated chroma and luminance, allowing for an early form of S-video. Several revisions were made chiefly in the interest of improving video output quality, which was poor on the early units, and eliminating a bug that would cause random pixels to appear on screen (a few early games intentionally exploited this for graphics effects that consequently did not work on later C64s). The 64 color clocks on

1276-467: A palette of 121 colors, which was considerably more than the 16 colors available on the Commodore 64 's VIC-II video chip, but it lacked the VIC-II's sprites and the sound capabilities were not as advanced as the SID also used in the Commodore 64. From a practical user's point of view, three tangible features the C16 lacks are a modem port and VIC-20/C64-compatible Datasette and game ports. Commodore sold

SECTION 10

#1732851283340

1392-429: A part of UGS Corp. ), and partly laid out manually on vellum paper . The design was partly debugged by fabricating chips containing small subsets of the design, which could then be tested separately. This was easy since MOS Technology had both its research and development lab and semiconductor plant at the same location. The initial batch of test chips came out almost fully functional, with only one bad sprite. The chip

1508-521: A similarly dimensioned display as the 40-column PET series. By reloading the VIC-II's control registers via machine code hooked into the raster interrupt routine (the scanline interrupt), one can program the chip to generate significantly more than 8 concurrent sprites (a process known as sprite multiplexing ), and generally give every program-defined slice of the screen different scrolling, resolution and color properties. The hardware limitation of 8 sprites per scanline can be increased further by letting

1624-407: A simpler design with fewer ICs and lower heat output, as well as more room inside the case for heat to disperse. Like with the C64, the Plus/4 also used an unreliable power supply that was prone to overheating and damaging components in the machine. This made upgrading to the Plus/4 from the VIC-20 or C64 more expensive, since the user in many cases would have to buy new peripherals in addition to

1740-630: A television. The TED chip had identical resolutions and video modes to the VIC-II (bitmap or character graphics which could be high-resolution or multicolor), but lacked hardware sprites . Its sound capability was a two-voice square wave generator. The first eight colors of the TED's palette are the same as the VIC-II, but colors 8-15 are different. It allowed each color except 0 (black) to be set to one of eight possible luminance levels, thus making 121 total colors possible. The power-on default configuration places

1856-474: Is 256 (assuming the VIC-II's entire 16k page was filled). They are addressed by using a block number to refer to each sprite pattern in memory beginning with 0 and going to 255 ($ FF) depending on their position in the video page. (if the second video bank (numbered as 0 1 2 and 3) is used, Block 0 would refer to the sprite stored at $ 4000 and Block 255 would be at $ 7FC0 ). Each sprite may be double-sized vertically, horizontally or both. This does not increase

1972-530: Is an essential part of C64 game programming. In the computer's power-on default state, the first MOS Technology CIA chip generates a maskable interrupt (IRQ) 60 times per second (whether NTSC or PAL, this is unrelated to video refresh) which sends the CPU to the kernel IRQ handler at $ EA31 . The handler acknowledges the CIA's IRQ, updates the clock, scans the keyboard, and blinks the cursor in BASIC. Games normally disable

2088-404: Is reached on screen, or a raster interrupt can be programmed to trigger at a certain scanline, after which the program quickly changes the sprite coordinates. This method can result in many additional sprites onscreen at once, often for a total of 16 to 24 or more. For a demo, though, the limit is considerably more flexible. In theory the maximum number of different sprites visible at the same time

2204-425: Is scrolled simultaneous with screen RAM and works the same way. VIC-II scrolling is a relatively complicated, CPU intensive task, although it is not uncommon for C64 game programmers to cheat by designing graphics so that the color RAM can remain static. Another standard trick is to use a section of the screen (perhaps the bottom or top 4 or 5 character rows) as a game status area to display score, lives, etc. reducing

2320-555: Is the power-on default. The second segment ( $ 4000 – $ 7FFF ) is typically the best choice for programming from BASIC as it is the only segment that is completely free RAM with no ROMs or I/O registers mapped into it. The fourth segment ( $ C000 – $ FFFF ) is also a good choice provided that machine language is used, as the kernel ROMs must be disabled to gain read access by the CPU, and it avoids having discontiguous program code and data that would result from using $ 4000 - $ 7FFF . Note that graphics data may be freely stored underneath

2436-499: Is the standard Commodore user port used since the PET, featuring TTL voltage which is incompatible with RS-232 . This requires a voltage converter to use modems or other serial devices from non-Commodore vendors. The Plus/4 keyboard had a separately placed directional "diamond" of four cursor keys, presumably more intuitive to use than the VIC's and C64's two shifted cursor keys. A reset button

SECTION 20

#1732851283340

2552-556: Is true for programs in machine code but BASIC 3.5 is slightly slower than BASIC 2.0 due to its greater size, and performance slows down further when programs cross over the $ 8000 line because the BASIC ROM has to be switched out to read BASIC program text. The NTSC model of Plus/4 is about 10% slower than the PAL model displaying a standard screen but slightly faster with screen blank. The Plus/4 also suffered serious reliability problems due to

2668-428: Is used to hold the foreground and background colors of each tile (high and low nibble of each byte). This is the only VIC-II mode that does not make any use of the color RAM at $ D800 or the background color register at $ D021 . Multicolor bitmap mode allows three colors per tile (the fourth is the background color as set in $ D021 ). Colors 1 and 2 are selected by the bits in screen RAM (same as hires bitmaps) and

2784-466: Is used, the upper two bits of the character code are used to select one of four background color registers. This allows four different background colors on the screen, but at the expense of only allowing 64 different characters instead of 256. Because this is limiting, games seldom used it. Adding an all-points-addressable bitmap mode was one of the Commodore design team's primary goals, as the VIC-I lacked such

2900-464: The Central European market with the failed product at a greatly reduced price. A number of unofficial ports of C64 games were produced by Hungarian users. Most of the developers of the Plus/4 also worked on the later Commodore 128 project, which was much more successful. Even as the Plus/4 and C16 began shipping, Compute!'s Gazette cited rumors that they were being "'de-emphasized'" in favor of

3016-503: The MOS Technology 6567/6566/8562/8564 ( NTSC versions), 6569/8565/8566 ( PAL ), is the microchip tasked with generating Y/C video signals (combined to composite video in the RF modulator ) and DRAM refresh signals in the Commodore 64 and Commodore 128 home computers . Succeeding the original MOS Technology VIC used in the VIC-20 , the VIC-II was one of the key custom chips in

3132-544: The Mattel Intellivision . The Atari 800 was also mined for desired features, particularly bitmap mode, which was a desired goal of the MOS team as all of Commodore's principal home computer rivals had bitmap graphics while the VIC-20 only had redefinable characters. About 3/4 of the chip surface is used for the sprite functionality. The chip was partly laid out using electronic design automation tools from Applicon (now

3248-591: The TED chip which included NTSC and PAL video, sound and DRAM refresh functionality. Though according to the designer it "was supposed to be as close to a single-chip computer as we could get in the 1980s," the CPU, RAM, ROM and some glue logic were still on their own separate chips. (This was considerably less integrated than microcontrollers of the day, but those did not generally offer video and sound functionality.) The C16 has 16 KB of RAM with 12 KB available to its built-in BASIC interpreter. The TED chip offered

3364-416: The small business market, the Plus/4 had no realistic chance of succeeding in its intended use. Further dividing the market was that once the user had created data using many of the built-in software packages, the result could only be saved to a connected disk drive – much of the software did not support tape. Thus, tape-based home users, the only users who might still have been interested in

3480-439: The BASIC ROM at $ A000 - $ BFFF , the kernel ROM at $ E000 - $ FFFF or I/O registers and color RAM at $ D000 – $ DFFF , since the VIC-II only sees RAM, regardless of how the CPU memory mapping is adjusted; character ROM is visible only in the first and third segment, thus if segment two or four is used, the programmer must supply his own character data. The screen RAM, bitmap page, sprites, and character sets must all occupy

3596-550: The Background and Sprite-to-Sprite Collision registers. The former is rarely used because it cannot provide information on the specific background object the sprite is touching. $ D01B contains the Sprite To Background priority register, which is used to govern whether a sprite moves behind or in front of background graphics. When a sprite enters the same space as another sprite, the lower-numbered ones will always pass over

Commodore Plus/4 - Misplaced Pages Continue

3712-547: The C116 and C16, which were intended to be the largest selling machines in this series, most software was designed to run in 16 KB and the extra memory on the Plus/4 was not as widely supported as it could have been. Also, most development for these machines was in the less-lucrative European markets. Major software developers in North America continued to focus instead on the huge C64 market. Plus/4 software development in North America

3828-399: The C116 is the original member of this family of computers and is the original vision as imparted by Jack Tramiel to the engineering department. It was designed to sell for $ 49 to $ 79. The C16 and the Plus/4 came later and were mostly driven by the company trying to figure out what to do with the new computer family after Tramiel's departure from Commodore. In an early stage of development of

3944-419: The C128's C64 mode and a real C64 - a few older C64 programs inadvertently wrote into the 2  MHz toggle bit, which would do nothing at all on a real C64, but would result in a messed-up display on a C128 in C64 mode. The VIC-IIe has the little-known ability to create an additional set of colors by manipulating the registers in a specific way that puts the color signal out of phase with what other parts of

4060-515: The C16 never exceeds the $ 8000 line, banking does not occur on that machine. As on the C64, writing to the ROM areas will alter the RAM underneath. The registers at $ FDD0-$ FDDF contain the ROM configuration for the machine, which normally has the BASIC and kernal ROMs enabled. The ROM configuration is adjusted by writing to the registers (the value is irrelevant). $ FDD0 enables or disables BASIC, $ FDD1

4176-599: The C16, C64, C128 and Amiga. Prizes included money, Commodore software and hardware and the right to have the software published by Grupo Sigma for the local market. The contest winners had limited sales restricted only to Mexico, so the resulting original software is almost impossible to find. Grupo Sigma stopped supporting the brand in mid-1993, in favor of the growing (and more profitable) IBM PC compatible market. 15 colors in 8 luminance , giving 120 shades of color levels plus black. MOS Technology VIC-II The VIC-II ( Video Interface Chip II ), specifically known as

4292-409: The C16, Commodore was planning to have single-layer PCBs built in as an attempt of cost reducing, with the manufacturing cost of such a PCB being around $ 12. But these plans were later discarded possibly due to technical problems. It was the first and only attempt of Commodore using single-layer PCBs inside their computers, and only one such PCB is known to be preserved. The C16 was a major failure in

4408-554: The C64 and VIC, which used lighter cases and darker-colored keys. Commodore's intent with the Plus/4 was not to replace the C64, but to expand the home computer market and sell the Plus/4 to users who were more interested in serious applications than in gaming. By 1984, however, in the US, most of these customers were beginning to switch to the new, low-cost IBM PC compatibles such as the Leading Edge Model D and Tandy 1000 series. It

4524-505: The C64 was inconsistent. The Plus/4's serial, user, and video ports were compatible with the C64, but the Datasette port was changed, rendering previous units incompatible without third-party adapters that only became available later. This also posed a problem for the many third-party C64 printer interfaces that allowed one to connect a standard Centronics parallel printer to the Commodore serial port. Since most of these interfaces connected to

4640-523: The C64 went on to become a best-seller and was selling for $ 199 at the time of the Plus/4's introduction. Even while C64 sales were rising, Commodore president Jack Tramiel wanted a new computer line that would use fewer chips and at the same time address some of the user complaints about the VIC and C64. Rumors spread in late 1983 of a new computer in 1984 called the "Commodore 444" or "Ted", with built-in word processing and spreadsheet software, and that it would be one of four new computers that would replace

4756-429: The C64, which emulated the 6551 chip in software. This allowed the Plus/4 to use high-speed modems without additional hardware or software tricks (the C64 required specially written software to operate at 2400 bit/s ), at a time when 300- or 1200-bit/s modems were more common – and Commodore never released a 2400-bit/s modem – so this feature went largely unnoticed. The Plus/4's serial port

Commodore Plus/4 - Misplaced Pages Continue

4872-455: The C64. The Plus/4 was introduced in June 1984 and priced at US$ 299 (equivalent to $ 880 in 2023). The Plus/4 was the flagship computer of the line, featuring 64 KB of RAM while the C16 and C116 had 16 KB . The Plus/4 had built-in software, whereas the others did not. All of the machines were distinguished by their dark gray cases and light gray keys. This was a reversal of the color scheme on

4988-533: The CIA's interrupt and instead set up the VIC-II to generate interrupts when a specific scanline is reached, which is necessary for split-screen scrolling and playing music. The game remaps the IRQ vector at $ 0314 / $ 0315 to its raster handler which performs these functions and then optionally executes a JMP $ EA31 instruction to return control to the kernel. Some games use only one IRQ; however, chained IRQs are more common and improve program stability. In this setup,

5104-521: The Color PET, due to memory speed constraints. In order to construct the VIC-II, Charpentier and Winterble made a market survey of current home computers and video games , listing up the current features, and what features they wanted to have in the VIC-II. The idea of adding sprites came from the TI-99/4A computer and its TMS9918 graphics coprocessor . The idea to support collision detection came from

5220-460: The Commodore 64 (the other being the MOS Technology 6581 sound chip). The VIC-II chip was designed primarily by Albert Charpentier and Charles Winterble at MOS Technology, Inc. as a successor to the MOS Technology 6560 "VIC" . The team at MOS Technology had previously failed to produce two graphics chips named MOS Technology 6562 for the Commodore TOI computer, and MOS Technology 6564 for

5336-470: The Datasette port to get +5 volts for power, they were incompatible with the Plus/4 unless the user modified the interface and risked voiding the warranty. For a computer intended to be used for productivity applications , this was a heavy weakness. Additionally, with the Plus/4, Commodore abandoned the common Atari -style joystick ports used on the C64, replacing them with a proprietary mini-DIN port that

5452-589: The IRQ is remapped to the second routine and so forth for each one until the last one restores it to the address of the first IRQ. When chained IRQs are used, only one JMP $ EA31 instruction is needed in the chain and the others can be ended with JMP $ EA81 , which simply goes to the end of the kernel handler. Also it is not uncommon for games to switch out the kernal and use their own IRQ handler instead. The NMI can be used for an additional interrupt thread, although undesirable side effects can result from accidentally pressing

5568-410: The PAL delay line in the monitor or TV which averages the color hue , but not the brightness, of consecutive screen lines can be used to create seven nonstandard colors by alternating screen lines showing two colors of identical brightness. There are seven such pairs of colors in the VIC chip. The C64's team did not spend much time on mathematically computing the 16 color palette. Robert Yannes, who

5684-519: The Plus/4 accounted for about 60%-70% of North American sales. Commodore's ultimate decision to discontinue the 264 line was not due to lack of sales, but in order to free up production capacity for C64s for the 1985 Christmas season. The Plus/4 was later used in Denmark , as part of a bundled product from the then-national telecommunications company (now TDC A/S ) to help hearing-impaired people communicate over telephone lines. Outgoing calls were made from

5800-502: The Plus/4 via modem to a call center where a service assistant would read the written input from the user, call the other party and read the text aloud. Vice versa, incoming calls could be made from other users to the call center, who would dial the Plus/4 modem. A strobe light connected to the Plus/4 would notify the hearing impaired about the incoming call. The Plus/4 enjoyed lasting popularity in Hungary due to CBM's decision to saturate

5916-427: The Plus/4's CPU runs only about 15% faster than that of the C64. However, as mentioned the Plus/4 can be 75% faster than a C64 when using screen blanking mode. The Plus/4's PAL model may also be switched to NTSC mode by disabling the screen which sets the CPU frequency to 2.22 MHz (this is 115% faster than C64's maximum speed). So a Plus/4 (PAL) is one of the fastest 6502 based computers for raw calculations. This

SECTION 50

#1732851283340

6032-431: The Plus/4's less-capable but built-in and instantly ready software, were shut out from the package. The keyboard on the Plus/4 was different from the keyboards of previous Commodore machines and also its sibling the C16; this was due to cost saving measures resulting from the need to retool for Plus/4 production, while the C16 could use the existing C64 tooling due to an identical case design. Peripheral compatibility with

6148-598: The Plus/4's user port and Three-Plus-One software). Software is generally compatible among all three provided it can fit within the C16's smaller RAM and does not utilize the user port on the Plus/4. While the C16 was a failure on the US market, it enjoyed some success in certain European countries and Mexico. The C16 was intended to compete with other sub-$ 100 computers from Timex Corporation , Mattel , and Texas Instruments (TI). Timex's and Mattel's computers were less expensive than

6264-475: The Plus/4, on the other hand, most of the ROM area was automatically switched out when not needed, rendering the RAM existing at the same addresses accessible for BASIC programs. The BASIC program area on the Plus/4 begins at $ 1000 , but the BASIC ROM starts at $ 8000 so the automatic switching of the OS ROMs is not initiated unless a BASIC program grows big enough to reach $ 8000 , or 28K in size. Since RAM on

6380-470: The Plus/4. INFO showed a photo of the new (competitor) computer with the caption "Is this a joke?" and compared it to the Ford Edsel and to a dinosaur. Compute!'s Gazette compared the Plus/4 to " The Emperor's New Clothes ". Many predicted that it would quickly fail; INFO gave away its review unit in a sweepstakes for readers, promising that the computer was "Sure to become a collector's item!". Even

6496-542: The ROM configuration at $ FDD0-$ FDDF excepting $ FC00-$ FCFF ; this is done by BASIC automatically to read program text above $ 8000 . Since disabling the ROMs will also remove the kernal interrupt handler, it will be necessary to first turn off interrupts via an SEI instruction. BASIC 3.5 added all of BASIC 4.0's disk commands as well as sound and graphics functions to support the TED, additional programming features, and statements to allow structured programming. While BASIC 2.0

6612-475: The ROMs in and out of memory as needed, and that placed the memory mapped I/O registers, which all 6502-based computers have to use, at the top of memory ( $ FD00 ), while in the C64 they had been located at the much lower address $ D000 . On the C64, a program was able to swap out the ROMs and the I/O registers manually and thus gain access to the full 64 KB , but this was not compatible with BASIC on that machine; on

6728-502: The Restore key as it triggers an NMI if pressed. The VIC-II may also generate a raster interrupt from the collision registers, but this feature is rarely used as it provides insufficient information to the program in most cases. The VIC-II has a 14-bit address bus and can use any of the four 16k segments of the C64's memory space for video data. To manage this, two additional address bits are contributed by port bits of CIA. $ 0000 - $ 3FFF

6844-411: The TED chip, which was one of the first ICs MOS developed using the newer, lower power HMOS process. MOS had considerable difficulty getting it to work reliably and TED chips and the 7501 CPU consequently had a high failure rate. Autofire-capable joysticks and improperly constructed 9-pin adapters have also been blamed for damaging TED chips. The C16 had fewer reliability problems than the Plus/4 due to

6960-557: The U.S. and was discontinued within a year, but it sold reasonably well in Europe as a low-end game machine (over 90% of all C16 software was produced by European developers) and in Mexico as well. The C16's failure in the US market was likely due to a lack of software support, incompatibility with the C64, and lack of importance to Commodore after its competitors withdrew from the market. A total of 1 million Plus/4s, C16s, and C116s were sold, with

7076-459: The VIC), memory mapped to the range $ D000 – $ D02E in the C64 address space. Of all these registers, 34 deal exclusively with sprite control (sprites being called MOBs, from "Movable Object Blocks", in the VIC-II documentation). Like its predecessor, the VIC-II handles light pen input, and with help from the C64's standard character ROM, provided the original PETSCII character set from 1977 on

SECTION 60

#1732851283340

7192-462: The VIC-20 and C64, which the company would discontinue. The company's third salvo – which, as it turned out, was fired just as most of Commodore's competition was leaving the home computer market – was the C116 , C16 , and 264, which became the Plus/4. There were also prototypes of a 232, basically a 32 KB version of the Plus/4 without the software ROMs, and a V364, which had

7308-559: The VIC-20, and although the VIC-20 offered better expandability, a full-travel keyboard, and in some cases more memory, the C16 offered a chance to improve upon those advantages. The TI-99/4A was priced in-between Commodore's VIC-20 and Commodore 64 , and is somewhat between them in capability, but TI was lowering its prices. On paper, the C16 was a closer match for the TI-99/4A than the aging VIC-20. Commodore president Jack Tramiel feared that one or more Japanese companies would introduce

7424-451: The VIC-II during its lifetime. Compute!'s Gazette ' s first issue, in July 1983, reported that there had already been eight since the Commodore 64's release in mid-1982. The earliest revision of the VIC-II was used in machines made during 1982 and early 1983; it had a ceramic shell for thermal reasons and generated 64 NTSC color clocks per line. These chips also did not output separated chroma and luminance signals. Later revisions had

7540-489: The VIC-II will see the character ROM there instead. Because these areas of RAM could not be used by the VIC-II graphics chip, they were frequently used for music/sound effects (the SID chip). The C64 has the ability to have RAM and ROM at the same address in memory but the CPU would "see" one and the VIC-II chip would "see" the other. In default high-resolution character mode, the foreground of each character may be set individually in

7656-420: 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. Note that below register addresses are stated as seen by CPU in a C64. To yield the register numbers as usually given in data sheets (i. e. starting with 0), the leading "D0" should be omitted. The VIC-II is programmed by manipulating its 47 control registers (up from 16 in

7772-483: The actual data for the characters was read from memory at a specified location. This location is one of the VIC-II registers, which allowed programmers to construct their own characters sets by placing the appropriate data in memory; each character is an 8x8 grid, a byte representing 8 bits horizontally, so 8 bytes are required for a single character and thus the complete 256-character set uses a total of 2,048 bytes. Theoretically as many as eight character sets can be used if

7888-527: The aluminum RF shield as a heat sink (on NTSC machines; PAL machines were sold in countries with less restrictive RF interference standards than the United States and so only used aluminized cardboard), however it was not entirely effective at preventing overheating and chip failure. The 85xx VIC-II used in C64Cs was made with the more modern 3.5 μm HMOS process and requires only a single 5V power rail instead of

8004-470: The amount of scrolling that has to be performed. Finally, it is often necessary to use the "double-buffering" technique to prevent screen tearing. Two 1k blocks of screen ram are reserved; one is displayed while another is written to, then during vblank they are quickly swapped through manipulation of the VIC-II registers. Unfortunately this cannot be done with color RAM. Late in the C64's commercial lifespan, an exploit known as VSP (Variable Screen Positioning)

8120-514: The applications were whipped up in a great hurry ... I would never use the software". The Transactor stated, "The word processor is barely that, the data base defiles the name, and the spreadsheet has little spread". The magazine advised users to "think of the software as an almost free bonus". BYTE called the built-in software "just a tiny bit better than bad", noting that a Commodore 64 with Multiplan and other third-party software would be cheaper and much more powerful. The magazine stated that

8236-480: The blinking cursor and the characters in the reverse-video mode. It may display 256 characters in the text mode. It may use graphics split by raster interrupt and show pictures at 320x288 resolution. This, with interlaced mode, makes it possible to show 320x496 images. In addition, the TED has 16 address lines , thus it can "see" the entire memory space of the computer unlike the VIC-II. The video buffers may thus be placed anywhere in memory and there are no mirrors of

8352-480: The character ROM to get in the way like on the C64. Commodore released a high-speed floppy disk drive for the Plus/4, the Commodore 1551 , which offered much better performance than the C64/ 1541 combination because it used a parallel interface rather than a serial bus . The 1551 plugged into the cartridge port. The Plus/4 had a built-in MOS Technology 6551 UART chip that could perform up to 19200 bit/s , unlike

8468-509: The chip consider it to be in. This ability was demonstrated in the "Risen from Oblivion" demo. Unfortunately it does not work on all monitors - correct colors are confirmed on Commodore CRT monitors and their equivalents. Using the specific behavior of the VIC-IIe's test bit, it is furthermore capable of producing a real interlace picture with a resolution of 320×400 (hires mode) and 160×400 (multicolor mode). Commodore made many modifications to

8584-407: The clock for the additional Zilog Z80 CPU of that computer. It also has two extra registers. One of the additional registers is for accessing the added numerical keypad and other extra keys of that computer; this function was added to the VIC merely because that proved to be the easiest place in the computer to add the necessary three extra output pins. The other extra register is for toggling between

8700-426: The color RAM. In multicolor character mode, color 3 is limited to the first eight possible color values; the fourth bit is then used as a flag indicating if this character is to be displayed in high-resolution or multicolor, thus making it possible to mix both types on one screen. Colors 1 and 2 are set by the registers at $ D022 and $ D023 and are global for all characters. If Extended Background Color Mode

8816-455: The command SYS DEC("CDAB") or SYS 52651 puts up the names of three programmers and a hardware designer: Fred Bowen, John Cooper, Terry Ryan and Bil Herd , with Bowen's name at the top in reverse-field and Ryan's at the bottom blinking on and off. While the C64 had the advertised 64 KB of RAM installed, only about 38 KB was available for BASIC programs. The Plus/4's BASIC V3.5 made 59 KB available, aided by its memory map that swapped

8932-598: The computer "should have been called not the Plus 4, but the Minus 60". INFO warned that users who wanted to use the computer "for serious 'productive' work, you are in deep trouble with the PLUS/4" because of the poor software, and unlikelihood that better third-party replacements would be available. Better business software packages were available for equivalently-priced systems, including the C64. Since IBM compatibles were quickly dominating

9048-506: The earlier models, adding an escape key and four cursor keys replacing the shifted-key arrangement the C-64 and VIC inherited from the PET series. The C16 is in some respects faster than the Commodore 64 and VIC-20; the processor runs at a speed roughly 75% faster, and the BASIC interpreter contains dedicated graphics commands, making drawing images considerably faster. The system was designed around

9164-402: The early 1980s, Commodore found itself engaged in a price war in the home computer market. Companies like Texas Instruments and Timex Corporation were releasing computers that undercut the price of Commodore's PET line. Commodore's MOS Technology division had designed a video chip but could not find any third-party buyers. The VIC-20 resulted from the confluence of these events and it

9280-434: The entire 16k of video memory were filled. In addition to charsets, the VIC-II also uses 1000 bytes to store the 25 lines of 40 characters per line, one byte for each character, which in power on default configuration sits at $ 400 - $ 7E8 . Color RAM is accessed as bits 8 to 11 of the video matrix; in the 64 and 128, it is located in I/O space at $ D800 - $ DBFF and cannot be moved from that location. It contains

9396-468: The existing resistor values, rather than having a completely unique set for each color. Early versions of the VIC-II used in PAL C64s have a different color palette than later revisions. The full palette of sixteen colors is generated based on variations of YPbPr signals as shown below: The 8564/8566 VIC-IIe in the Commodore 128 uses 48 pins rather than 40, as it produces more signals, among them

9512-428: The forthcoming 128 which, the magazine reported, would be both hardware and software compatible with the C64. Their shortcomings were the inspiration for the Commodore 128 series as, urged on by the computer press, the designers calculated that if they created a computer that was compatible with the C64 that ultimately management and marketing could not damage the C64 software base (much) in spite of how they were to take

9628-413: The game Turrican II's underwater area (which was vertically distinct) has different colors. Others, such as Epyx 's Summer Games and COMPUTE!'s Gazette ' s Basketball Sam & Ed , overlay two high-resolution sprites to allow two foreground colors to be used without sacrificing horizontal resolution [1] . Of course, this technique reduces the number of available sprites by half. On PAL C64s,

9744-417: The higher numbered ones. In order to scroll a character screen, the VIC-II is set to 38-column and/or 24-line mode via the registers at $ D011 and $ D016 . This creates an off-screen buffer where the row of characters to be scrolled is placed. By adjusting the scroll bits in the above-mentioned registers, one row may be moved on-screen after which it repeats unless a new row is put in the buffer. Color RAM

9860-547: The initial VIC-II was done with the intention of allowing NTSC artifact color in high resolution bitmap mode as the Atari 8-bit computers did, but that idea was quickly dropped. Because it was necessary for cost reasons to switch to a plastic shell, overheating tended to be a problem with the VIC-II. This was for several reasons including the high density of the die relative to the process used, and its high internal speed (8 MHz). Commodore tried an impromptu solution for this by using

9976-405: The latter have one individual color for each sprite and two global ones. VIC-II has eight sprites, each of which uses 64 bytes of memory to store but, with certain limitations, it can display many more. Sprite multiplexing is a common method of getting more than eight on screen (although there still is a maximum of eight per scan line). The VIC-II scanline counter can be polled until the desired point

10092-648: The latter two accounting for about 60% of its total volume. Beginning in 1986, remaining C16, C116 and Plus/4 inventories were sold at a much-reduced price on the Eastern Bloc market, chiefly Hungary . Hungary did not produce any home computers at the time, the Soviet and Bulgarian models were far too expensive for most Hungarians while the East German models were not for sale to private parties, and most Western models were completely unavailable. Thus, this move by Commodore

10208-423: The low function ROM, $ FDD2 the low cartridge ROM, $ FDD3 is unused, $ FDD4 the kernal, $ FDD5 the high function ROM, and $ FDD6 the high cartridge ROM. The upper portion of the kernal ROM at $ FC00-$ FCFF is always enabled no matter what the memory configuration, as are the I/O registers. Furthermore, the registers at $ FF3E-$ FF3F if written to will bank out (or in) all ROMs currently enabled via

10324-506: The luminance for color 0 and 4-7 the luminance for color 1) while it is not used at all in C64 hi-res graphics. In multicolor bitmap mode, the same setup is used, but while on the C64, color RAM holds the values for color 3, on the Plus/4 it instead holds the luminance values for colors 1–2. Color 3 is instead global and obtained from the register at $ FF16 . The Plus/4's TED has several advantages over C64's VIC+SID. All TED registers that are available can be read and written. TED may realize

10440-407: The new computer. It also made the Plus/4 less attractive to new buyers, since VIC and C64 peripherals were more plentiful and less expensive than their Plus/4 counterparts. The street price for a complete C64 system was lower than that of a comparable system based on the Plus/4. Combined with the C64's greater abilities and broader software base, most buyers opted for the older model. The press mocked

10556-513: The product to market. Commodore 16 The Commodore 16 is a home computer made by Commodore International with a 6502 -compatible 7501 or 8501 CPU , released in 1984 and intended to be an entry-level computer to replace the VIC-20 . A cost-reduced version, the Commodore 116 , was mostly sold in Europe. The C16 and C116 belong to the same family as the higher-end Plus/4 and are internally very similar to it (albeit with less RAM – 16 KB rather than 64 KB – and lacking

10672-415: The remaining color can be set individually for every such 4×8 pixel area as defined in color RAM. Sprites in multicolor mode (12×21 pixels) have three colors plus transparency: two colors shared among all sprites and one individual. Artists pick shared colors such that the combination with individual colors leads to a colorful impression. Some games reload shared colors during the raster interrupt; for example,

10788-465: The same segment window (provided the CIA bits aren't changed via scanline interrupt). The last six bytes of system memory ( $ FFFA - $ FFFF ) contain the IRQ, NMI, and reset vectors so if the top of memory is used to store a character set or sprite data, and the KERNAL ROM is switched out revealing the RAM underneath to the CPU, it will be necessary to sacrifice one character or sprite to avoid overwriting

10904-432: The screen memory at $ 0C00 and the color memory at $ 0800 . Color memory is integrated into the TED and there is no separate color RAM like on the VIC-20 and C64. Bits 0-3 of each byte in color RAM hold the color value and 4-6 hold the luminance. Bit 7 is a flag that sets blinking text. Bitmap mode is similar to the C64, however in hi-res mode the color RAM is used to supply the luminance values for each block (bits 0-3

11020-516: The sprite resolution (it is still 24 pixels wide and 21 tall) but each pixel will be twice as wide and/or twice as tall. Because the horizontal position register for each sprite is one byte and limited to a maximum value of 255, it alone cannot cover the entire 320 pixels of the VIC-II's screen area, so an additional register called the Most Significant Byte Flag provides a 9th position bit for all sprites. $ D01E and $ D01F contain

11136-452: The sprites flicker rapidly on and off. Mastery of the raster interrupt is essential in order to unleash the VIC-II's capabilities. Many demos and some later games would establish a fixed "lock-step" between the CPU and the VIC-II so that the VIC registers could be manipulated at exactly the right moment. The C64 shipped with the PETSCII character set in a 4k ROM, but, like the VIC-20 before it,

11252-462: The system board). Despite costing less than the Plus/4, the C16's keyboard was higher quality and easier to type on. The Commodore 16 is one of three computers in its family. The even-less-successful Commodore 116 is functionally and technically similar but was shipped in a smaller case with a rubber chiclet keyboard and was only available in Europe. The family's flagship, the Commodore Plus/4 ,

11368-503: The third is from color RAM. Despite the high level of color detail and all-points-addressable capabilities of bitmap mode, it is generally impractical for in-game graphics due to requiring a high amount of system resources (8k for the pixel data plus considerable more CPU cycles to modify each tile) and normally cannot be scrolled. Thus, it is most commonly seen on loader and sometimes title screens. VIC-II sprites are either 24x21 monochrome or 12x21 multicolor. Similar to character graphics,

11484-482: The user port or built-in programs. The C16 had a memory expansion port, labelled as a cartridge port on the machine, but referred to as a memory/cartridge port in the manual. Commodore never sold a memory expansion for the C16, but they were available from third-party developers. With 64 KB, the C16 is identical to the Plus/4 , except for the built in software of the Plus/4. Hardware designer Bil Herd notes that

11600-495: The values for color 1 (color 3 in multicolor mode) of each character. The character ROM is mapped into two of the VIC-II's four "windows", at $ 1000 - $ 1FFF and $ 9000 - $ 9FFF , although the CPU cannot see it there (the character ROM may be switched into $ D000 - $ DFFF where it is visible to the CPU, but not the VIC-II). Thus graphics data or video buffers cannot be placed at $ 1000 - $ 1FFF or $ 9000 - $ 9FFF because

11716-404: The vectors. The VIC-II has 47 read/write registers listed below: In multicolor character mode (160×200 pixels, which most games use) characters have 4×8 pixels (the characters are still approximately square since the pixels are double width) and 4 colors out of 16 colors. Three of the colors are the same for the entire screen (the background color, multicolor 1, and multicolor 2 registers), while

11832-462: Was 8K in size and BASIC 4.0 12K, BASIC 3.5 ballooned to 20K in size, as big as the entire set of OS ROMs in the VIC-20 and C64. The Plus/4, unlike the C64, was equipped with a ROM -resident application suite . It was, however, completely inadequate for the Plus/4's originally intended market of business and professional users. In an otherwise largely favorable review of the computer, John J. Anderson of Creative Computing wrote "I would guess that

11948-488: Was a variation of the Commodore PET IEEE interface as used on the VIC-20 and Commodore 64, which meant that printers and disk drives were interchangeable with the older machines. As it was a serial interface, modems could be connected with a suitable interface. Partially for cost reasons, the user port, designed for modems and other devices, was omitted from the C16 (although the connections for it were still present on

12064-419: Was added on the right side of the system, a feature lacking on the C64. The Plus/4 also revived the built-in machine language monitor from the PET days, a feature missing on the VIC-20 and C64. The Plus/4's memory map , which used bank switching far more extensively than the C64, gave it a 56% larger amount of user-accessible memory than the C64 for programming in BASIC, and its BASIC programming language

12180-530: Was developed in 5 micrometer technology. The work on the VIC-II was completed in November 1981 while Robert Yannes was simultaneously working on the SID chip. Both chips, like the Commodore 64 , were finished in time for the Consumer Electronics Show in the first weekend of January 1982. Some of the graphics modes on the 64 are really strange, and they have no analogs to the Atari or Apple, like

12296-636: Was discontinued in 1985. Although, like the Commodore B128 , Plus/4 systems remained available from liquidators for years after its discontinuation, the Plus/4 disappeared from Commodore's major markets by 1988. The TED offered 121-color (15 colors × 8 luminance levels + black) video, a palette matched only by the Atari 8-bit computers and the Enterprise at the time, and 320×200 video resolution, similar to many computers intended to be capable of connecting to

12412-503: Was discovered that involved manipulation of the control bits in $ D011 to produce fast scrolling at a much lower CPU cycle cost than the standard scroll registers, however it required careful, cycle-exact coding and did not work reliably on some VIC-II revisions; also it can only be used for horizontal scrolling. It is notably used in Mayhem in Monsterland . Utilization of raster interrupts

12528-641: Was displayed in special modules at the electronics department called "El Universo de la Computación" (The Universe of the Computer Science). The success of Commodore in Mexico was in granted by the fact that Aurrera Supermarket let anyone test the machines in store, so people gathered to play games and exchange programs in unofficial computer clubs. At least four annual software writing contests were held sponsored by Aurrera Supermarket, Grupo Sigma and Commodore between 1985 and 1989. These contests had entries for programming, custom hardware and computer graphics for

12644-468: Was introduced in 1980 at a list price of $ 299.95. Later, spurred by the competition, Commodore was able to reduce the VIC's street price to $ 99, and it became the first computer (of any kind) to sell over 1 million units. The Commodore 64 , the first 64  KB computer to sell for under US$ 600 in the US, was another salvo in the price war but it was far more expensive to make than the VIC-20 because it used discrete chips for video, sound, and I/O . Still,

12760-401: Was involved with the development of the VIC-II, said: I'm afraid that not nearly as much effort went into the color selection as you think. Since we had total control over hue, saturation and luminance, we picked colors that we liked. In order to save space on the chip, though, many of the colors were simply the opposite side of the color wheel from ones that we picked. This allowed us to reuse

12876-529: Was marketed as "Sigma-Commodore 16" (all other Commodore computers sold in Mexico had the same moniker). Basically, this model is the same as the American/European C16; as it doesn't have the " Ñ " key needed for writing the Spanish language, the only difference is the custom label. Aurrera Supermarket also sold software, peripherals and books about to how to program Commodore Computers. All this merchandise

12992-533: Was mostly the domain of obscure companies who sold products via mail order , similar to other computers like the TRS-80 CoCo that did not have support from major developers. In total, 1 million 264 series machines were sold in slightly more than a year on the market. Of these, 400,000 were Plus/4s with most of the remainder being C16s. Approximately 50,000 were C116s, with about 43,000 of those being sold in Germany, and

13108-417: Was said to be less prone to emit RF interference. The Plus/4 does not support analog devices via the joyports like the C64 mouse , making programs with a GUI such as GEOS less friendly to use. However, there is an unfinished project that allows the use of a standard IBM PC compatible serial mouse. While the Plus/4's CPU could run about 75% faster than the C64's, the computer was still designed with

13224-509: Was shipped in a similar case but has a 59-key full-travel keyboard (with a specifically advertised "cursor key diamond" of four keys, contrasted with the VIC-20's and C64's two + shift key scheme inherited from the PET ), 64 KB of RAM, a modem port, and built-in entry-level office suite software. Although shipped with 16K from the factory, it was possible to modify the C16 for 64K, making it able to run any Plus/4 software except applications that required

13340-454: Was the first chance for many people in Hungary to own a computer at all. It created a fanbase that lasted well into the 1990s and that contributed several unofficial ports of popular Commodore 64 programs. In Mexico , the C16 was sold as a beginner's computer from early 1985 to 1992. Aurrerá supermarkets distributed them with Grupo Sigma S.A., a local distributor of Commodore USA. The computer

13456-443: Was vastly improved, adding sound and graphics commands as well as looping commands that improved program structure . The Plus/4 does not have the Restore key on the VIC and C64, but a similar function may be achieved by holding down Run/Stop and pressing the reset button. This will reboot the computer into the machine language monitor, but any BASIC programs in memory will be left intact. The Plus/4 contains an Easter egg . Entering

#339660