A final modification to the program
will
show how this kind of program ac-
tivity
can
be
hidden in a screen display. The
following
program intersperses dis-
playing a header
on
the screen
with
the initialization procedure.
5
RH1
F~ANDot1
'·
...
EF~S
1
ON
3
10
REM
~*~***~
B
LAN
K E T
~****~*
20
REM
RANDOM
DISPLAY
OF
ONE
::::0
F:Et'1
CHA":ACTER
nnERED
FF:O~l
THE
40
REM
KEYBOARD
50
REM
****~*****~~*******************
70
DIM
T(999),H(121)
75
FOR
1=0
TO
121:READ
H(I):NEXT
76
PI':
1
tH":']"
:
REt1
CLEAF~
::;;CREEN
::;:0
GOSlJE:
213fl
:":H1
IN
1TI
AL
I ZE TABLE
90
PRINT"HIT
A
KE'T'
OF~
.Cf':>
TO
Et·m".;
100
GET
C$:IF
C$=""
GOTO
11313
105
IF
C$=CHR$(13)
GOTO
170
11
fi
PF.:
I NT":']"
.;
:
REM
CLEAR SCREEN
120
X=RND(-TI)
:REM START
NEW
SEED
125
C=(ASC(C$)ANDI28)/2
OR
(ASC(C$)AND63)
126
FOR
N=999
TO
0
STEP
-1
127
A%=(N+1).RND(1)
:REM
PICK
AN
ELEM
128
A=T(A%)+32768
:REM
FORM
POKE
ADDR
129
TP=T(A%):T(A%)=T(N):T(N)=TP
:REM
SWAP
ELEMENTS
130
POKE
A.,
C :
RE~1
DI
SPLA'r'
CHAR
140
NE>':T
N
160
GOTO
1
f1fl
17fl
Et·m
199
REM
.*SUBR
TO
INITIALIZE
TABLE**
2f1f1
FOR
I=f1
TO
999
STEP
8
21f1 FOR
3=1
TO
I+7:T(3)=3:NEXT
22f1
IF
K>121
GOTO
250
23f1 POKE
H(K)+33133,16f1
24ü
K=K+l
250
NE~':T
I
;;:60
RETUF~N
3f10
DATA
28,171,7,165,245,O,223,249,54,97,16,19,262,109
,160,183,167,99,248,14
31f1
DATA
267,264,185,120,189,17,269,29,172,247,9,145,26
5,204,162,25,261,266,137
32ü
DATA
251,45,2Ü7,243,1Ü,257,26,22,85,254,225,242,149
,20,11,18,205,263,129
330
DATA
200,103,229,27,15,12,21,174,268,139,125,101,20
2,24,5,141,1,132,169,63
340
DATA
212,4,8,164,219,256,181,253,23,6,214,3,187,255
,131,177,83,179,240,246
350
DATA
87,143,241,209,82,211,89,258,69,59,134,80,147,
94,2,13,259,260,250,227
360
DATA
244,252,49,4f1
301