Classic Computer Magazine Archive A.N.A.L.O.G. ISSUE 64 / SEPTEMBER 1988 / PAGE 12

Kason's Tower


It's the year 3456, and even though the year is more than half over, you still continue to put 3455 on all of your checks. This is the fifth year in your search for the lost arts of civilization, the meaning of life, the secret of peace among all men and the ultimate free tabloid.

In disgust, you've taken refuge in the lost mountain town of Golenden, where your host (he's the ancestor of the man who was considered to be the most important citizen of Golenden at the time of the fall of civilization-the plumber) has been most gracious. Unfortunately, you rather tactlessly referred to his daughter as "that repulsive little squash-faced gnome," and now, as your punishment, you must scale the ancient Kason's Tower.

The game
    Type in Listing 1 using Basic Editor II found elsewhere in this issue. Save a copy of the program before you run it.! If you fail to do this, you'll have to retype the program because it erases itself from memory.
    At the start of the game, your man is on one side of a floor of the tower, and a pole is on the other. Use your joystick to move your man across the floor to the pole, avoiding the arrows that will be flying toward you. Pull down on the joystick to duck beneath the high arrows, and press the trigger to jump over the low arrows. When you reach the pole, your man will be teleported to the next floor. Upon the completion of the top floor, your man will begin on the next level. You're given five men at the beginning of the game, and when these are used up, the game is over.
    This program uses BASIC to directly load and run the large machine-language portion of the game. The program is erased after it is run, so be very careful to save a copy before running.

Jim Rogers has had his 800XL for four years, and is completely self-taught in both BASIC and machine language.

LISTING 1: BASIC

UA 10 REM ****************************
NL 11 REM *       KASON'S TOWER      *
WX 12 REM *       BY JIM ROGERS      *
NG 13 REM *                          *
IA 14 REM *       COPYRIGHT 1988     *
GC 15 REM *    BY ANALOG COMPUTING   *
UM 16 REM ****************************
YJ 100 GRAPHICS 18:POSITION 3,5:? #6;"KAS
   ON'S TOWER"
TJ 200 RESTORE 5001:FOR A=1536 TO 1745:RE
   AD B:POKE A,B:SOUND 0,121+42*(A<1600)+
   81*(A<1670),10,4:NEXT A
VN 300 SOUND 0,0,0,0
GH 1001 DATA 76,73,32,56,124,124,252,240,
   240,230,48,0,252,252,92,92,108,108,104
   ,108,56,124,112,230,254
XS 1002 DATA 255,248,124,56,48,56,60,124,
   108,108,104,0,56,124,124,252,240,240,2
   30,48,0,252,252,60,60
JY 1003 DATA 126,118,224,224,56,124,112,2
   30,254,255,248,124,56,98,50,60,60,124,
   112,96,0,56,124,124,252
BS 1004 DATA 240,240,230,48,0,112,112,116
   ,62,62,254,246,134,56,124,112,230,254,
   255,248,124,56,60,12,12
EY 1005 DATA 62,62,126,116,0,56,124,124,2
   52,240,240,230,48,252,240,92,110,204,0
   ,0,0,0,56,124,112
KV 1006 DATA 230,254,255,248,124,48,56,60
   ,110,0,0,0,0,0,28,62,62,63,15,15,103,1
   2,0,63,63
QK 1007 DATA 58,58,54,54,22,54,28,62,14,1
   03,127,255,31,62,28,12,28,60,62,54,54,
   22,0,28,62
IL 1008 DATA 62,63,15,15,103,12,0,63,63,6
   0,60,126,110,7,7,28,62,14,103,127,255,
   31,62,28,70
XY 1009 DATA 76,60,60,62,14,6,0,28,62,62,
   63,15,15,103,12,0,14,14,46,124,124,127
   ,111,97,28
YN 1010 DATA 62,14,103,127,255,31,62,28,6
   0,48,48,124,124,126,46,0,28,62,62,63,1
   5,15,163,12,63
QJ 1011 DATA 59,58
WQ 1013 DATA 118,51,0,0,0,0,28,62,14,103,
   127,255,31,62,12,28,60,118,0,0,0,0,0,2
   4,60
BC 1014 DATA 126,24,24,24,60,24,60,24,60,
   126,35,65,255,65,35,196,130,255,130,19
   6,40,40,37,35,35
NZ 1015 DATA 37,40,42,45,47,50,53,57,60,6
   4,68,72,76,81,173,165,174,16,0,0,0,0,0
   ,0,172
TP 1016 DATA 165,182,165,172,16,121,96,72
   ,60,72,96,121,96,96,48,50,37,51,51,0,5
   1,52,33,50,52
