There are various places from where VM Debugger can be called.
Project-wide VM Debugger
This will start from First Play and continue from there
Object VM Debugger
This will start on a specific code in either PRE or POST commands.
The main areas of the window
1 - Currently running Object
2 - The VM command sequence
3 - Debugger control
4 - Output window
5 - GPRM registers
6 - SPRM registers
7 - Menu/Movie preview
8 - Menu/Movie/Remote control.
The controls in Debugger will suggest which button to press by blinking. For example if you start debugger the GO button will blink, if you waiting for next ste the Step Line will blink etc...
Go - Start Debugging the VM code from first line
Step Line - the next (highlited) line will be executed
Stop - The debugger will stop
Auto Reset Registers - Each time you press Go button, registers will reset to initial state.
Follow Links - if checked you will follow all links to other objects. If unchecked the debugger will simply stop on link commands. If you want to debug only the particular code you will uncheck the Follow Links. You may then examine the same code by simply entering different initial state of registers and run the code again with Go button.
The line that will be executed by Step Line button is highlited. On the image above the GPRM12 is still 0 and when you press Step Line, the cursor will move to line 2 and the GPRM12 will be set to 1024.
That means the highlited line is a line not yet executed!
A DVD player has certain initial state. All GPRM registers are 0 and SPRM registers have various default values. For example on english players SPRM0 is set to 25966 etc.
You can reset the registers to Initial state anytime using Reset to Initial State button.
At any time you can enter a value to any GPRM registers. Simply doubleclick on the number and enter new value.
You can enter new values even during debugging.
Wait for Input state (preview area blinks)
After you run Menu or Movie PRE command and the Follow Links is set to ON the debugger gets into Wait for input state.
This is the time when user is expect to do any selection.
In case of menu four things can be done:
- User press any button on menu
- Menu Timeout (will continue with POST command)
- User press Menu button on remote
- User press Title button on remote
This all can be simulated in the preview area. You can select any button or Choose Timeout, Menu or Title buttons.
In case of Movie, the image will display a still from the movie. This simply tells that normally the movie would play and you can choose Timeout which will move the movie to its end and run POST commands or Menu or Title button.
The debugger is a very strong tool in tuning your VM code and it is one of many unique features of DVD-lab PRO that are all worth the price of the software alone.