The Geek Site.

BJ's VIC-20 Software: 1982-1984.

[Compiler] [Sorcery Role-Playing Game] [Arcade Games] [Adventure Games] [Download] [Mirror]
To run this software on a modern PC you'll need a VIC-20 Emulator.
[VIC-20] [Geek Site] [Home] Thanks to ReadNotify.com E-mail Tracking.

October, 2006: Queztalcoatl GPL Source Code, Sorcery Notes, A very nice Sorcery Map by Orion.
January 21, 2001: As requested, here's the cheat sheet^H^H^H^H^H^H^H^H^H^H hint sheet for House of Demons.
January 3, 1999: Documented a few bugs in Sorcery's errata.txt.

Compiler.

UPL. 1983-1984.

[Screenshot]

Description: Be afraid. Be very afraid. In Mid-1983 I implemented a pseudo-Pascal compiler for the VIC implementing a language I dubbed UPL; "Utility Programming Language." It generated full-blown 6502 machine code. The compiler itself was slow and it had the unfortunate limitation of byte variables. But it had access to the whole machine and the code it produced was very fast. UPL arrived on the scene too late to be marketed commercially, but it was subsequently ported to the Apple ][ where I got a Unix-like editor and a substantial speed-up thanks to the Einstein Apple BASIC Compiler.

Comments: Yes; It really works. Unfortunately most VIC emulators don't support files, so you have to type your programs in from scratch. Once done you can save the emulator state and with a bit of work even save the executable under eg. DOS. Of course for serious development you'd be better off using a cross-compiler running under your host operating system. But could anyone still be developing for the VIC? You'd think not, but then the name of the VIC-20's still-running newsletter is "Denial." :-)
Update: Version 1.1 includes the Meteor game typed in and as a compiled executable (Only 2Kb!)

Authors: Brendan Jones.
Requires: VIC-20 with 16Kb of expansion memory.
Written in: BASIC, Assembler.
Download: Click here to download the VIC-20 UPL Compiler and Documentation. 126 Kb.

Quetzalcoatl. 1998, 2005.

[Screenshot]

Description: At long last, the VIC-20 gets an optimising "C" Cross Compiler running under Win32 and Linux. How did this happen? Why is it 15 years late? Click here to find out! Quetzalcoatl also has a built-in 6502 Assembler that C64 programmers seem to have taken a liking too.

