VIQ-Bert (v1.1) for the unexpanded VIC-20
----------------------------------
(c) 2002 Anders Carlsson [Zapac] <anders.carlsson@mds.mdh.se>

This game is part of the Minigame Compo (http://www.ffd2.com/minigame/). It 
is written in machine code, and the source will be available as soon as the 
competition deadline has passed (september 2002).

The game is a clone of Parker Brothers' Q*Bert (1984). The author is aware
of a few VIC-20 versions, of which the official release may be one of the 
ugliest! As the 3D view always has fascinated gamers (see DOOM), I wrote my 
own Q*Bert in Basic a few years ago. This machine code conversion is faster
and 40% smaller than the Basic version prior to running it...

Controls
--------
Move your man with keys U N H J as they are positioned on the real VIC-20
keyboard. If you hit the enemy (ball) or jump outside the pyramid, you lose
a life and begin at top of the playfield.

Levels
------
First level is simple; colour each square once. On second level, you have to
colour each square twice. On every odd level starting with the third level, 
you will erase the colour if you jump on a finished square. The fourth level
introduces a third step of colouring, and the final fifth level will require
three jumps and the risk of resetting the square to black again...

Computer
--------
The enemy ball will move in what may look like erratic patterns. Each time
its counter is reset, it will calculate what squares it can move to and
randomly select one of those. Unlike the real Q*Bert, the ball will never
reset the colour on a square.

Memory usage
------------
The executable is 1010 bytes plus loading address and fits within 4 blocks 
on a standard 1541 disk. Of the 1004 bytes, 20 are workspace data and 48
are UDGs used together with a slightly modified copy of the ROM font. The 
playfield is drawn with a four layer loop and due to indexing restrictions, 
a player outside the playfield will never be displayed.

Fixed bugs
----------
v1.1: Due to wrap-around effects when using indexing registers, there existed 
      a position on the board where you could cheat and jump into the middle 
      of an other square. By adjusting index offsets, this position no longer 
      will wrap and thus the bug should be fixed without altering file size.

Future improvements
-------------------
Joystick support, although it would break the 1K limit.





