I tried to make a DVD-Video of my favorite songs with a menu.
<vmgm>
<menus>
<video format="pal" aspect="4:3"/>
<audio lang="DE"/>
<subpicture lang="EN"/>
<!--************** MENU 1 **************-->
<pgc entry="title">
<button name="button01">g0=0;jump titleset 1 menu;</button>
<button name="button02">g0=0;jump titleset 5 menu;</button>
<button name="button03">g0=0;jump titleset 9 menu;</button>
<button name="button04">g0=0;jump titleset 13 menu;</button>
<vob file="/home/NTFS/DVD-VIDEO/tmp/dvd-tmp/menu0-0.mpg" pause="inf"/>
<pre>g2=101;if (g0 == 3) { g0 = 2; jump title 2; }if (g0 == 4) { g0 = 2; jump title 3; }if (g0 == 5) { g0 = 2; jump title 4; }if (g0 == 6) { g0 = 2; jump title 5; }if (g0 == 7) { g0 = 2; jump title 6; }if (g0 == 8) { g0 = 2; jump title 7; }if (g0 == 9) { g0 = 2; jump title 8; }if (g0 == 10) { g0 = 2; jump title 9; }if (g0 == 11) { g0 = 2; jump title 10; }if (g0 == 12) { g0 = 2; jump title 11; }if (g0 == 13) { g0 = 2; jump title 12; }if (g0 == 14) { g0 = 2; jump title 13; }if (g0 == 15) { g0 = 2; jump title 14; }if (g0 == 16) { g0 = 2; jump title 15; }if (g0 == 17) { g0 = 2; jump title 16; }</pre>
</pgc>
</menus>
</vmgm>
So, we have a list of 4 artists. Then we assign a menu of 4 songs to each artist in titleset. And one more song in this titleset.
<titleset>
<menus>
<video format="pal" aspect="4:3"/>
<audio lang="EN"/>
<subpicture lang="EN"/>
<!--************** MENU 1 **************-->
<pgc entry="root">
<button name="button01">g1=button;g0=2;jump title 1;</button>
<button name="button02">g1=button;g0=2;jump titleset 2 title 1;</button>
<button name="button03">g1=button;g0=2;jump titleset 3 title 1;</button>
<button name="button04">g1=button;g0=2;jump titleset 4 title 1;</button>
<button name="button00">g1=button;g0=0;jump vmgm menu 1;</button>
<vob file="/home/NTFS/DVD-VIDEO/tmp/dvd-tmp/menu1-0.mpg" pause="inf"/>
<pre>if (g2 & 0xFFF == 1 and g1 gt 0) button = g1; else button = 1024;if (g2 & 0x8000 !=0) {g2^=0x8000;if (g2==101) jump vmgm menu 1;}g2=1;</pre>
</pgc>
</menus>
<titles>
<video aspect="4:3"/>
<audio lang="EN"/>
<!--************** TITLE 1 **************-->
<pgc>
<vob file="/home/NTFS/DVD-VIDEO/tmp//dvd-cache/entry001.vob" chapters="0:00,0:30"/>
<post>if (g0 gt 1) { g0 = 3; call vmgm menu entry title; }</post>
</pgc>
</titles>
</titleset>
We place the remaining 3 artist's songs in separate sections below.
<titleset>
<menus>
<audio lang="EN"/>
<subpicture lang="EN"/>
<!--************** MENU 1 **************-->
<pgc entry="root">
<vob file="/usr/share/dvdstyler/data/empty_pal_ac3.mpg"/>
<pre>if (g2 & 0x8000 !=0) {g2^=0x8000;if (g2==101) jump vmgm menu 1;}g2=1;jump vmgm menu;</pre>
</pgc>
</menus>
<titles>
<video aspect="4:3"/>
<audio lang="EN"/>
<!--************** TITLE 1 **************-->
<pgc>
<vob file="/home/NTFS/DVD-VIDEO/tmp//dvd-cache/entry002.vob" chapters="0:00,0:30"/>
<post>if (g0 gt 1) { g0 = 4; call vmgm menu entry title; }</post>
</pgc>
</titles>
</titleset>
<titleset>
<menus>
<audio lang="EN"/>
<subpicture lang="EN"/>
<!--************** MENU 1 **************-->
<pgc entry="root">
<vob file="/usr/share/dvdstyler/data/empty_pal_ac3.mpg"/>
<pre>if (g2 & 0x8000 !=0) {g2^=0x8000;if (g2==101) jump vmgm menu 1;}g2=1;jump vmgm menu;</pre>
</pgc>
</menus>
<titles>
<video aspect="4:3"/>
<audio lang="EN"/>
<!--************** TITLE 1 **************-->
<pgc>
<vob file="/home/NTFS/DVD-VIDEO/tmp//dvd-cache/entry003.vob" chapters="0:00,0:30"/>
<post>if (g0 gt 1) { g0 = 5; call vmgm menu entry title; }</post>
</pgc>
</titles>
</titleset>
<titleset>
<menus>
<audio lang="EN"/>
<subpicture lang="EN"/>
<!--************** MENU 1 **************-->
<pgc entry="root">
<vob file="/usr/share/dvdstyler/data/empty_pal_ac3.mpg"/>
<pre>if (g2 & 0x8000 !=0) {g2^=0x8000;if (g2==101) jump vmgm menu 1;}g2=1;jump vmgm menu;</pre>
</pgc>
</menus>
<titles>
<video aspect="4:3"/>
<audio lang="EN"/>
<!--************** TITLE 1 **************-->
<pgc>
<vob file="/home/NTFS/DVD-VIDEO/tmp//dvd-cache/entry001.vob" chapters="0:00,0:30"/>
<post>if (g0 gt 1) { g0 = 6; call vmgm menu entry title; }g2|=0x8000; call menu entry root;</post>
</pgc>
</titles>
</titleset>
We repeat the same for the remaining 3 artists. So we have a DVD with 16 songs. After adding an artist with 4 songs, we get an error. The same error if we will add a song for each artist. DVD file structure ends on 16-th item.
VIDEO_TS.BUP
VIDEO_TS.IFO
VIDEO_TS.VOB
VTS_01_0.BUP
VTS_01_0.IFO
VTS_01_0.VOB
VTS_01_1.VOB
...
VTS_16_0.BUP
VTS_16_0.IFO
VTS_16_0.VOB
VTS_16_1.VOB
How to make it fit 99 items?