home *** CD-ROM | disk | FTP | other *** search
RISC OS BBC BASIC V Source | 1993-08-27 | 6.0 KB | 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:
-