240 likes | 409 Views
The Tiff Image Specification. Big-Endian and Little-Endian. Big-Endian: most significant byte to least significant byte both for 16-bit and 32-bit integers. This is the “normal” way we write numbers out.
E N D
Big-Endian and Little-Endian • Big-Endian: most significant byte to least significant byte both for 16-bit and 32-bit integers. This is the “normal” way we write numbers out. • Little-Endian: least significant byte to most significant, again for both 16- and 32-bit integers.
Some Sample Code void SwapShortBytes(unsigned short int * twobytes) { unsigned char * tmp = (unsigned char *)twobytes; unsigned int i; i = tmp[1]; tmp[1] = tmp[0]; tmp[0] = i; return; }
pooh.tif Color Image. 239 x 184 pixels.
[501] seville & od -A x -t x1 pooh.tif | more 0000000 4d 4d 00 2a 00 00 00 08 00 11 00 fe 00 04 00 00 0000010 00 01 00 00 00 00 01 00 00 03 00 00 00 01 00 ef 0000020 00 00 01 01 00 03 00 00 00 01 00 b8 00 00 01 02 0000030 00 03 00 00 00 03 00 00 00 da 01 03 00 03 00 00 0000040 00 01 00 01 00 00 01 06 00 03 00 00 00 01 00 02 0000050 00 00 01 0e 00 02 00 00 00 10 00 00 00 e0 01 11 0000060 00 04 00 00 00 01 00 00 03 2e 01 15 00 03 00 00 0000070 00 01 00 03 00 00 01 16 00 03 00 00 00 01 00 b8 0000080 00 00 01 17 00 04 00 00 00 01 00 02 03 58 01 1a 0000090 00 05 00 00 00 01 00 00 00 f0 01 1b 00 05 00 00 00000a0 00 01 00 00 00 f8 01 1c 00 03 00 00 00 01 00 01 00000b0 00 00 01 28 00 03 00 00 00 01 00 02 00 00 86 49 00000c0 00 01 00 00 01 ea 00 00 01 00 83 bb 00 04 00 00 00000d0 00 11 00 00 02 ea 00 00 00 00 00 08 00 08 00 08
[501] seville & od -A x -t x1 pooh.tif | more 0000000 4d 4d 00 2a 00 00 00 08 00 11 00 fe 00 04 00 00 0000010 00 01 00 00 00 00 01 00 00 03 00 00 00 01 00 ef 0000020 00 00 01 01 00 03 00 00 00 01 00 b8 00 00 01 02 0000030 00 03 00 00 00 03 00 00 00 da 01 03 00 03 00 00 0000040 00 01 00 01 00 00 01 06 00 03 00 00 00 01 00 02 0000050 00 00 01 0e 00 02 00 00 00 10 00 00 00 e0 01 11 0000060 00 04 00 00 00 01 00 00 03 2e 01 15 00 03 00 00 0000070 00 01 00 03 00 00 01 16 00 03 00 00 00 01 00 b8 0000080 00 00 01 17 00 04 00 00 00 01 00 02 03 58 01 1a 0000090 00 05 00 00 00 01 00 00 00 f0 01 1b 00 05 00 00 00000a0 00 01 00 00 00 f8 01 1c 00 03 00 00 00 01 00 01 00000b0 00 00 01 28 00 03 00 00 00 01 00 02 00 00 86 49 00000c0 00 01 00 00 01 ea 00 00 01 00 83 bb 00 04 00 00 00000d0 00 11 00 00 02 ea 00 00 00 00 00 08 00 08 00 08 Big-Endian or Little-Endian 4d4d = Big 4949 = Little
[501] seville & od -A x -t x1 pooh.tif | more 0000000 4d 4d 00 2a 00 00 00 08 00 11 00 fe 00 04 00 00 0000010 00 01 00 00 00 00 01 00 00 03 00 00 00 01 00 ef 0000020 00 00 01 01 00 03 00 00 00 01 00 b8 00 00 01 02 0000030 00 03 00 00 00 03 00 00 00 da 01 03 00 03 00 00 0000040 00 01 00 01 00 00 01 06 00 03 00 00 00 01 00 02 0000050 00 00 01 0e 00 02 00 00 00 10 00 00 00 e0 01 11 0000060 00 04 00 00 00 01 00 00 03 2e 01 15 00 03 00 00 0000070 00 01 00 03 00 00 01 16 00 03 00 00 00 01 00 b8 0000080 00 00 01 17 00 04 00 00 00 01 00 02 03 58 01 1a 0000090 00 05 00 00 00 01 00 00 00 f0 01 1b 00 05 00 00 00000a0 00 01 00 00 00 f8 01 1c 00 03 00 00 00 01 00 01 00000b0 00 00 01 28 00 03 00 00 00 01 00 02 00 00 86 49 00000c0 00 01 00 00 01 ea 00 00 01 00 83 bb 00 04 00 00 00000d0 00 11 00 00 02 ea 00 00 00 00 00 08 00 08 00 08 Magic Number = 42 (0x2a)
[501] seville & od -A x -t x1 pooh.tif | more 0000000 4d 4d 00 2a 00 00 00 08 00 11 00 fe 00 04 00 00 0000010 00 01 00 00 00 00 01 00 00 03 00 00 00 01 00 ef 0000020 00 00 01 01 00 03 00 00 00 01 00 b8 00 00 01 02 0000030 00 03 00 00 00 03 00 00 00 da 01 03 00 03 00 00 0000040 00 01 00 01 00 00 01 06 00 03 00 00 00 01 00 02 0000050 00 00 01 0e 00 02 00 00 00 10 00 00 00 e0 01 11 0000060 00 04 00 00 00 01 00 00 03 2e 01 15 00 03 00 00 0000070 00 01 00 03 00 00 01 16 00 03 00 00 00 01 00 b8 0000080 00 00 01 17 00 04 00 00 00 01 00 02 03 58 01 1a 0000090 00 05 00 00 00 01 00 00 00 f0 01 1b 00 05 00 00 00000a0 00 01 00 00 00 f8 01 1c 00 03 00 00 00 01 00 01 00000b0 00 00 01 28 00 03 00 00 00 01 00 02 00 00 86 49 00000c0 00 01 00 00 01 ea 00 00 01 00 83 bb 00 04 00 00 00000d0 00 11 00 00 02 ea 00 00 00 00 00 08 00 08 00 08 Address of the Image File Directory (IFD). Must begin on a WORD boundary
[501] seville & od -A x -t x1 pooh.tif | more 0000000 4d 4d 00 2a 00 00 00 08 00 11 00 fe 00 04 00 00 0000010 00 01 00 00 00 00 01 00 00 03 00 00 00 01 00 ef 0000020 00 00 01 01 00 03 00 00 00 01 00 b8 00 00 01 02 0000030 00 03 00 00 00 03 00 00 00 da 01 03 00 03 00 00 0000040 00 01 00 01 00 00 01 06 00 03 00 00 00 01 00 02 0000050 00 00 01 0e 00 02 00 00 00 10 00 00 00 e0 01 11 0000060 00 04 00 00 00 01 00 00 03 2e 01 15 00 03 00 00 0000070 00 01 00 03 00 00 01 16 00 03 00 00 00 01 00 b8 0000080 00 00 01 17 00 04 00 00 00 01 00 02 03 58 01 1a 0000090 00 05 00 00 00 01 00 00 00 f0 01 1b 00 05 00 00 00000a0 00 01 00 00 00 f8 01 1c 00 03 00 00 00 01 00 01 00000b0 00 00 01 28 00 03 00 00 00 01 00 02 00 00 86 49 00000c0 00 01 00 00 01 ea 00 00 01 00 83 bb 00 04 00 00 00000d0 00 11 00 00 02 ea 00 00 00 00 00 08 00 08 00 08 Address of the Image File Directory (IFD). Must begin on a WORD boundary
[501] seville & od -A x -t x1 pooh.tif | more 0000000 4d 4d 00 2a 00 00 00 08 00 11 00 fe 00 04 00 00 0000010 00 01 00 00 00 00 01 00 00 03 00 00 00 01 00 ef 0000020 00 00 01 01 00 03 00 00 00 01 00 b8 00 00 01 02 0000030 00 03 00 00 00 03 00 00 00 da 01 03 00 03 00 00 0000040 00 01 00 01 00 00 01 06 00 03 00 00 00 01 00 02 0000050 00 00 01 0e 00 02 00 00 00 10 00 00 00 e0 01 11 0000060 00 04 00 00 00 01 00 00 03 2e 01 15 00 03 00 00 0000070 00 01 00 03 00 00 01 16 00 03 00 00 00 01 00 b8 0000080 00 00 01 17 00 04 00 00 00 01 00 02 03 58 01 1a 0000090 00 05 00 00 00 01 00 00 00 f0 01 1b 00 05 00 00 00000a0 00 01 00 00 00 f8 01 1c 00 03 00 00 00 01 00 01 00000b0 00 00 01 28 00 03 00 00 00 01 00 02 00 00 86 49 00000c0 00 01 00 00 01 ea 00 00 01 00 83 bb 00 04 00 00 00000d0 00 11 00 00 02 ea 00 00 00 00 00 08 00 08 00 08 IFD – all data pertaining to the characteristics of the image.
[502] seville & od -A x -t x1 -j 0x8 pooh.tif | more 0000000 00 11 00 fe 00 04 00 00 00 01 00 00 00 00 01 00 0000010 00 03 00 00 00 01 00 ef 00 00 01 01 00 03 00 00 0000020 00 01 00 b8 00 00 01 02 00 03 00 00 00 03 00 00 0000030 00 da 01 03 00 03 00 00 00 01 00 01 00 00 01 06 0000040 00 03 00 00 00 01 00 02 00 00 01 0e 00 02 00 00 0000050 00 10 00 00 00 e0 01 11 00 04 00 00 00 01 00 00 0000060 03 2e 01 15 00 03 00 00 00 01 00 03 00 00 01 16 0000070 00 03 00 00 00 01 00 b8 00 00 01 17 00 04 00 00 0000080 00 01 00 02 03 58 01 1a 00 05 00 00 00 01 00 00 0000090 00 f0 01 1b 00 05 00 00 00 01 00 00 00 f8 01 1c 00000a0 00 03 00 00 00 01 00 01 00 00 01 28 00 03 00 00 00000b0 00 01 00 02 00 00 86 49 00 01 00 00 01 ea 00 00 00000c0 01 00 83 bb 00 04 00 00 00 11 00 00 02 ea 00 00 00000d0 00 00 00 08 00 08 00 08 50 6f 6f 68 20 61 6e 64 First two bytes: the count, that is, the number of entries in the IFD. Entries are sorted by TAG, in ascending numerical order.
[502] seville & od -A x -t x1 -j 0x8 pooh.tif | more 0000000 00 11 00 fe 00 04 00 00 00 01 00 00 00 00 01 00 0000010 00 03 00 00 00 01 00 ef 00 00 01 01 00 03 00 00 0000020 00 01 00 b8 00 00 01 02 00 03 00 00 00 03 00 00 0000030 00 da 01 03 00 03 00 00 00 01 00 01 00 00 01 06 0000040 00 03 00 00 00 01 00 02 00 00 01 0e 00 02 00 00 0000050 00 10 00 00 00 e0 01 11 00 04 00 00 00 01 00 00 0000060 03 2e 01 15 00 03 00 00 00 01 00 03 00 00 01 16 0000070 00 03 00 00 00 01 00 b8 00 00 01 17 00 04 00 00 0000080 00 01 00 02 03 58 01 1a 00 05 00 00 00 01 00 00 0000090 00 f0 01 1b 00 05 00 00 00 01 00 00 00 f8 01 1c 00000a0 00 03 00 00 00 01 00 01 00 00 01 28 00 03 00 00 00000b0 00 01 00 02 00 00 86 49 00 01 00 00 01 ea 00 00 00000c0 01 00 83 bb 00 04 00 00 00 11 00 00 02 ea 00 00 00000d0 00 00 00 08 00 08 00 08 50 6f 6f 68 20 61 6e 64 Next, the IFD Entries. Each is 12 Bytes long.
Next, the IFD Entries. Each is 12 Bytes long. Bytes 0-1: The TAG that Identifies the field. [502] seville & od -A x -t x1 -j 0x8 pooh.tif | more 0000000 00 11 00 fe 00 04 00 00 00 01 00 00 00 00 01 00 0000010 00 03 00 00 00 01 00 ef 00 00 01 01 00 03 00 00 0000020 00 01 00 b8 00 00 01 02 00 03 00 00 00 03 00 00 0000030 00 da 01 03 00 03 00 00 00 01 00 01 00 00 01 06 0000040 00 03 00 00 00 01 00 02 00 00 01 0e 00 02 00 00 0000050 00 10 00 00 00 e0 01 11 00 04 00 00 00 01 00 00 0000060 03 2e 01 15 00 03 00 00 00 01 00 03 00 00 01 16 0000070 00 03 00 00 00 01 00 b8 00 00 01 17 00 04 00 00 0000080 00 01 00 02 03 58 01 1a 00 05 00 00 00 01 00 00 0000090 00 f0 01 1b 00 05 00 00 00 01 00 00 00 f8 01 1c 00000a0 00 03 00 00 00 01 00 01 00 00 01 28 00 03 00 00 00000b0 00 01 00 02 00 00 86 49 00 01 00 00 01 ea 00 00 00000c0 01 00 83 bb 00 04 00 00 00 11 00 00 02 ea 00 00 00000d0 00 00 00 08 00 08 00 08 50 6f 6f 68 20 61 6e 64
Next, the IFD Entries. Each is 12 Bytes long. Bytes 0-1: The TAG that Identifies the field. Bytes 2-3: The Type of the field. [502] seville & od -A x -t x1 -j 0x8 pooh.tif | more 0000000 00 11 00 fe 00 04 00 00 00 01 00 00 00 00 01 00 0000010 00 03 00 00 00 01 00 ef 00 00 01 01 00 03 00 00 0000020 00 01 00 b8 00 00 01 02 00 03 00 00 00 03 00 00 0000030 00 da 01 03 00 03 00 00 00 01 00 01 00 00 01 06 0000040 00 03 00 00 00 01 00 02 00 00 01 0e 00 02 00 00 0000050 00 10 00 00 00 e0 01 11 00 04 00 00 00 01 00 00 0000060 03 2e 01 15 00 03 00 00 00 01 00 03 00 00 01 16 0000070 00 03 00 00 00 01 00 b8 00 00 01 17 00 04 00 00 0000080 00 01 00 02 03 58 01 1a 00 05 00 00 00 01 00 00 0000090 00 f0 01 1b 00 05 00 00 00 01 00 00 00 f8 01 1c 00000a0 00 03 00 00 00 01 00 01 00 00 01 28 00 03 00 00 00000b0 00 01 00 02 00 00 86 49 00 01 00 00 01 ea 00 00 00000c0 01 00 83 bb 00 04 00 00 00 11 00 00 02 ea 00 00 00000d0 00 00 00 08 00 08 00 08 50 6f 6f 68 20 61 6e 64 Types: 1 = Byte (8 bit) 2 = Ascii (8 bit) 3 = Short (2 byte) 4 = Long (4 byte) 5 = Rational (2 Longs)
Next, the IFD Entries. Each is 12 Bytes long. Bytes 0-1: The TAG that Identifies the field. Bytes 2-3: The Type of the field. Bytes 4-7: The Count (no. of values) [502] seville & od -A x -t x1 -j 0x8 pooh.tif | more 0000000 00 11 00 fe 00 04 00 00 00 01 00 00 00 00 01 00 0000010 00 03 00 00 00 01 00 ef 00 00 01 01 00 03 00 00 0000020 00 01 00 b8 00 00 01 02 00 03 00 00 00 03 00 00 0000030 00 da 01 03 00 03 00 00 00 01 00 01 00 00 01 06 0000040 00 03 00 00 00 01 00 02 00 00 01 0e 00 02 00 00 0000050 00 10 00 00 00 e0 01 11 00 04 00 00 00 01 00 00 0000060 03 2e 01 15 00 03 00 00 00 01 00 03 00 00 01 16 0000070 00 03 00 00 00 01 00 b8 00 00 01 17 00 04 00 00 0000080 00 01 00 02 03 58 01 1a 00 05 00 00 00 01 00 00 0000090 00 f0 01 1b 00 05 00 00 00 01 00 00 00 f8 01 1c 00000a0 00 03 00 00 00 01 00 01 00 00 01 28 00 03 00 00 00000b0 00 01 00 02 00 00 86 49 00 01 00 00 01 ea 00 00 00000c0 01 00 83 bb 00 04 00 00 00 11 00 00 02 ea 00 00 00000d0 00 00 00 08 00 08 00 08 50 6f 6f 68 20 61 6e 64 Types: 1 = Byte (8 bit) 2 = Ascii (8 bit) 3 = Short (2 byte) 4 = Long (4 byte) 5 = Rational (2 Longs)
[502] seville & od -A x -t x1 -j 0x8 pooh.tif | more 0000000 00 11 00 fe 00 04 00 00 00 01 00 00 00 00 01 00 0000010 00 03 00 00 00 01 00 ef 00 00 01 01 00 03 00 00 0000020 00 01 00 b8 00 00 01 02 00 03 00 00 00 03 00 00 0000030 00 da 01 03 00 03 00 00 00 01 00 01 00 00 01 06 0000040 00 03 00 00 00 01 00 02 00 00 01 0e 00 02 00 00 0000050 00 10 00 00 00 e0 01 11 00 04 00 00 00 01 00 00 0000060 03 2e 01 15 00 03 00 00 00 01 00 03 00 00 01 16 0000070 00 03 00 00 00 01 00 b8 00 00 01 17 00 04 00 00 0000080 00 01 00 02 03 58 01 1a 00 05 00 00 00 01 00 00 0000090 00 f0 01 1b 00 05 00 00 00 01 00 00 00 f8 01 1c 00000a0 00 03 00 00 00 01 00 01 00 00 01 28 00 03 00 00 00000b0 00 01 00 02 00 00 86 49 00 01 00 00 01 ea 00 00 00000c0 01 00 83 bb 00 04 00 00 00 11 00 00 02 ea 00 00 00000d0 00 00 00 08 00 08 00 08 50 6f 6f 68 20 61 6e 64 Bytes 8-11: the Value Offset. The offset in bytes of the value for the field. Must begin on a word boundary. Can point anywhere in the file.
[502] seville & od -A x -t x1 -j 0x8 pooh.tif | more 0000000 00 11 00 fe 00 04 00 00 00 01 00 00 00 00 01 00 0000010 00 03 00 00 00 01 00 ef 00 00 01 01 00 03 00 00 0000020 00 01 00 b8 00 00 01 02 00 03 00 00 00 03 00 00 0000030 00 da 01 03 00 03 00 00 00 01 00 01 00 00 01 06 0000040 00 03 00 00 00 01 00 02 00 00 01 0e 00 02 00 00 0000050 00 10 00 00 00 e0 01 11 00 04 00 00 00 01 00 00 0000060 03 2e 01 15 00 03 00 00 00 01 00 03 00 00 01 16 0000070 00 03 00 00 00 01 00 b8 00 00 01 17 00 04 00 00 0000080 00 01 00 02 03 58 01 1a 00 05 00 00 00 01 00 00 0000090 00 f0 01 1b 00 05 00 00 00 01 00 00 00 f8 01 1c 00000a0 00 03 00 00 00 01 00 01 00 00 01 28 00 03 00 00 00000b0 00 01 00 02 00 00 86 49 00 01 00 00 01 ea 00 00 00000c0 01 00 83 bb 00 04 00 00 00 11 00 00 02 ea 00 00 00000d0 00 00 00 08 00 08 00 08 50 6f 6f 68 20 61 6e 64 Bytes 8-11: the Value Offset. The offset in bytes of the value for the field. Must begin on a word boundary. Can point anywhere in the file. If the Value fits into 4 bytes (i.e. is 1 byte and has count les than 5, is a short and has count less than 2, or is one long, etc.) THEN the Value will be stored in bytes 8-11, and will be left justified.
[502] seville & od -A x -t x1 -j 0x8 pooh.tif | more 0000000 00 11 00 fe 00 04 00 00 00 01 00 00 00 00 01 00 0000010 00 03 00 00 00 01 00 ef 00 00 01 01 00 03 00 00 0000020 00 01 00 b8 00 00 01 02 00 03 00 00 00 03 00 00 0000030 00 da 01 03 00 03 00 00 00 01 00 01 00 00 01 06 0000040 00 03 00 00 00 01 00 02 00 00 01 0e 00 02 00 00 0000050 00 10 00 00 00 e0 01 11 00 04 00 00 00 01 00 00 0000060 03 2e 01 15 00 03 00 00 00 01 00 03 00 00 01 16 0000070 00 03 00 00 00 01 00 b8 00 00 01 17 00 04 00 00 0000080 00 01 00 02 03 58 01 1a 00 05 00 00 00 01 00 00 0000090 00 f0 01 1b 00 05 00 00 00 01 00 00 00 f8 01 1c 00000a0 00 03 00 00 00 01 00 01 00 00 01 28 00 03 00 00 00000b0 00 01 00 02 00 00 86 49 00 01 00 00 01 ea 00 00 00000c0 01 00 83 bb 00 04 00 00 00 11 00 00 02 ea 00 00 00000d0 00 00 00 08 00 08 00 08 50 6f 6f 68 20 61 6e 64 ImageWidth
[502] seville & od -A x -t x1 -j 0x8 pooh.tif | more 0000000 00 11 00 fe 00 04 00 00 00 01 00 00 00 00 01 00 0000010 00 03 00 00 00 01 00 ef 00 00 01 01 00 03 00 00 0000020 00 01 00 b8 00 00 01 02 00 03 00 00 00 03 00 00 0000030 00 da 01 03 00 03 00 00 00 01 00 01 00 00 01 06 0000040 00 03 00 00 00 01 00 02 00 00 01 0e 00 02 00 00 0000050 00 10 00 00 00 e0 01 11 00 04 00 00 00 01 00 00 0000060 03 2e 01 15 00 03 00 00 00 01 00 03 00 00 01 16 0000070 00 03 00 00 00 01 00 b8 00 00 01 17 00 04 00 00 0000080 00 01 00 02 03 58 01 1a 00 05 00 00 00 01 00 00 0000090 00 f0 01 1b 00 05 00 00 00 01 00 00 00 f8 01 1c 00000a0 00 03 00 00 00 01 00 01 00 00 01 28 00 03 00 00 00000b0 00 01 00 02 00 00 86 49 00 01 00 00 01 ea 00 00 00000c0 01 00 83 bb 00 04 00 00 00 11 00 00 02 ea 00 00 00000d0 00 00 00 08 00 08 00 08 50 6f 6f 68 20 61 6e 64 ImageLength
[502] seville & od -A x -t x1 -j 0x8 pooh.tif | more 0000000 00 11 00 fe 00 04 00 00 00 01 00 00 00 00 01 00 0000010 00 03 00 00 00 01 00 ef 00 00 01 01 00 03 00 00 0000020 00 01 00 b8 00 00 01 02 00 03 00 00 00 03 00 00 0000030 00 da 01 03 00 03 00 00 00 01 00 01 00 00 01 06 0000040 00 03 00 00 00 01 00 02 00 00 01 0e 00 02 00 00 BitsPerSample [503] seville & od -A x -t x1 -j 0xda pooh.tif | more 0000000 00 08 00 08 00 08 50 6f 6f 68 20 61 6e 64 20 54 0000010 69 67 67 65 72 00 00 0a fc 80 00 00 27 10 00 0a
Tiff Image Data Organized into strips. Three fields govern this: RowsPerStrip, StripOffsets, and StripBytecounts. Strips per Image =
Tiff Image Data Each strip contains a number of rows of image data. Putting them all together gives you the image data for the image. RowPerStrip = How many rows for each strip StripOffsets = The location of each of the strips StripByteCounts = The number of bytes in each strip
[502] seville & od -A x -t x1 -j 0x8 pooh.tif | more 0000000 00 11 00 fe 00 04 00 00 00 01 00 00 00 00 01 00 0000010 00 03 00 00 00 01 00 ef 00 00 01 01 00 03 00 00 0000020 00 01 00 b8 00 00 01 02 00 03 00 00 00 03 00 00 0000030 00 da 01 03 00 03 00 00 00 01 00 01 00 00 01 06 0000040 00 03 00 00 00 01 00 02 00 00 01 0e 00 02 00 00 0000050 00 10 00 00 00 e0 01 11 00 04 00 00 00 01 00 00 0000060 03 2e 01 15 00 03 00 00 00 01 00 03 00 00 01 16 0000070 00 03 00 00 00 01 00 b8 00 00 01 17 00 04 00 00 0000080 00 01 00 02 03 58 01 1a 00 05 00 00 00 01 00 00 [504] seville & od -A x -t x1 -j 0x32e pooh.tif | more 0000000 bb aa ee bb aa ee bb aa ee bb aa ee bb aa ee bb 0000010 aa ee bb aa ee bb aa ee bb aa ee bb aa ee bb aa 0000020 ee bb aa ee bb aa ee bb aa ee bb aa ee bb aa ee 0000030 bb aa ee bb aa ee bb aa ee bb aa ee bb aa ee bb
[507] seville & od -A x -t x1 play2.tif | more 0000000 49 49 2a 00 08 00 04 00 61 3f a8 a3 8a 10 4b 0c 0000010 46 37 0a 16 16 0a 08 0a 08 08 16 9f 9f 9f 9f 9f 0000020 9f 14 58 9e 9e 9e 99 9f 9f 9f 86 9f 9f 9f 9f 9f Little Endian [509] seville & od -A x -t x1 -j 0x40008 play2.tif 0000000 0b 00 00 01 03 00 01 00 00 00 00 02 00 00 01 01 0000010 03 00 01 00 00 00 00 02 00 00 02 01 03 00 01 00 0000020 00 00 08 00 00 00 03 01 03 00 01 00 00 00 01 00 0000030 00 00 06 01 03 00 01 00 00 00 01 00 00 00 11 01 0000040 04 00 20 00 00 00 92 00 04 00 12 01 03 00 01 00 0000050 00 00 01 00 00 00 15 01 03 00 01 00 00 00 01 00 0000060 00 00 16 01 03 00 01 00 00 00 10 00 00 00 17 01 0000070 04 00 20 00 00 00 12 01 04 00 1c 01 03 00 01 00 0000080 00 00 01 00 00 00 00 00 00 00 08 00 00 00 08 20