Title Menu Button Bug

NickHope wrote on 10/25/2012, 11:02 AM
I have discovered a bug with projects that contain submenus, for example projects with scene selection and subtitle selection menus below a top level "title menu". After accessing the submenus in the completed DVD, the "title menu" button on your player's remote does not take you to the title menu (the "top level" menu), but rather takes you to one of the submenus (and not always the last submenu that you accessed).

I have tested and verified this in DVDA 5.2, 5.0, 4.5 and 4.0, using my Sharp DV-SL8 DVD player and PowerDVD version 7.3. However in DVDA 3.0 the DVD works correctly i.e. The "Title menu" button will take you to the top level menu in the DVD. So it appears the bug was introduced at version 4. I have now rolled back to version 3 and just spent a day rebuilding a complex project, since my version 5 project was not backwards compatible beyond version 4.5. Incidentally I didn't miss any features introduced since version 3.

Here is a very simple project built in DVDA3 that demonstrates the problem. If you build a DVD from this project in DVDA3 then navigate to the scene selection menus and play some of the DVD, subsequent presses of your "title menu" button will correctly take you back to "Menu 1" (the top level menu). However if you build the DVD from subsequent versions of DVDA, you can't get back to "Menu 1" because the "title menu" button just incorrectly takes you to one of the "scene selection" menus.

It would be useful to get some verification of my findings from others.

Comments

Former user wrote on 10/25/2012, 12:28 PM
Nick,

i don't have the older versions to test this on.

But under Media Properties > Remote Buttons there is a setting to turn Top Menu off and on. Any chance that this is off in the later versions? Probably not because it defaults to ON, but I was just curious.

And you can also program the MENU button to take you to specific links.

Dave T2
musicvid10 wrote on 10/25/2012, 1:34 PM
I haven't noticed this in Arch Pro 5.0, but I will test some existing burns specifically to see if I can reproduce.
m
NickHope wrote on 10/25/2012, 2:36 PM
Thanks guys. In all my testing the remote buttons for my main video file were TOP MENU set to ON and MENU set to "Most recent menu".

Would be great to get corroboration.
videoITguy wrote on 10/25/2012, 2:55 PM
There is another facet to this issue. As I can recall back to the very early days of commecial DVD release (1996?maybe) there was a focus of manufacturing firmware for players and authoring software of DVD production to follow the confusing DVD specs close to the skin as they say. There was a focus on at that time to make "Title" menu - go to the root Title (of a possible authored DVD with many Titles).

It seems over the years that firmware loosened up considerably in its implementation of this and you do now get a variety of behaviors at the player level. This was also affecting software coded players - in fact look at very early versions of Microsoft Windows Media player on the earliest version of Windows98 and XP for comparison.
NickHope wrote on 10/25/2012, 5:07 PM
It's a good point, which is why I'm keen on some corroboration. Besides PowerDVD I only have 1 player to test on here, and it's a good few years old.
NickHope wrote on 10/26/2012, 10:32 AM
I verified this behaviour on a brand new Samsung DVD-D530K player that I bought today.
NickHope wrote on 10/31/2012, 12:12 PM
I received instructions on how to fix this using PcgEdit from r0lZ, the program's developer. EDIT: The method is slightly modified and more clearly explained in my next post further down this thread, so jump to that unless you really want all the background.

Brief instructions on how to use PcgEdit can be seen in my post of 10/27/2012 8:05:58 PM on this thread about a subtitle issue. Note that the instructions below refer to PcgEdit having had the Hex Bit Operands plugin installed from this page. After it's installed, choose "Options > Command Editor > Include [hex codes] in main listbox?".

I sent r0lZ the IFOs for my project (download here if you want... they are in the "PgcEdit_backup_DVDA5" folder), authored in DVDA5. The DVD has a first-play copyright notice, with all remote buttons disabled, then a top menu with 4 buttons (play, select scene, select subtitles, resume), plus 4 scene selection menus with 8 buttons each, plus a subtitle menu with 7 subtitle tracks. He took a look at the structure and sent me the following instructions. I followed them and the fix worked. Hopefully this fix will be easily adaptable to other projects authored in DVDA.

(and hopefully SCS might read this and implement a fix themselves!)
Nick

--------

It is relatively easy to find what's wrong and fix the problem.

