SDL_Init(SDL_INIT_VIDEO);
$flags=SDL_HWSURFACE;
$screen=SDL_SetVideoMode(640, 480, 32, $flags);
function drawRect($s,$x,$y,$w,$h,$r,$g,$b,$a) {
$f=$s["format"];
$c=SDL_MapRGBA($f,$r,$g,$b,$a);
$rect=array(
"x"=>$x,"y"=>$y,"w"=>$w,"h"=>$h
);
SDL_FillRect($s,$rect,$c);
SDL_UpdateRect($s,$x,$y,$w,$h);
}
drawRect($screen,100,100,50,50,255,0,0,0);
while ($ended==0) {
while (SDL_PollEvent(&$event)) {
switch($event["type"]) {
case SDL_QUIT:
echo "SDL_Quit received, quitting\n";
$ended=1;
break;
case SDL_KEYDOWN:
$keysym=$event["key"]["keysym"]["sym"];
if ($keysym==SDLK_q) {
echo "Q pressed, quitting\n";
$ended=1;
}
break;
}
}
}
$ret=SDL_Quit();