program rotbox;
   var
     x1,x2,x3,x4,y1,y2,y3,y4 :integer;
     o1,o2,o3,o4,p1,p2,p3,p4 :integer;


procedure box1;

begin;
        draw(x1,x2,y1,y2,1);
        draw(y1,y2,x3,x4,1);
        draw(x3,x4,y3,y4,1);
        draw(y3,y4,x1,x2,1);
end;
procedure passnums;

begin;
       o1:=x1;o2:=x2;p1:=y1;p2:=y2;
       o3:=x3;o4:=x4;P3:=y3;P4:=y4;
end;


procedure erasebox;

begin;
        draw(o1,o2,p1,p2,0);
        draw(p1,p2,o3,o4,0);
        draw(o3,o4,p3,p4,0);
        draw(p3,p4,o1,o2,0);
end;





procedure size;

begin;
  box1;
   x1:=x1+1;
   y1:=y1+1;
   x3:=x3-1;
   y3:=y3-1;
  box1;
end;




begin;

   x1:=50;
   x2:=40;
   y1:=50;
   y2:=100;
   x3:=100;
   x4:=100;
   y3:=100;
   y4:=50;
      graphmode;

repeat;
    box1;
    passnums;
    size;
    box1;
    erasebox;
until x1>100;

end.
