General Information #
Author: Mike StortzLanguage: ACTION!
Compiler/Interpreter: ACTION!
Published: Analog #31 (06/ 85)
R.O.T.O.#
At 25. Mike Stortz is the P.D. Librarian for GRASP, the Richmond! Virginia Atari users group. Seemingly unable to find work in the programming field, he is working on about thirty projects at once, including a graphic arcade/adventure game.
1996: Kara Hyke leaves show business after losing out in a disputed Oscar award. 1997: Kara Hyke enrolls at M.I.T. 2010: Kara Hyke discovers semi-matter. 2016: Hyke-Grey effect discovered. 2021: Hyke-Grey drive invented. 2030: Hyke and Grey found Arcadia on Proxima III. 2065: Hamner scout ship attacks Arcadia and is driven off after extensive damage to the city. Work on the shield begins. Today: Hamner fleet attacks Arcadia...
Deep in caverns under Arcadia, fuel cannisters of semi-matter ore to power the city's defensive shield have been cached away against the day when the aliens would return. Composed of mixed-charge matter, hyke (as it is called) is easily persuaded to annihilate itself in the manner of matter-antimatter reactions, but is more easily stored.
Now that the attack has begun, brave volunteer retrievers must don helipacks, fly down into the caves and bring up the ore, so that Arcadia may not fall.
R.O.T.O. is a game of coodination, reflexes, timing and a hint of strategy that should keep you going for a while before Arcadia can claim victory.
Plug in your Action! cartridge and type in Listing 1. Action! is forgiving about case, spacing and line divisions, so you need not slavishly follow the format of the listing (which is compressed somewhat for purposes of publication).
SAVE it before attempting to RUN it! If you try to run R.O.T.O. from memory, the source code will be overwritten and ruined, causing much gnashing of teeth. Because R.O.T.O. is so large, it must be compiled off of disk or cassette.
For disk.#
After typing R.O.T.O. in, save it with the command CTRL-W and type in the filename "ROTO.ACT" then RETURN. SHIFT-CLEAR the editor, enter the monitor with the CTRL-M command, enter C "ROTO.ACT" and RETURN. This will compile R.O.T.O. into machine language. Now, save the compiled version by typing W "ROTO.AML" and RETURN. AML stands for Action! machine language. To run R.O.T.O. now, just type R and RETURN. In the future, simply type CTRL-M to enter the monitor, D and RETURN to go to DOS, and then binary loading the file ROTO.AML from DOS by using the L command in DOS 2 or DOS 3—or type LOAD ROTO.AML if you have DOS-XL.For cassette.#
Type in R.O.T.O. and save it with the CTRL-W command. Do not use the "Screen Off?" option; it will upset the tape timing. Rewind your tape, press PLAY and RECORD, give the filename 'C:' and RETURN.Go have lunch while the source code's being saved (about fifteen minutes). Come back, clear memory with the SHIFT CLEAR, and enter the monitor with the CTRL-M command.
Rewind the tape containing the R.O.T.O. source code, press PLAY, type in R "C:" and RETURN. Have some more lunch. The computer is rereading the source code, compiling il as it does. When it's finished compiling, the game will automatically start.
In the future, you may play R.O.T.O. by inserting the tape containing the source code into the recorder and typing the R "C:" command.
Playing R.O.T.O.#
After beginning, you should see the R.O.T.O. logo and your man flying about it, while an explanatory message scrolls beneath. You may begin by pressing the START button or the fire button on joystick 1. You will see a portion of a cavernous network and four green blocks with Hs on them. This is the fuel intake.<pic>
Cannisters of hyke are scattered about the caves. They look like the fuel intake, except that they're glowing. Pick up these cannisters by touching them, then return to the intake and touch it. This advances your score and charges the shield in accordance with however many cannisters you've deposited.
Each cannister is worth fifty points. Returning ore also refuels your helipack. Picking up more than ten cannisters before depositing them will cause their magnetic fields to interact with explosive results.
Your man moves up, down, left, right and diagonally in all directions, although he moves downwards faster than up. Moving against the screen's border will scroll more caverns into view, although you'll automatically stop at the far ends of the caves.
Don't run into a wall, or you'll lose a helipack. Watch your fuel. too. Running out will produce the expected effect.
Your retriever is also equipped with a molecular debonding device to facilitate going through rock. Press the fire button to let off a shot. The debonder will vaporize any chunk of rock you fire on. but you will lose a point for even' piece of the caves you eliminate (because you're reducing their structural integrity).
Unfortunately, the debonder will also affect a fuel cannister. Rupturing the magnetic bottle containing the hyke will produce a large explosion and prevent anyone else from retrieving fuel.
Also, attacks from the alien fleet will shake the caves periodically, causing rocks to break loose from the ceiling. Shooting rocks is worth one point each (for cleaning up). Don't run into them, and be careful that the tremors don't send you into a wall.
Pressing any key while a game is in progress will pause it. Press another key to resume play. If you want to begin again, press START.
If you play well and retrieve enough cannisters to top 1000 points, the shield will have stayed up long enough for reinforcements to arrive—and the city will be saved.
On the other hand, if you wreck while hauling cannisters, you could deplete the ore supply so that victory is impossible.
Remember which portions of the caverns you've mined out, and definitely recall the way back to the fuel intake. The cave network is generated randomly each game, so expect variety.
R.O.T.O. may end in five ways:
- Most frequently, you run out of helipacks (while there are many volunteers, there are only three of the sophisticated flying apparatuses).
- The shield is battered down. This happens when you don't retrieve enough ore.
- A fuel cannister is shot.
- You carry more than ten cannisters at once.
- The least common ... Arcadia holds out, and the aliens are defeated — this time!
That's it!#
Action! deserves a word of praise here. R.O.T.O. was designed half in advance and half as I thought of another feature to put in. The excellent editor made even major reshuffling and splitting of routines easy.I shudder to think what I would have gone through using a conventional assembler. Even when the source code became too large to co-reside with the object code, I could compile off of my Axlon RAMDisk with little loss of development time.
The author would appreciate any letters of business offers, extravagant praise, or, failing that, constructive commept. Have fun and save Arcadia!
; R.O.T.O. by Mike Stortz SET $000E=$4000 SET $0491=$4000 DEFINE bytes="64",lines="80", rock="194",pmb_page="128", cb_page="128",cb_adr=""32768", dl_page="136",dl_adr="34816" misc_page="137",misc_adr="35072", sc_page="140",sc_adr="35840" BYTE rtclok=$14,atract=$4D,lmargin=$52, rowcrs=$54,dindex=$57,sdmctl=$22F, gprior=$26F,crsinh=$2F0, ch=$2FC,gractl=$D01D, hitclr=$D0lE,consol=$D0lF, audctl=$D208,skstat=$D20F, pmbase=$D407,wsync=$D40A, vcount=$D40B,nmien=$D40E, chbas=$2F4,chbase=$D409, hscrol=$D404,vscrol=$D405, pcolr0=$2C0,pcolrl=$2C1, pcolr2=$2C2,pcolr3=$2C3, colpm0=$D012,colpm1=$D013, colpm2-$D014,colpm3=$D015, colr0=$2C4,colr1=$2C5, colr2=$2C6,colr3=$2C7, colr4=$2C8, colpf0=$D016,colpf1=$D017, colpf2=$D018,colpf3=$D019, colpf4=$D01A BYTE ARRAY hposp=$D000,mxpf=$D000, hposm=$D004,pxpf=$D004 CARD colcrs=$55,savmsc=$58, vdslst=$200,sdslst=$230, txtmsc=$294 BYTE i,j,k,l,cx,cy,x,y,xs,xsm,ys,joy, phase,mc,face,flag,bak,fore, fuel,packs,enable,whine, carried,end,cans,fallc,shake, shakec BYTE ARRAY logo= [85 85 88 88 88 88 85 85 128 96 88 88 88 88 96 128 0 5 21 88 88 88 88 88 0 128 96 88 88 88 88 88 8 149 149 2 2 2 2 2 8 85 85 88 86 88 86 88 2 9 37 37 37 37 37 37 88 84 37 37 37 37 37 37 85 89 88 88 86 88 8 8 128 96 88 88 88 88 88 1 88 88 88 88 88 88 21 5 88 88 88 88 88 88 96 128 2222222 66 86 86 88 88 88 88 86 88 37 37 37 37 37 9 2 64 37 37 37 37 37 84 88 81 ,