home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
64'er 1989 October
/
64er_Magazin_89-10_1989_Markt__Technik_de_Side_A.d64
/
e-basic-entpacke
(
.txt
)
< prev
next >
Wrap
Commodore BASIC
|
2022-10-26
|
2KB
|
87 lines
10 dimf$(1,255):
11 : print"[147] basic-entpacker":
12 : open15,8,15,"i0":
13 : x=34:
14 : fori=1to255
20 a$=chr$(i):
21 : f$(0,i)=a$:
22 : f$(1,i)=a$:
23 : next:
24 : fori=128to203:
25 : readf$(0,i):
26 : next
30 input"programmname: ";p$:
31 : open1,8,3,p$+",p,r":
32 : gosub130:
33 : p$="e-"+p$:
34 : n$=chr$(0)
40 open2,8,4,"@0:"+p$+",p,w":
41 : gosub130:
42 : fori=1to2:
43 : gosub150:
44 : gosub120:
45 : next
50 q=0:
51 : p=1:
52 : gosub150:
53 : gosub120:
54 : b=a:
55 : gosub150:
56 : gosub120:
57 : v$=n$+chr$(b)+chr$(a)
60 gosub150:
61 : gosub120:
62 : b=a:
63 : gosub150:
64 : gosub120:
65 : v$=v$+chr$(b)+chr$(a):
66 : print256*a+b;
70 gosub150:
71 : p=(a-139)*(a-143):
72 : q=q+1-c:
73 : q=q-2*int(q/2):
74 : ifa<>58orq<>0orp=0then100
80 ln=256*asc(right$(v$,1))+asc(right$(v$,2)):
81 : ln=ln+1:
82 : u%=ln/256:
83 : v%=ln-256*u%
90 v$=left$(v$,3)+chr$(v%)+chr$(u%):
91 : print:
92 : println;" ";:
93 : a$=":"+v$+": "
100 printf$(q,a);:
101 : gosub120:
102 : ifa<>0then70
110 print:
111 : goto50:
112 : data end,for,next,data
120 print#2,a$;:
121 : gosub130:
122 : return
130 s=st:
131 : input#15,en,em$,et,es:
132 : ifen<2thenreturn
140 print:
141 : print"disk error":
142 : printen,em$;et;es:
143 : close1:
144 : close2:
145 : close15:
146 : end
150 get#1,a$:
151 : gosub130:
152 : ifs=0thena=asc(a$+n$):
153 : a$=chr$(a):
154 : c=abs(sgn(a-x)):
155 : return
160 a$=n$+n$:
161 : gosub120:
162 : close1:
163 : close2:
164 : end:
165 : data input#,input,dim,read,let,goto,run
170 data if,restore,gosub,return,rem,stop,on,wait,load,save,verify,def,poke
180 data print#,print,cont,list,clr,cmd,sys,open,close,get,new,tab(,to,fn,spc(
190 data then,not,step,+,-,*,/,^,and,or,>,=,<,sgn,int,abs,usr,fre,pos,sqr,rnd
200 data log,exp,cos,sin,tan,atn,peek,len,str$,val,asc,chr$,left$,right$,mid$,go