Вступление. (описание проекта)
Проект состоит из двух фильмов - основной и дополнительный.
Для обоих фильмов есть свои меню - основное и выбора эпизодов.
Для основной фильм имеет 9 глав и соответственно меню выбора эпизодов сосотоит из 3-х страниц (по 4-ре эпизода в каждом).
Для дополнительного - одно меню выбора эпизодов.
Все лежит в одном VTS, т.е. имеется одно Root меню.

Задача.
Сделать для основного фильма, просмотр фильма начинается при нажатии кнопки "Просмотр", возврат в меню эпизодов по нажатию кнопки Title, с открытием соответствующей страницы и подсветкой соответсвующего эпизода в данном меню.

Решение.
Очевидно что для данного типа задачи не подходит использование Return to Last Menu, значит надо использовать VM command. В качестве основы был взят пример для сценариста co spline.ru, немного адаптировав его для DVD Lab Pro.
В основе все остается все также, т.е. несколько шагов:

1.Прежде всего нам надо запомнить, что начали смотреть фильм для этого в любой из доступных GPRM регистров надо запомнить любое число отличное от нуля. Пишем в PRE фильма следующую команду:
GPRM3 = 100

Хочу сразу заметить - чтобы по окончании фильма не происходило перехода в меню эпизодов надо обнулить этот регистр - в POST пишем:
GPRM3 = 0

2. Теперь нам после того как все действия с фильмом закончены пришел черед работы с ROOT меню. Здесь надо сделать несколько действий:

а. Записать в GPRM регистр номер текущей главы, который находится в регистре SPRM7.

б. Определить, из фильма мы попали в меню или из какого-либо другого места - например, из того же меню эпизодов. Если не из фильма, то никаких действий не предпринимать.

в. Если из фильма, то сразу перейти к меню эпизодов.


Для этого надо написать следующие команды в PRE Root меню:

GPRM7 = SPRM7
if (GPRM3 == 100) LinkPGCN 3
- осуществляется переход на первую страницу меню эпизодов

3. Теперь нам надо написать команды для 1-й страницы меню эпизодов, куда был осуществлен переход из Root меню. Здесь надо выполнить следующие дествия:

а. Снова проверить, откуда мы пришли, поскольку зритель может попасть в меню эпизодов и обычным путем через предыдущие меню (например ROOT). Если не из фильма, то просто перейти к первому меню эпизодов.

б. Стереть информацию о том, что мы пришли из фильма, поскольку попав потом в меню эпизодов, действия зрителя могут быть любыми и он, в частности, может захотеть попасть в Root Menu. В этом случае, если содержимое GPRM3 останется равным 100, бедный зритель опять попадет в меню эпизодов.

в. Выполнить операции сравнения содержимого регистра GPRM7 с числовыми константами и в зависимости от результатов сравнения перейти к соответствующей ячейке меню эпизодов.


В PRE этого меню пишем:

(GPRM3 != 100) LinkCN 1 (button 1)
GPRM3 = 0
if (GPRM7 == 9) LinkPGCN 5
- осуществляется переход на третью (последнюю) страницу меню эпизодов
if (GPRM7 >= 5) LinkPGCN 4 - осуществляется переход на вторую (среднюю) страницу меню эпизодов
if (GPRM7 == 1) LinkCN 1 (button 1)
if (GPRM7 == 2) LinkCN 1 (button 2)
if (GPRM7 == 3) LinkCN 1 (button 3)
if (GPRM7 == 4) LinkCN 1 (button 4)


4. Сооттветственно для подсветки соответствующего эпизода на других страницах надо написать в PRE соответствующих меню следующее:
Для второго меню:

if (GPRM7 == 5) LinkCN 2 (button 1)
if (GPRM7 == 6) LinkCN 2 (button 2)
if (GPRM7 == 7) LinkCN 2 (button 3)
if (GPRM7 == 8) LinkCN 2 (button 4)


Для третьего (последнего) меню:

if (GPRM7 == 9) LinkCN 3 (button 1)

На этом с командами закончили.
Проверял встроенным отладчиком - все работает как и должно работать, в PowerDVD тоже никаких проблем. К сожалению проект на проверял на бытовом плеере - проект на работе, а плеер дома, думаю со временем и там проверю.

Просьба проверьте работу такого варианта у себя и на бытовых плеерах и обо все отпишите в данный топик.

P.S. Все выше описанное относится сугубо для моего проекта, так что учитывайте это при написанни команд в своих проектах: номера PGC у вас будут другие, нежели у меня.