UNIT uver5; INTERFACE uses memtypes,quickdraw,osintf,toolintf,sane; const jmax =300;imax=1000;iamax=2700;ibmax=5400;ipmax=8000;xtn=12; aamax=93;abmax=95;ddir=193;titab=256; type zigle=packed array[0..5]of byte;pzgl=^zigle;plng=^longint; zgi=array[1..ipmax]of zigle;pzgi=^zgi; pww=^single;pint=^integer; tk=array[0..jmax]of ptr;ptk=^tk; rtj=array[1..jmax]of extended;prtj=^rtj; sjj=array[1..jmax]of prtj;psjj=^sjj; itj=array[1..jmax]of integer;pitj=^itj; tini=array[1..ipmax]of integer;ptni=^tini; tdri=array[1..ipmax]of extended;ptdri=^tdri; ti=array[1..ipmax]of single;pti=^ti;kji=array[0..jmax]of pti; ricla=record sis:zigle;Fac:array[1..abmax] of single end; tric=array[1..ddir]of integer;ptrc=^tric; procedure benzecri; procedure benzec; function verif(sptr0:stringptr):integer; function dialof(sptr0:stringptr):char; procedure verichaine(sptr0,sptr1:stringptr;var rep:char); procedure detruire(nnn:str255); procedure drwnum(ntg:integer); procedure drw4(ntg:integer); procedure drwfl(rfl:extended); function sigler(zig0:zigle):str255; function zigler(sig0:str255):zigle; procedure lir(var rep:char); procedure lirv(var rep:char); implementation procedure benzecri; var cadre:rect; wp1:windowptr; begin textbook(thePort); with cadre do begin left:=0;top:=38;right:=520;bottom:=342 end; initgraf(@theport);initfonts;initwindows; wp1:=newwindow(nil,cadre,'MacSAIF',true,0,pointer(-1),true,111); setport(wp1);setorigin(0,0);pensize(1,1);penmode(patXor); textfont(4);textsize(9); moveto(5,25); end; procedure benzec; var r1,r2,r3,cadre:rect;i:integer; res:single;tic:longint; fond:pattern;chaine:string;wp1:windowptr; procedure tracer;var c:integer; begin for c:=1 to length(chaine) do if (32