## Virtual Machine Instruction Summary

This is a list of the instructions without the operand detail, but with an explanation of the function.

Byte 0 and 1 | description
--- | ---
00 xx | Special instructions NOP, Goto, Break, and SetTmpPtl NOP does nothing, Goto performs a jump within the pre or post commands, Break will exit the pre or post command section, SetTmpPtl sets a new Parental Management level, the user may need to enter a password, if succesful the jump is taken. These commands can be conditional, the compare operation is performed first and determines if the command should be executed.
20 xx | Link instructions, used for going from one video segment to another within the same domain.The link subset (20 01, 20 09) use pointers stored within the PGC. RSM resumes playback from the point of interruption by a MenuCall (user interaction) or CallSS command. Most Link commands can also specify a new highlight selection, used primarily to select a default button when entering a menu. These commands can be conditional, the compare operation is performed first and determines if the command should be executed.
30 xx | Jump and Call instructions, used for going to another domain (with certain restrictions). CallSS commands may optionally specify a cell different from the current to be entered on RSM. These commands can be conditional, the compare operation is performed first and determines if the command should be executed.
4x xx 5x xx | SetSystem group, used to set values into SPRM (System Parameters). Also in this group is the SetGPRMMD command, used to set a GPRM (General Parameter) to the value of another register (either GPRM or SPRM) or a 16-bit immediate value. What makes this command special compared to the Set (below) is the ability to put the register into counter mode, incrementing once per second. These commands may be conditional, or followed by a Link, but not both. If a compare operation is specified it is performed first and determines if the command should be executed. If a Link is specified it is performed after the set operation.
6x xx 7x xx | SET, CmpSet, SetLnk. Used to set a GPRM (General Parameter) to the result of the specified arithmetic or logical operation using the value of another register (either GPRM or SPRM) or a 16-bit immediate value and the destination register. These commands may be conditional, or followed by a Link, but not both. If a compare operation is specified it is performed first and determines if the command should be executed. If a Link is specified it is performed after the set operation.
8x xx thru Dx xx | Various combinations of Cmp, Set, and Link. Unlike the SetSystem and Set (above) all three operations may be combined, but the compare operation uses the destination register of the Set operation as one of its operands. Note that in all these instructions the individual operations are optional, if the compare is not performed that portion of the command which would be conditional is executed.
8x xx 9x xx | Unconditional Set followed by conditional Link. The Set is performed, followed by the compare, which determines if the Link executes.
Ax xx Bx xx | Conditional Set followed by Conditional Link. One compare operation is performed, the results determine if both the Set and Link execute.
Cx xx Dx xx | Conditional Set followed by unconditional Link. The compare operation determines if the Set is performed, the Link is always executed.

Instuction Set details

DVD-Video info home | Copyright © 2001 - 2020 STN Software, all rights reserved.