From 5a9b9a491af1dd7b1a0a9bf9241d6e67b40bee0f Mon Sep 17 00:00:00 2001 From: "Christian A. Weber" Date: Mon, 24 May 1993 15:43:21 +0000 Subject: *** empty log message *** --- Documentation/CHANGES.DOC | 81 ++++++++++++++++++++++++++++------------- Examples/AnimExample.c | 6 +-- Examples/EasyExample.c | 8 ++-- Examples/GrabScreen.c | 93 ++++++++++++++++++++++++++--------------------- Examples/Grabber.S | 6 +-- Examples/Makefile | 6 +-- Programmer/iff.h | 60 ++++++++++++++++-------------- Programmer/iff.i | 20 ++++++---- 8 files changed, 164 insertions(+), 116 deletions(-) diff --git a/Documentation/CHANGES.DOC b/Documentation/CHANGES.DOC index 9bef181..cadf439 100644 --- a/Documentation/CHANGES.DOC +++ b/Documentation/CHANGES.DOC @@ -1,27 +1,51 @@ ** -** $Id: CHANGES.DOC,v 22.2 92/06/03 23:52:06 chris Exp $ +** $Id: CHANGES.DOC,v 22.3 92/06/21 00:21:50 chris Exp $ ** -** $Author: chris $ -** $Release: 22.3 $ -** $Date: 92/06/03 23:52:06 $ +** $Author: Christian A. Weber $ +** $Release: 23.2 $ +** $Date: 92/06/20 17:21:50 $ ** +CHANGES FOR V23.2 (24-May-93) +----------------- + +* The library no longer has a (unused) data hunk. This reduces its size. + +* iff.lib now has a version string. + + +CHANGES FOR V23.1 (23-May-93, not released) +----------------- + +* IFFL_PushChunk() and IFFL_PopChunk() know how to deal with nested FORMs. + The FORM type can be written manually (with a WriteChunkBytes() after + the IFFL_PushChunk(..., ID_FORM), or automatically. + + +CHANGES FOR V22.4 (02-Jun-92) +----------------- + +* IFFL_GetViewModes() doesn't set the HAM bit anymore if the IFF file has + no CAMG chunk. This is required for the AGA modes to work. + + CHANGES FOR V22.3 ----------------- -* SaveClip() and SaveBitMap() won't crash on 68000 processors anymore +* IFFL_SaveClip() and IFFL_SaveBitMap() won't crash on 68000 processors + anymore. -* Minor bugs in documentation fixed +* Minor bugs in documentation fixed. CHANGES FOR V22.2 ----------------- -* Superfluous seeking in OpenIFF() removed (occurred only if the file was - compressed with xpk) +* Superfluous seeking in IFFL_OpenIFF() removed (occurred only if the + file was compressed with xpk) * On popular demand, the MoviePRO ANIM player (plays Sculpt MOVIE and ANIM5) is now included. It's still a BETA version, so use with care... @@ -72,8 +96,8 @@ programmer's interface changed. Here's what's new: * If you define the symbol IFFLIB_PRE21NAMES in your source codes, you still can compile them using the old naming conventions. However, - you will lose the ability to use iffparse.library in the same files - because of the name clashes. + you will lose the ability to use iffparse.library in the same source + files because of some name clashes. * In IFFL_SaveClip() and IFFL_SaveBitMap(), the color values are now calculated correctly (multiplied, not shifted). @@ -90,7 +114,7 @@ CHANGES FOR V20.1 -CHANGES FOR V19.1 +CHANGES FOR V19.1 (09-Oct-90) ----------------- * SaveClip() and SaveBitMap() now correctly write 24 bitplane pictures. @@ -103,7 +127,7 @@ CHANGES FOR V18.8 ----------------- * Modula-2 definition module and example program added, (contributed by - Oliver Schraner, thanx!). + Olivier Schraner, thanx!). * ShowIFF now adjusts the screen size according to the "normal" values stored in GfxBase, for users of MoreRows or Kickstart 2.0. @@ -116,19 +140,17 @@ CHANGES FOR V18.8 * No functional changes to the library (except new version number ;-) -CHANGES FOR V18.7 +CHANGES FOR V18.7 (13-Apr-90) ----------------- * You can now use DecodePic() to decode pictures with as many as 24 bitplanes. Although the original BitMap structure has only 8 pointers, you can simply add more plane-pointers at the end of the structure. - Note that these pictures must be in a normal bit-plane format (i.e. - not the format for 'Deep ILBMs' specified by Commodore). This feature enables my ShowIFF tool to directly display 24-bit pictures - scanned with the ASDG color scanner (with limited colors, of course). + (with limited colors, of course). -CHANGES FOR V18.6 +CHANGES FOR V18.6 (11-Apr-90) ----------------- * DecodePic() can deal with pictures which have more planes than the @@ -138,7 +160,7 @@ CHANGES FOR V18.6 is now obsolete. -CHANGES FOR V18.5 +CHANGES FOR V18.5 (12-Mar-90) ----------------- * OpenIFF() no longer trashes memory if a corrupt FORM (with some random @@ -148,7 +170,7 @@ CHANGES FOR V18.5 supported by ShowIFF. -CHANGES FOR V18.4 +CHANGES FOR V18.4 (28-Feb-90) ----------------- * The library now handles poorly written BODY chunks correctly (such as @@ -156,7 +178,7 @@ CHANGES FOR V18.4 a height or depth of 0. -CHANGES FOR V18.2 +CHANGES FOR V18.2 (25-Feb-90) ----------------- * The type IFFFILE has been redefined from 'CPTR' to 'void *'. This allows @@ -169,7 +191,7 @@ CHANGES FOR V18.2 by ANIM readers for jumping from FORM to FORM (see example program). -CHANGES FOR V18.1 +CHANGES FOR V18.1 (21-Feb-90) ----------------- * New function ModifyFrame(). This functions takes a bitmap and modifies @@ -220,7 +242,7 @@ This version never existed (the IFFLIB17.ZOO release contained iff.lib 16.4). To avoid confusion, the new version number is now 18. -CHANGES FOR V16.4 +CHANGES FOR V16.4 (16-May-89) ----------------- * The ShowIFF.c example program was completely rewritten. It now uses the @@ -239,14 +261,14 @@ CHANGES FOR V16.4 by HiSoft instead of the Manx 3.6 assembler) -CHANGES FOR V16.3 +CHANGES FOR V16.3 (18-Mar-89) ----------------- * The BMHD property chunks can now be in any order (which worked for V16.1, but was broken in 16.2). -CHANGES FOR V16.2 +CHANGES FOR V16.2 (03-Mar-89) ----------------- * The SaveBitMap/SaveClip() routines sometimes generated a wrong CAMG chunk. @@ -255,7 +277,7 @@ CHANGES FOR V16.2 * There are no more decruncher overruns corrupting the memory list -CHANGES FOR V16.1 +CHANGES FOR V16.1 (01-Dec-88) ----------------- Since V15.3 I got lots of suggestions, so I made the following changes. @@ -289,3 +311,12 @@ Note that this version is fully downward-compatible to V15.3. * The demo file 'ShowIFF.c' now correctly handles overscan pictures. + +-- [more boring version info deleted] -- + + +CHANGES FOR V1.0 (14-Dec-87) +---------------- + +* iff.library was born! + diff --git a/Examples/AnimExample.c b/Examples/AnimExample.c index e45696d..1505a34 100644 --- a/Examples/AnimExample.c +++ b/Examples/AnimExample.c @@ -1,12 +1,12 @@ /* ** -** $Id: AnimExample.c,v 21.1 92/05/28 17:09:27 chris Exp $ +** $Id: AnimExample.c,v 21.1 92/06/02 18:08:33 chris Exp $ ** $Revision: 21.1 $ ** ** $Filename: Examples/AnimExample.c $ ** $Author: Christian A. Weber $ -** $Release: 21.1 $ -** $Date: 92/05/28 17:09:27 $ +** $Release: 23.2 $ +** $Date: 92/06/02 18:08:33 $ ** ** A simple DPaint ANIM player. To compile with Lattice C 5.x, just ** type 'lmk'. For other compilers you may have to do minor changes. diff --git a/Examples/EasyExample.c b/Examples/EasyExample.c index c4cca07..11772f9 100644 --- a/Examples/EasyExample.c +++ b/Examples/EasyExample.c @@ -1,12 +1,12 @@ /* ** -** $Id: EasyExample.c,v 21.1 92/05/28 17:09:27 chris Exp $ -** $Revision: 21.1 $ +** $Id: EasyExample.c,v 21.2 92/06/02 18:08:10 chris Exp $ +** $Revision: 21.2 $ ** ** $Filename: Examples/EasyExample.c $ ** $Author: Christian A. Weber $ -** $Release: 21.1 $ -** $Date: 92/05/28 17:09:27 $ +** $Release: 23.2 $ +** $Date: 92/06/02 18:08:10 $ ** ** A simple ILBM file viewer. To compile with Lattice C 5.x, just ** type 'lmk'. For other compilers you may have to do minor changes. diff --git a/Examples/GrabScreen.c b/Examples/GrabScreen.c index fde0bf2..a3eca8d 100644 --- a/Examples/GrabScreen.c +++ b/Examples/GrabScreen.c @@ -1,20 +1,20 @@ /* ** -** $Id: GrabScreen.c,v 21.1 92/05/18 01:05:18 chris Exp $ -** $Revision: 21.1 $ +** $Id: GrabScreen.c,v 22.4 93/02/03 02:06:54 chris Exp $ +** $Revision: 22.4 $ ** ** $Filename: Examples/GrabScreen.c $ ** $Author: Christian A. Weber $ -** $Release: 21.1 $ -** $Date: 92/05/18 01:05:18 $ +** $Release: 23.2 $ +** $Date: 93/02/03 02:06:54 $ ** -** IFF library example program. Compile with Lattice C 5.x. +** IFF library example program. Compile with SAS/C 5.x or newer. ** This program saves the contents of the frontmost screen as an IFF file ** with filename 'RAM:grabscreen.pic'. ** This example makes use of the IFFL_PushChunk() / IFFL_WriteChunkBytes() / ** IFFL_PopChunk() functions, it does not use IFFL_SaveBitMap(). ** -** COPYRIGHT (C) 1987-1992 BY CHRISTIAN A. WEBER, BRUGGERWEG 2, +** COPYRIGHT (C) 1987-1993 BY CHRISTIAN A. WEBER, BRUGGERWEG 2, ** CH-8037 ZUERICH, SWITZERLAND. ** THIS FILE MAY BE FREELY DISTRIBUTED. USE AT YOUR OWN RISK. ** @@ -62,7 +62,7 @@ */ struct Library *IFFBase; -char version[] = "\0$VER: GrabScreen 21.2 by Christian A. Weber"; +char version[] = "\0$VER: GrabScreen 22.4 by Christian A. Weber"; /**************************************************************************** @@ -82,7 +82,7 @@ BOOL MySaveScreen(struct Screen *screen,char *filename) /* ** Open the file for writing */ - if(iff = IFFL_OpenIFF(filename,IFFL_MODE_WRITE)) + if (iff = IFFL_OpenIFF(filename, IFFL_MODE_WRITE) ) { struct IFFL_BMHD bmhd; ULONG modeid; @@ -109,15 +109,15 @@ BOOL MySaveScreen(struct Screen *screen,char *filename) /* ** Create the BMHD chunk. (goto considered useful :-)) */ - if(IFFL_PushChunk(iff,ID_ILBM,ID_BMHD)) + if (IFFL_PushChunk(iff, ID_ILBM, ID_BMHD) ) { - if(!IFFL_WriteChunkBytes(iff,&bmhd,sizeof(bmhd))) + if (!IFFL_WriteChunkBytes(iff, &bmhd, sizeof(bmhd)) ) { printf("Error writing BMHD data.\n"); goto error; } - if(!IFFL_PopChunk(iff)) + if (!IFFL_PopChunk(iff) ) { printf("Error closing BMHD chunk.\n"); goto error; @@ -133,13 +133,13 @@ BOOL MySaveScreen(struct Screen *screen,char *filename) ** Create the CMAP chunk. */ count = screen->ViewPort.ColorMap->Count; - if(colortable = AllocMem(count * 3, MEMF_ANY)) + if (colortable = AllocMem(count * 3, MEMF_ANY)) { int i; - for(i=0; iViewPort.ColorMap,i); + UWORD rgb4 = GetRGB4(screen->ViewPort.ColorMap, i); colortable[i*3+0] = (rgb4 >> 4) & 0xF0; colortable[i*3+0] |= colortable[i*3+0] >> 4; @@ -151,15 +151,15 @@ BOOL MySaveScreen(struct Screen *screen,char *filename) colortable[i*3+2] |= colortable[i*3+2] >> 4; } - if(IFFL_PushChunk(iff,ID_ILBM,ID_CMAP)) + if (IFFL_PushChunk(iff, ID_ILBM, ID_CMAP) ) { - if(!IFFL_WriteChunkBytes(iff,colortable,count * 3)) + if (!IFFL_WriteChunkBytes(iff, colortable, count * 3) ) { printf("Error writing CMAP data.\n"); goto error; } - if(!IFFL_PopChunk(iff)) + if (!IFFL_PopChunk(iff) ) { printf("Error closing CMAP chunk.\n"); goto error; @@ -171,24 +171,24 @@ BOOL MySaveScreen(struct Screen *screen,char *filename) goto error; } - FreeMem(colortable,count * 3); + FreeMem(colortable, count * 3); } /* ** Get the viewport's modes for the CAMG chunk. */ modeid = (GfxBase->LibNode.lib_Version >= 36) ? - GetVPModeID(&screen->ViewPort) : (screen->ViewPort.Modes&OLDCAMGMASK); + GetVPModeID(&screen->ViewPort) : (screen->ViewPort.Modes & OLDCAMGMASK); - if(IFFL_PushChunk(iff,ID_ILBM,ID_CAMG)) + if (IFFL_PushChunk(iff, ID_ILBM, ID_CAMG) ) { - if(!IFFL_WriteChunkBytes(iff,&modeid,sizeof(modeid))) + if (!IFFL_WriteChunkBytes(iff, &modeid, sizeof(modeid)) ) { printf("Error writing CAMG data.\n"); goto error; } - if(!IFFL_PopChunk(iff)) + if (!IFFL_PopChunk(iff) ) { printf("Error closing CAMG chunk.\n"); goto error; @@ -203,28 +203,35 @@ BOOL MySaveScreen(struct Screen *screen,char *filename) /* ** Generate BODY */ - if(IFFL_PushChunk(iff,ID_ILBM,ID_BODY)) + if (IFFL_PushChunk(iff, ID_ILBM, ID_BODY) ) { UBYTE *bodybuf; - if(bodybuf = AllocMem(BODYBUFSIZE,MEMF_ANY)) + if (bodybuf = AllocMem(BODYBUFSIZE, MEMF_ANY) ) { UBYTE *planes[MAXSAVEDEPTH]; - int row,rowbytes,iplane,bodysize=0; + int row, rowbytes, iplane, bodysize=0; - rowbytes = bitmap->BytesPerRow; + /* + ** Under OS 3.x, we are not allowed to read the fields of a + ** BitMap structure directly (strange results may happen due + ** to ILBM modes), so we call GetBitMapAttr() under 3.x. + */ + rowbytes = (GfxBase->LibNode.lib_Version >= 39) ? + (GetBitMapAttr(bitmap, BMA_WIDTH) >> 3) : + bitmap->BytesPerRow; /* ** Copy the plane pointers into the local array "planes" */ - for(iplane=0; iplane < bmhd.nPlanes; ++iplane) + for (iplane=0; iplane < bmhd.nPlanes; ++iplane) { planes[iplane] = bitmap->Planes[iplane]; } - for(row=0; row < bmhd.h; ++row) + for (row=0; row < bmhd.h; ++row) { - for(iplane=0; iplane < bmhd.nPlanes; ++iplane) + for (iplane=0; iplane < bmhd.nPlanes; ++iplane) { int comprsize; @@ -232,9 +239,9 @@ BOOL MySaveScreen(struct Screen *screen,char *filename) ** To speed up things, we collect as much data ** as possible in bodybuf before we write it out. */ - if(bodysize > (BODYBUFSIZE-MAXPACKEDSIZE(rowbytes))) + if (bodysize > (BODYBUFSIZE-MAXPACKEDSIZE(rowbytes)) ) { - if(!IFFL_WriteChunkBytes(iff,bodybuf,bodysize)) + if (!IFFL_WriteChunkBytes(iff, bodybuf, bodysize) ) { printf("Error writing BODY data.\n"); goto error; @@ -245,30 +252,30 @@ BOOL MySaveScreen(struct Screen *screen,char *filename) /* ** Compress the next row */ - if(!(comprsize = IFFL_CompressBlock(planes[iplane], - bodybuf+bodysize,rowbytes,IFFL_COMPR_BYTERUN1))) + if ( !(comprsize = IFFL_CompressBlock(planes[iplane], + bodybuf+bodysize, rowbytes, IFFL_COMPR_BYTERUN1)) ) { printf("Error compressing BODY data.\n"); goto error; } bodysize += comprsize; - planes[iplane] += rowbytes; + planes[iplane] += bitmap->BytesPerRow; /* next line */ } } /* ** Now we're done, so flush the body data buffer */ - if(bodysize) + if (bodysize) { - if(!IFFL_WriteChunkBytes(iff,bodybuf,bodysize)) + if (!IFFL_WriteChunkBytes(iff, bodybuf, bodysize) ) { printf("Error writing BODY data.\n"); goto error; } } - FreeMem(bodybuf,BODYBUFSIZE); + FreeMem(bodybuf, BODYBUFSIZE); } else { @@ -276,7 +283,7 @@ BOOL MySaveScreen(struct Screen *screen,char *filename) goto error; } - if(!IFFL_PopChunk(iff)) + if (!IFFL_PopChunk(iff) ) { printf("Error closing BODY chunk.\n"); goto error; @@ -299,6 +306,7 @@ error: return result; } + /**************************************************************************** ** Main program */ @@ -307,21 +315,21 @@ int main(int argc, char **argv) { int result = RETURN_FAIL; - if(GfxBase = (struct GfxBase *)OpenLibrary("graphics.library",0)) + if (GfxBase = (struct GfxBase *)OpenLibrary("graphics.library", 0L) ) { - if(IntuitionBase = (struct IntuitionBase *)OpenLibrary("intuition.library",0)) + if (IntuitionBase = (void *)OpenLibrary("intuition.library", 0) ) { /* ** For the new functions we need at least version 21 of iff.library. */ - if(IFFBase = OpenLibrary(IFFNAME,21)) + if (IFFBase = OpenLibrary(IFFNAME, 21L) ) { /* ** Note that we don't lock the screen, so it might go away while ** we're writing its contents to the file, and the picture may ** then contain garbage. */ - MySaveScreen(IntuitionBase->FirstScreen,"RAM:grabscreen.pic"); + MySaveScreen(IntuitionBase->FirstScreen, "RAM:grabscreen.pic"); result = RETURN_OK; CloseLibrary(IFFBase); @@ -338,3 +346,4 @@ int main(int argc, char **argv) return result; } + diff --git a/Examples/Grabber.S b/Examples/Grabber.S index 1a7faa1..3a3a91a 100644 --- a/Examples/Grabber.S +++ b/Examples/Grabber.S @@ -1,11 +1,11 @@ ** -** $Id: Grabber.S,v 21.1 92/05/28 17:09:27 chris Exp $ +** $Id: Grabber.S,v 21.1 92/06/02 18:09:22 chris Exp $ ** $Revision: 21.1 $ ** ** $Filename: Examples/Grabber.S $ ** $Authors: Christian Haller, CHW $ -** $Release: 21.1 $ -** $Date: 92/05/28 17:09:27 $ +** $Release: 23.2 $ +** $Date: 92/06/02 18:09:22 $ ** ** Example for low level Assembler hackers :-) ** diff --git a/Examples/Makefile b/Examples/Makefile index 3343a0d..5e4990f 100644 --- a/Examples/Makefile +++ b/Examples/Makefile @@ -1,11 +1,11 @@ ## -## $Id: $ -## $Revision: $ +## $Id: Makefile,v 21.1 92/06/02 18:14:03 chris Exp $ +## $Revision: 21.1 $ ## ## $Filename: Examples/Makefile $ ## $Author: Christian A. Weber $ ## $Release: 21.1 $ -## $Date: 92/05/17 03:09:18 $ +## $Date: 92/06/02 18:14:03 $ ## ## Makefile to build iff.library examples ## diff --git a/Programmer/iff.h b/Programmer/iff.h index de1faf5..98e4c2c 100644 --- a/Programmer/iff.h +++ b/Programmer/iff.h @@ -2,18 +2,18 @@ #define LIBRARIES_IFF_H /* ** -** $Id: iff.h,v 21.4 92/05/23 01:34:23 chris Exp $ -** $Revision: 21.4 $ +** $Id: iff.h,v 22.1 92/06/02 16:46:47 chris Exp $ +** $Revision: 22.1 $ ** -** $Filename: iff.h $ +** $Filename: Libraries/iff.h $ ** $Author: Christian A. Weber $ -** $Release: 22.1 $ -** $Date: 92/05/23 01:34:23 $ +** $Release: 23.2 $ +** $Date: 92/06/02 16:46:47 $ ** ** Standard header file for programs using iff.library ** -** COPYRIGHT (C) 1987-1992 BY CHRISTIAN A. WEBER, BRUGGERWEG 2, -** CH-8037 ZUERICH, SWITZERLAND. +** COPYRIGHT (C) 1987-1993 BY CHRISTIAN A. WEBER, BRUGGERWEG 2, +** CH-8037 ZUERICH, SWITZERLAND (chris@mighty.adsp.sub.org). ** THIS FILE MAY BE FREELY DISTRIBUTED. USE AT YOUR OWN RISK. ** */ @@ -23,7 +23,7 @@ #endif #define IFFNAME "iff.library" -#define IFFVERSION 22L /* Current library version */ +#define IFFVERSION 23L /* Current library version */ /**************************************************************************** ** Error codes (returned by IFFL_IFFError()) @@ -94,7 +94,9 @@ #define ID_8SVX IFFL_MAKE_ID('8','S','V','X') #define ID_ATAK IFFL_MAKE_ID('A','T','A','K') +#ifndef ID_NAME #define ID_NAME IFFL_MAKE_ID('N','A','M','E') +#endif #define ID_RLSE IFFL_MAKE_ID('R','L','S','E') #define ID_VHDR IFFL_MAKE_ID('V','H','D','R') @@ -124,30 +126,27 @@ ** Structure definitions */ -#ifdef _IFFLIB - -typedef struct -{ - BPTR File; /* DOS file handle */ - LONG FormSize; /* Größe des gesamten FORM */ - LONG ChunkSize; /* Größe des aktuellen Chunks */ - LONG ChunkFPos; /* Position im File wo dieser Chunk beginnt */ -} *IFFL_HANDLE; - -#else - -typedef void *IFFL_HANDLE; /* The IFF 'FileHandle' structure */ +/* +** The private IFF 'FileHandle' structure +*/ +typedef void *IFFL_HANDLE; -#endif -struct IFFL_Chunk /* Generic IFF chunk structure */ +/* +** Generic IFF chunk structure +*/ +struct IFFL_Chunk { LONG ckID; LONG ckSize; /* UBYTE ckData[ckSize] (variable sized data) */ }; -struct IFFL_BMHD /* BMHD chunk for ILBM files */ + +/* +** BMHD chunk (BitMapHeader) of ILBM files +*/ +struct IFFL_BMHD { UWORD w,h; WORD x,y; @@ -160,7 +159,11 @@ struct IFFL_BMHD /* BMHD chunk for ILBM files */ WORD pageWidth,pageHeight; }; -struct IFFL_ANHD /* ANHD chunk for ANIM files */ + +/* +** ANHD chunk (AnimHeader) of ANIM files +*/ +struct IFFL_ANHD { UBYTE Operation; UBYTE Mask; @@ -182,8 +185,9 @@ struct IFFL_ANHD /* ANHD chunk for ANIM files */ #define AnimHeader IFFL_ANHD #endif + /**************************************************************************** -** IFF library function prototypes (ANSI) +** IFF library function prototypes (ANSI C) */ void IFFL_CloseIFF ( IFFL_HANDLE ); @@ -225,7 +229,7 @@ IFFL_HANDLE PPOpenIFF(char *,char *); /**************************************************************************** -** Pragmas for Lattice C V5.x +** Pragmas for SAS/C ** (generated with: 'fd2pragma iff_lib.fd iff_pragmas.h') */ @@ -271,5 +275,5 @@ extern struct Library *IFFBase; #endif -#endif !LIBRARIES_IFF_H +#endif diff --git a/Programmer/iff.i b/Programmer/iff.i index b909e1c..bc304a5 100644 --- a/Programmer/iff.i +++ b/Programmer/iff.i @@ -1,18 +1,18 @@ IFND LIBRARIES_IFF_I LIBRARIES_IFF_I SET 1 ** -** $Id: iff.i,v 21.3 92/05/23 01:34:36 chris Exp $ -** $Revision: 21.3 $ +** $Id: iff.i,v 22.1 92/06/02 16:46:32 chris Exp $ +** $Revision: 22.1 $ ** -** $Filename: iff.i $ +** $Filename: Libraries/iff.i $ ** $Author: Christian A. Weber $ -** $Release: 22.1 $ -** $Date: 92/05/23 01:34:36 $ +** $Release: 23.2 $ +** $Date: 92/06/02 16:46:32 $ ** ** Standard header file for programs using iff.library ** ** COPYRIGHT (C) 1987-1992 BY CHRISTIAN A. WEBER, BRUGGERWEG 2, -** CH-8037 ZUERICH, SWITZERLAND. +** CH-8037 ZUERICH, SWITZERLAND (chris@mighty.adsp.sub.org). ** THIS FILE MAY BE FREELY DISTRIBUTED. USE AT YOUR OWN RISK. ** @@ -22,7 +22,7 @@ IFFNAME MACRO dc.b 'iff.library',0 ENDM -IFFVERSION: EQU 22 ; Current library version +IFFVERSION: EQU 23 ; Current library version ***************************************************************************** @@ -88,12 +88,16 @@ ID_SHAM EQU 'SHAM' ID_8SVX EQU '8SVX' ID_ATAK EQU 'ATAK' + IFND ID_NAME ID_NAME EQU 'NAME' + ENDC ID_RLSE EQU 'RLSE' ID_VHDR EQU 'VHDR' -*************** LIBRARY OFFSETS ****************************************** +***************************************************************************** +** Library offsets (_LVOIFFL_...) are now in iff.lib. +** For compatibility, here are the old (pre-V21) ones: IFD IFFLIB_PRE21NAMES _LVOOpenIFF EQU -30 ; (filename) (A0) -- cgit v1.2.3