h6. [[OS SWI Calls]] h6(. » [[OS_SpriteOp]] h6((. » OS_SpriteOp 49 - Plot mask at user coords h2. OS_SpriteOp 49 - Plot mask at user coords h5. (SWI &2E) |_<^{width:4em}. Entry | | |<^. R0 |<^. 49 (Reason code) + [[OS_SpriteOp|Area value]]| |<^. R1 |<^. Unused/[[Format Of Sprite Area|Sprite area]] (as defined by area value in R0) | |<^. R2 |<^. Sprite name/[[Format Of Sprite|pointer]] (as defined by area value in R0) | |<^. R3 |<^. X coordinate | |<^. R4 |<^. Y coordinate | |_<^{width:4em}. Exit | | |\2<^. All registers preserved| h4. Use This call paints a sprite mask to the screen. For sprite pixels where the mask is non-zero, the corresponding screen pixel will be set to the currently selected background colour. If the mask is zero the screen pixel will not be updated. This call does not attempt to translate between different colour depths. Unless you know the source and destination are in compatible modes, it’s recommended to use [[OS_SpriteOp 50|OS_SpriteOp 50 - Plot Mask Scaled]] instead. However due to the overheads involved in OS_SpriteOp 50, using OS_SpriteOp 49 where possible can result in significant performance gains. h4. Notes Coordinates are in OS units, and specify the bottom-left corner of the sprite. No scaling is performed; source pixels will map directly to destination pixels, regardless of the sprite DPI or screen eigen values. When used on a sprite without a mask, a filled rectangle the size of the scaled sprite will be drawn. This call does not support plotting of alpha masks. h4. See also * [[Format Of Sprite]] * [[Format Of Sprite Area]] * [[OS_SpriteOp]] * [[OS_SpriteOp 50|OS_SpriteOp 50 - Plot Mask Scaled]]