[7A 00 00 03 00 01 00 00]   1  Set gprm(3) |=(or) 0x0001 (set bit 0)
[7A 00 00 01 00 04 00 00] 2 Set gprm(1) |=(or) 0x0004 (set bit 2)
[30 06 00 01 01 87 00 00] 3 (JumpSS) Jump to VTSM 1, Chapter menu (TTN 1)

The first command change the value of GPRM(3). It sets bit 0 (value 1) and doesn't change the other bits. As we will see later, it's the key to jump to a specific menu.

[71 00 00 03 00 01 00 00]   1  Set gprm(3) =(mov) 1
[71 00 00 01 00 04 00 00] 2 Set gprm(1) =(mov) 4

(You can copy the two lines above, select the line with "*** pre-commands" in the left pane, and click the "Paste After" button to insert them. Or click "Add After" two times to insert two NOP commands, and then double-click them to change the NOP commands to Set and modify their parameters with the Command Editor.)
Former user wrote on 10/31/2012, 9:20 PM
Cool iinformation, I wish I understood it better. thanks for the followup.

Dave T2
NickHope wrote on 11/5/2012, 3:44 AM
r0lZ kindly sent me a clearer method on how to apply this fix, without needing to understand it fully. I have tested it on a very simple DVD, and added some screenshots. Note that I have shown the method without the Hex Bit Operands plugin installed.

1. Take a backup of your DVD folder.
2. Install and open PcgEdit
3. File > Open DVD > Choose the parent folder of the DVD
4. You will probably get a prompt like the one in the first picture. Click "Yes to all".



5. Wait while PcgEdit does a bit of scanning for BOVs...
6.Click the PGC with the "TitleM" label in the left pane. It should be the second PGC in the list, with this label: "VMGM, LU 1 (en), 1 (dummy) TitleM".
7. In the right pane, there should be only one command:

1  (JumpSS) Jump to VMGM PGC 9

The number of the target PGC (9 here) might be different.



8. Click that target PGC in the left pane. (In this example, it's "VMGM, LU 1 (en), 9".)
(You can also Middle-click the Jump command to select automatically the right PGC and open it in the left pane.)



The target PGC should contain 3 commands, similar to this:

1  Set gprm(3) |=(or) 1
2 Set gprm(1) |=(or) 4
3 (JumpSS) Jump to VTSM 1, Chapter menu (TTN 1)

9. Select lines 1 and 2 (the two commands beginning with "Set GPRM(x)") with the mouse and click the "Copy" button (or type Control-C) to copy them to the clipboard.
10. Return to the "TitleM" PGC by clicking it in the left pane.
11. Now, highlight the very first line in the right pane (the line with "********** pre commands"), and click the "Paste After" button (or type Control-Shift-V) to paste the two Set commands before the Jump command.



12. Double-click the first Set command (line 1) to open the Command Editor.
13. You should see the label and buttons "Set GPRM [ 3 ] [ OR |= ] [*] value [ 1 ]"
Click the [ OR |= ] button and select "MOV =" in the drop-down menu.
14. Change the value "1" (or whatever that value is) to 0.



15. Click the OK button to close the Command Editor.
16. Now, double-click the second Set command (line 2), again to open the Command Editor.
17. Repeat steps 13 to 15 to change the command to "Set gprm(1) =(mov) 0".
18. Now, the TitleM PGC should contain:

1  Set gprm(3) =(mov) 0
2 Set gprm(1) =(mov) 0
3 (JumpSS) Jump to VMGM PGC 9




19. Save the DVD and test it. (You can also test it with the Trace mode of PgcEdit.)
20. Remember to delete the PgcEdit_backup folder(s) located in the VIDEO_TS folder before burning your DVD. (You can delete it (them) automatically with File -> Backups -> Delete Backup(s), but remember that a new backup might be created if you save the DVD again.)



21. [from Nick] If you have a menu button that turns off subtitles, it might not work as you wish, and the function can also be modified with PcgEdit. See this thread.
22. [from Nick] You may like to run run the "DVD > Remove Useless Stuff" macro one or more times. It can clean things up. But test thoroughly after doing this.



Quote from r0lZ:

Note that I have slightly modified the two commands that are inserted in the TitleM command, but the fix still works. The values are now forced to 0 instead of 1 and 4, because due to the two Set commands in VMGM PGC 9, the right values are set by the OR operation anyway, when the original values are 0. With this fix, it is not necessary to analyse the ChapterM PGC and the VTSM PGC 7 to deduce the right values.