[Search for users] [Overall Top Noters] [List of all Conferences] [Download this site]

Conference hydra::amiga_v1

Title:AMIGA NOTES
Notice:Join us in the *NEW* conference - HYDRA::AMIGA_V2
Moderator:HYDRA::MOORE
Created:Sat Apr 26 1986
Last Modified:Wed Feb 05 1992
Last Successful Update:Fri Jun 06 1997
Number of topics:5378
Total number of notes:38326

1826.0. "Help on IFF type ANHD needed" by RGB::SCOTT () Thu Oct 27 1988 12:06

  After much poking around, I've managed to decode ILBM BMHD files for non-HAM
encoded pictures, so that they can be displayed on a GPX. Now the next step
is to interpret the ANHD formats for some attempts at animation! But I need
some help; nothing I've run across explains this format in enough detail. The 
following is from the iffdump.h, which explains a little of it. 

typedef struct {                                                                
   UBYTE operation; /* =0 for set, =1 for XOR, =2 long dlta, =3 short dlta */   
   UBYTE mask;      /* mask,w,h,x,y used for XOR mode only */                   
   UWORD w,h;                                                                   
   WORD  x,y;                                                                   
   ULONG abstime; /* for timing w.r.t. start of anim file in jiffies - unused */
   ULONG reltime; /* for timing w.r.t. last frame in jiffies */                 
   UBYTE interleave; /* =0 for XORing to two frames back, =1 for last frame */  
   UBYTE pad[21]; /* reserved for Jim Kent for an op array and plane destinatio�
                     Actually Jims use will only be 16 bytes probably - other   
                     five are for general future use */                         
   } X_ANHD;                                                                    

Now a couple of ANHD headers

Dump of R_BARON.ANIM - first form after ILBM BMHD

44484E41 4D424C49 82020000 4D524F46 FORM....ILBMANHD 000050
00000000 00000000 0000FF03 28000000 ...(............ 000060
3CE72B00 7A1A017F 1A1B0100 00000000 ...........z.+�< 000070
41544C44 03000300 DA29027F BC09007F ...�..)�....DLTA 000080
1A010000 B2000000 20000000 46020000 ...F... ...�.... 000090
00000000 00000000 B4010000 74010000 ...t............ 0000A0
0200E8FF 00800700 0200F3F6 00000000 ....��.......�.. 0000B0
1800F7FF 1800F7FF 2409FFFF 0360FF3F ?.`....$.�...�.. 000140

  This appears to be type 3 - short delta. But where do the deltas go? It
looks like they are contained in the "padding" bytes, somehow...

Dump of JESSICA.ANI - first form after ILBM BMHD

 00004D52 4F460000 D900D900 D900D900 .�.�.�.�..FORM.. 000100
 004A2800 00004448 4E414D42 4C495407 .TILBMANHD...(J. 000110
 02000000 00000000 00000000 00000000 ................ 000120
 00000000 00000000 00000000 00000000 ................ 000130
 02001807 00004154 4C440000 00000000 ......DLTA...... 000140
 80103075 00200A0D 01000600 04000100 .......... .u0.. 000150
 30040000 803030C4 00A08050 304C0060 `.L0P...�00....0 000160

  This one is of unknown type - 4A. And nothing in the padding bytes.
Now you can see why I'm perplexed!
T.RTitleUserPersonal
Name
DateLines