home *** CD-ROM | disk | FTP | other *** search
/ Amiga GigaPD 3 / Amiga_GigaPD_v3_3of3.iso / fred_fish / fish_601-700_lha / fish_674.lha / IFFLIB / iff.i < prev    next >
Text File  |  1993-06-02  |  4KB  |  161 lines

  1.         IFND    LIBRARIES_IFF_I
  2. LIBRARIES_IFF_I    SET    1
  3. **
  4. **    $Id: iff.i,v 22.1 92/06/02 16:46:32 chris Exp $
  5. **    $Revision: 22.1 $
  6. **
  7. **    $Filename: iff.i $
  8. **    $Author: Christian A. Weber $
  9. **    $Release: 22.1 $
  10. **    $Date: 92/06/02 16:46:32 $
  11. **
  12. **    Standard header file for programs using iff.library
  13. **
  14. **    COPYRIGHT (C) 1987-1992 BY CHRISTIAN A. WEBER, BRUGGERWEG 2,
  15. **    CH-8037 ZUERICH, SWITZERLAND.
  16. **    THIS FILE MAY BE FREELY DISTRIBUTED. USE AT YOUR OWN RISK.
  17. **
  18.  
  19.         XREF    _IFFBase
  20.  
  21. IFFNAME        MACRO
  22.         dc.b    'iff.library',0
  23.         ENDM
  24.  
  25. IFFVERSION:    EQU    22        ; Current library version
  26.  
  27.  
  28. *****************************************************************************
  29. **    Error codes (returned by IFFL_IFFError())
  30.  
  31. IFFL_ERROR_BADTASK    EQU    -1    ; IFFL_IFFError() called by wrong task
  32. IFFL_ERROR_OPEN        EQU    16    ; Can't open file
  33. IFFL_ERROR_READ        EQU    17    ; Error reading file
  34. IFFL_ERROR_NOMEM    EQU    18    ; Not enough memory
  35. IFFL_ERROR_NOTIFF    EQU    19    ; File is not an IFF file
  36. IFFL_ERROR_WRITE    EQU    20    ; Error writing file
  37. IFFL_ERROR_NOILBM    EQU    24    ; IFF file is not of type ILBM
  38. IFFL_ERROR_NOBMHD    EQU    25    ; BMHD chunk not found
  39. IFFL_ERROR_NOBODY    EQU    26    ; BODY chunk not found
  40. IFFL_ERROR_BADCOMPRESSION EQU    28    ; Unknown compression type
  41. IFFL_ERROR_NOANHD    EQU    29    ; ANHD chunk not found
  42. IFFL_ERROR_NODLTA    EQU    30    ; DLTA chunk not found
  43.  
  44.         IFD    IFFLIB_PRE21NAMES
  45. IFF_BADTASK        EQU    -1
  46. IFF_CANTOPENFILE    EQU    16
  47. IFF_READERROR        EQU    17
  48. IFF_NOMEM        EQU    18
  49. IFF_NOTIFF        EQU    19
  50. IFF_WRITEERROR        EQU    20
  51. IFF_NOILBM        EQU    24
  52. IFF_NOBMHD        EQU    25
  53. IFF_NOBODY        EQU    26
  54. IFF_TOOMANYPLANES    EQU    27
  55. IFF_UNKNOWNCOMPRESSION    EQU    28
  56. IFF_NOANHD        EQU    29
  57. IFF_NODLTA        EQU    30
  58.         ENDC
  59.  
  60.  
  61. *****************************************************************************
  62. **    Common IFF IDs
  63.  
  64. **    Generic IFF IDs
  65.  
  66.     IFND    ID_FORM        ; don't redefine if iffparse.i is included
  67. ID_FORM     EQU    'FORM'
  68. ID_CAT      EQU    'CAT '
  69. ID_LIST     EQU    'LIST'
  70. ID_PROP     EQU    'PROP'
  71.     ENDC
  72.  
  73. **    Specific IFF IDs
  74.  
  75. ID_ANIM     EQU    'ANIM'
  76. ID_ANHD     EQU    'ANHD'
  77. ID_ANNO     EQU    'ANNO'
  78. ID_BMHD     EQU    'BMHD'
  79. ID_BODY     EQU    'BODY'
  80. ID_CAMG     EQU    'CAMG'
  81. ID_CLUT     EQU    'CLUT'
  82. ID_CMAP     EQU    'CMAP'
  83. ID_CRNG     EQU    'CRNG'
  84. ID_CTBL     EQU    'CTBL'
  85. ID_DLTA     EQU    'DLTA'
  86. ID_ILBM     EQU    'ILBM'
  87. ID_SHAM     EQU    'SHAM'
  88.  
  89. ID_8SVX     EQU    '8SVX'
  90. ID_ATAK     EQU    'ATAK'
  91. ID_NAME     EQU    'NAME'
  92. ID_RLSE     EQU    'RLSE'
  93. ID_VHDR     EQU    'VHDR'
  94.  
  95.  
  96. *************** LIBRARY OFFSETS ******************************************
  97.  
  98.         IFD    IFFLIB_PRE21NAMES
  99. _LVOOpenIFF    EQU    -30    ; (filename)            (A0)
  100. _LVOCloseIFF    EQU    -36    ; (ifffile)            (A1)
  101. _LVOFindChunk    EQU    -42    ; (ifffile,chunkname)        (A1,D0)
  102. _LVOGetBMHD    EQU    -48    ; (ifffile)            (A1)
  103. _LVOGetColorTab EQU    -54    ; (ifffile,colortable)        (A1/A0)
  104. _LVODecodePic    EQU    -60    ; (ifffile,bitmap)        (A1/A0)
  105. _LVOSaveBitMap    EQU    -66    ; (name,bmap,ctab,crmd)        (A0-A2,D0)
  106. _LVOSaveClip    EQU    -72    ; (name,bmap,ctab,crmd,x,y,w,h)    (A0-A2,D0-D4)
  107. _LVOIFFError    EQU    -78    ; ()                ()
  108. _LVOGetViewModes EQU    -84    ; (ifffile)            (A1)
  109. _LVONewOpenIFF    EQU    -90    ; (filename,memtype)        (A0,D0)
  110. _LVOModifyFrame EQU    -96    ; (modifyform,bitmap)        (A1/A0)
  111.         ENDC
  112.  
  113.  
  114. *****************************************************************************
  115. **    Modes for IFFL_OpenIFF()
  116.  
  117. IFFL_MODE_READ        EQU    0
  118. IFFL_MODE_WRITE        EQU    1
  119.  
  120.  
  121. *****************************************************************************
  122. **    Modes for IFFL_CompressBlock() and IFFL_DecompressBlock()
  123.  
  124. IFFL_COMPR_NONE        EQU    $0000        ; generic
  125. IFFL_COMPR_BYTERUN1    EQU    $0001        ; ILBM
  126. IFFL_COMPR_FIBDELTA    EQU    $0101        ; 8SVX
  127.  
  128. *****************************************************************************
  129. **    Structure definitions
  130.  
  131. bmh_Width        EQU    0    ; BMHD: struct BitMapHeader
  132. bmh_Height        EQU    $2
  133. bmh_XPos        EQU    $4
  134. bmh_YPos        EQU    $6
  135. bmh_nPlanes        EQU    $8
  136. bmh_Masking        EQU    $9
  137. bmh_Compression        EQU    $A
  138. bmh_Pad1        EQU    $B
  139. bmh_TranspCol        EQU    $C
  140. bmh_XAspect        EQU    $E
  141. bmh_YAspect        EQU    $F
  142. bmh_PageWidth        EQU    $10
  143. bmh_PageHeight        EQU    $12
  144. bmh_SIZEOF        EQU    $14
  145.  
  146. anh_Operation        EQU    0    ; ANHD: struct AnimHeader
  147. anh_Mask        EQU    $1
  148. anh_W            EQU    $2
  149. anh_H            EQU    $4
  150. anh_X            EQU    $6
  151. anh_Y            EQU    $8
  152. anh_AbsTime        EQU    $A
  153. anh_RelTime        EQU    $E
  154. anh_Interleave        EQU    $12
  155. anh_pad0        EQU    $13
  156. anh_Bits        EQU    $14
  157. anh_pad            EQU    $18
  158. anh_SIZEOF        EQU    $28
  159.  
  160.         ENDC
  161.