OU 1017 DATA 0,52,47,0,34,37,39,41,46,3,5
   ,6,6,7,7,7,6,6,5,3,0,0,1,1,1
IE 1018 DATA 1,1,1,1,1,1,1,0,0,34,0,68,16
   2,144,144,128,121,108,96,91,60,81,121,
   121,121
QY 1019 DATA 81,60,60,60,81,60,60,60,81,6
   0,47,47,60,47,47,47,47,72,72,81,81,96,
   96,121,96
TY 1020 DATA 121,144,121,144,121,60,47,60
   ,134,62,254,46,0,0,154,44,0,56,0,79,72
   ,138,72,152,72
RG 1021 DATA 169,1,141,10,212,173,172,6,4
   1,1,201,1,208,30,172,164,6,185,165,6,1
   41,2,208,185,225
LE 1022 DATA 6,141,20,208,238,164,6,173,1
   64,6,201,7,144,5,169,0,141,164,6,172,1
   74,6,185,175,6
HO 1023 DATA 141,3
XV 1025 DATA 208,238,174,6,173,174,6,201,
   14,144,5,169,0,141,174,6,238,172,6,104
   ,168,104,170,104,64
DJ 1026 DATA 72,138,72,152,72,169,0,141,1
   64,6,141,172,6,141,174,6,165,224,24,10
   5,17,133,226,165,225
NZ 1027 DATA 105,0,133,227,160,0,162,17,1
   69,0,145,203,145,205,200,202,208,246,1
   73,173,6,133,203,133,205
JR 1028 DATA 160,0,162,17,177,224,145,203
   ,177,226,145,205,200,202,208,244,173,1
   89,6,201,1,208,53,238,190
GO 1029 DATA 6,174,190,6,224,4,144,5,169,
   0,141,1,210,224,5,144,34,169,0,141,190
   ,6,174,191,6
ZL 1030 DATA 189,137,30,141,0,210,169,163
   ,141,1,210,238,191,6,174,191,6,224,38,
   144,5,169,0,141,191
NK 1031 DATA 6,173,195,6,201,1,208,38,169
   ,42,141,3,210,174,196,6,189,37,30,141,
   2,210,238,196,6
YR 1032 DATA 173,196,6,201,19,208,14,169,
   0,141,195,6,141,196,6,141,3,210,141,2,
   210,173,211,6,201
RE 1833 DATA 1,208,38,169,166,141,5,210,1
   74,212,6,189,129,30,141,4,210,238,212,
   6,173,212,6,201,8
KY 1034 DATA 208,14,169,0,141,211,6,141,2
   12,6,141,5,210,141,4,210,104,168,104,1
   70,104,76,98,228,173
PA 1035 DATA 197,6
MY 1037 DATA 10,141,194,6,169,12,56,237,1
   94,6,168,169,38,153,175,6,153,176,6,17
   3,197,6,41,1,201
VW 1038 DATA 1,208,8,169,214,153,175,6,15
   3,176,6,160,0,162,6,169,0,153,216,6,20
   0,202,208,247,96
VA 1039 DATA 169,175,162,24,56,237,197,6,
   202,208,249,96,169,198,141,207,6,141,0
   ,208,141,1,208,169,175
GE 1040 DATA 141,173,6,169,0,133,20,165,2
   0,201,3,144,250,96,56,165,106,56,233,1
   6,141,7,212,141,192
IP 1041 DATA 6,169,62,141,47,2,169,3,141,
   29,208,173,192,6,24,105,3,133,208,169,
   0,133,207,162,5
QK 1042 DATA 160,0,169,0,145,207,200,208,
   249,230,208,202,208,242,173,192,6,24,1
   05,6,133,208,169,36,133
KB 1043 DATA 207,162,7,142,193,6,160,0,16
   2,12,185,15,30,145,207,200,202,208,247
   ,165,207,24,105,24,133
QL 1044 DATA 207,174,193,6,202,208,227,23
   0,208,169,29,133,207,162,7,142,193,6,1
   62,2,142,194,6,160,0
HO 1045 DATA 162,5,185,32,30,145,207,290,
   202,208,247,165,207,24,105,13,133,207,
   174,194,6,202,208,227,165
UX 1046 DATA 207,56,233,2,133,207,174,193
   ,6,202,240,47,142,193,6,162,2,142,194,
   6,160,0,162,5,185
JT 1047 DATA 27,30
JZ 1049 DATA 145,207,200,202,208,247,165,
   207,24,105,13,133,207,174,194,6,202,20
   8,227,165,207,56,233,2,133
