Game of the Month
Beat those IRS bluesBY ROBERT PATTON A.K.A.,''RASSILON''
Collect your shrinking stacks of dollar bills from five secret Swiss bank accounts without running into those dangerous tax auditors. This BASIC program works on all 8-bit Atari computers with at least 48K memory disk or cassette.
All taxpayers feel a bit boxed-in as April 15 approaches, but playing Taxman just might help relieve your tension.
To cut down on your tax bill, you have opened five savings
accounts at an unusual Swiss bank. Now you must grab the interest
from your accounts as fast as possible. But watch
out-because a crack team of IRS field auditors is breathing down your neck. Get caught once and you'll have to declare the interest. Get caught 10 times and you'll be audited-the game's over!
We warned you that your Swiss bank was unusual. First of all, the only way to collect your annual interest is to race around the bank vault and pick up those stacks of greenbacks. But what's really peculiar is the way your interest earnings are figured. This is the formula: The number of times you must cross a stack of dollars to remove it equals the account number, which also equals your interest rate.
Therefore, Account 1 requires just one pass over the green rectangles representing dollar stacks and each stack is worth $1. Account 2 (the second screen) requires two passes, but pays $2 interest per stack. Account 5 needs five passes, but pays $5 per stack.
You also get a bonus when you clear all the interest out of an account. The bonus is $100 multiplied by the account number, multiplied by your remaining taxpayer chances. For example, you get $255 for removing the 255 stacks in Account 1. And if you have five taxpayer chances remaining, you get a $500 bonus for completing the screen.
Interestingly, as the account number increases, the number of money stacks you must grab decreases. If this seems like an advantage, just wait until you try Account 5. Oh yes, and the higher the account number, the faster the auditors chase you.
The pattern of the auditors' movements is predictable and unvarying- only their speed changes. Learn to time your joystick movements-this takes practice. You can move diagonally and sometimes that is your only hope.
The screen will wrap if you press the fire button when you hit the edge. This may seem strange, but you'll soon see that it is a very helpful evasion technique.
To challenge the IRS, type in Listing 1, TAXMAN.BAS, check it with TYPO II and SAVE a copy before you RUN the program.
If you have trouble typing the special characters in lines 540 and 580-630, don't bother typing them in. Instead, type in Listing 2, checking it with TYPO II, and SAVE a copy before you RUN it. When RUN, Listing 2 creates these tricky program lines for you, and writes them to a file called LINES.LST
Once this file has been created, type NEW and then LOAD Listing 1. Next, ENTER D:LINES.LST. (Cassette users type C: instead of D:) This merges the two program fragments into one complete program. Remember to SAVE a copy of the completed program before you RUN it.
I wrote this program mainly to present some useful, versatile BASIC and USR routines. I kept Taxman as short as possible, while including as many special features as I could. The Taxman game uses:
- Player/Missile graphics
- An altered character set
- Machine language routines for speed
- Boolean logic joystick routine
- String storage for P/M data
I didn't write the public domain machine language routines
If you're not already familiar with these routines, you'll find them useful for your own programming efforts.
The (Z)ero routine fills a page of memory with zeros. For example, in line 660 it zeros-out the page beginning at address PMM.
The (M)ove Memory routine moves any number of bytes from one part of memory to another. In line 650, for example, the routine copies the computer's character set (starting at address CS) into a 1024-byte section of RAM beginning at address MYCS.
The (R)otate routine rotates a sequence of bytes with a mask constant, to move the missiles vertically. (E)xplosion stores the data for the explosion display. I also added a slight change in the P/M size during the explosion, it occurs at line 280 when you must declare your interest.
Rassilon (Robert Patton) is a Natchez, Mississippi programmer who took his pseudonym from public TV's "Dr. Who." Rassilon can of ten be found on CompuServe's SIG*Atari and is happy to receive your electronic mail at 70057,674.
Listing 1 TAXMAN.BAS Download
Listing 2 LINES.BAS(not needed)