Entry | |
---|---|
R0 | Window Handle |
R1 | Source minimum x co-ordinate (inclusive) |
R2 | Source minimum y co-ordinate (inclusive) |
R3 | Source maximum x co-ordinate (exclusive) |
R4 | Source maximum y co-ordinate (exclusive) |
R5 | Destination minimum x co-ordinate |
R6 | Destination minimum y co-ordinate |
Exit | |
---|---|
R0 – R6 | Preserved |
The purpose of this call is copy a rectangular block of a windows work area to another position. This is achieved by using the VDU block/copy primitive, before invalidating any areas which must be updated by the application itself.
If the source block contains icons, then their visual representation will be moved, however, their bounding boxes will not. It will be up to the application to move the icons by deleting and re-creating them so that they are re-drawn correctly.
If this call is used in a very low colour depth mode and source data contains an ECF pattern, unless the destination is a multiple of the ECF size, then the newly copied area will be out of step with the existing pattern.
All co-ordinates are relative to the window’s work area.
This call must not be made from inside a Wimp_RedrawWindow or Wimp_UpdateWindow loop.