

IFF Registry 11/88 
==================

   ( Note - If anyone notices any omissions, please let me know.
     If anyone is writing unregistered FORMs or chunks, please
     register them.   C. Scheppner CBM )
 
=========================================================================
Original EA Filetypes and FORMs
=========================================================================

Filetypes:  FORM,PROP,LIST,CAT

-------------------------------------------------------------------------
Chunks found in more than one type of FORM:

AUTH, CHRS, (c), ANNO, NAME, TEXT 
                      - Described in EA spec, may be found in some ILBMs
                        and other forms.
                        AUTH and (c) should be preserved by read/writers 

-------------------------------------------------------------------------
FORM ILBM
=========

BMHD - Bitmap header
CMAP - rgb color map
GRAB - Hot spot
DEST - Planepick
SPRT - Sprite info
CAMG - Amiga Viewmodes
CCRT - Cycle info (Graphicraft)
CRNG - Cycle info (DPaint)
BODY - Interleaved bitplane data

DPPV - DPaintII Perspective chunk  (see Third Party Specs)
DGVW - DigiView private chunk in 21-bit SaveRGB ILBMs
BHSM - Photon Paint private (see their manual) (appears first in ILBM)
BHCP - Photon Paint private (see their manual) (in full images)
BHBA - Photon Paint private (see their manual) (in brushes)

also AUTH, (c), CHRS, etc.
 

ADDENDA

1. CRNG bit 1 defined as Reverse cycling flag

   In DPaintII, Dan Silva has defined bit 1 (next to lowest bit) of
   the CRNG cycling chunk "active" variable as a flag for reverse 
   color cycling.  If this bit is set, cycle direction is reversed.
   Unfortunately, DPaintII internally uses rate <= RNG_NORATE (36)
   to mean that a cycle range is inactive, and is not too careful
   about the value saved in the CRNG.active variable.  This makes
   it impossible to determine programatically whether or not a DPaint
   pic should be cycled.

2. CAMG bits require masking

   Under certain circumstances, unwanted application-specific ViewMode
   bits are saved to or loaded from a CAMG chunk.  The SPRITES, VP_HIDE, 
   GENLOCK_AUDIO, and GENLOCK_VIDEO flags should be masked out of the
   camg.ViewModes when saving or loading a CAMG chunk.  The UWORD
   of masked Amiga viewmodes is stored in the low word of CAMG.Viewmodes.
   The high word of CAMG.Viewmodes is reserved by Commodore and must
   currently be written as zeros, but not assumed to be zeros when read.

   #include <graphics/view.h>
   #define BADFLAGS  (SPRITES|VP_HIDE|GENLOCK_AUDIO|GENLOCK_VIDEO)
   #define FLAGMASK  (~BADFLAGS)
   #define CAMGMASK  (FLAGMASK & 0x0000FFFFL)

   camg.ViewModes = viewport->Modes & CAMGMASK;


3. ILBMs in ANIM are non-standard

   The embedded ILBM forms in an ANIM do not adhere to the ILBM spec
   and technically should have had a different chunk ID.  They do
   not contain the required ILBM property BMHD, and instead contain
   an ANHD and delta information for changing the previous image.
   This inconsistency occurred because the original ANIM concept of
   sequential ILBMs was slowly modified, for speed and compactness,
   into a single ILBM followed by frames containing encoded animation
   changes.  After much discussion with the authors and third parties
   supporting the ANIM form, it was decided that this inconsistency
   must remain for now to avoid breaking existing products. 
   
   
-------------------------------------------------------------------------
FORM FTXT
=========
FONS - Font specification
CHRS - Ascii characters and ISO/ANSII standard control sequences

also AUTH, (c), CHRS, etc.

-------------------------------------------------------------------------
FORM SMUS
=========

SHDR - Score header
NAME - Name of score
INS1 - Instrument
TRAK - Data chunk for one track

also AUTH, (c), NAME, ANNO, CHRS, etc.
   
ADDENDA

   EA has reserved two new sEvents for SMUS since the IFF release which
   appears in the Addison-Wesley manuals:

          SID Value                        Next Data Byte
          =========                        ==============
   #define SID_Clef   135          0=treble, 1=bass, 2=alto, 3=tenor
   #define SID_Tempo  136          beats per second (0-255)
  

-------------------------------------------------------------------------
FORM 8SVX
=========

VHDR - Voice header
ATAK - Attack info
RLSE - Release info
BODY - Data samples grouped by octave (may be Fibonacci-delta encoded)

CHAN - Stereo channel chunk (Gold Disk - see third party specs)
PAN  - Stereo pan chunk (Gold Disk - see third party specs)

also AUTH, (c), NAME, ANNO, etc.


=========================================================================
Public Registered Third Party FORMs
=========================================================================
FORM ACBM  
=========
Amiga Contiguous Bitmap (used in AmigaBasic Demos)
Contains normal ILBM chunks except:

