TT_SRPT
This table contains pointers to all the titles on the disk, and is indexed by
VMG_TTN (title number within VMG)
| offset | 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 |
| 0 | number of titles | reserved | end address (last byte of last entry) |
| 8... | 12-byte entries |
each entry
| Offset | size | Contents |
| 0 | 1 | title type - see below |
| 1 | 1 | number of angles |
| 2 | 2 | number of chapters (PTTs) |
| 4 | 2 | parental management mask |
| 6 | 1 | Video Title Set number, VTSN |
| 7 | 1 | title number within VTS, VTS_TTN |
| 8 | 4 | start sector for VTS, referenced to whole disk (video_ts.ifo starts at sector 00000000) |
breakdown of Title Type
| 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
| reserved | 0=one_sequential_pgc 1=not one_sequential (random, shuffle, stills, loops, or more than one pgc) |
Jump/Link/Call commands 0000 None 0001 invalid 0011 only in button
0101 only in pre/post 0111 in button and pre/post 1001 only in cell
1011 in cell and button 1101 in cell and pre/post 1111 in all places |
Uop1 PTT play or search | Uop0 Time play or search |
| cell | pre/post | button | exist |
|
VMGM_PGCI_UT
The VMGM_PGCI_UT contains a number of tables forming a heirarchy. Most entries are 8 bytes long.
|   VMGM_PGCI_UT   |
|   | VMGM_LU |   |
|   |   | VMGM_PGC |   |   |
|   | : |   |
|   |   | VMGM_PGC |   |   |
| : |
|   | VMGM_LU |   |
|   |   | VMGM_PGC |   |   |
|   | : |   |
|   |   | VMGM_PGC |   |   |
At the top is the VMGM_PGCI_UT which lists all the Language Units.
| offset | 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 |
| 0 | number of Language Units | reserved | end address (last byte of last PGC in last LU) relative to VMGM_PGCI_UT |
| 8 | ISO639 language code | reserved for language code extension | Menu existence flag 80 = title |
offset to VMGM_LU, relative to VMGM_PGCI_UT |
| 10 ... | possible additional entries |
Next, the VMGM_LU which lists all the Program Chains.
| offset | 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 |
| 0 | number of Program Chains | reserved | end address (last byte of last PGC in this LU) relative to VMGM_LU |
| 8 | PGC category, see below | offset to VMGM_PGC, relative to VMGM_LU |
| 10 ... | possible additional entries |
breakdown of the PGC category
| byte | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
| 0 | 1=entry PGC | reserved | menu type (entry only) 2 = title |
| 1 |   |
| 2 | parental management mask |
| 3 | parental management mask |
On to PGC description
|
VMG_PTL_MAIT
This table contains 16-bit masks for each title set in each of 8 parental levels, for each
country code.
| VMG_PTL_MAIT |
|   | PTL_MAIT |   |
|   | : |   |
|   | PTL_MAIT |   |
|
|
VMG_PTL_MAIT
| offset | 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 |
| 0 | number of countries | number of title sets (Nts) | end address (last byte of last PTL_MAIT) |
| 8 | country code |   | offset to PTL_MAIT |   |
| 10 ... | possible additional entries |
|
The VMG_PTL_MAIT is searched by country, and points to the table for each country. |
PTL_MAIT
| offset | contents |
| 0 | Nts+1 16-bit masks (VMG + all title sets) for level 8 |
| 2*(Nts+1) | Nts+1 16-bit masks (VMG + all title sets) for level 7 |
| 4*(Nts+1) | Nts+1 16-bit masks (VMG + all title sets) for level 6 |
| 6*(Nts+1) | Nts+1 16-bit masks (VMG + all title sets) for level 5 |
| 8*(Nts+1) | Nts+1 16-bit masks (VMG + all title sets) for level 4 |
| 10*(Nts+1) | Nts+1 16-bit masks (VMG + all title sets) for level 3 |
| 12*(Nts+1) | Nts+1 16-bit masks (VMG + all title sets) for level 2 |
| 14*(Nts+1) | Nts+1 16-bit masks (VMG + all title sets) for level 1 |
|
The PTL_MAIT contains the 16-bit masks for the VMG and all title sets for parental management
level 8 followed by the masks for level 7, and so on to level 1. |
|
VMG_VTS_ATRT
This table contains copies of the menu and title attributes of all title sets.
| VMG_VTS_ATRT |
|   | VTS_ATRT |   |
|   | : |   |
|   | VTS_ATRT |   |
VMG_VTS_ATRT
| offset | 0 | 1 | 2 | 3 |
| 0 | number of title sets |   |
| 4 | end address (last byte of last VTS_ATRT) |
| 8 | offset to VTS_ATRT 1 |
| C ... | possible additional entries |
VTS_ATRT
| offset | size | contents |
| 0 | 4 | end address (EA) |
| 4 | 4 | VTS_CAT (copy of offset 022-025 of the VTS IFO file)   0=unspecified, 1=Karaoke |
| 8 | EA-7 | copy of VTS attributes (offset 100 and on from the VTS IFO file, usually 0x300 bytes long) |
|