•  Back 
  •  Main 
  •  Index 
  •  Tree View 
  •  Cross references 
  •  Help 
  •  Show info about hypertext 
  •  View a new file 
Topic       : The GFA-Basic Compendium
Author      : GFA Systemtechnik GmbH
Version     : GFABasic.HYP v2.98 (12/31/2023)
Subject     : Documentation/Programming
Nodes       : 899
Index Size  : 28056
HCP-Version : 3
Compiled on : Atari
@charset    : atarist
@lang       : 
@default    : Document not found
@help       : Help
@options    : +g -i -s +z
@width      : 75
@hostname   : STRNGSRV
@hostname   : CAB     
@hostname   : HIGHWIRE
@hostname   : THING   
View Ref-FileRC_COPY s_adr,sx,sy,w,h TO d_adr,dx,dy[,m]

s_adr, sx, sy, w, h, d_adr, dx, dy, m: iexp

The instruction RC_COPY makes possible the copying of rectangular 'screen'
sections between areas of memory, each of which represents a screen display
which may be sent to the monitor by specifying the screen address appropriately
(see XBIOS(2)). The parameters s_adr and d_adr contain the starting addresses
of the source and destination screens. The coordinates of the top left corner
and the width and height of the rectangle to be copied should be specified in
sx, sy, w, and h. The coordinates of the top left corner of the destination
rectangle are dx and dy. An optional logical operation may be performed between
the source and destination rectangles, given by 'm' in the range 0 to 15 (see
PUT). The default value for 'm' is 3 (replace mode).

Example:

    FOR r=1 TO 400
      CIRCLE 320,200,r
    NEXT r
    SGET pic$
    s_adr=V:pic$
    d_adr=XBIOS(2)
    '
    FOR i%=1 TO 1000
      RC_COPY s_adr,RAND(10)*64,RAND(10)*40,64,40 TO d_adr,RAND(10)*64,RAND(10)*40
    NEXT i%

--> A simple picture is drawn and stored in pic$. RC_COPY then copies random
    'screen' sections from pic$ in memory to the current screen memory (given
    by XBIOS(2)).

Memo: Undocumented feature. If mode is >255 the value is used as an
      op_tab parameter. This is a Line-A call.

      There's no bounds checking on the right and bottom edges of the screen.

vro_cpyfm()+, Line-A BitBlt+