Books > Compute!'s VIC-20 Collection
Compute!'s VIC-20 Collection (US)
Compute! Books, 1985
Download all programs from this book on two disks:
![]() Compute Collection1.d64 |
![]() Compute Collection2.d64 |
71 programs (100% complete)
Chapter 1: Tutorials
Program | Author | Requirements | Files | Info |
Page Flip![]() Pages 3-4. |
David P Albright | 8K expansion Before loading type: POKE44,34: POKE8704,0: NEW |
page flip 8k.prg Screenshot |
Create eight screens in memory. Controls: Press any key to display the next screen. |
Programmable Characters![]() Pages 5-8. |
Peter Busby | Unexpanded | prog chars.t64 Screenshot |
Create up to 256 user defined characters. Controls: None. |
Mixing Text and Graphics Characters![]() Page 9. |
C D Lane | Unexpanded | the experiment.prg Screenshot |
Display the upper & lower case characters sets simultaneously. Only works in NTSC. Controls: None. |
Chapter 2: Utilities
Program | Author | Requirements | Files | Info |
Screen Scroll![]() Pages 29-30. |
Tim Adcock | Unexpanded | screen scroll.t64 Screenshot |
Machine code routines to scroll the screen left or right. Controls: Add the routine to your own program and execute it with SYS828, or load the routine followed by the demo program to see how it works. |
Tape Search![]() Pages 31-33. |
William F Brydges | Unexpanded | tape search.prg Screenshot |
Read the tape header to display useful info about your files, including the start address. Controls: Follow on-screen prompts. |
Move X![]() Pages 34-35. |
Bruce Farrington | Unexpanded | move x.prg Screenshot |
Displays a flashing red X on the screen, which can be moved using the joystick. This routine could potentially be used for selecting things etc. Controls: Joystick. |
Speed Sticks![]() Pages 36-37. |
Charles Herheim | Unexpanded | speed stick.t64 Screenshot |
Machine code routine to read the joystick. The demo program is a simple drawing program. Controls: Joystick. |
Arcade-Style Subroutines![]() Pages 38-40. |
Gary Greenwald | Unexpanded | arcade subrout.t64 Screenshot |
Machine code IRQ routines to alternate between two characters, and move a character horizontally. Controls: See book for details. |
Screen Saves![]() Pages 41-43. |
Steve Henrickson | Unexpanded | screen saves.prg Screenshot |
Screen designer. Draw or type anything on the screen, save it to disk, and easily reload it. Controls: F1 (save), F3 (load). |
Tape to Disk![]() Pages 44-45. |
John Hollenberg | 32K expansion | tape-disk 32k.prg Screenshot |
Transfer your tape programs onto floppy disk. It only works with BASIC programs, not machine language programs, copy-protected programs or anything larger than 24K. Controls: Follow on-screen prompts. Press Run/Stop & Restore when finished. |
Super Dump![]() Pages 46-47. |
Bruce Jordan | Super Expander+3K, printer | super dump se3k.prg Screenshot |
Make a printout of the Super Expander graphics screen. Controls: F8 (printout). |
Hold a Mirror![]() Pages 48-53. |
C D Lane | Unexpanded | hold mirror.t64 Screenshot |
Two programs that reveal the inner working of the computer. 6502 Disassembler converts machine language into mnemonics, and Keytest provides diagnostic information about the keyboard, joysticks and paddles. You have to hold the keys for a few seconds before they register. Controls: Follow on-screen prompts. |
Compressed List![]() Pages 54-56. |
C D Lane | Unexpanded | compressed list.prg Screenshot |
LIST programs using abbreviated keywords instead of expanded keywords, making it easier to edit programs with lines greater than 88 characters. Controls: Follow on-screen prompts. |
Multiprocessing![]() Pages 57-61. |
C D Lane | Unexpanded | multiprocess.t64 Screenshot |
Run two BASIC programs simultaneously, with 1K memory available for each program. The programs can be viewed individually or through a split-screen display, which works best in NTSC. Controls: Run 'multiprocess' and type SYS828. A split screen will appear. Press Shift+Clr/Home several times, type SYS6275, and again press Shift+Clr/Home several times. Repeat this procedure until you can easily move the cursor between the windows by pressing F1. Load 'mp example1' and type RUN, and the cursor will appear in the other window. Load 'mp example2' and type RUN. Both programs will now be running simultaneously. |
Screen Print II and Big Screen Print![]() Pages 62-63. |
C D Lane | Unexpanded & printer | screen print ii.t64 Screenshot |
Improved version of 'Screen Print', which makes an exact printout of the screen using the printer's 6x7 bit character set. Big Screen Print enlarges the printout by printing four dots for each pixel. Controls: Have your own program set up the screen, do a CLR, then load this program to do the printout. |
Tape Catalog![]() Pages 64-69. |
Pierre Pondrom | Unexpanded | tape catalog.prg Screenshot |
Position your cassette at the correct starting position for each program by using file sizes to calculate the counter positions. Controls: Follow on-screen prompts. |
Microassembler![]() Pages 70-77. |
Gregory Sommerville | 8K expansion | micro assem 8k.prg Screenshot |
Machine language monitor, with a unique syntax for assembling and disassembling programs. Controls: Follow on-screen prompts. |
Special Characters in the Expanded VIC![]() Pages 78-80. |
Royan Webb | 8K expansion | special char 8k.t64 Screenshot |
Moves the screen to 4608 and character set to 4096, to allow more memory when using user-defined characters with 8K memory expansion. Controls: First, run 'characters 8k' and press Run/Stop & Restore when the screen fills with garbage. Second, run 'special fx 8k' to see a familiar face, then exit the program and check how much free memory is left. |
Faster BASIC![]() Pages 81-83. |
Todd Wilson | Unexpanded | faster basic.t64 Screenshot |
Two machine code subroutines to speed up your programs. Controls: Joyfast reads the joystick firebutton with USR(0) and direction with USR(1). Fasplot accesses screen memory with SYS addr,x,y,chr,col to put a character on the screen, USR(0),x,y to read the character at that location, and USR(1),x,y to read the colour at that location. |
Chapter 3: Sound and Graphics
Program | Author | Requirements | Files | Info |
Paddle Graphics![]() Pages 87-90. |
James Calloway | Unexpanded | paddle graphics.prg Screenshot |
Drawing program, works like an Etch-a-Sketch. Use the paddles as horizontal and vertical controls to move a stylus on the screen. Controls: Paddles with Return (clear screen), F1 (white), F3 (cyan), F5 (purple), F7 (green). |
VIC Graph![]() Pages 91-94. |
Ritchie Falk | Unexpanded/8K | vicgraph 8k.t64 Screenshot |
Routine to draw a hi-res bitmapped graph. Includes unexpanded & 8k versions. Controls: None. |
Sprite-Imitation![]() Pages 95-104. |
Daniel Gray | Unexpanded | sprite-imitate.t64 Screenshot |
Machine code routine that allows you to use four sprites on the Vic-20. Controls: To load the machine code routine type LOAD"SPRITE-IMITATE",8,1 followed by SYS6000. You can then load & run the demo program, or see book for usage details. |
VIC Draw McGraw![]() Pages 105-114. |
Thomas Gronos | 8K expansion | vic draw mcg 8k.prg Screenshot |
Draw characters and create hi-res pictures to suit almost any need. Controls: Follow on-screen prompts. |
Music Mate![]() Pages 115-119. |
Griffin I Johnson | Unexpanded | music mate.t64 Screenshot |
Compose tunes of up to 60 notes by selecting each note on the screen. Controls: Crsr-Up (move up), Crsr-Down (move down), Z (select). |
Piano Player![]() Pages 120-127. |
Gene Klco | 3K expansion | piano player 3k.t64 Screenshot |
Turn the computer into a musical keyboard, where each note is displayed on a musical staff as you play it. Controls: A-= (white keys, notes B-F), Q-^ (black keys), 1-9 (select voice). |
Bitmapping Pixel![]() Pages 128-129. |
Paul McManamon | 8K expansion | bitmap pixel 8k.d64 Screenshot |
Art program, draw hi-res pictures using the joystick. Works best in NTSC. Controls: Joystick. Move the joystick to draw one pixel at a time, or hold the fire button to move to another part of the screen. |
Graph![]() Pages 130-134. |
Soori Sivakumaran | Unexpanded | graph.prg Screenshot |
Create a bar graph with up to 16 items. Controls: Follow on-screen prompts. |
Rainbow Border![]() Pages 135-137. |
Doug Smoak | Unexpanded/Super Expander+3K | rainbow border.t64 Screenshot |
Three programs that produce interesting graphics effects with a colourful border. Works best in NTSC. Controls: None. |
Music Maker![]() Pages 138-149. |
Brian Zupke | 8K expansion | music maker 8k.t64 Screenshot |
Compose your own tunes. The player program can be merged into your own programs, and loads a saved music file from tape. Controls: Tunes are composed using 'sets', where each sets consists of six values: the note to be played by each voice, the volume, and the duration. Enter notes in the form OC, where O is the octave (1-3) and N is the note (A-G#). The duration is in 60ths of a second. |
Chapter 4: Applications
Program | Author | Requirements | Files | Info |
Write-On![]() Pages 153-157. |
F Wendell Johnson | 3K expansion & IDS Bright-Writer ASCII-compatible printer | write-on 3k.prg Screenshot |
Word processor program. Controls: Enter a line length (the default is 60), then select one of the following: A (add lines of text), C (change all occurances of a word), D (delete a range of lines), E (edit a specific line), F (load or save files), I (insert one or more lines), L (displays text on the screen), M (move a block of text), P (print a range of lines), Q (exit), S (set margins). See book for further details. |
VIC Marquee![]() Pages 158-161. |
Louis Mendelsohn | Unexpanded | marquee demo.prg Screenshot |
Displays a jumping man while an IRQ routine scrolls a message across the top of the screen. Controls: None. |
Message Board![]() Pages 162-163. |
Doug Smoak | Unexpanded | message board.prg Screenshot |
Enter a message of up to 212 characters, and an IRQ routine will scroll it across the top of the screen. Controls: Follow on-screen prompts. |
Chapter 5: Sports Games
Program | Author | Requirements | Files | Info |
Strike Three![]() Pages 167-172. |
Tim Adcock | 3K expansion | strike three 3k.prg Screenshot |
Baseball game for two players. Controls: Pitching player: . (curve), , (change up), / (straight). Batting player: Space (swing bat). |
Speed Demon![]() Pages 173-177. |
Kerry Griffin | Unexpanded | speed demon.t64 Screenshot |
Car racing game. Drive your car around the track and complete as many laps as possible in two minutes. Controls: A (turn left), D (turn right), F1 (high speed), F3 (slow speed). |
Lap Racer![]() Pages 178-181. |
Jeff Ranney | Unexpanded | lap racer.prg Screenshot |
Car racing game. Try to get the best time as you complete the required number of laps (entered at the start). Controls: Joystick. |
Chapter 6: Logic and Luck
Program | Author | Requirements | Files | Info |
Slot Machine![]() Pages 185-188. |
Richard F Bohr | Unexpanded | slot machine.prg Screenshot |
Fruit machine game, try to win as much money as you can. Select up to five ways to win, horizontally and diagonally. Controls: Joystick. |
Code Game![]() Pages 189-190. |
Linton S Chastain | Unexpanded | code game.prg Screenshot |
You enter a code and the computer uses it to generate a pseudorandom code, which you have to guess. Controls: Follow on-screen prompts. |
Logicolor![]() Pages 191-194. |
Stephen Hust | Unexpanded | logicolor.prg Screenshot |
Mastermind-style game. You must work out a 4-colour code chosen by the computer. A black peg means you have a correct colour in the wrong place and a white peg means a correct colour in the correct place. Controls: 3-8 (select required colour). |
Maneuver![]() Pages 195-198. |
Bryan S Jones | Unexpanded | maneuver.prg Screenshot |
Card game similar to Freecell. 52 cards are shuffled and dealt face up. The aim is to put the cards in numeric order (ace to king) above the board. There are four temporary cells below the board, which can hold one card at a time. You can only move cards from the bottom of each column and the temporary cells, and you can only move one card at a time. Controls: Use the joystick to move the green rectangle over the card you want to move, press fire, then move the card to the desired position. Press any key to start a new game. |
Battleship![]() Pages 199-202. |
Bill McDannell | Unexpanded | battleship.t64 Screenshot |
Battleships game for two players. Each player's ships are randomly positioned on a hidden grid. Try to destroy your opponent's fleet before they destroy yours. Controls: Type the coordinates of each shot (e.g. H7, B6, etc). |
Flipper![]() Pages 203-204. |
Diana N Rowland | Unexpanded | flipper.prg Screenshot |
Arrange the list into numerical order, from lowest to highest, by swapping as few pairs as possible. Controls: For each move, type the two numbers that you want to swap. |
Poker Challenge![]() Pages 205-208. |
Harvey J Stapleton | Unexpanded | poker challenge.prg Screenshot |
Cards are dealt face up, one at a time, and you must position each one on a 5x5 grid to make as many horizontal & vertical poker hands as you can. Controls: Type the coordinates where you want to place each card, or 00 to discard that card. |
Chapter 7: Mazes
Program | Author | Requirements | Files | Info |
Heist![]() Pages 211-214. |
John Clopton & Doug Thorsvik | Unexpanded | heist.prg Screenshot |
Steal as many moneybags as you can from the underground vault before the 90-second fail-safe alarm goes off, and without triggering any alarms. Blast holes in the walls to access other areas, and then use the exit at the bottom of the screen to move to the next level. Controls: Joystick. |
Diamond Maze![]() Pages 215-216. |
V Cortes | Unexpanded | diamond maze.prg Screenshot |
You are trapped in a dark maze with a small oil lamp that only lets you see your immediate surroundings. Collect as many diamonds as you can before your lamp goes out. Controls: Joystick. |
Meltdown![]() Pages 217-219. |
Edward Tekeian | Unexpanded | meltdown.prg Screenshot |
The nuclear power plant is going into meltdown. Collect the red-and-white striped fuel rod and move it into the reactor core within 45 seconds. Your tank constantly moves to the right, and will be destroyed if it touches the obstacles or the reactor wall. You can halt the movement of your tank by pressing the fire button. Controls: Joystick. |
Rats! An Artificial Intelligence Simulation![]() Pages 220-232. |
Ulrich Merten | 8K expansion | rats 8k.prg Screenshot |
AI simulation. Draw a maze on the screen, and set the start and end points. Then simulate a rat running through the maze using various different strategies to find the end point, to compare their effectiveness. Controls: Follow on-screen prompts. |
Chapter 8: Shoot-em-ups
Program | Author | Requirements | Files | Info |
Space Corridor![]() Pages 235-238. |
Paul Austin | Unexpanded | space corridor.t64 Screenshot |
Fly along the space corridor shooting enemy ships. After destroying five ships your fuel is restored and you set up base, but you are then attacked by other enemies. Controls: Joystick. |
Base Defense![]() Pages 239-240. |
Jerry Fennell | Unexpanded | base defense.prg Screenshot |
Vertically-scrolling space shooter. Destory as many meteors as you can. Controls: Joystick. |
Bomber Squadron![]() Pages 241-245. |
Chris Hill | Unexpanded | bomber squadron.t64 Screenshot |
You are a World War II pilot, flying high above the enemy landscape. Position your sights to drop bombs on the buildings, while avoiding the jamming devices. Controls: Joystick. |
Ex-Blast![]() Pages 246-248. |
Marcus Warren Hobbs | Unexpanded | ex-blast.prg Screenshot |
Vertically-scrolling space shooter. Fly through the Orion cities destroying the fuel pods, while avoiding the other objects. Controls: Joystick. If the controls don't work properly then press Run/Stop & Restore and RUN the program again. |
Meteors![]() Pages 249-250. |
Jim Koermer & Bo Short | Unexpanded | meteors.prg Screenshot |
Shoot as many solid meteors as you can, while avoiding the hollow meteors. Controls: Joystick. |
Hyper Ballshot![]() Pages 251-253. |
Robert Lewis | Unexpanded | hyper ballshot.prg Screenshot |
Two player game, try to hit the targets with your shooter. Controls: Paddles. |
Laser Command![]() Pages 254-257. |
Robert L Lykins | Super Expander+3K | laser comm se3k.prg Screenshot |
Compete again either the computer or a second player to see who can shoot the most Zardon scout ships. Controls: Paddles. |
Space Blockade![]() Pages 258-260. |
Joe W Rocke | Unexpanded | space blockade.prg Screenshot |
Hit as many alien objects as you can by flying into them, but try not to get blocked in by the bricks. Controls: Joystick. |
Torpedo-8![]() Pages 261-263. |
Richard Ruef | Unexpanded | torpedo-8.prg Screenshot |
Destroy as many enemy submarines as you can, and try not to get shot down. Controls: Z (left), / (right), Space (drop bomb). |
Sevicog![]() Pages 264-265. |
Jim Schmitz | Super Expander+3K | sevicog se3k.prg Screenshot |
Missile Command-style game. Enter the number of targets, and then use your sights to destroy the incoming missiles. Controls: Joystick. |
Pilot![]() Pages 266-269. |
Mike Scharland | Unexpanded | pilot.prg Screenshot |
Stellar Wars-style game. Shoot the enemy planes as they appear in front of your bomber. Controls: Joystick. |
Laser War![]() Pages 270-272. |
Rob Westphal & Al Switzer | Unexpanded | laser war.prg Screenshot |
Boot Hill-style game for two players. Each player attempts to shoot the other player's ship. The first player to achieve five hits is the winner. Controls: Player 1: A (up), Z (down), X (fire). Player 2: K (up), M (down), N (fire). |
Challenger One![]() Pages 273-275. |
Andy Wolber | Unexpanded | challenger one.prg Screenshot |
Stellar Wars-style game. You have three seconds to shoot each enemy, and if you miss more than 15% of enemies in each galaxy then you will lose a life. Controls: Joystick. |
Chapter 9: Adventures
Program | Author | Requirements | Files | Info |
Space Mission![]() Pages 279-285. |
Paul F McMillan | Unexpanded To run the game type: SYS4558 |
space mission.prg Screenshot |
Patrol 150 space sectors looking for photon torpedoes, fuel modules and alien warships. The aim is to destroy all the alien warships while getting the highest score that you can. Controls: Type SYS4558 to run the game, then press: 0 (move to random sector), 1-4 (move forward up to four sectors), 5 (move backward up to four sectors), T (take object), F (fight warship), Q (restart game), X (return to BASIC). |
Dungeon Escape![]() Pages 286-290. |
Richard Woods | Unexpanded | dungeon escape.prg Screenshot |
You are a treasure seeker trapped in a castle dungeon. Each room contains a chest, which could be empty or it may contain a precious key, some food, poisonous gas, or a sword. Some rooms have locked doors, which can be opened with the required key or by trying repeatedly. Some rooms are guarded by monsters, which you cannot fight without first finding a sword. Can you find the three keys needed to escape? Controls: Joystick, with S (show status report), R (retreat). |
Chapter 10: More Games
Program | Author | Requirements | Files | Info |
Place Your Bet![]() Pages 293-295. |
Bob Appleton | Unexpanded | place your bet.prg Screenshot |
Gambling game for 1-4 players. There are seven crabs in each race, place bets on which crab will win. Controls: Follow on-screen prompts. |
Boogieball![]() Pages 296-299. |
Bobby Evangelista | Unexpanded | boogieball.prg Screenshot |
Use your sights to catch the Boogieball before it touches the edge of the screen. Controls: I (up), M (down), J (left), K (right). |
Light Cycles![]() Pages 300-302. |
Robert Flatman | Super Expander+3K | light cycl se3k.prg Screenshot |
Tron-style game for two players. Each player leaves a trail as they race around the screen. Try to trap your opponent into crashing before they make you crash. Controls: Red player: Joystick. Blue player: P (up), . (down), L (left), : (right). |
Rescue Mission![]() Pages 303-305. |
E L Hayno | Unexpanded | rescue mission.prg Screenshot |
Use your chopper to rescue the prisoners before you run out of time, while avoiding the gun tower. Controls: Joystick. |
Scavenger Hunt![]() Pages 306-311. |
Robert L Lykins | Unexpanded | scavenger hunt.t64 Screenshot |
Vertically-scrolling game. You must collect 10 clocks, 10 jack o' lanterns, 10 steins, 10 televisions and 10 umbrellas within five minutes, plus at least 25 bonus items to reach the next level. You will lose your bonus items if you hit too many hedges. To make things easier you can stop the screen from scrolling by holding the fire button, but this will release a ghost that must be avoided. Controls: Joystick. |
Hide-N-Seek![]() Pages 312-314. |
Steven R McCloskey | Unexpanded | hide-n-seek.prg Screenshot |
Two player game. Player 1 moves the man around the screen collecting dots, while player 2 tries to catch him with the car. Controls: Player 1: F5 (up), F7 (down), Crsr-Down (left), Crsr-Right (right). Player 2: Joystick. |
Chopper Lift![]() Pages 315-317. |
Steven R McCloskey | Unexpanded | chopper lift.prg Screenshot |
Collect enough jumping beans so that you can jump up to reach the ladder that is hanging down from the helicopter. The more time you spend collecting jumping beans the shorter the platform becomes, so try not to fall off. Controls: Joystick. |
Spring Man![]() Pages 318-320. |
John P Murphy | Unexpanded | spring man.prg Screenshot |
Platform game. Run across the platforms and up the ladders while dodging the springs, racing against the clock. Controls: Joystick. |
Trench Wars![]() Pages 321-324. |
Larry Volz | Unexpanded | trench wars.prg Screenshot |
Vertically-scrolling space game. Fly through the trench collecting as much cargo as you can, while avoiding the aliens. After every minute of play, you will dock with your mothership and proceed to the next level. Controls: Joystick. |
Appendices
Program | Author | Requirements | Files | Info |
The Automatic Proofreader![]() Pages 332-335. |
Charles Brannon | Unexpanded | auto proofread.prg Screenshot |
Utility to help find typing errors when entering program listings. A checksum is displayed on the screen each time you enter a BASIC line. This replaces the original version of Proofreader from Compute!'s Gazette (Oct 1983). Controls: None. |
With thanks to DLH's Commodore Archive for making this book available in PDF format.