1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556 |
- Sln - 1 Initial version
- =======
- 2: Length of based image file path
- N: Based image file path UTF-8
- 4: Size of Block Byte
- 4: Number of Blocks | BlockSize * NumberOfBlocks Must equal to Based image
- N: Block index table
- N: Dynamic allocated data blocks
- Sln - 2 Reserved base image file path for flexible change [Not adopted]
- =======
- 65535-8: Fixed Based image file path UTF-8
- 4: Size of Block Byte
- 4: Number of Blocks | BlockSize * NumberOfBlocks Must equal to Based image
- N: Block index table
- N: Dynamic allocated data blocks
- Sln - 3 No based image just dynamic allocate
- =======
- 2: Zero value to indicate
- 4: Size of Block Byte
- 4: Number of Blocks
- N: Block index table
- N: Dynamic allocated data blocks
- Block index entry Rev.1 16 Bytes [Not adopted]
- =================
- 4: Flags
- Bit0: when allocated then set bit0 from 0 to 1
- Bit1-31: Resvered
- 8: Offset 64bit unsigned integer
- 4: Resvered, Checksum?
- Block index entry Rev.2 8 Bytes
- =======================
- 8: Compound bits
- Bit0~62: Offset of data block
- Bit63: Allocated flag
- Block index entry Rev.3 8 Bytes
- =======================
- 8: Compound bits
- Bit00~07: O O O O O O O O
- Bit08~15: O O O O O O O O
- Bit16~23: O O O O O O O O
- Bit24~39: O O O O O O O O
- Bit40~47: O O O O O O O O
- Bit48~56: S S S S S S S S
- Bit57~63: R R R R R R C A
- O: Offset of data block in file
- R: Reserved bits, not used yet
- S: If block data all same, the value
- C: Compacted, use with S
- A: Allocated flag
|