VM navigation error

Collapse
X
 
  • Time
  • Show
Clear All
new posts
  • VRYK
    Super Member
    Super Member
    • Jan 2009
    • 226

    VM navigation error

    I wish to insert the following two lines into a video’s VTS Menu Domain:
    [00 B1 00 07 00 01 00 44]
    [30 06 00 02 00 C0 00 00]

    This results in an error message:
    [00 B1 00 07 00 01 00 85] 66 if ( gprm(7) != 1 ) then { Goto line <ILLEGAL VALUE 133> }
    [30 06 00 02 00 C0 00 00] 67 (JumpSS) Jump to VMGM PGC 2

    I don’t understand why PgcEdit is changing the line number to hex. 85.
  • VRYK
    Super Member
    Super Member
    • Jan 2009
    • 226

    #2
    I managed to solve the problem, though I’m still uncertain about it. With Options→Command Editor→Auto renumber GOTOs when commands added/removed? turned off, I had successfully sdded lines to the VTS’s Root Menu, and then Ctrl+ to reset the GOTOs. I tried the same in PGC 22 which is where the numbering problem arose. I found that an earlier GOTO line provided for jumping over my inserted lines, and it would seem that PgcEdit was adding this line number to the number I was seeking to jump to. Hence, I inserted my two lines before this GOTO line and turned on the Auto renumber function. However, the same problem remained. Finally, I turned the Auto renumber function off again and my inserts were accepted. The DVD is now working fine. I am puzzled that I didn’t need to press Ctrl+ - but maybe the setting only changes when PgcEdit is restarted.
    Incidentally, it seems to me that one cannot link from a PGC to the same VTS’s Root Menu – that one has to navigate via the Video Manager.

    Comment

    • r0lZ
      Lord of Digital Video
      Lord of Digital Video
      • Mar 2004
      • 1508

      #3
      When the option is turned on, and you copy some commands to the clipboard, PgcEdit subtracts the line number of the first line copied (plus 1) from all GOTO targets. For example, if you copy line 11 and 12 and line 11 contains a GoTo line 12, the GoTo will be converted to GoTo line 2. So, in the clipboard, the GoTo will still jump to its target, the second command.
      Similarly, when the clipboard content is pasted, PgcEdit adds the current line number (at the insertion point) to the GoTo target, and therefore restores the correct line number, according to the insertion point. For example, pasting after line 20 will produce lines 21 and 22, with the GoTo pointing now to line 22.

      The method works usually fine when the target line is included in the clipboard. But when it's not the case, PgcEdit cannot ensure that the target is what you really want. The target may even be absent. However, the same method is used, and I agree that that can be confusing, but IMO it is usually preferable to keep the same amount of lines between the GoTo and its target.

      If you turn the auto-renumber feature off, PgcEdit should not modify the lines number during the copy and the paste operation. The GoTo will point to its original line number, regardless of the copy/cut and insertion points. Usually, it is necessary to fix the GoTo manually.

      Of course, if you copy the commands when the option enabled, then paste them with the option disabled, or vide-versa, strange things may happen.

      Originally Posted by VRYK
      Incidentally, it seems to me that one cannot link from a PGC to the same VTS’s Root Menu – that one has to navigate via the Video Manager.
      All Link commands must point to an item in the same domain (stricto-sensu: same menu LU or same Title). But you can use JumpSS (from a menu) or CallSS (from a Title) to jump to any entry menu in the same VTS.

      If you're not sure, use the last menu of the Command Editor window. In that menu, you can select where your target is located.

      Or use the QuickTarget plugin to automatically convert any jump or NOP to a valid command jumping to the PGC clicked with the mouse. IMO, it's a very handy plugin, written by M_Knox (aka Morris).
      r0lZ
      PgcEdit homepage (hosted by VideoHelp)
      Unofficial mirror (in Poland)

      Comment

      • VRYK
        Super Member
        Super Member
        • Jan 2009
        • 226

        #4
        Many thanks for your message and the navigation hints..

        I continue to experience problems with Auto numbering ON. I inserted 3 lines including a GOTO with the target line according to the original numbering; this again gave the error with wrong number as per my earlier message. I tried both copying all the affected lines, inserting the 3 new lines and then Paste Replacing as well as just adding the new lines directly.

        With Auto OFF, the insertion worked OK, but I needed to enter Ctrl+ twice.

        Comment

        • r0lZ
          Lord of Digital Video
          Lord of Digital Video
          • Mar 2004
          • 1508

          #5
          I don't understand the problem. If you wish, turn auto-renumbering on, copy the lines and paste them directly in this forum. For example:
          Code:
          {00 B1 00 0F 00 02 00 [B]03[/B]} {30 02 00 00 00 02 00 00} {00 00 00 00 00 00 00 00}
          Post also the original lines: use Copy as Text. (BTW, I forgot to say that Copy as Text doesn't change the target line numbers.) For example, here are the same commands as above, but without the renumbering:
          Code:
          [00 B1 00 0F 00 02 00 [B]08[/B]]   6  if ( gprm(15) != 2 ) then { Goto line [B]8[/B] } 
          [30 02 00 00 00 02 00 00]   7  (JumpTT) Jump to Title 2 
          [00 00 00 00 00 00 00 00]   8  NOP
          r0lZ
          PgcEdit homepage (hosted by VideoHelp)
          Unofficial mirror (in Poland)

          Comment

          • r0lZ
            Lord of Digital Video
            Lord of Digital Video
            • Mar 2004
            • 1508

            #6
            Oh, I think I understand the problem. In your first post, the original line number is hex 44 (line 68). When pasted, the line number is converted to hex 85 (line 133), probably because you paste the lines at position 65 (133-68). But 133 is an illegal line number, because it is greater than 128, and the total number of pre, post and cell commands must be less than 129.

            The wrong line number should be displayed in PgcEdit as this:
            Code:
            [00 B1 00 0F 00 02 00 89]  15  if ( gprm(15) != 2 ) then { Goto line [COLOR="Red"]{[/COLOR]ILLEGAL VALUE 137[COLOR="Red"]}[/COLOR] }
            The ILLEGAL VALUE NNN is not displayed in your first post, because it is interpreted as a HTML tag. I had to replace the less than and greater than symbols with the red brackets. It's why I havent understood the problem immediately.

            But the logic of the renumbering is correct. If the target line number is too high, PgcEdit informs you of the fact with that particular syntax.
            Last edited by r0lZ; 10 Apr 2012, 02:53 AM.
            r0lZ
            PgcEdit homepage (hosted by VideoHelp)
            Unofficial mirror (in Poland)

            Comment

            • VRYK
              Super Member
              Super Member
              • Jan 2009
              • 226

              #7
              Thanks for your help.

              Comment

              Working...