Back to index

Info for vic20


====== Commodore VIC20 and VC20 (1981) ======




===== Features =====

* CPU: Commodore Semiconductor Group 6502A 1.0227 MHz
* Co-Processor: VIC-I (6560) for sound and graphics.
* RAM: 5 KB (3583 bytes free), expandable up to 32 KB
* VRAM: Screen memory shared with regular RAM
* ROM: 16 KB
* Text Modes: 23 rows x 22 columns
* Graphic Modes: 184 x 176
* Colors: 8 character colors, 16 background/border colors
* Sound: 3 voices / 3 octaves
* I/O Ports: 1 joystick port, 1 user port, 1 serial port, 1 cartrige port, Composite video output, tape interface
* Keyboard: Full-stroke keyboard, 4 function keys, 66 keys
* Built In Language: CBM Basic V2



===== Usage =====

== Cassettes ==

Cassette images with the .wav or .prg extensions as well as multiple .prg files contained within a zip file can be loaded. Zip files must be placed in the current directory, and the contained prg files are played in sequential order.

The format for WAVs are:
8 bit (16 bit may work, but this hasn't been tested), mono, 12500 Hz minimum.

This has the same problems as an original Datasette tape drive: the tone head must be adjusted to get working (no load error...) wav-files. To adjust it, remember that tape volume is "DAC1 volume" within the MESS UI On Screen Display Options (accessed
with the tilde (~) key).

Within the emulation, use
LOAD
or
LOAD""
or
LOAD"",1
for loading normal programs. Use
LOAD"",1,1
for loading programs to a special address.

== Floppies ==

Disk drives are simulated at the moment, and only file loads from drive 8 and 9 are implemented. You can load a program file from the ROM directory (*.prg,*.p00)

This must NOT be specified on command line, start the vic20 emulation with no images specified

The directory command
LOAD"$",8
is supported when using .d64 images.

Within the emulation, basic programs can be loaded with:
LOAD"filename",8

Machine language programs can be loaded to their address with:
LOAD"filename",8,1

When a program is loaded, type
RUN
or the appropriate SYS call to start it.

Note that several programs rely on more features not currently emulated (such as loading other file types, writing...) Some games also rely on starting programs in the floppy drive's processor (and therefore CPU level emulation of the 1541 is needed).

== Cartridge ==

Cartridges may have any of the following extensions: .bin .rom .a0 .20 .40 .60 .prg. Files with boot-sign in it are recognized as ROMs. Some cartridges may require more than one image (for example, defender.60 defender.a0).

* .20 files loaded at 0x2000
* .40 files loaded at 0x4000
* .60 files loaded at 0x6000
* .a0 files loaded at 0xa000
* .prg files loaded at address in its first two bytes
* .bin and .rom files are loaded at 0x4000 when 0x4000 bytes long, otherwise they are loaded at 0xa000

Note that .prg files are assigned to the quickloader (so you have to use the -cart switch when loading ROM images).

== Quickloader ==

A quickloader is available via the f8 key. It supports program image files with the .prg extension. This loads the program into memory and sets the program end pointer. It works with most programs. The program can be started by entering "RUN" in the emulation.

== Miscellaneous ==

Note that the pixel ratio for the PAL version is about 13/10 ! Resolution 1024x768 is good, but only part of the screen is filled. 800x600 is acceptable. Better to define own display mode (when the graphic driver supports this).

If you run into difficulty, be sure to start the emulation with the -log switch, and look into the error.log file that is created in your MESS directory.

See "Keys (This Machine)" in the TAB/Options menu for key assignments. Some key usages of note:

* "stop-restore" in many cases will cause the prompt to reappear.
* "shift-cbm" switches between upper-only and normal character set (if wrong characters are on screen this often can help)
* "run" (shift-stop) load and start program from tape.

The emulated light pen uses Paddle 3 x-axis and Paddle 4 y-axis.

While a normal or well written program will work regardless of the video system (PAL or NTSC), if the screen is too wide right or low, or the screen doesn't fit in visible area or gameplay is too fast try using the PAL (vc20) version, instead.



===== Known Issues =====

Some PC-Keyboards do not behave well when two or more special keys are pressed at the same time (with my keyboard printscreen clears the pressed pause key!)

* The timer system only 98% accurate.
* The serial bus allows simple disk support, but no printer or other devices at present.
* No userport, no rs232/v.24 interface.
* No special expansion modules like ieee488 interface are supported in the expansion port.

Image compatibility is quite high, see vic20.hsi for a partial list. The emulation features a rasterline based video system which should be enough for all vic20 games and programs. The emulation supports the keyboard, as well as joysticks, paddles and lightpen, via the emulated gameport, and simple Disk and Tape support. The expansion slot supports RAM and ROM cartridges, though not special expansion modules (see known issues). For a more complete vic20 emulation, take a look at the very good vice emulator.



===== History and Trivia =====

The VIC-20 - a "family" version of the PET series (using the same microprocessor and Basic language) - was the first computer to sell more than one million units. Once dubbed the MicroPET during the 1980 Computer Electronics Show, it later became known as the VIC-20.
VIC referenced the VIC-I (Video Interface Chip) chip used for graphics and sound. There does not seem to be any obvious rationale behind the usage of the number 20, other than the fact that it was close to the 22 characters per line and to the combined RAM and ROM
memory in the machine (5 KB RAM + 16 KB ROM).

Regarding the name, Michael Tomczyk, (manager of the VIC project) recalls: "VIC sounded like a truck driver, so I insisted on attaching a number. I picked "20" and when Jack Tramiel asked, "Why 20?" I replied, "because it's a friendly number and this has to be
a friendly computer." He agreed. The number 20 has no relation to any technical feature -- just my idea of a friendly sounding number. That sounds a bit bizarre looking back on it, but we did a lot of things by instinct in those days."

The European name VC20 stands for VolksComputer.

The VIC-20 was designed by Bob Yannes who also created the SID chip for the C64. He later joined Ensoniq to design synthesizers.

The Video Interface Chip (or 'VIC' as it is commonly called), is one of the most important silicon chips in the VIC-20 microcomputer, coming second only to the 6502A microprocessor itself. The VIC is a specially constructed input-output (I/O) chip that offers a large
variety of functions, but as suggested by its name, is primarily concerned with the production of the video output signal. It was originally intended to be sold to third-party manufacturers for use in video game machines. Demand for the chip was low, and so Commodore decided to make their own system to recoup their losses.

The VIC-20 was initially launched in Japan in late 1980 (under the 'VIC-1001' name) with a Japanese 'Katakana' set of characters. It was subsequently released in North America in May of 1981. Though these are the "official" release dates, several prototypes of the Commodore VIC-20 were reportedly available in late 1979. These early machines offered only 4 KB of RAM and used a different set of game cartridges.

Thanks to the colorful graphics and low cost, the VIC-20 was an immediate success. At its peak, more than 9000 units rolled off the assembly line each day. Adding to its success was the fact that it was the first color computer to break the $300 (USD) price barrier.

A wide range of peripherals and software were developed for the VIC-20. When it became obsolete, Commodore replaced it by the Commodore 16 which had no success.

//(info from old-computers.com)//



===== Links =====

* VIC-20 Archive -- http://www.funet.fi/pub/cbm/vic20/index.html
* VIC-20 Tribute Page -- http://www.geocities.com/rmelick/new_page_2.htm
* VIC-20 at old-computers.com -- http://old-computers.com/museum/computer.asp?c=252



===== Other Emulators =====

* VICE -- http://www.viceteam.org/
* Pfau Zeh -- http://www.classicgaming.com/pfauzeh/




Generated on Sun Jul 19 10:17:28 2009