home *** CD-ROM | disk | FTP | other *** search
/ NetNews Usenet Archive 1992 #26 / NN_1992_26.iso / spool / comp / sys / atari / st / tech / 5600 < prev    next >
Encoding:
Internet Message Format  |  1992-11-12  |  1.2 KB

  1. Path: sparky!uunet!pipex!pavo.csi.cam.ac.uk!uknet!brunel!cs90ijr
  2. From: cs90ijr@brunel.ac.uk (Ian J Ray)
  3. Newsgroups: comp.sys.atari.st.tech
  4. Subject: RE: Raster Copy [for window scrolling]
  5. Message-ID: <BxLL07.3Jy@brunel.ac.uk>
  6. Date: 12 Nov 92 09:57:40 GMT
  7. Organization: Brunel University, Uxbridge, UK
  8. Lines: 35
  9. X-Newsreader: TIN [version 1.1 PL6]
  10.  
  11. The function you require is vro_cpyfm(), it _will_ copy overlapping blocks
  12. to/from the screen or memory buffers. Example:
  13.  
  14.     WORD pxyarray[8];
  15.     MFDB src, dest;        // Memory Form Definition Block
  16.  
  17.  
  18.     /* pxyarray contains the VDI rectangle
  19.      */ 
  20.     pxyarray[0] = src_x1;
  21.     pxyarray[1] = src_y1;
  22.     pxyarray[2] = src_x2;
  23.     pxyarray[3] = src_y2;
  24.     pxyarray[4] = dest_x1;
  25.     pxyarray[5] = dest_y1;
  26.     pxyarray[6] = dest_x2;
  27.     pxyarray[7] = dest_y2;
  28.  
  29.     /* fd_addr is the address of the 'form' buffer
  30.      * if it is NULL then the VDI fills in the other information
  31.      * in the form structure
  32.      */
  33.     src.fd_addr = NULL;
  34.     dest.fd_addr = NULL;
  35.  
  36.     /* perform the raster copy
  37.      * in this example, a block of screen is moved to some other
  38.      * (possibly overlapping) part of the screen
  39.      */
  40.     vro_cpyfm(handle, &src, &dest, pxyarray);
  41.  
  42. Hope this helps.
  43.  
  44. .Ian.
  45. cs90ijr@brunel.ac.uk
  46.