New: GPL Source Code! (Make your name a built-in function!) [9oct2006]
Author: Brendan Jones. Harry Dodgson.
Requires: Windows 32, Linux, Solaris, DOS.
Licence: GPL.
Written in: C++.
Home Page: Click here for the Quetzalcoatl Home Page.
Status: Beta Release. (Assembler/Tiny-C work, but needs structs/etc. See the Compiler Hacker's Guide).

Role Playing.

Sorcery. 1983-1984.

[Screenshot]

Description: Upto six characters explore a dungeon in search of loot and glory. Characters may be fighters, mages, thieves, witches, elves or necromancers. As characters advance they can cast more powerful spells and purchase better weapons and armour. The goal is to develop your characters and then find and defeat the supernatural being who attacked a castle many years before. Sorcery is provided with a manual listing all weapons, armour and spells. With an emulator you can save a game in progress with an emulator "system snapshot" function.

Gameplay: A lot of time was spent balancing the gameplay. Accordingly even though it's fourteen years old it is still playable (and frighteningly addictive! :-). Sorcery clould be the World's only "modded" VIC-20 Game. Comments: It's amazing what you can do with 19.5Kb if you have to. Sorcery arrived on the scene too late for a commercial release. Accordingly plans for a full-assembler multi-player (yes, really! You could hook two VICs together by wiring their user ports - no electronics!) sequel were shelved.

New: Snapshot for the Excellent VICE Emulator. Also See ERRATA.TXT for clarification. [6oct2006]
New: A very nice Sorcery Map by Orion.
Soon: Here is Release Candidate 1.1 as requested. Will soon add to main package. [10oct2006]
Author: Brendan Jones
License: Source Code is now Public Domain. [8oct2006]
Requires: VIC-20 with 16Kb (recommend 24Kb) of expansion memory.
Written in: BASIC, Machine Language.
Download: Click here to download VIC-20 Sorcery and Documentation. 199 Kb, and Release Candidate 1.1 (Unzip after installing vicbjsorcery.zip).
Forum: Click here to ask questions/comments about Sorcery.

Arcade.

UFO Escapers. 1982.

[Screenshot]

Description: Aliens are returning to the UFO's after a night of probing and abducting cattle. To the left of the screen are five UFOs. The aliens appear from the right and head towards them. At the bottom is Farmer Jones' turret. Shoot the aliens to stop them reaching their ships. When five UFOs have been occupied or all three of your turrets are destroyed the game ends.

Gameplay: Not an easy game! The aliens don't let up. The sound was particularly cool and I was never able to work out exactly how I did it to recreate it for subsequent games.

Comments: This game is approximately 3Kb. It was hand assembled and was typed in byte by byte. Debugging was difficult, requiring that I either patch the executable or when the patch was too large jump to a patch added to the end of the program. The program makes little use of colour because I was using a B&W monitor and didn't occur to me until I'd written a large portion of the code.

Author: Brendan Jones
Requires: Unexpanded VIC-20.
Written in: Machine Language.
Download: Click here to download BJ's VIC-20 Arcade and Adventure Pack. 145 Kb.

VIC Invaders. 1982.

[Screenshot]

Description: I'm critical of today's game companies for constantly writing the same games. But in 1982 I didn't know any better either; VIC Invaders is a shameless clone of Space Invaders.

Gameplay: It plays a lot like the original.

Comments: Memory was a real worry here; The invaders aren't represented by an array. They only exist as characters on the screen. In each game cycle the characters are shifted horizontally and when they reach a boundary down and reverse. Like all my VIC machine code games I ended up having to slow it down to make it playable; First run the invaders had landed before my finger was off the return key! In hindsight with only a bit more work I could have made the movement much smoother and added barriers that you could shoot a small tunnel through. Still, not bad for 3Kb!

Author: Brendan Jones
Requires: Unexpanded VIC-20.
Written in: Machine Language.
Download: Click here to download BJ's VIC-20 Arcade and Adventure Pack. 145 Kb.

Qerbs. 1983.

[Screenshot]

Description: Qerbs (cute black creatures) pull away the blocks of your blockcade to steal your gold. Stop them! The gold is supposed to fund an <insert demographic> class tax cut! :-)

Gameplay: The game is missing something. Maybe the Qerbs are too cute? Maybe it's too easy to avoid their return fire by ducking back to the middle? Maybe because you know it's practically impossible to defend both sides at once, and thus unwinnable? The rate of fire is too fast too. Play this one on a fast emulator (PCVIC) and you'll at least get a few good rounds. This is a second generation clone; I'm not sure what the original even was!

Comments: It's about 3.5Kb. By 1983 I'd started University, writing an assembler and pseudo-pascal compiler. I wrote Qerbs merely to test the assembler. This was much faster than hand assembling!

Author: Brendan Jones
Requires: Unexpanded VIC-20.
Written in: Assembler.
Download: Click here to download BJ's VIC-20 Arcade and Adventure Pack. 145 Kb.

Adventures.

House of Demons. 1983-1984.
Adventure #7

[Screenshot]

Description: Wandering through the woods you come across a small seaside town, apparently deserted. Where is everyone? What happened to the townsfolk? Why has the town's priest gone mad? Warning: Horror Themes.

Gameplay: A damned fine adventure. This is a difficult adventure to solve, but I'd hardly call it impossible. Explore the environment using one or two word sentences; eg. "get inventory", "look", "search", etc. If you really get stuck e-mail me for a hint (if I can remember! ;-) The only real flaw is that at one point you'll have to type "wait" for about fifteen turns. I was trying to establish a dramatic effect, but in hindsight one "wait" should have sufficed!

