require 'sdl' SDL.init( SDL::INIT_VIDEO ) screen = SDL::setVideoMode(640,480,16,SDL::SWSURFACE) SDL::WM::setCaption($0,$0) image = SDL::Surface.loadBMP("icon.bmp") image.setColorKey( SDL::SRCCOLORKEY ,0) image = image.displayFormat event=SDL::Event.new i=0 scale=1.0; dscale=0.1; loop do if event.poll != 0 then if event.type==SDL::Event::QUIT then break end if event.type==SDL::Event::KEYDOWN then exit end end screen.fillRect(0,0,640,480,0) i+=1; scale+=dscale; dscale = -dscale if scale>4.0 or scale < 0.2 SDL.rotateScaledBlit(image,screen,320,200,i,scale) screen.flip end