VIC-20 Listings

Books > Compute!'s Second Book of VIC


Compute!'s Second Book of VIC (US)
Compute! Books, 1983

Download all programs from this book on one disk:


Compute VIC2.d64

32 programs (100% complete)

Chapter 1: Applications and Recreations

Program Author Requirements Files Info
File Clerk

Pages 3-7.
Dennis Surek Unexpanded file clerk.prg
Screenshot
Store, locate and read up to 60 pages of text on cassette tape, e.g. for recipes, budgets or utility bills. The text is stored in 15 files, each with up to 4 pages.

Controls:
Follow on-screen prompts.
Editype

Pages 8-16.
Paul Bishop 8K expansion editype 8k.prg
Screenshot
Simple word processor to enter, save and print text.

Controls:
Follow on-screen prompts.
UXB

Pages 17-21.
Roger Hagerty Unexpanded uxb.t64
Screenshot
Clear the minefield of UXBs by touching the top of each rocket, but stay away from the bombs.

Controls:
J (left), K (right), I (up), M (down).
A Day at the Races

Pages 22-28.
Robert B Ferree Unexpanded day at races.t64
Screenshot
Gambling game for 1-6 players, with smoothly-animated graphics. Place bets on which horse will win the race.

Controls:
Follow on-screen prompts.
Catch

Pages 29-33.
Ronnie Koffler Unexpanded catch.prg
Screenshot
You are a skydiver and must catch as many balloons as you can in 50 seconds, before your chute opens.

Controls:
K (left), L (right), F1 (up), F7 (down).
Financial Advisor

Pages 34-39.
Steve Hamilton 8K expansion financial 8k.prg
Screenshot
Calculate loan payments, interest rates and other financial information.

Controls:
Follow on-screen prompts.
Banner

Pages 40-44.
Michael Habeck & Michael Tyborski Unexpanded & printer banner.prg
Screenshot
Use your VIC1515, 1525 or RS-232 printer to produce banner messages in big letters.

Controls:
Follow on-screen prompts.

Chapter 2: Graphics

Program Author Requirements Files Info
Kaleidoscope

Pages 47-50.
Alan W Poole Unexpanded kaleidoscope.prg
Screenshot
Displays a randomly-generated, constantly-changing kaleidoscope pattern.

Controls:
Space (pause/unpause), S (toggle sound on/off).
Understanding High-Resolution Graphics

Pages 51-58.
Roger N Trendowski Unexpanded/8K
Before loading the 8K version, type:
POKE44,32
POKE642,32
POKE8192,0
hi res gfx 8k.t64
Screenshot
Two high-resolution drawing programs, demonstrating how to use high-res graphics. The first program is unexpanded, the second requires 8K ram.

Controls:
Joystick.
Pixelator

Pages 59-69.
James Calloway Unexpanded pixelator.t64
Screenshot
Suite of programs to create user-defined graphics. Pixelator is the editor, Pixaver saves the chars to disk, Pixeloader loads them from disk, Pixdata converts them into DATA statements.

Controls:
Follow on-screen prompts.
Custom Characters for Game Graphics

Pages 70-79.
Bud Banis Unexpanded custom chars.t64
Screenshot
Two programs demonstrating how to use multicolour mode graphics in games.
Sample Characters: Shows the range of colours available in multicolour mode.
UFO Pilot: Fly as far as possible without hitting either the warplane or your own trail. Joystick.

Chapter 3: Sound

Program Author Requirements Files Info
Harmony

Pages 83-87.
Henry Forson Unexpanded the harmonizer.prg
Screenshot
Plays the tune Silent Night using harmonic voices.

Controls:
None.
Sound Generator

Pages 88-91.
Robert Lee Unexpanded sound generator.prg
Screenshot
Machine code routine that uses interrupts to play sounds. You need to add your own sound data.

Controls:
See book for details.
Making Sound with Blips

Pages 92-100.
John Heilborn Unexpanded blip editor.t64
Screenshot
Develop sound effects using blips. Includes a range of sample sound effects, and a blip editor to experiment with creating your own effects.

Controls:
F1-F7 (select voice), Up/Down (adjust tone), Left/Right (blip length), Space (repeat blip), F (toggle fade out), Inst/Del (fade out time), I (toggle fade in), ArrowLeft (fade in time).

Chapter 4: Programming Techniques

Program Author Requirements Files Info
Programming Function Keys

Pages 103-105.
Jim Wilcox Unexpanded prog f-keys.prg
Screenshot
Assign your own one-touch commands to the Function keys.

Controls:
Follow on-screen prompts.
The Expanded/Unexpanded VIC

Pages 106-114.
Gary L Engstrom Unexpanded exp-unexp vic.t64
Screenshot
Programming demo. How to automatically adjust programs to any memory configuration, and comparing different ways of POKEing characters on the screen.

Controls:
None.
Versatile Data Acquisition

Pages 115-117.
Doug Horner & Stan Klein Unexpanded versatile data.prg
Screenshot
Adjust the jiffy clock to match the timing needs of 'variable speed' machine language subroutines.

Controls:
Enter the low and high values for the jiffy clock.

Chapter 5: Utilities