ABIT replaces BODY (ABIT is uncompressed contiguous bitplane data)

-------------------------------------------------------------------------
FORM AIFF
=========
Apple Audio IFF Form for 1 to 32-bit audio samples.  By Steve Milne, Apple
I posted a general description in BIX amiga.dev/iff.
I don't plan to add it to our Amiga IFF manual.

-------------------------------------------------------------------------
FORM ANBM  
=========
Animated bitmap FORM, used in Deluxe Video by Posehn & Case for EA
Should appear in 1988 IFF manual.

-------------------------------------------------------------------------
FORM ANIM  
=========
Cel Animation FORM used by Videoscape-3D (Aegis)

ANHD
DLTA

ANIM contains embedded "ILBM"'s, all but first not true ILBM's but rather 
containing ANHD (Anim header) and DLTA (changes to create next cell).

Latest ANIM spec is in the May/June 88 AmigaMail, and is also posted on
BIX in amiga.dev/docs.  Spec in August 87 IFF manual is outdated.
The new spec will appear in 1988 IFF manual.

-------------------------------------------------------------------------
FORM BANK
=========
SoundQuest Editor/Librarian format for MIDI system-exclusive data dump.
Form spec has not yet been provided.

-------------------------------------------------------------------------
FORM HEAD
=========
Idea processor FORM used by Flow (New Horizons Software)
Described in current IFF manual.

NEST
TEXT
FSCC

-------------------------------------------------------------------------
FORM MIDI
=========
Expecting spec soon - watch BIX amiga.dev/iff
Circum Design

-------------------------------------------------------------------------
FORM PGTB
=========
ProGram TraceBack diagnostic dump image - John Toebes, S.A.S.
Presented at Devcon.  Should appear in 1988 IFF manual.


-------------------------------------------------------------------------
FORM SYTH
=========
SoundQuest Master Librarian format for MIDI system-exclusive driver.
Form spec has not yet been provided.


-------------------------------------------------------------------------
FORM WORD
=========
Word processing FORM used by Prowrite (New Horizons Software)
See spec in current IFF manual.

FONT
COLR
DOC
HEAD
FOOT
PCTS
PARA
TABS
PAGE
TEXT
FSCC
PINF


 
=========================================================================
Private Registered Third Party FORMs
=========================================================================
FORM C100
=========
Cloanto Italia (private word processing form)
          Chunks C1C0, C1K0, C1F0, C1U0, C1K1
          C1C0 and C1K0 used in C100 forms
          C1F0 and C1U0 used in C100 and FTXT forms
          Also SGR9    SGR29  (label start and end)


-------------------------------------------------------------------------
FORM PDEF
=========
Deluxe Print page definition (EA)

-------------------------------------------------------------------------
FORM RGB4 
=========
For 4 bit R G B pixel information

   COMP (chunk containing compression table for the FORM)

   The RGB4 FORM contains a BMHD which will specify 2 as its Compression.
   BMHD compression value 2 has been reserved for this algorithm
   which is a modified Huffman encoding.


-------------------------------------------------------------------------
FORM SHAK
=========
Used by Shakespeare, Infinity Software (private)
Contains embedded ILBMs

-------------------------------------------------------------------------
FORM VDEO 
=========
Deluxe Video (EA)


=========================================================================
Proposed Third Party FORMs
=========================================================================
FORM SAMP
=========
Sound sample FORM proposed by "dissidents" (BIX: jfiore)
Will be posted there if I get author's permission.
Designed to work cohesively with the MIDI standard.

-------------------------------------------------------------------------
FORM TDDD
=========
For ray-tracing program Turbo Silver by Impulse 
Will probably be posted on BIX when finalized.


=========================================================================
Unregistered Third Party FORMs
=========================================================================
FORM SC3D
=========
Sculpt-3D


=========================================================================   
Additional Reserved Names
=========================================================================   

Other IDs reserved in original EA IFF 85 spec:

1. TEXT - a chunk containing plain unformatted ASCII text
2. FNTR - raster font
3. FNTV - vector font
4. GSCR - general-use musical score
5. PICS - Macintosh picture
6. PLBM - obsolete
7. USCR - Uhuru Sound Software musical score
8. UVOX - Uhuru Sound Software Macintosh voice
9. Property IDs: OPGM, OCPU, OCMP, OSN, UNAM


Temporarily reserved by CBM or third parties:

1. CAT  CLIP - to hold various representations of data clipped to clipboard
2. FORM ARC  - possible archiving form discussed on Usenet a while back
3. ATXT, PTXT - temporarily reserved
4. ILBM chunks 3DCM, 3DPA  - temporarily reserved 
5. RGBX, CDAT - temporarily reserved
6. FORM MSMP, chunks MSHD, SSHD, SSLP - temporarily reserved
7. FORM FIGR - temporarily reserved
8. LIST MOVI - reserved
9. Chunk name END  - reserved by CBM for future stream end indication
