Commodore MAX
The Commodore MAX Machine, also known as Ultimax in the United States and Canada and VC-10 in Germany, is a home computer designed and sold by Commodore International in Japan, beginning in early 1982, a predecessor to the popular Commodore 64. The Commodore 64 manual mentions the machine by name, suggesting that Commodore intended to sell the machine internationally; however, it is unclear whether the machine was ever actually sold outside Japan. When it was officially presented in Tokyo for the first time, it was named Commodore VICKEY.
The MAX was intended to sell for around US$200. Although the MAX had better graphics and sound capability, Commodore's own VIC-20, which sold for around the same amount, was much more expandable, had a much larger software library, and had a better keyboard—all of which made it more attractive to consumers.
Software was loaded from plug-in cartridges and the unit had a membrane keyboard and 2 KB of RAM internally and 0.5 KB of color RAM (1024 × 4 bits). It used a television set for a display. It used the same chipset and 6510 CPU as the Commodore 64, the same SID sound chip, and compatible ROM cartridge architecture so that MAX cartridges will work in the C-64. The MAX compatibility mode in C-64 was later frequently used for "freezer" cartridges (such as the Action Replay), as a convenient way to take control of the currently running program. It was possible to use a tape drive for storage, but it lacked the serial and user ports necessary to connect a disk drive, printer, or modem.
Commodore BASIC
Commodore BASIC was a dialect of Microsoft BASIC, licensed by Commodore in 1977 for use in the PET 2001. It ran from ROM, freeing all RAM for user programs, and provided an immediate programming environment upon power-up. The interpreter was built on the 6502 processor, with tightly coded routines for tokenization, line storage, and execution. This structure allowed BASIC statements to be entered interactively, stored in memory as linked line records, and executed sequentially or via branching constructs. Commodore kept this design across its entire 8-bit product line, from the PET and VIC-20 to the Commodore 64 and beyond, creating a sense of continuity between machines.
Historically, Commodore BASIC differed from many other implementations in its limited feature set relative to machine capabilities. For example, the original PET BASIC lacked dedicated graphics or sound commands, requiring programmers to manipulate memory directly through PEEK and POKE. Even later versions, such as BASIC V2 on the C64, still omitted high-level graphics and sound statements, in contrast with Atari BASIC or BBC BASIC, which provided structured access to system hardware. Only with extended versions such as BASIC 3.5, 4.0, and 7.0 did Commodore add disk commands, string handling improvements, and more advanced features.
When compared to contemporaries, Commodore BASIC was often criticized as being underpowered, but its simplicity made it approachable. BBC BASIC, for example, incorporated structured programming constructs and inline assembler, whereas Commodore’s offering retained the line-numbered, unstructured style of early Microsoft BASIC. Atari BASIC, developed separately, emphasized graphics and sound integration through dedicated keywords. Commodore’s approach forced users to learn the underlying memory map, making them more technically literate about hardware but also raising the entry barrier for certain types of applications.
Despite its limitations, Commodore BASIC achieved massive popularity due to sheer reach. Millions of units shipped with it as the only built-in interface, ensuring every user interacted with it directly. Its ubiquity in schools, homes, and small businesses made it a de facto teaching language for a generation. Moreover, the reliance on PEEK and POKE, while cumbersome, fostered a culture of type-in listings and hardware exploration. This combination of accessibility, wide distribution, and necessity cemented Commodore BASIC’s role as one of the most influential programming environments of the late 1970s and 1980s.
Commodore BASIC Versioning
-
BASIC 1.0 (PET 2001, 1977)
Computers: Commodore PET 2001
Features: Essentially a stock Microsoft BASIC interpreter running in ROM, with support for integer and floating-point arithmetic, strings, arrays, and file operations for tape storage.
Limitations: No disk commands, no advanced error trapping, and no machine-specific extensions. Designed as a minimal environment to ship the PET quickly. -
BASIC 2.0 (VIC-20, C64, C-MAX, 1981–1982)
Computers: VIC-20, Commodore 64, Commodore MAX Machine
Features: Nearly identical to BASIC 1.0 with minor bug fixes, provided the same core Microsoft BASIC functionality.
Limitations: No disk drive commands, no dedicated graphics or sound statements. Hardware had to be accessed through POKE and PEEK. -
BASIC 3.5 (Commodore 16, C116, Plus/4, 1984)
Computers: Commodore 16, Commodore 116, Commodore Plus/4
Features: Added graphics and sound commands (GRAPHIC, CIRCLE, PAINT, SOUND, PLAY), integrated disk commands (DLOAD, DSAVE, DIRECTORY), plus utilities like RENUM and TRON/TROFF.
Limitations: Still line-number oriented and lacked the structured programming richness of competitors like BBC BASIC. -
BASIC 4.0 (PET/CBM Business Series, 1979+)
Computers: PET/CBM 4000 and 8000 series
Features: Expanded disk support with DLOAD, DSAVE, DIRECTORY, COPY, and SCRATCH. Improved error handling suitable for commercial environments.
Limitations: Focused on business and disk operations, no graphics or sound capabilities because target hardware lacked them. -
BASIC 7.0 (C-128, 1985)
Computers: Commodore 128
Features: Added high-level graphics (DRAW, CIRCLE, PAINT) and sound (PLAY, SOUND) commands, advanced disk operations, structured programming constructs like WHILE...WEND, RENUM, and support for memory banking and multi-mode operation.
Limitations: Despite enhancements, still less sophisticated in structured constructs compared to BBC BASIC or contemporary Pascal-like systems. -
BASIC 10.0 (C-65 prototype, 1990–1991)
Computers: Commodore 65 (prototype, unreleased commercially)
Features: Extended support for high-resolution graphics and larger color palettes through VIC-III, up to 8 MB memory addressing, advanced string handling, and structured commands.
Limitations: Never commercially released, so its practical impact was negligible despite advanced features.
Video - The Video Interface Chip v2
The VIC-II, or Video Interface Chip II, is a chip from MOS Technology. There are a few variants:
- For NTSC: 6567/8562/8564
- For PAL: 6569/8565/8566
The VIC-II generates Y/C signals and DRAM refresh signals for the Commodore 64, Commodore MAX, and Commodore 128 computers. It is the successor of the original VIC chip used in the VIC-20 computer.
Features:
- 16 KByte address space for screen, character and sprite memory
- 320x200 graphics in 16 colors
- 40x25 Text resolution
- Capable of 8 sprites per scanline (24x21 or 12x21 multicolor sprites)
- Raster interrupt
- Smooth Scrolling
- Independent DRAM refresh
- BUS mastering for the 6502-style bus. CPU and VIC-II can access the bus during alternating half-clock cycles.
Programmers quickly learned that the VIC-II was more capable than the specifications would indicate. By manupulating the 47 different control registers, and by using machine code hooked into the raster interrupt routine (or the scanline interrupt), the chip can be programmed to do sprite multiplexing. This allows for more than 8 concurrent sprites on screen. It basically allows for the screen to be split up in different slices, giving each slice its own scrolling, resolution, color and sprite properties. This even allowed programmers to use graphics outside the upper and lower borders of the screen.
Sound - The Commodore SID (MOS 6581)
SID is short for Sound Interface Device. It is the name of the sound chip that was used in the VC10, the commodore 64 and the Commodore 128. SID was developed by Bob Yannes, an employee of MOS Technology. Bob was not only an engineer but also knew a lot about music. His intention was to create a different sound chip than other devices at the time. He implemented a subtractive synthesis chip. The chip's distinctive sound is easily recognized and was clearly ahead of the ocmpitition. The SID combines analog and digital circuitry that cannot be 100% emulated, even today.
Source: C64 WikiCPU - The Motorola 6510
The 6510 is an 8-bit MicroProcessor designed by MOS Technology. It is a modified version of the very successful 6502. The primary change in the 6510 was the addition of an 8-bit general purpose I/O port, altbough only six I/O pins were available in the most common version of the 6510.
The extra I/O pins were used for various purposes. In the Commodore 64, they were used to control bank switching, the signal lines for the Datasette tape recorder.
Source:WikiPediaCassette Tape