Program Author Requirements Files Info
Pause

Pages 121-122.
Doug Ferguson Unexpanded pause.prg
Screenshot
Patches the LIST routine to add a pause control.

Controls:
Run this program, LOAD and LIST the program that you want to examine, then use the Shift key as a pause button.
Bidirectional Scrolling

Pages 123-124.
Charles Saraceno Unexpanded bi-dir scroll.prg
Screenshot
LIST a program one line at a time.

Controls:
Add this subroutine to the program that you want to list, type RUN63000, then press +/- to move through the lines.
VICword

Pages 125-128.
Mark Niggemann Unexpanded vicword.prg
Screenshot
Single-key entry for 52 BASIC keywords.

Controls:
Run the program and activate the routine by typing the SYS command shown on screen. Press Shift+A for PRINT, CBM+A for PRINT#, etc. See the book for a full list of commands.
Automatic BASIC

Pages 129-134.
Karl R Beach Unexpanded/8K auto-basic 8k.t64
Screenshot
Screen editor for use in quiz programs or adventure games. Compose a page of text and then convert it into a Basic listing. Includes an unexpanded version, and one that requires 8K ram.

Controls:
Enter the starting line number for the Basic listing that you want to create. Type each line of text and press Return, or use ArrowLeft as the correction key. If the page has fewer than nine lines, press £ when you are finished.
The VIC Keyboard Redefined

Pages 135-137.
Amihai Glazer Unexpanded redefine keys.prg
Screenshot
Redefine the keyboard to make any key represent any other key. This lets you use the keyboard as a numeric keypad.

Controls:
Run the program and type SYS7424 to use the keys RTY,FGH,VBN as a numeric keypad. Or type GOTO220 to define keys of your own choosing, and press F1 when finished.
Block SAVE and LOAD

Pages 138-142.
Sheila Thornton Unexpanded dump recover.prg
Screenshot
Save an area of memory to tape, e.g. if you have written a machine code routine.

Controls:
Enter the start address, end address and filename.
Electric Eraser

Pages 143-145.
Louis F Sander Unexpanded electric eraser.prg
Screenshot
Programming demo, showing how to delete lines from a Basic program after they have been executed.

Controls:
Run the program, then list it.

Chapter 6: Joysticks

Program Author Requirements Files Info
VIC Sticks

Pages 149-153.
Jim Butterfield Unexpanded joystick sketch.prg
Screenshot
Simple lo-res drawing program. Use the fire button to change colour. Note: Moving right doesn't seem to work.

Controls:
Joystick.
Joystick and Keyboard Routine

Pages 154-159.
Michael Kleinert Unexpanded joy key routine.t64
Screenshot
Machine code routines that make it easier to read the joystick in your own programs.

Controls:
See book for details.
Using Atari Joysticks With Your VIC

Pages 160-166.
Christopher J Flynn Unexpanded doodle.prg
Screenshot
Colourful and noisy lo-res drawing program.

Controls:
Joystick.
Fighter Aces - Add a Second Joystick

Pages 167-173.
John Parr Unexpanded fighter aces.prg
Screenshot
Two-player dogfight game, played with a second joystick connected to the user port. The first player to get 15 hits wins.

Controls:
Joystick. The user port interface for the second joystick is described in the book.

Chapter 7: Machine Language

Program Author Requirements Files Info
Hexedit

Pages 177-179.
Bill Yee Unexpanded hexedit.prg
Screenshot
Small BASIC program for viewing, entering or editing hex code.

Controls:
Type the starting memory location, then use: Crsr Up/Down (move through memory), Space (redisplay current location), Return (start again from new location), 0-F (type new value for current location).
Tracing Disassembler

Pages 180-186.
Peter Busby Unexpanded 6502 disassem.prg
Screenshot
Disassembler that can follow branch jumps etc.

Controls:
Follow on-screen prompts.
Customized BASIC Assembler

Pages 187-195.
R S Moser Unexpanded basic assembler.prg
Screenshot
Assembler for writing machine language programs. The mnemonics can be replaced with others that better fit your purposes.

Controls:
See book for details.
Gumball

Pages 196-205.
R S Moser Unexpanded gumball.prg
Screenshot
Centipede-style game, written in machine code. Shoot the gumballs, which turn into blocks of gum after they are hit. At least one gumball must reach the bottom of the screen so that new gumballs can appear.

Controls:
A (left), D (right), W (up), X (down), UpArrow (fire).

Notes

  1. Programming Function Keys (p. 103-105) was also published as Function Key (VIC, Feb 1984, p. 4-5). A modified version of this program appears to have been published as I tasti di funzione (HC Home Computer, Jul 1984).
  2. A slightly different version of Pause (p. 121-122) was published as Pause/Functions (VIC, 83-04).
  3. A modified version of Bidirectional Scrolling (p. 123-124) appears to have been published as Bidirectional Scrolling (Commodore Computing International, Jun 1983).

With thanks to DLH's Commodore Archive for making this book available in PDF format.

VIC-20 Listings <http://www.vic20listings.freeolamail.com/>
Copyright (C) R.M. Smedley 2024, All Rights Reserved.
This page was last updated 6-Apr-2024.