Index
Next Prev


MuxMan Buttons:


Complex commands cannot be used as button actions with MuxMan, as button actions may only have one 'simple' command. Dvdauthor uses some kind of 'trick' for this purpose, which can be used with MuxMan too, but not automatically.

The principle is using a register which is set by the button command and examined in the menu post command. In GfD there is a predefined action (can be found in the button actions listbox): Mov GPRM15,1 ; LinkTailPGC
The menu pre command sets GPRM15 to '0'. Each button may set GPRM15 to any value <> 0 (Mov GPRM15,1 or Mov GPRM15,2 ...) and 'jump' to the menu post section (with LinkTailPGC), where the value of GPRM15 is checked and the appropriate sequence of instructions is executed. The menu post section may be edited with the Advanced Pre/Post Command Editor. If you click on 'Calc Standard' for the pre and post commands, you get the following 'framework' (example for an audio menu in the first titleset=TS1SubMenu1):
VMEdit2.png

The pre command sets GPRM15 to 0:
Mov GPRM15, 0

The Button uses the command:
Mov GPRM15, 1 ; LinkTailPGC (further buttons: Mov GPRM15, 2 ; LinkTailPGC...)

Within the post commands the value of GPRM15 is checked and according to the button a specific section is linked via GoTo :
if ( GPRM15 == 1 ) GoTo Tag1
Break
Tag1: NOP

In case of a 'looping' menu:

if ( GPRM15 > 0 ) GoTo Tag0
LinkCN MainMenu_cell1
Break
Tag0: if (GPRM15 == 1 ) GoTo Tag1
Break
Tag1: NOP


To give you an example: The dvdauthor command: "if (g1 eq 0) {audio=1;resume;} else {audio=1;jump menu 1;}" within the submenu TS1SubMenu1 can be 'rebuilt' for MuxMan with a command sequence like this:

if ( GPRM15 == 1 ) GoTo Tag1
Break
Tag1: SetSTN audio=1
if ( GPRM1 == 1 ) LinkPGCN TitleSet1Menu
if ( GPRM1 == 0 ) RSM
Break

Complete example for an audio menu which is created as the first submenu of the first titleset menu (TS1SubMenu1) to select two different audio streams (like German and English):
(Important: The pre command of the movie 'Film1' sets GPRM1 to '1' and the post command to '0' again; this can be set up if the Advanced Pre/Post Command Editor is started from the Video+Audio files dialog of 'Film1')
VMEdit3.png
Explanation: The pre command sets the highlight for the button in accordence to the currently selected audio stream: if (GPRM15 == SPRM1 ) SetHL_BTNN HL_BTNN=1 or 2. Each button only sets GPRM15 to 'its' own value and jumps to the menu post commands section. In the post commands the value of GPRM15 is examined and the correspondent command sequence is executed: The audio buttons FreeButton1 (SM1B1) and FreeButton2 (SM1B2) set the audio stream to a specific value (SetSTN audio=1 or SetSTN audio=2) and either link to the titleset menu (if GPRM1=0) or resume to the playing movie (if GPRM1=1); remember that the 'Film1' pre command sets GPRM1 to '1' and the post command to '0'. The Back-button doesn't change the selected audio stream, but also either links to the titleset menu or resumes to the playing movie. The 'Film1' pre and post commands look like this:
VMEdit4.png