Data is devided by truncks. Two kinds of truncks are observed - descriptive and data.
Descriptive trunck
- always 0x100 long.
- aligned to 0x1000000 address boundary (16K)
- file name is from 0x0
- file length is at 0xFC, uint32, big endian
Data trunck
- located just after corresponding descriptive trunck
- zero padding to 16K boundary, for the next descriptive trunck
Take E1A0.PAK as an example. It has 3 files.
- e1A0.scx, descriptor from 0x0 to 0xFF, data from 0x100 to 0x68F
- e1A0_00.BED, descriptor from 0x6C0 to 0x7BF, data from 0x7C0 to 0x273F
- e1A0_99.BED, descriptor from 0x2740 to 0x283F, data from 0x2840 to 0xA1BF