HZ 1050 DATA 207,174,193,6,202,208,162,17
   3,192,6,24,105,4,133,204,133,206,230,2
   06,162,7,160,0,169,50
FD 1051 DATA 153,165,6,200,202,240,9,169,
   198,153,165,6,200,202,208,238,169,0,14
   1,8,208,141,9,208,141
UZ 1052 DATA 10,208,141,11,208,141,8,210,
   169,3,141,15,210,160,0,162,7,185,175,3
   0,153,192,2,200,202
OU 1053 DATA 208,246,169,33,141,111,2,169
   ,0,141,172,6,141,195,6,141,196,6,141,1
   97,6,141,203,6,141
PR 1054 DATA 214,6,162,7,160,0,169,38,153
   ,175,6,200,153,175,6,200,202,240,13,16
   9,214,153,175,6,200
AI 1055 DATA 153,175,6,200,202,208,230,16
   2,7,160,0,169,254,153,225,6,200,202,20
   8,247,169,29,133,225,169
AU 1056 DATA 135,133,224,32,46,32,173,48,
   2,133,207,173,49,2,133,208,160,1,169,2
   40,145,207,160,3,177
NN 1057 DATA 207,24,105,128,145,207,160,8
   ,162,12,169,138,145,207,200,200,200,20
   2,208,246,169,187,141,0,2
TG 1058 DATA 169,30,141,1,2,169,192,141,1
   4,212,160,13,162,31,169,7,32,92,228,17
   3,48,2,24,105,134
WH 1059 DATA 133,207
UR 1061 DATA 173,49,2,105,0,133,208,162,6
   ,142,193,6,160,0,162,20,169,255,145,20
   7,200,202,208,248,165
OS 1062 DATA 207,24,105,120,133,207,165,2
   08,105,0,133,208,174,193,6,202,208,222
   ,173,48,2,24,105,41,133
OZ 1063 DATA 207,173,49,2,105,4,133,208,1
   60,0,162,16,185,56,30,145,207,200,202,
   208,247,160,0,162,3
WY 1064 DATA 173,48,2,24,121,182,30,153,2
   18,0,173,49,2,105,4,153,219,0,200,200,
   202,208,233,169,5
LX 1065 DATA 141,201,6,169,0,141,199,6,14
   1,189,6,141,0,210,141,1,210,169,20,141
   ,200,6,160,0,162
ET 1066 DATA 20,185,81,30,145,222,200,202
   ,208,247,173,31,208,201,6,208,249,160,
   0,162,20,169,0,145,222
VK 1067 DATA 200,202,208,248,169,1,141,18
   9,6,160,0,173,201,6,24,105,16,145,218,
   32,46,32,169,0,141
QB 1068 DATA 197,6,160,0,173,199,6,24,105
   ,16,145,220,32,20,32,169,2,141,30,208,
   173,14,208,41,3
TV 1069 DATA 201,0,208,3,76,20,35,169,0,1
   41,189,6,169,6,56,237,197,6,168,162,24
   7,169,164,141,1
JQ 1070 DATA 210,189,81,29,141,0,210,173,
   10,210,153,225,6,169,0,133,20,165,20,2
   01,20,144,250,232,208
BE 1071 DATA 226,169
VC 1073 DATA 0,141,0,210,141,1,210,169,25
   4,153,225,6,169,1,141,189,6,32,237,31,
   238,197,6,173,197
MJ 1074 DATA 6,201,7,144,9,238,199 6,206,
   200,6,76,145,34,32,34,32,141,17,6,32,
   62,32,173,15
FL 1075 DATA 208,41,3,201,0,240,56,169,1,
   141,195,6,162,193,173,197,6,41,1,201,1
   ,208,2,162,50
MT 1076 DATA 142,207,6,142,0,208,142,1,20
   8,32,237,31,206,201,6,160,0,173,201,6,
   24,105,16,145,218
LL 1077 DATA 32,62,32,173,201,6,201,0,208
   ,3,76,74,34,169,2,141,30,208,173,120,2
   ,141,208,6,173
EU 1078 DATA 205,6,201,1,208,3,76,232,35,
   173,202,6,201,1,240,21,173,132,2,201,0
   ,208,14,173,120
TU 1079 DATA 2,141,204,6,169,1,141,202,6,
   141,211,6,173,202,6,201,1,208,91,32,34
   ,32,174,203,6
WI 1080 DATA 56,253,101,30,141,173,6,172,
   204,6,192,11,240,7,172,204,6,192,10,20
   8,10,173,207,6,56
LU 1081 DATA 253,113,30,141,207,6,172,204
   ,6,192,7,240,7,172,204,6,192,6,208,10,
   173,207,6,24,125
