home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Loadstar 167
/
167.d81
/
algorithm
(
.txt
)
< prev
next >
Wrap
Commodore BASIC
|
2022-08-26
|
944b
|
57 lines
10 poke53371,0
100 ht=0:ps=16384:pe=ps+260
102 dimhs(50),hd(50)
110 ifpeek(16383)=234then130
120 k=0:fori=0to9:forj=1to26
122 pokeps+k,64+j
124 k=k+1
126 next:next
128 poke16383,234
130 wd$="aceg":le=4
140 fori=1tole
150 wd(i)=asc(mid$(wd$,i,1))
160 next
168 ti$="000000"
170 gosub1000
180 fori=1toht
182 print"";:ifi>spthenprint"[158]";
184 printitab(5)hs(i)tab(13)hd(i)
186 next
188 print:printti"jiffies"
190 stop
1000 b=ps-1
1060 b=b+1
1062 ifb>pethen1170
1070 ifpeek(b)<>wd(1)then1060
1080 be=b
1082 mx=(pe-be)/(le-1)+1
1084 b=b+1
1086 if(b-be)>mxthenb=be:goto1060
1090 ifpeek(b)<>wd(2)then1084
1100 di=b-be
1110 m=2
1120 ifpeek(be+di*m)<>wd(m+1)then1084
1130 m=m+1
1140 ifm<le then1120
1150 ht=ht+1
1152 hs(ht)=be:hd(ht)=di
1160 goto1084
1170 b=pe+1:split=ht
1180 b=b-1
1190 ifb<psthen return
1200 ifpeek(b)<>wd(1)then1180
1210 be=b
1212 mx=int((b-ps)/(le-1))+1
1220 b=b-1
1230 if(be-b)>mxthenb=be:goto1180
1240 ifpeek(b)<>wd(2)then1220
1250 di=be-b
1260 m=2
1270 ifpeek(be-di*m)<>wd(m+1)then1180
1280 m=m+1
1290 ifm<le then1270
1300 ht=ht+1
1310 hs(ht)=be:hd(ht)=di
1320 goto1220
10000 d=peek(186):n$="0:algorithm":open15,d,15,"s"+n$:close15:saven$,d:end