Path: utzoo!attcan!uunet!cs.utexas.edu!sun-barr!apple!usc!pollux.usc.edu!addison From: addison@pollux.usc.edu (Richard Addison) Newsgroups: comp.sys.amiga.tech Subject: Re: DeluxePaint III and IFF Summary: Odd has been allowed as long as I remember... Keywords: IFF DPIII Message-ID: <17962@usc.edu> Date: 20 Jun 89 07:29:04 GMT References: <1419@dover.sps.mot.com> <110824@sun.Eng.Sun.COM> <10102@polya.Stanford.EDU> Sender: news@usc.edu Reply-To: addison@pollux.usc.edu (Richard Addison) Distribution: na Organization: University of Southern California, Los Angeles, CA Lines: 50 In article <10102@polya.Stanford.EDU> rokicki@polya.Stanford.EDU (Tomas G. Rokicki) writes: >> The problem that you are seeing is the new format of Dpaint >> III images. In all of the older IFF files that I was able to take a >> look at, all of the chunks (ILBM CAMG BODY etc..) were of an even >> size. EA decided in it's infinite wisdom, and to my chargin, to allow >> chunks of odd sizes. This screwed up my primitive IFF parsing so that >> iff2sun would probably only work half of the time (yech). > >No! Someone tell me this isn't true. First, someone verify that >Dpaint III does generate BROKEN IFF files in this manner. Second, >where and when was the standard `revised'? I think this is a bug in >Dpaint III if they are really doing this, and I will be seriously >pissed if they've made this change . . . > >-tom Well, since I have multitasking... The third IFF ILBM file I looked at (created by Dpaint III) has an odd length for the BODY length. But wait! (shuffle, shlaaack, ca-chung) Let us see what the Amiga ROM Kernel Reference Manual (Includes & AutoDocs) Version 1.3 has to say: "Fine points: ... * Every odd-length chunk must be followed by a 0 pad byte. This pad byte is not counted in dataSize." Right there on page I-2. Let me check (Floop, grrr, scrinch, ffffwwwaap) what the Amiga ROM Kernel Reference Manual (Exec) Version 1.1 said: "If ckData is an odd number of bytes long, a 0 pad byte follows, which is not included in ckSize. (See 'Alignment.')" Right there on the top of the second column on page B-33. Now clearly, it is much easier to locate this info in the new manual. (Thanks, Commodore!) Plus, it's a great work-out! (-; Now, for the real test. Yup, there is a pad byte at the end of that odd length BODY chunk. (Hmm, "BODY by IFF" Naaah.) Disclaimer: I have no association with Electronic Arts (except as an owner of some of their programs), with Commodore (except as an owner of some of their hardware and software), or with Addison Wesley (except, incidentally, sharing a name). In fact, I wouldn't usually defend EA because of some of the problems I've had with their software. But, well.... Richard Addison "Yeah, I'm a prog..., er, uh, a publisher. Yeah, that's the ticket!"