home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Chip 2000 May
/
Chip_2000-05_cd1.bin
/
sharewar
/
FFE
/
GRAPH.SWG
/
0020_RIFF.pas
< prev
next >
Wrap
Pascal/Delphi Source File
|
1996-09-04
|
3KB
|
58 lines
--------f-RIFF------------------------------
The RIFF (Resource interchange file format) format was created by
Microsoft and is used by many applications like Windows, Corel Draw
etc.. It is block structured, each block has a header ID and a size, so
that even a program that works with an old version of the file format
can skip the unknown parts of the file and work on the known parts of
the file. All RIFF blocks begin on a word boundary so it might be
necessary to skip an additional byte. In the present specification, only
one RIFF block per file is allowed, and only the RIFF and LIST blocks
may contain subblocks.
The order of blocks in a RIFF file is not mandatory, so you should
always scan the whole file for the block ID you seek. Throughout this
file, the RIFF block IDs are given in square brackets []. Each ID is
always 4 characters dword.
OFFSET Count TYPE Description
0000h 4 char ID='RIFF'
Each RIFF format file has a header with the
signature and the size of the following
blocks.
0004h 1 dword Block size. This size is the size of the block
controlled by the RIFF header. Normally this
equals the file size.
="BSZ"
0008h 4 char Format name. This is the format name of the RIFF
file.
After this RIFF header comes the first RIFF record. Each RIFF record has the
following format :
OFFSET Count TYPE Description
0000h 4 char Signature. This is the description of what is
contained in this block.
0004h 1 dword Block size. This is the size of the following
data block. To get the offset of the next RIFF
block record, you have to add this value + 8 to
the offset of the current record.
---RiffBLOCK [LIST]
This block contains a string list, again in the RIFF subblock format.
This list is used for messages and/or copyright messages. All strings in
the LIST block share the same format, each block contains one ASCIIZ
string - the most common LIST block is the [INFO] block, which can
contain the following subblocks :
[INAM]
The name of the data stored in the file
[ICRD]
Creation date of the file
SEE ALSO:BMP,rDIB,IFF,WAVe,RIFX
OCCURENCES:PC
PROGRAMS:Windows,Corel Draw
REFERENCE:DDJ0994
VALIDATION:FileSize="BSZ"+8