Comments: This was my last and largest text adventure. It was produced with my "Adventure Compiler." The compiler prepared the adventure from a specification for use with a machine language library. The library was very fast, handling most of the adventure management. All the programmer need do was specify the behaviour of objects in BASIC. It was a shame that text adventures became extinct, superceded by bloatware adventures that keep stopping to shovel animated cut scenes down your throat. It's less of a shame that this genre of bloatware became extinct too. "House of Demons" implemented a clever copy protection scheme I found myself having to uncrack 14 years later (without notes!) If you're not using the PCVIC or V20 snapshot you'll need to read README.TXT to find how to start the game.

Hints/Cheats: As of January 31, 2001, available by clicking here.

Author: Brendan Jones
Requires: VIC-20 with 16Kb exansion memory.
Written in: BASIC, Machine Language.
Download: Click here to download BJ's VIC-20 Arcade and Adventure Pack. 145 Kb.

Spyflight. 1983.
Adventure #6

Description: Your mission is to fly a U2 spy plane to photograph nuclear missiles being deployed from a military installation outside of Moscow. Over your target things go horribly wrong. Warning: Some Violence.
Gameplay: Another fine adventure.
Comments: Written in BASIC. It does contain some spelling errors which I haven't bothered fixing up. (I'd probably break something anyway.)
Author: Brendan Jones
Requires: VIC-20 with 16Kb exansion memory.
Written in: BASIC.
Download: Click here to download BJ's VIC-20 Arcade and Adventure Pack. 145 Kb.
Viceman. 1982.
Adventure #5

Description: A ghetto is in the grip of a dealer pushing the evil weed. It's time to clean this town up! Warning: Mature Themes. Not suitable for children.
Gameplay: Another fine adventure. I'd just seen "The French Connection". It was renamed in the 1998 release to be politically correct.
Comments: Written in BASIC. Some typos.
Author: Brendan Jones
Requires: VIC-20 with 16Kb exansion memory.
Written in: BASIC
Download: Click here to download BJ's VIC-20 Arcade and Adventure Pack. 145 Kb.
Rocky Island. 1982.
Adventure #3

Description: You're stranded on a Pacific island. Climb the hill and light a singal fire.
Gameplay: A few puzzles; short and fairly easy.
Comments: Nothing special. My later attempts were much better: Play Adventures #5, #6 and #7 first. I've no idea what happened to #4.
Author: Brendan Jones
Requires: VIC-20 with 16Kb exansion memory.
Written in: BASIC
Download: Click here to download BJ's VIC-20 Arcade and Adventure Pack. 145 Kb.
Carnage of Karn. 1983.
Adventure #2

Description: A short adventure in a space craft.
Gameplay: Fairly easy.
Comments: My first attempt at a "Scott Adams" style adventure. Ok, but you'll find my later attempts much better. Adventure #1 was "Marsh Castle", which I've been unable to restore.
Author: Brendan Jones
Requires: VIC-20 with 16Kb exansion memory.
Written in: BASIC
Download: Click here to download BJ's VIC-20 Arcade and Adventure Pack. 145 Kb.
Werewolf. 1983.
Nigel #2

Description: You'll never guess! :-)
Gameplay: Fairly Easy.
Comments: N/A
Author: Nigel Dunk
Requires: VIC-20 with 16Kb exansion memory.
Written in: BASIC
Download: Click here to download BJ's VIC-20 Arcade and Adventure Pack. 145 Kb.
Death Ship. 1983.
Nigel #1

Description: You wake up on a ship to find it deserted.
Gameplay: Fairly Easy.
Comments: N/A.
Author: Nigel Dunk
Requires: VIC-20 with 16Kb exansion memory.
Written in: BASIC
Download: Click here to download BJ's VIC-20 Arcade and Adventure Pack. 145 Kb.

Download.

Click here to download: (Australia)

This VIC-20 software may be freely used and redistributed subject to the licence terms.
To run this software on a modern PC you'll need a VIC-20 Emulator.
[VIC-20] [Geek Site] [Home] Thanks to ReadNotify.com E-mail Tracking.


© Brendan Jones, 1984, 1998. All Rights Reserved.
Werewolf and Death Ship © Nigel Dunk, 1984. All Rights Reserved.
Quetzacoatl © Kestrel Defence, 1998. All Rights Reserved.