yes Tursi, i made a big error in my code
so here it a new version, more optimised ( with very very little shorcut ):
100 CALL CLEAR
110 DIM A$(50),Y$(15),Z$(15)
113 DIM F(65),G(65)
115 DIM B$(32)
120 FOR I=1 TO 16
130 READ A$(I)
140 NEXT I
141 FOR I=1 TO 8
142 READ Y$(I)
143 NEXT I
144 FOR I=1 TO 8
145 READ Z$(I)
146 NEXT I
150 FOR I=1 TO 32
165 CALL CHAR(100+I,B$(I))
170 CALL HCHAR(12,I,100+I):: next i
175 FOR i=1 to 64 :: G(i)=8 :: f(i)=1 :: NEXT I
200 C=int(rnd*64)+1 :: A=int(C/2)
210 C$=Y$(G(A))&A$(F(A*2))&A$(F(A*2+1))&Z$(G(A))
220 F(C)=F(C)+1
230 IF F(c)>16 THEN G(A)=G(A)-1 :: F(A*2)=1::F(A*2+1)=1:: IF G(A)=0 THEN G(A)=1::F(A*2)=16::F(A*2+1)=16
235 CALL CHAR(100+A,C$)
240 GOTO 200
500 DATA 0,1,2,3,4,5,6,7,8,9,A,B,C,D,E,F
510 DATA "",00,0000,000000,00000000,0000000000,000000000000,00000000000000
520 DATA FFFFFFFFFFFFFF,FFFFFFFFFFFF,FFFFFFFFFF,FFFFFFFF,FFFFFF,FFFF,FF,""
Just to see how slow TI basic is :
10 A$="FFFFFFFF"
20 FOR I=1 TO 1000
30 C$=A$&A$&A$
40 NEXT i
This code take 41 sec to finish
10 A$="FFFFFFFF"
20 FOR I=1 TO 1000
30 C$=RPT$("F",&RPT$("F",&RPT$("F",
40 NEXT i
Result : 2 minutes 10 sec
10 A$="FFFFFFFF"
20 FOR I=1 TO 1000
30 C$=SEG$(A$,1,&SEG$(A$,1,&SEG$(A$,1,
40 NEXT i
Result : 1 minute 50 sec.