home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Kosovo Orphans' Appeal Charity CD
/
KosovoOrphansAppeal.iso
/
archimedesworld_cd2
/
utilities
/
_compare
/
_runimage
(
.txt
)
< prev
next >
Wrap
RISC OS BBC BASIC V Source
|
1993-08-27
|
6KB
|
279 lines
>!RunImage
For !Compare
30/5/93
6i$="1.11 (30 May 93)":
$+" at line "+
$+" at line "+
&400C7,,d%
&400C5,,d%
&400C6,,d%
17,18:
b("Program terminated when "+
#k%+" bytes into the files.")
&400DD:
u%>1023
j%=1023
j%=u%
12,4,k%,r%,j%:
12,4,D%,s%,j%:
g%=j%
j%+(j%
4)+4:r%?g%=0:s%?g%=0:
j%-(j%
r%!g%=s%!g%
h(0):
$u%=z%-
a(e%,2,
#k%):
a("idn"))
a(e%,0,"Busy"):n%=g%+1:
n%<j%-(j%
`%=n%
n%+4-(n%
r%?`%=s%?`%
!n%=g%+4-(g%
n%<j%-(j%
g%=n%
j%-(j%
r%!g%=s%!g%
h(0):
+u%=z%-
a(e%,2,
#k%):
3:J%=
d% 512,K% 100,ba% 20,p% 255,ca% 256,da% 511,ea% 176,fa% 511,ga% 512,ha% 511,ia% 512,L% 12,a% 512,r% 1032,s% 1032,M% 256,ja% 511,ka% 512:
la% 511,ma% 512,na% 511,oa% 512,pa% 640,qa% 512:!L%=2:L%!4=3:L%!8=0
:ra%=
:h%=0:N%=0:$ba%="Compare":m%=
:b$="":c$="":v%=0:E%=
:O%=0:F%=1:A%=0:P%=
&400C0,200,&4B534154,"Compare"
sa%:h%=
"<Compare$Dir>.Sprites":ta%=
#h%+16:
o% ta%
(S!o%=ta%-1:o%!4=0:o%!12=16:o%!16=16:
&2E,256+10,o%,"<Compare$Dir>.Sprites":
&400D9,,"<Compare$Dir>.Templates":ua%=
b(da%,ea%,175,"info",o%):Q%=
b(fa%,ga%,511,"main",o%):R%=
b(ha%,ia%,511,"main",o%):e%=
b(ja%,ka%,511,"stat",o%):va%=
b(la%,ma%,511,"opts",o%)
b(na%,oa%,511,"save",o%):S%=
b(pa%,qa%,511,"resu",o%):
&400DA:$(ea%+20)=i$:$ca%=
0):$ia%="File 2":$oa%="LogFile":c%=
f(-1,0,0,68,68,12298,"!compare",0,0,0):
a(S%,c%,""):
d%!16
0:J%=
l:$p%="Compare":p%!12=459271:p%!16=16*11:p%!20=44:p%!24=0:
g(p%+28,0,ua%,&7091031,"Info"):
g(p%+52,0,-1,&7091031,"Start"):
g(p%+76,0,va%,&7091031,"Options"):
g(p%+100,128,-1,&7091031,"Quit"):
x(wa%,T%,xa%):
T%=272
T%+=16
&400D4,,p%,wa%-64,T%:
n:x%=!d%:y%=d%!4:ya%=d%!8:C%=d%!12:c%=d%!16:
x(x%,y%,C%=-2)
c(e%,c%,
c(e%,c%,
e(e%)
5:m%=
f(e%,5,
f(e%,6,
a(e%,0,"Busy")
6:m%=
f(e%,5,
f(e%,6,
a(e%,0,"Paused")
7:m%=
b("Aborted "+
#k%+" bytes into the files."):
c(e%,c%,
c(e%,c%,
9:m%=
b("Stopped after difference found."):
16,64:
y:x%=!d%:y%=d%!4:d%!4=5:d%!8=x%-76:d%!16=x%+76:d%!12=y%-52:d%!20=y%+52:d%!24=0:d%!32=&7FFFFFFF:d%!28=0:d%!36=&7FFFFFFF:
6,161,28
,,f%:
sa%>=310
&42400,197,1,"file_fff",d%+8,d%+24
&400D0,,d%
w:q%=d%!40:
q%=4096
q%=8192w%=
a("dir")):
q%<10d$="00"+
q%<100
q%>9d$="0"+
q%>99d$=
P4C$=
g("File$Type_"+d$):d$="&"+d$+" - "+C$:
Q(b$=
d:h%=
(b$):
h%=0w%=
a("fnf"))
#h%:h%=0:
a(Q%,1,
b$,36)):
a(Q%,3,d$):
e(Q%)
d:h%=
(c$):
h%=0w%=
a("fnf"))
#h%:h%=0:
a(R%,1,
c$,36)):
a(R%,3,d$):
e(R%)
N%=N%
b$=""
c$=""
a("two")):
XKU%=0:r%!1022=0:s%!1022=0:k%=
(b$):D%=
(c$):P%=
#D%):
U%<>0
a("dif")+
a("byt")):
b("("+b$+
a("itl")):
b("("+c$+
a("itl"))
#k%:z%=
#k%:A%=0:
c(e%,c%,
c(e%,c%,
e(e%):
a(e%,0,"Busy"):
a(e%,2,
#k%)):
a(e%,4,
f(e%,5,
h(va%,0)
h(i%,c%):!a%=i%:a%!4=c%:
&400CE,,a%:=((a%!24
1<<21)=(1<<21))
e(B%):
&39,,"DragASprite_Stop"
&42401
&400D0,,0:b%=d%:
&400CF,,b%:x%=b%!0:y%=b%!4:i%=b%!12:c%=b%!16:!b%=56:b%!12=0:b%!16=1:b%!20=i%:b%!24=c%:b%!28=x%:b%!32=y%:b%!36=0:b%!40=4095:$(b%+44)=
e(B%,0)):
&400E7,17,d%,i%,c%:E%=
e(i%,c%):!a%=i%:a%!4=c%:
&400CE,,a%:=$(a%!28)
i(e$):
e$,".")>0:e$=
e$,".")+1):
i(B%):
e f$=
e(B%,0)
h>E%=
(f$):
b("File 1 : "+b$):
b("File 2 : "+c$):m%=
d:g$="":l%=d%+43:
l%?1<>0:l%+=1:g$+=
h(Aa%):
V%=Aa%
r%?(g%+V%)=s%?(g%+V%)
g%+=V%
a("fad")+
#k%-j%+g%)+
a("bif")):
c(e%,c%,
c(e%,c%,
a(e%,0,"Difference found"):
a(e%,2,
#k%-j%+g%)):m%=
:A%+=1:
b(a$):
#v%,a$
a(S%,F%,
a$,70)):F%+=1:
F%=5F%=1
A%+" differences found.")
"SetType "+f$+" FFF":v%=0
&400EF,0:
i(e%):
e(S%):m%=
i(t%):!a%=t%:
&400CB,,a%:a%!28=0:
&400C6,,a%:
t:h%=
"<Compare$Dir>.Messages":G%=0:
h$<>""
h$,1)<>"#"
G%+=1
a$(G%):
#h%=0:
G%-1:a$(l%)=
a$(l%)=""
a$(l%),1)="#"
l%-=1
g(n%,Ba%,l%,Z%,a$):n%!0=Ba%:n%!4=l%:n%!8=Z%:$(n%+12)=a$:
b(_%,c%,z%,j$,Ca%):
&400DB,,_%,c%,c%+z%,-1,j$,0:_%!64=Ca%:
&400C1,,_%
t%:=t%
c(k$):Da%=O%:O%=
O%-Da%<200
Ea%+=1
Ea%=0
Ea%>5
&400DD:
&400EF,0:K%!0=255:$(K%+4)=k$:
&400DF,K%,18,ba%
,Fa%:=Fa%
f(C%,Ga%,Ha%,Ia%,Ja%,Z%,a$,Ka%,La%,Ma%):a%!0=C%:a%!4=Ga%:a%!8=Ha%:a%!12=Ia%:a%!16=Ja%:a%!20=Z%:
Ka%=0
:$(a%+24)=a$:
:a%!24=Ka%:a%!28=La%:a%!32=Ma%
&400C2,,a%
t%:=t%
v:d%!12=d%!8:d%!16=4:
&400E7,17,d%,d%!4:
e(t%):
A:!a%=t%:
&400CB,,a%:
B:ra%=
a%!28=-1:
&400C5,,a%:
A:a%!0=4:a%!4=5:a%!8=11:a%!12=12:a%!16=-1:
&31,a%,a%+20:Na%=1<<(a%!20):Oa%=1<<(a%!24):Pa%=(a%!28+1)*Na%:Qa%=(a%!32+1)*Oa%:
B:W%=a%!12-a%!4:H%=a%!16-a%!8:X%=(Pa%-W%)/2:Y%=(Qa%-H%)/2:a%!4=X%:a%!8=Y%:a%!12=X%+W%:a%!16=Y%+H%:
a(i%,c%,l$):!a%=i%:a%!4=c%:
&400CE,,a%:$(a%!28)=l$:a%!8=0:a%!12=0:
&400CD,,a%:
g(m$):
&23,m$,M%,255,0,3
,,b%:M%?b%=13:=$M%
a(a$):
G%:l%=
a$(I%),":"):
a$(I%),l%-1):
n$=a$
a$(I%),
a$(I%)-l%)
f(i%,c%,Ra%):!a%=i%:a%!4=c%:a%!8=0:a%!12=1<<22:
&400CD,,a%:
6!a%=i%:a%!4=c%:a%!8=1<<22:a%!12=1<<22:
&400CD,,a%
c(i%,c%,Sa%):!a%=i%:a%!4=c%:a%!8=0:a%!12=(1<<23):
&400CD,,a%:
!a%=i%:a%!4=c%:
&400C4,,a%
C(i%,c%):
C(i%,c%):a%!0=i%:a%!4=c%:
&400CE,,a%:
&400D1,a%!0,a%!8,a%!12,a%!16,a%!20: