Showing changes from revision #1 to #2:
Added | Removed | Changed
Entry | |
---|---|
R0 | Pointer to JPEG image in memory |
R1 | Flags: |
Bit 0: R2 is pointer to destination coordinates, else pointer to matrix | |
Bit 1: Dither output | |
Bit 2: Use full error diffused dithering | |
Bit 4: Use colour mapping | |
Bits 5-12: Translucency (0 = opaque, 255 = 1/256 visibility) | |
Other bits reserved, should be zero | |
R2 | Pointer to coordinate block or matrix, as defined by R0 |
R3 | Length of data (bytes) |
R4 | Pointer to Colour Mapping Descriptor, if relevant |
Exit | |
---|---|
- | All registers preserved |
This call is used to plot a transformed JPEG image to screen.
If R1 bit 0 is set, R2 is treated as a pointer to a Draw module Transformation Matrix describing the transform to apply to the image. If bit 0 is clear then R2 is treated as a pointer to a block giving the screen coordinates of a parallelogram to transform the image into:
Word | Value |
---|---|
0 | X0 coordinate, in 1/256th OS units |
1 | Y0 coordinate, in 1/256th OS units |
2 | X1 coordinate, in 1/256th OS units |
3 | Y1 coordinate, in 1/256th OS units |
4 | X2 coordinate, in 1/256th OS units |
5 | Y2 coordinate, in 1/256th OS units |
6 | X3 coordinate, in 1/256th OS units |
7 | Y3 coordinate, in 1/256th OS units |
Note that the default version of SpriteExtend supplied with RISC OS 5 does not support the plotting of transformed JPEGs. However it will perform a scaled plot if it detects that the transformation can be reduced to a set of scale factors compatible with JPEG_PlotScaled.