Program Atlantis; Uses ATL_Logo, { _Back_Pic & _Img_Pal } ATL_Back, { _Logo_Pic } GraphV2, CRT,DOS; Type BulTyp = record X,Y : Integer; C : Byte; end; const MaxBul = 100; var Bulle : Array[1..MaxBul] of BulTyp; P : Pointer; Go : Boolean; MaxCur : Word; procedure copyfrom(p : pointer); begin move(p^,pageW^,64000); end; procedure copyTo( p : pointer; d,s : Word); var I : Word; a : Byte; Sg,Os : Word; begin SG := seg(P^); Os := Ofs(P^); for I:=0 to s do begin A := Mem[Sg:Os+i]; if (A<>0) then mem[pagews:pageWo+D+I] := A; End; End; procedure init; var I : word; begin initgraph(VGA); paletteoff; copyfrom(@Back_Pic); viewpage; getmem(P,$FFFF); move(Screen^,P^,64000); fadein(0,64,@pal_Img,1); MaxCur := 1; for I:=1 to maxBul do begin Bulle[i].x := random(320)+1; bulle[i].y := 201; bulle[i].c := random(3)+1; End; end; procedure anim; var i : Word; begin move(P^,PageW^,64000); If MaxCur