I just started working with DVDA4 script and while it may not be as complete as some would like it sure solves a lot of 'problems'. DVDA4 script makes it easy set button highlights to match current settings and navigate to the correct meu. :)
Actually, I found it interesting how some of the low level concepts have been abstracted and appears to be keeping the philosophy of allowing some lower access, but not too low. For example, linking thru a GPRM to a menu or movie - the abstraction layer has got to be involved with this since it's not something you can normally do with a GPRM.
Alas, the documentation is also a little on the lite side; for example, you can set a GPRM in either register or counter mode, but no description of what either mode is or how you use them (register mode has the obvious use, but what is counter mode?)
Scott, I agree I am sure that all the Script construts are implimeted in an intgermediate code layer. You can put together some very complicated conditional actions. In your example of linking through a GPRM to a menu, movie... you first have to SetGPRM with conditional requirements then LinkGPRM plus conditional requirments plus anything else you would like to add :). Loops are a basic constuct when you have iterations. When you set Setmode GPRM to counter the selected GPRM is incremented by 1 each time the script loops (GotoLabel). You can have a function performed based on the loop count.
<Edit> George W has pointed out the counter is a timer incrementing at 1 second intervals not a loop counter.