home *** CD-ROM | disk | FTP | other *** search
/ Amiga ISO Collection / AmigaUtilCD2.iso / Programming / Basic / wst!blz1.dms / in.adf / docs / rilibdocs.lha / RIFxLib.doc < prev    next >
Encoding:
Text File  |  1994-09-05  |  7.9 KB  |  201 lines

  1. Library Name:
  2.   rifxlib #66
  3.  
  4. Authors:
  5.   ReflectiveImages, 17 Mayles Road, Southsea, Portsmouth, Hampshire, UK PO4 8NP
  6.  
  7. OverView:
  8.   Another Reflective Images Library, looks pretty useful this one...
  9.  
  10. Authors Docs:
  11.  
  12.  
  13. Reflective Images Effects Library
  14. =================================
  15.  
  16. By Stephen McNamara, with help from Steve Matty
  17. (c)1994 Reflective Images
  18.  
  19. Note: The library has had a lot of the commands inside it expanded so that
  20. they work on any size bitmap.  At the moment the following, though, will
  21. only work on lorez bitmaps: ZoomX8, Derez and ZoomXY
  22.  
  23. None of the commands in this library use the blitter chip, any
  24. blitter source code that anybody has please send to me.
  25.  
  26. Command list:
  27.     FadeInBitmap source#,dest#,delay[,offset1,offset2,height]
  28.     ClearBitmap source#,delay[,offset,height]
  29.     ZoomX2 source#,dest#,add_source,add_dest,width,height
  30.     ZoomX4 source#,dest#,add_source,add_dest,width,height
  31.     ZoomX8 source#,dest#,add_source,add_dest,width,height
  32.     addval.w=ADDValue(bitmap#,x,y)
  33.     InitZoomXY source#,dest#,add_source,add_dest
  34.     ZoomXY xzoom_value,yzoom_value,height
  35.     Derez source#,dest#,add_source,add_dest,derez_value,height
  36. (Slow)    PlanarToChunky bitmap_addr,dest_address,width,height,depth
  37. (Slow)    ChunkyToPlanar source_address,bitmap_addr,width,height,depth
  38.  
  39.  
  40. No instructions for the planar<>chunky commands since their not really that
  41. useful at the moment.  If anybody has some working code thats good
  42. then.......................
  43.  
  44.  
  45. Statement: FadeInBitmap
  46. ========================================================================
  47. Modes : Amiga/Blitz
  48. Syntax: FadeInBitmap source#,dest#,delay[,offset1,offset2,height]
  49.  
  50.   This is used to make an any width, any height, bitmap appear on another
  51.   one in a nice way.  Source# and dest# should be bitmap object numbers
  52.    and delay is the 'slow-down' value for the fade.  This is necessary
  53.   because this routine works very fast - at full speed it looks just like
  54.   a slow screen copy.  You should note that the delay is taken as being a
  55.   word, thus don't pass 0 or you'll actually get a delay of 65535.  This
  56.   routine will adjust itself to take into account the depth of the bitmap,
  57.   WARNING: the depth of the destination bitmap should be AT LEAST as big
  58.   as the depth of the source# bitmap because the depth of the fade is taken
  59.   from the source# bitmap.
  60.   The optional parameters in this command allow you to set respectively:
  61.   the source bitmap y offset, the destination bitmap y offset and the
  62.   height of the fade (in pixels).  If these parameters are left out then
  63.   the fade automatically occurs across the full size of the bitmap.
  64.   
  65.   See: ClearBitmap
  66.  
  67. Statement: ClearBitmap
  68. ========================================================================
  69. Modes : Amiga/Blitz
  70. Syntax: ClearBitmap source#,delay[,offset,height]
  71.  
  72.   This is used to clear an any width, any height, bitmap in a very pleasant
  73.   way.  The parameters are the same as for FadeInBitmap except that
  74.   only one bitmap is needed.  The delay parameter i used for the same
  75.   reason as in FadeInBitmap - to slow down the effect.  The optional
  76.   parameters allow you to set a y start value for the clear and the
  77.   height (in pixels) of the clear.
  78.  
  79.   See: FadeInBitmap
  80.  
  81. Statement: ZoomX2
  82. ========================================================================
  83. Modes : Amiga/Blitz
  84. Syntax: ZoomX2 source#,dest#,add_source,add_dest,width,height
  85.  
  86.   This command does a very fast X2 zoom.  It works with two bitmaps - one
  87.   source and one dest (note: these can be the same bitmap but you should
  88.   be careful that the zoom is not done over the source data).  The two
  89.   parameters add_source and add_dest allow you to specify the position of
  90.   the start of the zoom, they specified as byte offsets from the top left
  91.   corner of the bitmaps (byte 0).  These values can be calculated by the
  92.   following method:
  93.  
  94.     add_source=(Y x BITMAP_WIDTH (in bytes) + (X / 8)
  95.  
  96.   or by using the built in command ADDValue.  Width and height are both
  97.   specified in pixels.
  98.  
  99.   NOTE: There is no clipping on this command - be careful not to zoom off
  100.         the edges of bitmaps.
  101.   You can zoom from a bitmap to a different size bitmap BUT the
  102.   destination bitmap must be as deep as the source and big enough
  103.   to hold the zoomed data.
  104.  
  105.   See: ZoomX4, ZoomX8 and ADDValue
  106.  
  107. Statement: ZoomX4
  108. ========================================================================
  109. Modes : Amiga/Blitz
  110. Syntax: ZoomX4 source#,dest#,add_source,add_dest,width,height
  111.  
  112.   This is exactly the same as ZoomX2 except that a times 4 zoom is done
  113.   by this command.
  114.  
  115.   Note: You can zoom from a bitmap to a different size bitmap BUT the
  116.   destination bitmap must be as deep as the source and big enough
  117.   to hold the zoomed data.
  118.  
  119.   See: ZoomX2, ADDValue
  120.  
  121. Statement: ZoomX8
  122. ========================================================================
  123. Modes : Amiga/Blitz
  124. Syntax: ZoomX8 source#,dest#,add_source,add_dest,width,height
  125.  
  126.   This is exactly the same as ZoomX2 except that a times 8 zoom is done
  127.   by this command
  128.  
  129.   See: ZoomX2, ADDValue
  130.  
  131. Function: ADDValue
  132. ========================================================================
  133. Modes : Amiga/Blitz
  134. Syntax: addval.w=ADDValue(bitmap#,x,y)
  135.  
  136.   This function can be used the calculate the add_source and add_dest
  137.   values used in all the zoom commands.  Just give the bitmap number, x
  138.   co-ordinate and the y co-ordinate and you'll get an answer back that can
  139.   be used straight in the ZoomXn commands.
  140.  
  141.   See: ZoomX2, ZoomX4, ZoomX8 and ZoomXY
  142.  
  143. Statement: InitZoomXY
  144. ========================================================================
  145. Modes : Amiga/Blitz
  146. Syntax: InitZoomXY source#,dest#,add_source,add_dest
  147.  
  148.   This command initialises the ZoomXY routine to the bitmaps you want it
  149.   to work on.  You MUST use this routine before calling ZoomXY.  The
  150.   parameters are the same as the first four parameter for the ZoomXn
  151.   commands - source and dest bitmaps and add_source/dest values.
  152.  
  153.   See: ZoomXY
  154.  
  155. Statement: ZoomXY
  156. ========================================================================
  157. Modes : Amiga/Blitz
  158. Syntax: ZoomXY xzoom_value,yzoom_value,height
  159.  
  160.   This command does a zoom based on the values you give it.  You should
  161.   note, though, that zoom values should be integer values (no fractional
  162.   part).  The height is the height in pixels that the source data should be
  163.   zomed to.  Please note that this command is different to the other zoom
  164.   commands in that the output of it is clipped to fit inside 320 pixels.
  165.  
  166.   This command should only be used after InitZoomXY has been called.
  167.   This routine has an extra feature in that if you give both zoom values
  168.   as 1 then a bitmap copy is done from the source to the dest using the
  169.   offsets given and the height.
  170.  
  171.   See: InitZoomXY
  172.  
  173. Statement: Derez
  174. ========================================================================
  175. Modes : Amiga/Blitz
  176. Syntax: Derez source#,dest#,add_source,add_dest,derez_value,height
  177.  
  178.   This command is used to derez a low resolution bitmap onto another one.
  179.   The bitmaps are source# and dest#, add_source and add_dest are used to
  180.   control the start position of the derez (see ZoomX2 and ADDValue to see
  181.   how these are calculated).  The derez value if obviously the amount that
  182.   each pixel will be derezed to in both the x and y directions, the height
  183.   is the height of the derez - the derez is clipped to fit inside this in 
  184.   the y direction and inside 320 pixels in the x direction.
  185.   This routine has an extra feature in that if you give derez_value as 1
  186.   then a bitmap copy is done from the source to the dest using the offsets
  187.   given and the height.
  188.  
  189. Statement: ReduceX2
  190. ========================================================================
  191. Modes : Amiga/Blitz
  192. Syntax: ReduceX2 source#,dest#,add_source,add_dest,width,height
  193.  
  194.   This command halves the given rectangle of one bitmap and pastes it onto
  195. the destination bitmap.  Width should be a multiple of 16, width and height
  196. should describe a rectangular area that will be reduced (these values
  197. should be in pixels).
  198.  
  199.   See ZoomX2 and other commands for more information about the syntax of
  200. this command.
  201.