INTERCEPTOR
by Jack Chung |
It was just after the Abarac War that a power struggle began in the small country of Zimalia on the planet Zapher. This country, always being in political turmoil, was hard to control until one man, Maneca, took over as its ruler. He did it through force because he controlled a very powerful army that would do anything to move up in position. Its members were mercenaries and Maneca had a lot of capital to pay for their services. People who opposed him would mysteriously disappear, never to be seen again. This is where our story begins....
"Mother, where is father?"
"Son, your father won't be coming home." "Where has he gone."
"I'll tell you only if you promise not to do anything hasty.
"I promise", Rick said with a puzzled look on his face.
"Your father has been killed by one of the government's assassins", she blurted out while crying. "Why, he never did anything wrong in his life", Rick said as a tear dropped from his eye.
"Your father was involved in an underground operation to overthrow the government. You're going to have to leave the house until it's safe to come back, because they'll be coming for us next."
There was a knock. Rick opened the door to see two large men dressed in dark clothing.
"These are the men who will take care of you. Go with them. I love you!"
They embraced one another, both having tears streaming from their eyes. Rick had a feeling that he would never see his mother again as the two men escorted him to the vehicle parked outside. As they made their way down the road the darker man began to speak.
"My name is Franz, and this is Mark."
"Hello, my name is Rick."
"Yes, we know. Your father told us all about you. We'll be taking you to a place that we now call home. Our organization is called F.F.A.D., which means Freedom Fighters Against Dictators. Do you want to help destroy the person who killed your father?"
"I'll do anything to get that bloody murderer!" Rick yelled with his eyes gleaming with hate.
"You will be going into a special driving training course, as this is the only chance we have of destroying the President. "
For the next three years Rick worked very hard in training, just for the one chance of revenge. Finally the day arrived. The Commander in charge had received information on the route that the President would be taking to his next inspection. He needed a volunteer to drive their newly designed car called the "Interceptor". This car was armed with nuclear missiles that could be directed by the driver.
Rick was the first to volunteer. The commander was reluctant to choose him, because he had been very close to Rick's father and didn't want anything to happen to Rick. After a long discussion the Commander felt this was the best man for the job. The car was equipped with an energy tank that could hold only 250 units of energy because of the speed needed to catch the President's vehicle.
To compensate for the small amount of fuel that it could hold many trucks were stationed along the route to refuel it. They go quite slowly so you must look for them carefully. On the control panel there are five instruments. They are MILE (cars to base), ENERGY (starts out at 250 and goes down with time and crashes), GEAR (l, 2, or 3 depending on the number pushed on the computer), PO (number of cars until the President's car), and MISSILE (number of missiles left). The President's car is travelling at t he speed that would be the equivalent of 2nd gear. To gain at all on his car you must travel in 3rd gear, which means you must drive your best. You, now as Rick Morrison, must take control of the Interceptor and kill the President before he reaches the Base and makes his speech.
This game, using multicolor player/missile graphics for the cars, is the first in the Interlock Series. It is designed to keep any lover of driving games entertained for hours. To control the car you move the joystick left and right to steer from side to side. To slow down, pull back, and to speed up, push forward. Avoid hitting other cars by either destroying them with your missiles or by swerving. Also, don't move onto the side of the road. All these things reduce energy points quickly. When your energ y points reach zero your game is over. To restart the game push the space bar. It's best to travel in third gear because this is the only way you'll be able to catch the President's car. Once you reach it, destroy it with your missiles.
To refuel, all that is needed is to touch the refuelling truck. This truck is green with a square box in the back. It is completely different from all of the other vehicles. The longer you touch it, the more fuel you'll get. Remember, if you get more then 250, it rolls over and starts from zero, so be careful. I found that you should change down to first gear when coming near the refuelling truck. To figure out when the next truck will be coming count the cars that pass. A new truck comes every twentieth car. It's good to play this game with two people, one at the controls and the other gearing down and counting cars.
You must destroy President Maneca's car before it reaches the base or you lose the game. Have fun, and drive carefully.
The game is in four different parts, including the assembler listing which doesn't need to be typed in to play the game. The first program redefines the character set, the second one loads in the main program (machine code), and the third one loads in the basic set up of the game. When typing in the program, name the first program as CHARDAT, the second PROGRAM.BAS, and the third BASIC.BAS. This will then run all three programs when you run CHAR. DAT. If you're a cassette user, save each program by typing SAVE "C:". Then, at line 60 in program one, change it to RUN "C:" and at line 110 in program two do the same thing. Then make sure the programs are saved in the right order on your cassette.
This game runs on 48K and can be played by 1 to 2 players with a joystick. This game can be acquired by sending $3.00 and a blank disk or cassette to:
ROM MAGAZINE
P.O. BOX 252
Maple Ridge,B.C.
Canada V2X 7G1
P.O. BOX 252
Maple Ridge,B.C.
Canada V2X 7G1
Basic
Listing
10 REM
11 REM *THIS IS PART1 ONE
20 REM *BY JACK CHUNG
30 REM
40 REM
50 FOR I=28672 TO 29696:READ X:POKE I,X:NEXT I
60 RUN "D:PROGRAM.BAS"
1000 DATA 0,0,0,0,0,0,0,0,85,85,85,85,85,85,85,85,255,255,255,255,255,255,255,255
1010 DATA 150,150,150,150,150,150,150,150,60,60,60,60,60,60,60,60,230,170,242,36,72,158,170,206
1020 DATA 112,216,168,222,170,182,202,126,56,40,40,56,0,0,0,0,28,36,72,80,80,72,36,28
1030 DATA 112,72,36,20,20,36,72,112,254,170,198,146,198,170,254,0,56,40,238,130,238,40,56,0
1040 DATA 0,0,0,0,56,40,88,96,0,0,252,132,252,0,0,0,0,0,0,0,0,112,80,112
1050 DATA 6,10,20,40,80,160,192,0,124,198,178,170,154,186,198,124,56,104,72,104,40,108,68,124
1060 DATA 252,134,250,26,36,94,130,254,252,134,250,36,58,250,134,252,12,20,36,84,182,130,246,28
1070 DATA 254,130,190,132,250,186,198,124,28,36,92,134,186,186,198,124,254,130,250,20,40,40,40,56
1080 DATA 124,198,186,68,186,186,198,124,124,198,186,186,130,116,136,240,112,80,112,0,112,80,112,0
1090 DATA 112,80,112,0,112,80,176,224,24,40,80,160,160,80,40,24,0,252,132,252,132,252,0,0
1100 DATA 96,80,40,20,20,40,80,96,124,198,186,250,22,28,20,28,124,198,186,162,166,190,194,126
1110 DATA 124,198,186,186,130,186,170,238,252,134,186,132,186,186,134,252,124,198,186,174,174,186,198,124
1120 DATA 248,140,182,186,186,182,140,248,124,198,186,142,190,186,198,124,124,198,186,142,184,160,160,224
1130 DATA 124,198,190,160,174,186,198,124,238,170,186,130,186,170,170,238,254,130,238,40,40,238,130,254
1140 DATA 14,10,10,10,234,186,198,124,230,170,180,136,136,180,170,238,224,160,160,160,160,190,130,254
1150 DATA 254,130,170,170,186,170,170,238,238,186,154,170,178,170,170,238,124,198,186,170,170,186,198,124
1160 DATA 252,134,186,186,134,188,160,224,124,198,186,186,170,178,198,124,252,134,186,186,134,180,186,238
1170 DATA 126,194,190,196,122,250,134,252,254,130,238,40,40,40,40,56,238,170,170,170,170,186,198,124
1180 DATA 238,170,170,170,170,84,40,16,238,170,170,186,170,170,130,254,198,170,84,40,40,84,170,198
1190 DATA 238,170,170,84,40,40,40,56,254,130,250,20,40,94,130,254,124,68,92,80,80,92,68,124
1200 DATA 192,160,80,40,20,10,6,0,124,68,116,20,20,116,68,124,16,40,84,170,198,0,0,0
1210 DATA 0,0,0,0,0,254,130,254,0,54,127,127,62,28,8,0,24,24,24,31,31,24,24,24
1220 DATA 3,3,3,3,3,3,3,3,24,24,24,248,248,0,0,0,24,24,24,248,248,24,24,24
1230 DATA 0,0,0,248,248,24,24,24,3,7,14,28,56,112,224,192,192,224,112,56,28,14,7,3
1240 DATA 1,3,7,15,31,63,127,255,0,0,0,0,15,15,15,15,128,192,224,240,248,252,254,255
1250 DATA 15,15,15,15,0,0,0,0,240,240,240,240,0,0,0,0,255,255,0,0,0,0,0,0
1260 DATA 0,0,0,0,0,0,255,255,0,0,0,0,240,240,240,240,0,28,28,119,119,8,28,0
1270 DATA 0,0,0,31,31,24,24,24,0,0,0,255,255,0,0,0,24,24,24,255,255,24,24,24
1280 DATA 0,0,60,126,126,126,60,0,0,0,0,0,255,255,255,255,192,192,192,192,192,192,192,192
1290 DATA 0,0,0,255,255,24,24,24,24,24,24,255,255,0,0,0,240,240,240,240,240,240,240,240
1300 DATA 24,24,24,31,31,0,0,0,120,96,120,96,126,24,30,0,60,102,195,129,231,36,36,60
1310 DATA 60,36,36,231,129,195,102,60,56,104,207,129,207,104,56,0,28,22,243,129,243,22,28,0
1320 DATA 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
1330 DATA 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
1340 DATA 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
1350 DATA 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
1360 DATA 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
1370 DATA 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
1380 DATA 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
1390 DATA 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
1400 DATA 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
1410 DATA 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
1420 DATA 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
10 REM *******************
20 REM *PART II ---------*
30 REM *MAIN PROGRAM *
40 REM *BY JACK CHUNG *
50 REM *******************
100 FOR I=32768 TO 35800:READ X:POKE I,X:NEXT I
110 RUN "D:BASIC.BAS"
1000 DATA 112,112,240,68,0,0,132,132,132,132,132,132,132,132,132,132,132,132,132,132,132,132,132,132
1010 DATA 132,132,144,131,131,144,65,0,128,0,72,138,72,141,10,212,238,33,128,174,33,128,189,61
1020 DATA 133,141,22,208,189,95,133,141,10,212,141,25,208,236,164,134,208,5,169,0,141,33,128,104
1030 DATA 170,104,64,104,169,0,32,158,132,169,0,141,198,2,141,197,2,141,200,138,141,2,6,32
1040 DATA 75,139,169,50,141,142,137,169,1,141,52,136,169,150,141,1,6,169,50,32,126,132,24,105
1050 DATA 50,141,197,139,169,0,141,0,6,169,250,141,74,139,169,26,141,164,134,169,0,141,47,2
1060 DATA 169,1,141,240,2,169,0,141,48,2,169,128,141,49,2,165,88,141,4,128,165,89,141,5
1070 DATA 128,169,112,141,244,2,169,34,141,0,2,169,128,141,1,2,169,11,141,149,132,169,24,141
1080 DATA 150,132,169,0,141,142,132,169,94,141,151,132,169,33,141,153,132,169,168,141,163,134,169,112
1090 DATA 141,169,134,169,100,141,170,134,169,50,141,162,134,169,1,141,52,136,169,120,141,50,136,169
1100 DATA 0,141,51,136,169,1,141,63,137,169,26,141,164,134,169,3,141,147,137,169,0,141,219,137
1110 DATA 169,162,32,203,132,174,142,132,160,0,32,216,132,174,142,132,160,20,32,11,133,238,142,132
1120 DATA 173,142,132,201,11,144,230,162,24,142,142,132,174,142,132,160,0,32,216,132,174,142,132,160
1130 DATA 20,32,11,133,238,142,132,173,142,132,201,39,144,230,169,0,141,200,2,169,8,141,200,2
1140 DATA 169,116,141,198,2,169,0,133,82,32,129,133,160,188,162,129,169,7,32,92,228,169,192,141
1150 DATA 14,212,169,62,141,47,2,32,93,131,162,10,160,21,32,207,132,173,1,6,32,149,137,162
1160 DATA 10,160,22,32,207,132,173,52,136,32,149,137,162,34,160,22,32,207,132,173,142,137,32,149
1170 DATA 137,162,34,160,21,32,207,132,173,74,139,32,149,137,162,19,160,22,32,207,132,173,197,139
1180 DATA 32,149,137,173,0,6,240,1,96,76,111,129,173,200,138,240,6,32,30,138,76,16,130,32
1190 DATA 196,133,32,48,134,173,12,208,201,3,144,60,173,220,137,240,26,173,142,137,24,105,20,141
1200 DATA 142,137,169,1,141,31,208,173,74,139,24,105,5,141,74,139,76,16,130,173,146,137,208,24
1210 DATA 169,1,141,200,138,169,0,141,145,137,141,2,210,141,3,210,160,0,153,0,115,200,208,250
1220 DATA 32,253,134,32,115,134,32,115,134,173,8,208,240,33,169,52,141,194,2,169,72,141,195,2
1230 DATA 169,1,141,30,208,141,146,137,173,197,139,208,24,169,1,141,2,6,169,0,141,220,137,173
1240 DATA 252,2,201,32,176,49,201,26,144,45,141,62,137,173,62,137,201,26,208,38,169,3,141,52
1250 DATA 136,169,8,141,147,137,169,28,141,164,134,169,175,141,163,134,169,2,141,162,134,169,2,141
1260 DATA 63,137,169,150,141,148,137,76,203,130,201,30,208,38,169,2,141,52,136,169,5,141,147,137
1270 DATA 169,170,141,163,134,169,10,141,162,134,169,27,141,164,134,169,1,141,63,137,169,75,141,148
1280 DATA 137,76,203,130,201,31,208,35,169,26,141,164,134,169,1,141,52,136,169,3,141,147,137,169
1290 DATA 168,141,163,134,169,50,141,162,134,169,1,141,63,137,169,0,141,148,137,173,4,208,201,1
1300 DATA 240,7,201,7,176,3,76,255,130,169,1,141,30,208,206,74,139,208,5,169,1,141,0,6
1310 DATA 173,170,134,201,150,176,3,238,170,134,169,1,141,31,208,169,17,141,167,134,76,4,131,169
1320 DATA 18,141,167,134,173,200,138,208,41,173,145,137,208,28,173,132,2,208,31,169,1,141,145,137
1330 DATA 173,169,134,24,105,2,141,143,137,173,170,134,56,233,8,141,144,137,173,142,137,240,3,32
1340 DATA 64,137,169,1,141,30,208,238,73,139,173,73,139,201,30,144,15,169,0,141,73,139,206,74
1350 DATA 139,208,5,169,1,141,0,6,173,1,6,208,5,169,2,141,0,6,76,98,228,173,145,132
1360 DATA 240,22,238,143,132,173,143,132,205,144,132,176,3,76,88,132,169,0,141,143,132,141,145,132
1370 DATA 173,148,132,201,1,208,8,169,162,32,203,132,76,140,131,169,32,32,203,132,174,149,132,160
1380 DATA 0,32,216,132,174,149.,132,160,20,32,11,133,173,148,132,201,1,208,8,169,32,32,203,132
1390 DATA 76,176,131,169,162,32,203,132,174,150,132,160,0,32,216,132,174,150,132,160,20,32,11,133
1400 DATA 173,148,132,201,1,208,57,238,149,132,238,150,132,173,50,136,24,105,4,141,50,136,173,151
1410 DATA 132,24,105,4,141,151,132,173,162,134,141,144,132,169,1,141,145,132,169,200,32,126,132,201
1420 DATA 100,144,8,169,1,141,148,132,76,0,132,169,2,141,148,132,173,148,132,201,2,208,57,206
1430 DATA 149,132,206,150,132,173,50,136,56,233,4,141,50,136,173,151,132,56,233,4,141,151,132,173
1440 DATA 162,134,141,144,132,169,1,141,145,132,169,200,32,126,132,201,100,144,8,169,1,141,148,132
1450 DATA 76,0,132,169,2,141,148,132,173,149,132,201,20,144,5,169,2,141,148,132,173,149,132,201
1460 DATA 6,176,5,169,1,141,148,132,169,33,32,203,132,160,0,174,149,132,32,216,132,160,20,174
1470 DATA 149,132,32,11,133,160,0,174,150,132,32,216,132,160,20,174,150,132,32,11,133,96,141,141
1480 DATA 132,238,141,132,173,10,210,205,141,132,176,248,96,0,0,0,20,0,0,0,1,11,24,94
1490 DATA 0,33,0,83,58,0,72,162,96,169,12,157,66,3,32,86,228,162,96,169,3,157,66,3
1500 DATA 169,155,157,68,3,169,132,157,69,3,104,157,75,3,41,240,73,16,9,12,157,74,3,32
1510 DATA 86,228,96,141,154,132,96,169,0,134,85,133,86,132,84,96,169,0,32,207,132,162,96,169
1520 DATA 11,157,66,3,169,0,157,72,3,157,73,3,173,154,132,32,86,228,96,169,0,32,207,132
1530 DATA 162,96,169,7,157,66,3,169,0,157,72,3,157,73,3,32,86,228,96,169,0,32,207,132
1540 DATA 173,154,132,141,251,2,162,96,169,17,157,66,3,169,12,157,74,3,169,0,157,75,3,32
1550 DATA 86,228,96,10,10,10,10,157,196,2,152,41,14,24,125,196,2,157,196,2,96,54,54,52
1560 DATA 52,50,50,114,114,116,116,118,118,166,166,164,164,162,162,50,50,52,52,54,54,86,86,84
1570 DATA 84,86,86,86,86,86,86,20,20,20,20,52,52,52,52,52,52,52,84,84,84,84,116,116
1580 DATA 116,116,148,148,148,148,180,180,180,180,196,196,196,196,196,196,196,169,58,141,47,2,169,3
1590 DATA 141,29,208,169,112,141,7,212,169,33,141,111,2,160,0,152,153,0,116,153,0,117,153,0
1600 DATA 118,153,0,119,153,0,115,200,208,238,169,118,141,192,2,169,114,141,193,2,169,58,141,194
1610 DATA 2,169,112,141,195,2,169,1,141,30,208,96,174,120,2,173,167,134,201,17,240,47,138,41
1620 DATA 1,208,20,173,170,134,201,32,144,13,56,237,63,137,141,170,134,238,219,137,76,253,133,138
1630 DATA 41,2,208,17,173,170,134,201,150,176,10,24,109,63,137,141,170,134,206,219,137,138,41,4
1640 DATA 208,20,173,169,134,201,50,144,13,56,237,63,137,141,169,134,206,143,137,206,143,137,138,41
1650 DATA 8,208,20,173,169,134,201,200,176,13,24,109,63,137,141,169,134,238,143,137,238,143,137,96
1660 DATA 173,169,134,141,0,208,141,1,208,172,170,134,174,172,134,240,8,162,0,142,172,134,76,78
1670 DATA 134,162,20,142,172,134,189,173,134,153,0,116,189,213,134,153,0,117,200,232,238,168,134,173
1680 DATA 168,134,201,20,208,232,169,0,141,168,134,173,167,134,201,17,208,0,96,238,165,134,173,165
1690 DATA 134,201,1,208,36,169,0,141,165,134,173,166,134,240,8,169,0,141,166,134,76,152,134,173
1700 DATA 170,134,56,233,20,141,166,134,141,0,210,173,163,134,141,1,210,96,50,168,26,0,0,0
1710 DATA 0,112,100,0,0,0,0,0,24,60,231,36,60,36,0,24,60,60,36,255,0,0,0,0
1720 DATA 0,0,0,0,24,255,36,231,60,36,0,24,60,60,231,60,195,0,0,0,0,0,0,60
1730 DATA 126,255,60,255,255,102,90,126,126,126,255,60,231,231,36,0,0,0,0,60,126,60,255,60
1740 DATA 255,102,90,126,126,126,60,255,36,231,36,0,0,173,51,136,141,168,134,173,146,137,240,23
1750 DATA 173,51,136,109,147,137,141,51,136,141,4,210,169,143,141,5,210,173,51,136,76,40,135,173
1760 DATA 51,136,109,52,136,141,51,136,201,188,144,114,169,0,141,146,137,141,220,137,141,4,210,141
1770 DATA 5,210,206,1,6,173,52,136,201,3,208,3,206,197,139,169,30,141,51,136,169,36,32,126
1780 DATA 132,24,109,151,132,141,50,136,169,3,32,126,132,141,48,136,10,10,10,10,10,141,53,136
1790 DATA 169,15,32,126,132,141,48,136,10,10,10,10,24,105,8,141,194,2,173,48,136,24,105,8
1800 DATA 10,10,10,10,24,105,4,141,195,2,238,221,137,173,221,137,201,20,144,10,169,0,141,221
1810 DATA 137,169,1,141,220,137,173,50,136,141,2,208,141,3,208,162,0,169,0,172,168,134,153,0
1820 DATA 118,153,0,119,232,200,224,20,144,244,169,0,141,168,134,172,51,136,174,49,136,240,8,162
1830 DATA 0,142,49,136,76,212,135,162,16,142,49,136,138,24,109,53,136,170,173,146,137,208,8,173
1840 DATA 220,137,208,3,76,234,135,174,49,136,173,146,137,240,15,189,222,137,153,0,118,189,254,137
1850 DATA 153,0,119,76,30,136,173,220,137,240,15,189,201,138,153,0,118,189,233,138,153,0,119,76
1860 DATA 30,136,189,62,136,153,0,118,189,190,136,153,0,119,200,232,238,168,134,173,168,134,201,16
1870 DATA 208,192,169,0,141,168,134,96,0,0,120,30,1,0,56,38,8,116,136,38,52,7 2,0,24
1880 DATA 60,231,36,60,36,0,24,60,60,36,255,0,0,0,0,24,255,36,231,60,36,0,24,60
1890 DATA 60,231,60,195,0,0,24,24,24,24,24,36,0,0,0,66,24,24,24,0,0,0,24,24
1900 DATA 24,24,24,36,0,0,0,66,24,153,153,0,0,0,102,102,102,24,36,36,60,60,36,36
1910 DATA 36,36,219,219,195,0,102,102,102,24,36,36,60,60,36,36,36,36,219,219,195,0,90,126
1920 DATA 255,126,255,102,0,60,36,0,24,255,0,24,255,24,90,126,126,255,126,102,0,60,36,0
1930 DATA 24,24,231,24,24,255,60,126,255,60,255,255,102,90,126,126,126,255,60,231,231,36,60,126
1940 DATA 60,255,60,255,102,90,126,126,126,60,255,36,231,36,60,102,90,195,195,0,90,90,126,66
1950 DATA 66,60,0,0,0,0,36,126,66,195,195,0,90,90,126,66,90,165,153,0,0,0,0,126
1960 DATA 24,0,0,0,36,60,165,165,231,231,24,219,0,102,102,24,126,0,0,0,36,60,165,165
1970 DATA 231,231,219,24,195,102,60,24,153,153,153,0,60,126,126,126,0,231,231,0,231,231,60,24
1980 DATA 153,153,153,0,60,126,126,126,0,231,231,0,231,231,0,1,173,143,137,141,4,208,173,144
1990 DATA 137,141,2,210,169,72,141,3,210,162,0,172,144,137,169,0,153,0,115,200,232,224,8,144
2000 DATA 247,173,144,137,56,233,10,141,144,137,168,169,1,162,0,153,0,115,200,232,224,8,144,247
2010 DATA 172,144,137,192,10,176,14,169,0,141,145,137,141,2,210,141,3,210,206,142,137,96,50,0
2020 DATA 0,0,0,3,0,160,0,140,216,137,140,217,137,140,218,137,201,100,144,10,56,233,100,238
2030 DATA 216,137,201,100,176,246,201,10,144,10,56,233,10,238,217,137,201,10,176,242,141,218,137,173
2040 DATA 216,137,9,48,32,164,246,173,217,137,9,48,32,164,246,173,218,137,9,48,32,164,246,96
2050 DATA 0,0,0,100,0,0,8,34,194,40,16,161,4,32,0,136,33,0,64,0,0,0,0,16
2060 DATA 0,4,64,5,4,96,0,144,130,136,18,18,64,64,20,28,60,22,76,30,56,28,108,18
2070 DATA 8,8,2,16,2,0,0,12,58,58,47,58,10,23,117,66,9,65,73,9,0,0,32 170
2080 DATA 138,169,0,141,168,134,141,145,137,169,200,32,126,132,141,192,2,141,0,210,169,136,141,1
2090 DATA 210,173,170,134,201,150,176,7,24,109,63,137,141,170,134,201,150,144,40,169,0,141,200,138
2100 DATA 169,1,141,30,208,169,118,141,192,2,169,114,141,193,2,184,173,74,139,56,233,50,176,8
2110 DATA 169,1,141,0,6,76,115,138,141,74,139,173,169,134,141,0,208,141,1,208,172,170,134,174
2120 DATA 199,138,240,8,162,0,142,199,138,76,145,138,162,16,142,199,138,189,9,139,153,0,116,189
2130 DATA 41,139,153,0,117,200,232,238,168,134,173,168,134,201,16,208,232,96,172,170,134,162,0,142
2140 DATA 168,134,169,0,153,0,116,153,0,117,200,232,238,168,134,173,168,134,201,18,208,236,96,0
2150 DATA 0,24,255,60,255,0,0,0,0,126,0,0,129,0,129,0,0,24,60,255,60,0,0,0
2160 DATA 0,126,0,0,0,129,0,0,0,36,195,195,195,60,36,66,126,0,126,126,195,219,195,90
2170 DATA 126,36,195,195,195,60,36,66,126,0,126,126,195,219,195,90,126,0,24,255,235,199,60,36
2180 DATA 0,28,60,60,155,199,213,0,0,0,24,60,231,52,60,42,32,25,60,54,68,215,16,100
2190 DATA 8,60,126,56,48,28,235,102,90,122,110,90,0,40,2,203,4,60,126,255,60,239,247,96
2200 DATA 90,126,118,84,159,4,229,131,32,0,250,162,0,160,21,169,0,32,207,132,169,1,141,240
2210 DATA 2,160,0,140,168,134,172,168,134,185,119,139,32,164,246,238,168,134,172,168,134,192,80,144
2220 DATA 237,160,0,140,168,134,96,32,32,32,32,77,73,76,69,58,32,48,48,48,32,73,78,84
2230 DATA 69,82,67,69,80,84,79,82,32,69,78,69,82,71,89,58,32,48,48,48,32,32,32,32
2240 DATA 32,71.,69,65,82,58,32,48,48,48,32,80,67,58,32,48,48,48,32,32,32,32,32,77
2250 DATA 73,83,83,76,69,58,32,48,48,48,32,32,32,140,0,0,0,0,0,0,0,0,0,0
2260 DATA 0,0,0,0,0,0,0,0,0
10 REM *****************
20 REM *THIS IS PART #3*
30 REM *****************
100 U=USR(32843)
110 IF PEEK(1536)=1 THEN 300
120 GOTO 400:REM IF PEEK(1536)=2 THEN 400
300 POKE 54286,128:GOSUB 1000:POKE 764,255
310 POSITION 12,21:? "**GAME OVER**"
311 IF PEEK(764)=33 THEN POKE 82,2:GOTO 100
320 FOR T=1 TO 100:NEXT T
330 POSITION 12,21:? "
340 IF PEEK(764)=33 THEN POKE 82,2:GOTO 100
350 FOR T=1 TO 100:NEXT T:GOTO 310
400 POKE 54286,128:GOSUB 1000:POKE 764,255
410 POSITION 2,21:? " YOU COMPLETED THE COURSE."
411 REM IF PEEK(1538)=0 THEN 500
420 ? " AND KILLED THE RED COMMUNIST SOB."
430 FOR T=1 TO 1000:NEXT T:GOSUB 1000
440 POSITION 2,21:? " A JOB WELL DONE....."
450 IF PEEK(764)=33 THEN POKE 82,2:GOTO 100
460 GOTO 450
500 IF PEEK(1538)=0 THEN ? " BUT DID NOT KILL THE PRESIDENT"
510 FOR T=1 TO 1000:NEXT T
520 GOSUB 1000
530 POSITION 2,21:? " THE MISSION IS ABORTED...."
540 IF PEEK(764)=33 THEN POKE 82,2:GOTO 100
550 GOTO 540
1000 POSITION 2,21:? " "
1010 ? " ":RETURN
DATA
CHECK
1 REM DATA CHECK PART 1-INTERCEPTOR
10 DATA 9408,384,811,662,386,547,991,556,210,848,372,686,668,794,890,3,58,542
1100 DATA 8216,813,448,434,312,165,430,452,148,62,700,307,994,812,229,319,705,886
1270 DATA 11777,889,587,441,303,680,863,864,865,866,867,868,869,870,862,863,220
0,452,148,62,700,307,994,812,229,319,705,886
1270 DATA 11777,889,587,441,303,6
1 REM DATA CHECK PT2-INTERCEPTOR
10 DATA 8448,342,555,651,632,346,
20,418,58,823,922,620,788,701,508,733,191,140
1100 DATA 12553,842,995,87,745,924,620,922,999,586,922,846,734,787,791,738,65,950
1270 DATA 11871,111,951,894,434,943,989,933,805,303,29,980,761,961,977,49,779,972
1440 DATA 9353,12,880,781,900,346,283,470,789,511,434,569,457,810,335,170,661,945
1610 DATA 10012,736,990,877,96,60,894,139,55,899,604,768,782,620,886,939,23,644
1780 DATA 9636,753,579,687,726,937,912,71,902,55,291,65,853,97,599,468,886,755
1950 DATA 9883,84,304,758,710,720,877,762,628,109,790,675,145,793,923,12,807,786
2120 DATA 7465,942,30,889,780,342,834,268,493,618,112,437,274,239,720,487
1 REM DATA CHECK PT3-INTERCEPTOR
10 DATA 9132,258,590,260,69,713,527,554,409,659,658,877,661,212,555,357,980,793
430 DATA 8127,375,818,663,839,981,707,947,358,663,839,639,298
590,260,69,713,527,554,409,659,658,877,661,212,555,357,980,793
Assembler
Listing
00010 .LI OFF
00020 *************************
00030 * The Interceptor *
00040 * BY JACK CHUNG *
00050 * FOR ATARI WITH *
00060 * 48 K *
00070 * *
00080 * This is the first of *
00090 * the INTERLOCK (c) *
00100 * series. *
00110 * *
00120 *************************
00130 ;
00140 ;
00150 ;
00160 ;
00170 STATE .EQ 1536
00180 KBCODE .EQ 764
00190 RANDOM .EQ #D20A
00200 VERTI .EQ $200
00210 DMACTL .EQ $22F
00220 DLST .EQ $230
00230 GRACTL .EQ #DOlD
00240 PMBASE .EQ $D407
00250 COLPMO .EQ $02CO
00260 HPOSPO .EQ #D000
00270 HPOSP1 .EQ $DO01
00280 HPOSP2 .EQ #DO02
00290 HPOSP3 .EQ $DO03
00300 PCOLORO .EQ 704
00310 PCOLOR1 .EQ 705
00320 PCOLOR2 .EQ 706
00330 PCOLOR3 .EQ 707
00340 STICK .EQ #0278
00350 TRIGO .EQ $DO10
00360 NMIEN .EQ $D40E
00370 PRIOR .EQ #026F
00380 SOUND .EQ $D200
00390 SCREEN .EQ 560
00400 LDM .EQ #84
00410 JVB .EQ #41
00420 WSYNC .EQ #D40A
00430
00440 ADR .EQ $80
00450
00460 .OR #8000
00461 .TA #2600
00462 .TF "D:CAR.BIN"
00470 RIGHT .EQ #8
00480 LEFT .EQ #2
00500 UP .EQ #1
00510 VSPEED .EQ 2
00520
00530 PLAYER .EQ #7000
00540 SPRITE .EQ #CC
00550 ;
00560 ;
00570 DSP .HS 7070FO
00580 .DA ##44
00590 .DA #0
00600 .DA #0
00610 .DA ##84 1
00620 .DA #LDM 2
00630 .DA #LDM 3
00640 .DA #LDM 4
00650 .DA #LDM 5
00660 .DA #LDM 6
00670 .DA #LDM 7
00680 .DA #LDM 8
00690 .DA #LDM 9
00700 .DA #LDM 10
00710 .DA #LDM 11
00720 .DA #LDM 12
00730 .DA #LDM 13
00740 .DA #LDM 14
00750 .DA #LDM 15
00760 .DA #LDM 16
00770 .DA #LDM 17
00780 .DA #LDM 18
00790 .DA #LDM 19
00800 .DA #LDM 20
00810 .DA #;90 21
00820 .DA #;83 22
00630 .DA #;83 23
00840 .DA #$90
00850 .DA #JVB
00860 .DA DSP
00870 COUNTR .DA #0
00880 ;
00890 ;DISPLAY LIST INTERUPT ROUTINE
00900 ;
00910 ;
00920 DLI
00930 PHA
00940 TXA
00950 PHA
00960 STA WSYNC
00970 INC COUNTR
00980 LDX COUNTR
00990 LDA COLBAK,X
01000 STA $D016 ;ROAD
01010 LDA COLBAKI,X
01020 STA WSYNC
01030 STA $D019
01040 CPX RSPEED
01050 BNE ENDDLI
01060 LDA #$00
01070 STA COUNTR
01080 ENDDLI PLA
01090 TAX
01100 PLA
01110 RTI
01120 ;
01140 ;
01150 ;
01160 START PLA
01170 LDA #0
01180 JSR GRAPHICS
01190 LDA #0
01200 STA $2C6
01210 STA $2C5
01220 STA CRASHED
01221 STA DEADPRESIDENT
01230 JSR WRITE
01240 LDA #50
01250 STA NMISSLE
01260 LDA #1
01270 STA RAMSPEED
01280 LDA #150
01290 STA MILES
01300 LDA #50
01310 JSR RND
01320 CLC
01330 ADC #50
01340 STA PRESIDENT
01350 LDA #0
01360 STA STATE
01370 LDA #250
01380 STA ENERGY
01390 LDA #0
01400 STA 559
01410 LDA #1
01420 STA 752
01430 LDA #DSP
01440 STA 560
01450 LDA /DSP
01460 STA 561
01470 LDA 88
01480 STA DSP+4
01490 LDA 89
01500 STA DSP+5
01510 LDA #$70
01516 STA 756
01530 LDA #DLI
01540 STA 512
01550 LDA /DLI
01560 STA 513
01570 LDA #11
01580 STA ROADX
01590 LDA #24
01600 STA ROADXI
01610 LDA #0 ;DRAW
01620 STA XTEMP ;BACK
01630 LDA #94
01640 STA XBORDER
01650 LDA #33
01660 STA PAVEMENT
01670 LDA #$A8
01680 STA LOADNESS
01690 LDA #112
01700 STA OX
01710 LDA #100
01720 STA OY
01730 LDA #50
01740 STA FAST
01750 LDA #1
01760 STA RAMSPEED
01770 LDA #120
01780 STA RX
01790 LDA #0
01800 STA RY
01810 LDA #1
01820 STA HSPEED
01830 LDA #26
01840 STA RSPEED
01850 LDA #3
01860 STA HITSPEED
01870 LDA #0
01880 STA MPH
01890 LDA #162
01900 JSR COLOR
01910 DLOOP LDX XTEMP ;GROUND
01920 LDY #0
01930 JSR PLOT
01940 LDX XTEMP
01950 LDY #20
01960 JSR DRAWTO
01970 INC XTEMP
01980 LDA XTEMP
01990 CMP #11
02000 BCC DLOOP
02010 LDX #24
02020 STX XTEMP
02030 DLOOP1 LDX XTEMP
02040 LDY #0
02050 JSR PLOT
02060 LDX XTEMP
02070 LDY #20
02080 JSR DRAWTO
02090 INC XTEMP
02100 LDA XTEMP
02110 CMP #39
02120 BCC DLOOP1
02130 LDA #$00
02140 STA COLORO+4
02150 LDA #$08
02160 STA $2C8
02170 LDA #$74
02180 STA $2C6
02190 LDA #0
02200 STA 82
02210 JSR INITIAL
02220 LDY #LOOP
02230 LDX /LOOP
02240 LDA #$07
02250 JSR $E45C
02260 LDA #192
02270 STA NMIEN
02280 LDA #62
02290 STA 559
02300 MAIN JSR ROAD
02310 LDX #10
02320 LDY #21
02330 JSR POSITION
02340 LDA MILES
02350 JSR PRINTNUM
02360 LDX #10
02370 LDY #22
02380 JSR POSITION
02390 LDA RAMSPEED ;PRINT
02400 JSR PRINTNUM ;GEAR
02410 LDX #34
02420 LDY #22
02430 JSR POSITION
02440 LDA NMISSLE
02450 JSR PRINTNUM
02460 LDX #34 ;ENERGY
02470 LDY #21 ;LEVEL
02480 JSR POSITION
02490 LDA ENERGY
02500 JSR PRINTNUM
02510 LDX #19
02520 LDY #22
02530 JSR POSITION
02540 LDA PRESIDENT
02550 JSR PRINTNUM
02560 LDA STATE
02570 BEQ CON
02580 RTS ;BACK TO
02590 CON JMP MAIN ;BASICS
02600 ;
02610 ;
02620 LOOP LDA CRASHED
02630 BEQ .1
02640 JSR CRASH
02650 JMP TT
02660 .1 JSR RSTICK
02670 JSR MOVE
02680 LDA 53260
02690 CMP #3
02700 BCC TT
02710 LDA AMUCARON
02720 BEQ .3
02730 LDA NMISSLE
02740 CLC
02750 ADC #20
02760 STA NMISSLE
02770 LDA #1
02780 STA 53279
02790 LDA ENERGY
02800 CLC
02810 ADC #5
02820 STA ENERGY
02830 JMP TT
02840 .3 LDA GOTHIT
02850 BNE TT
02860 LDA #1
02870 STA CRASHED
02880 LDA #0
02890 STA MISSLEON
02900 STA SOUND+2
02910 STA SOUND+3
02920 LDY #0
02930 XX STA PLAYER+$300,Y
02940 INY
02950 BNE XX
02960 TT JSR RAMCAR
02970 JSR ENGINE
02980 JSR ENGINE
02990 LDA 53256
03000 BEQ NEXT2
03010 LDA #52 ;EXPLOSION
03020 STA PCOLOR2
03030 LDA #71
03040 STA PCOLOR3
03050 LDA #1
03060 STA 53278
03070 STA GOTHIT
03080 LDA PRESIDENT ;NOT
03090 BNE SHI ;KILLED
03100 LDA #1
03110 STA DEADPRESIDENT
03120 LDA #0
03130 STA AMUCARON ;RESET
03140 NERT2 LDA KBCODE
03150 CMP #32
03160 BCS JUMPS
03170 CMP #26
03180 BCC JUMPS
03190 STA GEAR
03200 SHI LDA GEAR
03210 CMP #26
03220 BNE TWO
03230 LDA #3
03240 STA RAMSPEED
03250 LDA #8
03260 STA HITSPEED
03270 LDA #28 ;FAST!!
03280 STA RSPEED ;SPEED
03290 LDA #$AF
03300 STA LOADNESS
03310 LDA #2
03320 STA FAST
03330 LDA #2
03340 STA RSPEED
03350 LDA #150
03360 STA SPEED
03370 JUMP1 JMP JUMP
03380 TWO CMP 430 ;MEDIUM
03390 BNE .33 ;SPEED
03400 LDA #2
03410 STA RAMSPEED
03420 LDA #5
03430 STA HITSPEED
03440 LDA #$AA
03450 STA LOADNESS
03460 LDA #10
03470 STA FAST
03480 LDA #27 ;LAND
03490 STA RSPEED ;SPEED
03500 LDA #1
03510 STA RSPEED
03520 LDA #75
03530 STA SPEED
03540 JMP JUMP
03550 .33 CMP #31 ;SLOW
03560 BNE JUMP
03570 LDA #26 ;SLOW
03580 STA RSPEED ;SPEED
03590 LDA #1
03600 STA RAMSPEED
03610 LDA #3
03620 STA HITSPEED
03630 LDA #3A8
03640 STA LOADNESS
03650 LDA #50
03660 STA FAST
03670 LDA #1
03680 STA RSPEED
03690 LDA #0
03700 STA SPEED
03710 JUMP LDA 53252
03720 CMP #1
03730 BEQ .2
03740 CMP #7
03750 BCS .2
03760 JMP .1
03770 .2 LDA #1
03780 STA 53278
03790 DEC ENERGY
03800 BNE .4
03810 LDA #1
03820 STA STATE
03830 .4 LDA OY
03840 CMP #150
03850 BCS .3
03860 INC OY
03870 .3 LDA #1
03880 STA 53279
03890 LDA #17
03900 STA CONDITION
03910 JMP BEND
03920 .1 LDA #18
03930 STA CONDITION
03940 BEND LDA CRASHED
03950 BNE END
03960 LDA MISSLEON ;CHECK
03970 BNE NEXT
03980 LDA 644 ;BUTTON
03990 BNE END ;NOT 0N
04000 LDA #1
04010 STA MISSLEON
04020 LDA OX
04030 CLC
04040 ADC #2 ;SET
04050 STA MX ;MISSLE
04060 LDA OY
04070 SEC
04080 SBC #8
04090 STA MY
04100 NEXT LDA NMISSLE
04110 BEQ END
04120 JSR MISSLE"
04130 END LDA #1
04140 STA 53278
04150 INC TIMER
04160 LDA TIMER
04170 CMP #30
04180 BCC .8
04190 LDA #0
04200 STA TIMER
04210 .7 DEC ENERGY
04220 BNE .8
04230 LDA #1
04240 STA STATE
04250 .8 LDA MILES
04260 BNE .9
04270 LDA #2 ;FINISHED
04280 STA STATE ;THE RACE
04290 .9 JMP $E462
04300 ;
04310 ;
04320 ;
04330 ROAD LDA STOP
04340 BEQ OK
04350 INC COUNT
04360 LDA COUNT
04370 CMP RATE
04380 BCS OK1
04390 JMP PLOTROAD
04400 OK1 LDA #0
04410 STA COUNT
04420 STA STOP
04430 OK LDA DIR
04440 CMP #1
04450 BNE .1
04460 LDA #162 ;DRAW
U4410 JSR COLOR ;GROUND
04480 JMP K1
04490 .1 LDA #32
04500 JSR COLOR
04510 K1 LDX ROADX
04520 LDY #0
04530 JSR PLOT
04540 LDX ROADX
04550 LDY #20
04560 JSR DRAWTO
04570 SKIP LDA DIR
04580 CMP #1
04590 BNE .3
04600 LDA #32
04610 JSR COLOR
04620 JMP K2
04630 .3 LDA #162
04640 JSR COLOR
04650 K2 LDX ROADX1
04660 LDY #0
04670 JSR PLOT
04680 LDX ROADXS
04690 LDY #20
04700 JSR DRAWTO
04710 CHANGE LDA DIR
04720 CMP #1
04730 BNE ANOTHER
04740 INC ROADX
04750 INC ROADXI
04760 LDA RX
04770 CLC
04780 ADC #4
04790 STA RX
04800 LDA XBORDER
04810 CLC
04820 ADC #4
04830 STA XBORDER
04840 LDA FAST
04850 STA RATE
04860 LDA #1
04870 STA STOP
04880 .1 LDA #200
04890 JSR RND
04900 CMP #100
04910 BCC .2
04920 LDA #1
04930 STA DIR
04940 JMP ANOTHER
04950 .2 LDA #2
04960 STA DIR
04970 ANOTHER LDA DIR
04980 CMP #2
04990 BNE ANOTHER1
05000 DEC ROADX
05010 DEC ROADXS
05020 LDA RX
05030 SEC
05040 SBC #4
05050 STA RX
05060 LDA XBORDER
05070 SEC
05080 SBC #4
05090 STA XBORDER
05100 LDA FAST
05110 STA RATE
05120 LDA #1
05130 STA STOP
05140 .2 LDA #200
05150 JSR RND
05160 CMP #100
05170 BCC
05180 LDA #1
05190 STA DIR
05200 JMP ANOTHER
05210 .3 LDA #2
05220 STA DIR
05230 ANOTHER1 LDA ROADX
05240 CMP #20
05250 BCC .1
05260 LDA #2
05270 STA DIR
05280 .1 LDA ROADX
05290 CMP #6
05300 BCS PLOTROAD
05310 LDA #1
05320 STA DIR
05330 PLOTROAD LDA #33
05340 JSR COLOR
05350 LDY #0
05360 LDX ROADX
05370 JSR PLOT
05380 LDY #20
05390 LDX ROADX
05400 JSR DRAWTO
05410 LDY #0
05420 LDX ROADX1
05430 JSR PLOT
05440 LDY #20
05450 LDX ROADX1
05460 JSR DRAWTO
05470 FINI RTS
05480 ;
05490 ;
05500 RND STA RTEMP
05510 INC RTEMP
05520 RNDWAIT LDA RANDOM
05530 CMP RTEMP
05540 BCS RNDWAIT
05550 RTS
05560 RTEMP .DA #0
05570 ;
05580 ;
05590 ;
05600 XTEMP .DA #0
05610 COUNT .DA #0
05620 RATE .DA #20
05630 STOP .DA #0
05640 TEMPX .DA #0
05650 TEMPXI .DA #0
05660 DIR .DA #1
05670 ROADX .DA #11
05680 ROADXI .DA #24
05690 XBORDER .DA #94
05700 PLOTY .DA #0
05710 PAVEMENT .DA #33
05730 ;
05740 ;
05750 CIO .EQ $E456
05760 .EQ $342
05770 ICBADR .EQ ;344
05780 ICBLEN .EQ j348
05790 ICAUX1 .EQ $34A
05800 ICAUX2 .EQ $34B
05810 ;
05820 COPN .EQ 3
05830 CCLOSE .EQ 12
05840 CGBINR .EQ 7
05850 CPBINR .EQ 11
05860 CDRAW .EQ 17
05870 CFILL .EQ 18
05880 ;
05890 OPIN .EQ 4
05900 OPOUT .EQ 8
05910 HORIZONTAL .EQ $55
05920 VERTICAL .EQ ¢54
05930 DRAWCOLOR .EQ $2FB
05940 COLORO .EQ 42C4
05950 LOW .EQ $FF
05960 HIGH .EQ $100
05970 ;
05980 SAVECOLOR .DA #0
05990 SNAME .AS "S:"
06000 .DA #0
06010 GRAPHICS
06020 PHA
06030 LDX #96
06040 LDA #CCLOSE
06050 STA ICCOM,X
06060 JSR CIO
06070 ;
06080 LDX #96
06090 LDA #COPN
06100 STA ICCOM,X
06110 LDA #SNAME
06120 STA ICBADR,X
06130 LDA /SNAME
06140 STA ICBADR+1,X
06150 ;
06160 PLA
06170 STA ICAUX2,X
06180 AND #$F0
06190 EOR #$10
06200 ORA #$0C
06210 STA ICAUXI,X
06220 JSR CIO
06230 RTS
06240 ;
06250 COLOR
06260 STA SAVECOLOR
06270 RTS
06280 ;
06290 POSITION LDA #0
06300 STX HORIZONTAL
06310 STA HORIZONTAL+1
06320 STY VERTICAL
06330 RTS
06340 ;
06350 PLOT LDA #0
06360 JSR POSITION
06370 LDX #96
06380 LDA #CPBINR
06390 STA ICCOM,X
06400 LDA #0
06410 STA ICBLEN,X
06420 STA ICBLEN+1,X
06430 LDA SAVECOLOR
06440 JSR CIO
06450 RTS
06460 ;
06470 LOCATE LDA #0
06480 JSR POSITION
06490 LDX #96
06500 LDA #CGBINR
06510 STA ICCOM,X
06520 LDA #0
06530 STA ICBLEN,X
06540 STA ICBLEN+1,X
06550 JSR CIO
06560 RTS
06570 ;
06580 DRAHTO LDA #0
06590 JSR POSITION
06600 LDA SAVECOLOR
06610 STA DRAWCOLOR
06620 LDX #96
06630 LDA #CDRAY
06640 STA ICCOM,X
06650 LDA #$OC
06660 STA ICAUXI,X
06670 LDA #0
06680 STA ICAUX2,X
06690 JSR CIO
06700 RTS
06710 ;
06720 SETCOLOR
06730 ASL
06740 ASL
06750 ASL
06760 ASL
06770 STA COLORO,X
06780 TYA
06790 AND #$0E
06800 CLC
06810 ADC COLORO,X
06820 STA COLORO,X
06830 RTS
06840 ;
06850 ;
06860 ;
06870 ;
06880 ;
06890 COLBAK .DA #$36,#536,#534,#$34,#332,#532,#372,#372,#574,#374
06900 .DA #$76,#576,#$A6,#$A6,#$A4,#$A4,#$A2,#$A2,#532
06910 .DA #$32,#534,#334,#$36,#536,#356,#556,#354,#554,#$56,#$56,#556,#556,#556,#556
06920 ;
06930 ;
06940 COLBAK1 .DA #$14,#514,#514,#$14,#334,#534,#334,#534,#534,#$34
06950 .DA #$34,#554,#554,#$54,#554,#574,#574,#574,#574
069AO .DA #$94,#594,#594,#594,#$B4,#$B4,#$B4,#$B4,#;C4,#$C4,#$C4,#$C4,#$C4,#$C4,#$C4
06970 ;
06990 INITIAL LDA #$3A ;SET UP
07000 STA DMACTL ;PLAYER
07010 LDA #$03 ;MISSLE
07020 STA GRACTL ;SHAPES
07030 LDA /PLAYER
07040 STA PMBASE
07050 LDA #33
07060 STA PRIOR
07070 LDY #0 ;CLEAN UP
07080 TYA ;PLAYER MISSLE MEMORY
07090 .1 STA PLAYER+3400,Y
07100 STA PLAYER+$500,Y
07110 STA PLAYER+$600,Y
07120 STA PLAYER+$700,Y
07130 STA PLAYER+3300,Y
07140 INY
07150 BNE .1
07160 LDA #$76 ;SET PLAYER
07170 STA COLPMO ;COLORS
07180 LDA #$72
07190 STA COLPMO+1
07200 LDA #$3A
07210 STA COLPMO+2
07220 LDA #$70
07230 STA COLPMO+3
07240 RTS
07250 ;
07260 ;
07270 ;
07280 RSTICK LDX STICK
07290 LDA CONDITION
07300 CMP #17
07310 BEQ .2
07320 TXA ;TRIGGER1
07330 AND #UP
07340 BEE .1
07350 LDA OY
07360 CMP #32
07370 BCC .1
07380 SEC
07390 SBC HSPEED
07400 STA OY
07410 INC MPH
07420 JMP .2
07430 .1 TXA
07440 AND #DOWN
07450 BNE .2
07460 LDA OY
07470 CMP #150
07480 BCS .2
07490 CLC
07500 ADC HSPEED
075l0 STA OY
07520 DEC MPH
07530 .2 TXA
07540 AND #LEFT
07550 BNE .3
07560 LDA OX
07570 CMP #50
07580 BCC .3
07590 SEC
07600 SBC HSPEED
07610 STA OX
07620 DEC MX
07630 DEC MX
07640 .3 TXA
07650 AND #RIGHT
07660 BNE .4
07670 LDA OX
07680 CMP #200
07690 BCS .4
07700 CLC
07710 ADC HSPEED
07720 STA OX
07730 INC MX
07740 INC MX
07750 .4 RTS
07760
07770 MOVE LDA OX
07780 STA HPOSPO
07790 STA HPOSPI
07800 LDY OY
07810 LDX SHAPE
07820 BEQ .1
07830 LDX #0
07840 STX SHAPE
07850 JMP M00
07860 .1 LDX #20
07870 STX SHAPE
07880 MOO LDA CSHAPEI,X
07890 STA PLAYER+$400,Y
07900 LDA CSHAPE2,X
07910 STA PLAYER+$500,Y
07920 INY
07930 INX
07940 INC I
07950 LDA I
07960 CMP #20
07970 BNE MOO
07980 LDA #0
07990 STA I
08000 LDA CONDITION
08010 CMP #17
08020 BNE .2
08030 .2 RTS
08040
08050 ;
08060 ENGINE INC CS
08070 LDA C1
08080 CMP #1
08090 BNE NOT
08100 LDA #0
08110 STA CS
08120 LDA CSOUND
08130 BEQ .3
08140 LDA #0
08150 STA CSOUND
08160 JMP .4
08170 .3 LDA OY
08180 SEC
08190 SBC #20
08200 STA CSOUND
08210 .4 STA SOUND
08220 LDA LOADNESS
08230 STA SOUND+1
08240 NOT RTS
08250 ;
08260 FAST .DA #50
08270 LOADNESS .DA #$A8
08280 RSPEED .DA #26
08290 C1 .DA #0
08300 CSOUND .DA #0
08310 CONDITION .DA #0
08320 I .DA #0
08330 OX .DA #112
08340 OY .DA #100
08350 FRAME .HS 00
08360 SHAPE .DA #0
08370 SLEN .EQ *-SHAPE-1
08380 CSHAPEI
08390 .DA #0,#0,#0,#24,#60,#231,#36,#60,#36,#0,#24,#60,#60,#36,#255,#0,#0,#0,#0,#0
08400 .DA #0,#0,#0,#24,#255,#36,#231,#60,#36,#0,#24,#60,#60,#231,#60,#195,#0,#0,#0,#0
08410 ;
08420 CSHAPE2
08430 .DA #0,#0,#60,#126,#255,#60,#255,#255,#102,#90,#126,#126,#126,#255,#60,#231,#231,#36,#0,#0
08440 .DA #0,#0,#60,#126,#60,#255,#60,#255,#102,#90,#126,#126,#126,#60,1255,#36,#231,#36,#0,#0
08450 ;
08460 ;
08470 RAMCAR LDA RY ;TEMPORARY
08480 STA I
08490 LDA GOTHIT
08500 BEQ .1
08510 LDA RY
08520 ADC HITSPEED
08530 STA RY
08540 STA SOUND+4
08550 LDA #$8F
08560 STA SOUND+5
08570 LDA RY
08580 JMP .2
08590 .1 LDA RY
08600 ADC RAMSPEED
08610 STA RY
08620 .2 CMP #188
08630 BCC RAMMOVE ;START
08640 LDA #0 ;ANOTHER
08650 STA GOTHIT ;CAR
08660 STA AMUCARON
08670 STA SOUND+4
08680 STA SOUND+5
08690 DEC MILES
08700 LDA RAMSPEED
08710 CMP #3
08720 BNE .4
08730 DEC PRESIDENT
08740 .4 LDA #30
08750 STA RY
08760 LDA #36
08770 JSR RND
08780 CLC
08790 ADC XBORDER
08800 STA RX
08810 LDA #3 ;CHOOSE
08820 JSR RND ;NEW SNAPE
08830 STA TEMP
08840 ASL ;*2
08850 ASL ;*4
08860 ASL ;*8
08870 ASL ;*16
08880 ASL ;*32
08890 STA NEWSHAPE
08900 LDA #15
08910 JSR RND
08920 STA TEMP
08930 ASL
08940 ASL
08950 ASL
08960 ASL
08970 CLC
08980 ADC #8
08990 STA PCOLOR2
09000 LDA TEMP
09010 CLC
09020 ADC #8
09030 ASL
09040 ASL
09050 ASL
09060 ASL
09070 CLC
09080 ADC #4
09090 STA PCOLOR3
09100 INC AMUCOUNTER
09110 LDA AMUCOUNTER
09120 CMP #20
09130 BCC RAMMOVE
09140 LDA #0
09150 STA AMUCOUNTER
09160 LDA #1
09170 STA AMUCARON
09180 RAMMOVE LDA RX
09190 STA HPOSP2
09200 STA HPOSP3
09210 LDX #0
09220 LDA #0
09230 LDY I
09240 CLOOP STA PLAYER+$600,Y
09250 STA PLAYER+$700,Y
09260 INX
09270 INY
09280 CPR #20
09290 BCC CLOOP
09300 LDA #0
09310 STA I
09320 LDY RY
09330 LDX WSHAPE
09340 BEQ .1
09350 LDX #0
09360 STX WSHAPE
09370 JMP .2
09380 .1 LDX #16
09390 STX WSHAPE
09400 .2 TXA
09410 CLC
09420 ADC NEWSHAPE
09430 TAX
09440 LDA GOTHIT
09450 BNE ALL
09460 LDA AMUCARON
09470 BNE ALL
09480 JMP RLOOP
09490 ALL LDX WSHAPE
09500 RLOOP LDA GOTHIT
09510 BEQ AMUSKIP
09520 LDA EXPLOSION,X
09530 STA PLAYER+$600,Y
09540 LDA EXPLOSION1,X
09550 STA PLAYER+$700,Y
09560 JMP SKIP3
09570 AMUSKIP LDA AMUCARON
09580 BEQ SKIP2
09590 LDA AMUCAR,X
09600 STA PLAYER+$600,Y
09610 LDA AMUCARI,X
09620 STA PLAYER+$700,Y
09630 JMP SKIP3
09640 SKIP2 LDA RSHAPE1,X
09650 STA PLAYER+$600,Y
09660 LDA RSHAPE2,X
09670 STA PLAYER+$700,Y
09680 SKIP3 INY
09690 INX
09700 INC I
09710 LDA I
09720 CMP #16
09730 BNE RLOOP
09740 LDA #0
09750 STA I
09760 .2 RTS
09770 ;
09780 TEMP .DA #0
09790 WSHAPE .DA #0
09800 RX .DA #120
09810 RY .DA #30
09820 RAMSPEED .DA #1
09830 NEWSHAPE .DA #0
09840 RAMCOLOR .DA #56,#38,#8,#116,#136,#38,#$34,#548
09850 RSHAPE1
09860 .DA #0,#24,#60,#231,#36,#60,#36,#0,#24,#60,#60,#36,#255,#0,#0,#0
09870 .DA #0,#24,#255,#36,#231,#60,#36,#0,#24,#60,#60,#231,#60,#195,#0,#0
09880 .DA #24,#24,#24,#24,#24,#36,#0,#0,#0,#66,#24,#24,#24,#0,#0,#0
09890 .DA #24,#24,#24,#24,#24,#36,#0,#0,#0,#66,#24,#153,#153,#0,#0,#0
09900 .DA #102,#102,#102,#24,#36,#36,#60,#60,#36,#36,#36,#36,#219,#219,#195,#0
09910 .DA #102,#102,#102,#24,#36,#36,#60,#60,#36,#36,#36,#36,#219,#219,#195,#0
09920 .DA #90,#126,#255,#126,#255,#102,#0,#60,#36,#0,#24,#255,#0,#24,#255,#24
09930 .DA #90,#126,#126,#255,#126,#102,#0,#60,#36,#0,#24,#24,#231,#24,#24,#255
09940 RSHAPE2
09950 .DA #60,#126,#255,#60,#255,#255,#102,#90,#126,#126,#126,#255,#60,#231,#231,#36
09960 .DA #60,#126,#60,#255,#60,#255,#102,#90,#126,#126,#126,#60,#255,#36,#231,#36
09970 .DA #60,#102,#90,#195,#195,#0,#90,#90,#126,#66,#66,#60,#0,#0,#0,#0
09980 .DA #36,#126,#66,#195,#195,#0,#90,#90,#126,#66,#90,#165,#153,#0,#0,#0
09990 .DA #0,#126,#24,#0,#0,#0,#36,#60,#165,#165,#231,#231,#24,#219,#0,#102
10000 .DA #102,#24,#126,#0,#0,#0,#36,#60,#165,#165,#231,#231,#219,#24,#195,#102
10010 .DA #60,#24,#153,#153,#153,#0,#60,#126,#126,#126,#0,#231,#231,#0,#231,#231
10020 .DA #60,#24,#153,#153,#153,#0,#60,#126,#126,#126,#0,#231,#231,#0,#231,#231
10030 GEAR .DA #0
10040 HSPEED .DA #1
10050 MISSLE LDA MX
10060 STA 53252
10070 LDA MY
10080 STA SOUND+2
10090 LDA #$48
10100 STA SOUND+3
10110 LDX #0
10120 LDY MY ;ERASE
10130 LDA #0
10140 DRAYM STA PLAYER+$300,Y
10150 INY
10160 INX
10170 CPX #8
10180 BCC DRAWM
10190 LDA MY
10200 SEC
10210 SBC #10
10220 STA MY
10230 TAY
10240 LDA #1 ;DRAY
10250 LDX #0
10260 MERASE STA PLAYER+$300,Y
10270 INY
10280 INX
10290 CPR #8
10300 BCC MERASE
10310 LDY MY
10320 CPY #10
10330 BCS OK2
10340 LDA #0
10350 STA MISSLEON
10360 STA SOUND+2
10370 STA SOUND+3
10380 DEC NMISSLE
10390 OK2 RTS
10400 ;
10410 NMISSLE .DA #50
10420 MX .DA #0
10430 MY .DA #0
10440 MISSLEON .DA #0
10450 GOTHIT .DA #0
10460 HITSPEED .DA #3
10470 SPEED .DA #0
10480 MILES .EQ 1537
10490 PRINTNUM LDY #0
10500 STY FIRSTDIG
10510 STY SECONDDIG
10520 STY THIRDDIG
10530 CMP #100
10540 BCC .2
10550 .1 SEC
10560 SBC #100
10570 INC FIRSTDIG
10580 CMP #100
10590 BCS .1
10600 .2 CMP #10
10610 BCC .3
10620 SEC
10630 SBC #10
10640 INC SECONDDIG
10650 CMP #10
10660 BCS .2
10670 .3 STA THIRDDIG
10680 LDA FIRSTDIG
10690 ORA #$30
10700 JSR PRINT
10710 LDA SECONDDIG
10720 ORA #$30
10730 JSR PRINT
10740 LDA THIRDDIG
10750 ORA #$30
10760 JSR PRINT
10770 RTS
10780 ;
10790 ;
10800 FIRSTDIG .DA #0
10810 SECONDDIG .DA #0
10820 THIRDDIG .DA #0
10830 PRINT .EQ $F6A4
10840 MPH .DA #100
10850 AMUCARON .DA #0
10860 AMUCOUNTER .DA #0
10870 ;
10880 ;
10890 EXPLOSION
10900 .DA #8,#34,#194,#40,#16,#161,#4,#32,#0,#136,#33,#0,#64,#0,#0,#0
10910 .DA #0,#16,#0,#4,#64,#5,#4,#96,#0,#144,#130,#136,#18,#18,#64,#64
10920 ;
10930 EXPLOSIONS
10940 .DA #20,#28,#60,#22,#76,#30,#56,#28,#108,#18,#8,#8,#2,#16,#2,#0
10950 .DA #0,#12,#58,#58,#47,#58,#10,#23,#117,#66,#9,#65,#73,#9,#0,#0
10960 ;
10970 ;
10980 ;
10990 ;
11000 CRASH JSR CLEAR
11010 LDA #0
11020 STA I
11030 STA MISSLEON
11040 LDA #200
11050 JSR RND
11060 STA PCOLORO
11070 STA SOUND
11080 LDA #$88
11090 STA SOUND+1
11100 LDA OY
11110 CMP #150
11120 BCS .44
11130 CLC
11140 ADC HSPEED
11150 STA OY
11160 .44 CMP #150
11170 BCC CONT
11180 LDA #0
11190 STA CRASHED
11200 LDA #1
11210 STA 53278
11220 LDA #$76
11230 STA PCOLORO ;RESTORE
11240 LDA #$72 ;COLOR
11250 STA PCOLOR1
11260 CLV
11270 LDA ENERGY
11280 SEC
11290 SBC #50
11300 BCS .1
11310 LDA #1
11320 STA STATE
11330 JMP CONT
11340 .1 STA ENERGY
11350 CONT LDA OX
11360 STA HPOSPO
11370 STA HPOSP1
11380 LDY OY
11390 LDX SHAPES
11400 BEQ .1
11410 LDX #0
11420 STX SHAPES
11430 JMP M1
11440 .1 LDX #16
11450 STX SHAPES
11460 M1 LDA CRASHSHAPE,X
11470 STA PLAYER+$400,Y
11480 LDA CRASHSHAPE1,X
11490 STA PLAYER+$500,Y
11500 INY
11510 INX
11520 INC I
11530 LDA I
11540 CMP #16
11550 BNE MS
11560 RTS
11570 ;
11580 CLEAR LDY OY
11590 LDX #0
11600 STX I
11610 M2 LDA #0
11620 STA PLAYER+$400,Y
11630 STA PLAYER+$500,Y
11640 INY
11650 INX
11660 INC I
11670 LDA I
11680 CMP #18
11690 BNE M2
11700 RTS
11710 ;
11720 SHAPES .DA #0
11730 CRASHED .DA #0
11740 ;
11750 AMUCAR
11760 .DA #24,#255,#60,#255,#0,#0,#0,#0,#126,#0,#0,#129,#0,#129,#0,#0
11770 .DA #24,#60,#255,#60,#0,#0,#0,#0,#126,#0,#0,#0,#129,#0,#0,#0
11780 AMUCAR1
11790 .DA #36,#195,#195,#195,#60,#36,#66,#126,#0,#126,#126,#195,#219,#195,#90,#126
11800 .DA #36,#195,#195,#195,#60,#36,#66,#126,#0,#126,#126,#195,#219,#195,#90,#126
11810 CRASHSHAPE
11820 .DA #0,#24,#255,#235,#199,#60,#36,#0,#28,#60,#60,#155,#199,#213,#0,#0
11830 .DA #0,#24,#60,#231,#52,#60,#42,#32,#25,#60,#54,#68,#215,#16,#100,#8
11840 CRASHSHAPE1
11850 .DA #60,#126,#56,#48,#28,#235,#102,#90,#112,#110,#90,#0,#40,#2,#203,#4
11860 .DA #60,#126,#255,#60,#239,#247,#96,#90,#126,#118,#84,#159,#4,#229,#131,#32
11870 TIMER .DA #0
11880 ENERGY .DA #250
11890 WRITE LDX #0
11900 LDY #21
11910 LDA #0
11920 JSR POSITION
11930 LDA #1
11940 STA 752
11950 LDY #0
11960 STY I
11970 .1 LDY I
11980 LDA MESSAGE,Y
11990 JSR PRINT
12000 INC I
12010 LDY I
12020 CPY #80
12030 BCC .1
12040 LDY #0
12050 STY I
12060 RTS
12070 ;
12080 ;
12090 MESSAGE
12100 .AS " MILE: 000 INTERCEPTOR ENERGY: 000 "
12110 .AS " GEAR: 000 PC: 000 MISSLE: 000 "
12120 PRESIDENT .DA #140
12130 DEADPRESIDENT .EQ 1538
BCS .44
11130 CLC
11140 ADC HSPEED
11150 STA OY
11160 .44 CM8!