SDL video Isis software documentation

SDL video

SDL is the Simple DirectMedia Layer for Linux, Mac, and Windows. Isis provides an interface to some of the functionality of SDL, mainly for high-efficiency direct display of video, including hardware acceleration for full screen expansion of video windows. SDL is not available on the Digital/Compaq Unix version of Isis. More documentation will be added soon. Below is a summary of the available functions, which should be fairly self-explanatory. (sdl-init caption) # initialize SDL with caption name for window (sdl-quit) # close SDL (sdl-setup framesize fullscreen-flag hardware-flag doublebuf-flag) # setup the screen surface (returns a surface) (sdl-create framesize hardware-flag) # create and return new surface (sdl-free surface) # free a surface made with sdl-create (sdl-info surface) # surface info [ size steps addrs flags ] # from this you can make an isis image # that refers to the surface by doing: # (new-image c-byte 3 size steps (first 3 addrs)) (sdl-update surface) # mark screen surface to be drawn (sdl-flip surface) # swap buffers (when doublebuf turned on) (sdl-mustlock surface) # returns True if surface must be locked (sdl-lock surface) # lock surface (for hardware surfaces) (sdl-unlock surface) # unlock surface (for hardware surfaces) (sdl-blit src-surface dst-surface) # transfer source to destination (sdl-fill surface red green blue) # fill surface with a color (sdl-cursor show-cursor-flag) # turn cursor visibility on and off (sdl-mouse) # query mouse info, # returns [ [xpos ypos] lbutton mbutton rbutton ] (sdl-enable event-type) # enable this kind of event (sdl-ignore event-type) # disable this kind of event # event type constants: sdl-event-active # mouse or input focus gain/loss sdl-event-key-down # key press sdl-event-key-up # key release sdl-event-mouse-motion # mouse motion sdl-event-mouse-down # mouse button press sdl-event-mouse-up # mouse button release sdl-event-quit # quit signal was received sdl-event-resize # window resized (sdl-poll) # return next event, or Null if none pending (sdl-wait) # wait for and return next event, or Null if error # sdl-poll and sdl-wait will return one of these lists: [ sdl-event-active kind state ] # (see below) state is boolean [ sdl-event-key-down keysym unicode ] # keysym and unicode are integers [ sdl-event-key-up keysym unicode ] [ sdl-event-mouse-motion [xpos ypos] ] [ sdl-event-mouse-down buttonnum [xpos ypos]] [ sdl-event-mouse-up buttonnum [xpos ypos]] [ sdl-event-quit ] [ sdl-event-resize [xsize ysize]] # active event kind constants: sdl-active-mouse sdl-active-input sdl-active-app

Other: Needs SDL library