43 lines
884 B
Plaintext
43 lines
884 B
Plaintext
Program ImageNoise;
|
|
|
|
uses
|
|
SDL;
|
|
|
|
var
|
|
surface: PSDL_Surface;
|
|
pixel: ^byte;
|
|
frameNumber, totalTime, lastTime, time, i: longint;
|
|
|
|
begin
|
|
frameNumber := 0;
|
|
totalTime := 0;
|
|
lastTime := 0;
|
|
randomize;
|
|
SDL_Init(SDL_INIT_TIMER or SDL_INIT_VIDEO);
|
|
surface := SDL_SetVideoMode(320, 240, 8, SDL_DOUBLEBUF or SDL_HWSURFACE);
|
|
|
|
while (true) do
|
|
begin
|
|
pixel := surface^.pixels;
|
|
SDL_LockSurface(surface);
|
|
for i := 1 to (surface^.w * surface^.h) do
|
|
begin
|
|
pixel^ := random(2)*255;
|
|
inc(pixel);
|
|
end;
|
|
SDL_UnlockSurface(surface);
|
|
SDL_Flip(surface);
|
|
inc (frameNumber);
|
|
|
|
time := SDL_GetTicks();
|
|
totalTime := totalTime + time - lastTime;
|
|
if (totalTime > 1000) then
|
|
begin
|
|
writeln('FPS: ', frameNumber / (totalTime / 1000.0):5:1);
|
|
frameNumber := 0;
|
|
totalTime := 0;
|
|
end;
|
|
lastTime := time;
|
|
end;
|
|
end.
|