WP 1082 DATA 113,30,141,207,6,173,207,6,1
   41,0,208,141,1,208,238,203,6,173,203,6
   ,201,12,208,8,169
HH 1083 DATA 0,141
XU 1085 DATA 203,6,141,202,6,76,215,36,17
   3,205,6,201,1,240,39,173,208,6,201,13,
   208,88,169,1,141
AU 1086 DATA 205,6,160,0,177,224,201,56,2
   40,11,169,237,133,224,169,29,133,225,7
   6,22,36,169,101,133,224
GC 1087 DATA 169,29,133,225,173,205,6,201
   ,1,208,49,32,34,32,24,105,4,141,173,6,
   238,210,6,173,210
BE 1088 DATA 6,201,12,208,27,32,34,32,141
   ,173,6,169,0,141,205,6,141,210,6,165,2
   24,56,233,102,133
MC 1089 DATA 224,165,225,233,0,133,225,76
   ,215,36,173,208,6,201,10,240,14,173,20
   8,6,201,8,240,7,173
DX 1090 DATA 208,6,201,11,208,21,169,135,
   133,224,169,29,133,225,173,207,6,201,4
   7,240,3,206,207,6,76
EL 1091 DATA 159,36,173,208,6,201,6,240,1
   4,173,208,6,261,5,240,7,173,208,6,201,
   7,208,74,169,255
NS 1092 DATA 133,224,169,28,133,225,173,2
   07,6,201,200,240,3,238,207,6,173,207,6
   ,141,0,208,141,1,208
RL 1093 DATA 172,214,6,165,224,24,121,125
   ,30,133,224,165,225,105,0,133,225,238,
   215,6,173,215,6,201,3
SE 1094 DATA 208,20,169,0,141,215,6,238,2
   14,6,173,214,6,201,4,208,5,169,0,141,2
   14,6,166,0,162
JD 1095 DATA 2,142
LV 1097 DATA 193,6,173,197,6,10,141,194,6
   ,152,24,105,12,56,237,194,6,170,185,21
   6,6,281,1,208,89
HQ 1098 DATA 185,218,6,201,1,240,18,185,2
   20,6,56,233,1,153,220,6,201,0,208,69,1
   69,1,153,218,6
NC 1099 DATA 173,197,6,41,1,201,1,240,29,
   254,175,6,254,175,6,189,175,6,201,214,
   144,13,169,38,157
YN 1100 DATA 175,6,169,0,153,216,6,153,21
   8,6,76,78,37,222,175,6,222,175,6,189,1
   75,6,201,38,176
MG 1101 DATA 13,169,214,157,175,6,169,0,1
   53,216,6,153,218,6,200,174,193,6,202,2
   08,134,173,216,6,201
LW 1102 DATA 1,240,38,173,217,6,201,1,240
   ,31,173,10,210,41,15,24,105,16,141,220
   ,6,141,221,6,173
ZM 1103 DATA 10,210,41,1,168,169,1,153,22
   0,6,141,216,6,141,217,6,174,200,6,160,
   255,169,0,133,77
CT 1104 DATA 136,208,249,202,208,244,76,1
   71,34
DT 4000 GRAPHICS 5
GR 4010 XX=USR(1536)
WW 5001 DATA 104,169,28,133,206,169,252,1
   33,205,165,129,201,7,208,8,169,7,133,2
   06,169,0,133,205,165,136
TE 5002 DATA 133,203,165,137,133,204,162,
   240,224,3,208,108,160,4,280,177,203,20
   1,48,144,6,177,203,201,155
WO 5003 DATA 208,243,152,72,136,177,203,5
   6,233,48,133,207,169,10,133,209,162,2,
   134,208,136,177,203,201,48
MW 5004 DATA 240,20,177,203,201,48,144,23
   ,56,233,48,170,165,207,24,101,209,202,
   208,250,133,207,169,100,133
KH 5005 DATA 209,166,208,202,208,218,160,
   0,165,207,145,205,230,205,165,205,201,
   0,208,2,230,206,104,168,177
GH 5006 DATA 203,201,155,208,165,160,2,16
   5,203,24,113,203,133,203,165,204,105,0
   ,133,204,160,4,177,203,201
OJ 5007 DATA 1,240,140,224,240,240,229,16
   5,129,201,7,208,34,169,0,133,207,169,7
   ,133,208,169,252,133,205
UQ 5008 DATA 169,28,133,206,162,8,160,0,1
   77,207,145,205,200,208,249,230,206,230
   ,208,202,208,240,169,252,141
SV 5009 DATA 231,2,169,28,141,232,2,76,25
   2,28