ConvertSprite

Introduction and Overview

The ConvertSprite module provides a proxy conversion for the ImageFileRender routines to the ImageFileConvert module. This means that the renderers provided by ImageFileRender can be used as sources for a conversion to sprite. For example, the Artworks ImageFileRender is proxied by the ConvertSprite module so that an Artworks to Sprite conversion is possible.

In addition, the ConvertSprite module provides a means by which sprites can be created from an arbitrary rendering routine, in a similar manner to that used by the DragAnObject module.

SWI Calls

ConvertSprite_CreateSprite
Create a sprite from an arbitrary rendering routine
R0=Flags:
Bit(s)Meaning
0Use mask
1-31Reserved
R1=Image width in OS units
R2=Image height in OS units
R3=Mode to use, or -1 for current
R4=Pointer to palette, or -1 for none, or unused for deep modes
R5=Pointer to sprite buffer, or 0 to read buffer size
R6=Size of sprite buffer
R7=SWI number to call
R8=Pointer to 10 register block to pass to SWI
R9=Background colour
R6=Size of sprite buffer needed (if R5=0 on entry), size of sprite buffer used (if R5<>0 on entry)
Interrupts are undefined
Fast interrupts are undefined
Processor is in undefined mode
Not defined

This SWI is used to create a sprite of a given type using any arbitrary rendering routine. This allows clients to convert images which would usually be rendered to the screen to sprites.