Page 9 sur 10
Scenario editor et les SPRM et GPRM
Où l'on apprend à
utiliser SCENARIO EDITOR
Personnaliser les boutons.
Programmer dans SCENARIST.
Problème:
Quand je suis dans un sous menu je choisis à l'aide des touches "haut", "bas" puis j'appuie sur "OK" pour valider mon choix.
C'est alors que j'arrive dans un chapître du film. Tout cela est normal, cependant je souhaite en activant la flàche gauche lancer directement le menu suivant ( la flèche droite le menu précédeant). Pour l'instant mon projet le fais, mais il faut valider en cliquant sur "OK".
Concrètement
Pour éviter d'appuyer sur OK, il faut rendre le bouton auto-actif.

Problème:
Quand le menu boucle le bouton séléctionné revient toujours sur le premier. Je vais y remédier.
J'ai à ma disposition 16 variables dans lesquelles je peux stocker et lire une valeur. Ce sont les GPRM. Elles sont accessibles par leurs noms :GPRM0 à GPRM15.
Je peux donc programmer à SCENARIST "met 10 dans GPRM8" et "combien j'ai dans GPRM8".(exemple)
Mais si je veux mémoriser le bouton sélectionné, il faut que SCENARIST me dise quel est le bouton sélectionné:
C'est le travail des SPRM Il y en a 24 (SPRM0 à SPRM23). Chacune donne une information, je peux toutes les lire (connaître leur valeur) et pour certaine je peux leur donner une valeur.
Je vais utiliser 2 SPRM :
Le SPRM8 qui contient le bouton sélectionné.
Le SPRM6 qui contient le nom du PGC en cours d'execution.
Principe (en français)
En fin de PGC je mémorise le bouton sélectionné dans une mémoire (GPRM0).
En début de PGC je sélectionne le même bouton......seulement si je boucle.
Si je viens d'un autre menu c'est le premier bouton qui doit être en surbrillance.
Concrètement (en SCENARIST).
Je sélectionne le PGC du menu sur lequel je travaille dans le SCENARIO EDITOR (attention, je ne le redirai plus).
Je vais dans la fenêtre de simulation et je programme ...je n'écris rien, je ne fais que sélectionner à la souris (attention, je ne le redirai plus non plus).
Mémorise en fin (avant de boucler) la touche en surbrillance :

Au début du menu si je viens d'un autre menu je mets en surbrillance le premier bouton.

Au début du menu si je boucle je mets en surbrillance l'ancien bouton.

Au début je mémorise le nom du PGC (comme cela si je boucle cela sera le même cf les 2 commandes précédentes).

Cette commande qui ressemble à la précédente me sert pour le prochain problème (voir plus bas).

Attention tout ceci ne fonctionne pas si je ne change pas ce paramètre (pour chaque menu):
Le ForcedSelectedButton doit être à NonExistent et non à 1 par défaut.

Problème
Quand j'appuie sur la touche Menu ou Title de ma télécommande j'arrive sur le menu principal (je ne l'ai pas encore fait je le dis plus bas).
D'autre part, j'ai beaucoup de sous menus et le fait de revenir toujours au menu principal n'est pas toujours pratique.
C'est pour cela que je voudrais revenir au dernier sous menu utilisé quand j'appuie sur la touche Menu de ma télécommande.
J'ai donc besoin de savoir dans quel PGC menu je suis, pour pouvoir y revenir. Je stockerai cette information dans GPRM2.
J'ai précédemment bien configuré les boutons MENU et TITLE de ma télécommande, mais je n'ai pas dit sur quel PGC ils devaient se brancher. Je branche les deux boutons MENU et TITLE vers le menu principal.
C'est dans le menu principal ( en entry) que je brancherai sur le précédent sous menu actif en fonction de GPRM2.
Dans un premier temps je programme le PGC que j'ai nommé Bouton_MENU pour lui dire :
1) Prends en mémoire (GPRM0) le dernier bouton sélectionné (comme cela quand je reviendrais au sous menu, c'est le même bouton qui sera sélectionné
2) Branche toi quand j'appuie sur MENU (Menu ID :Root menu vouv vous en souvenez ?) sur le menu principal.

Je fais de même pour le PGC que j'ai nommé Bouton_TITLE pour lui dire :
1) Je mémorise dans GPRM2 le n° du prochain menu. (en fait j'efface le précédent car avec se bouton je veux aller au menu principal).
2) Branche toi quand j'appuie sur TITLE, (Menu ID : PTT menu vous vous souvenez ?) sur le menu principal.

Pour la petite histoire, j'aurais pu faire les liens avec la souris.
Bon maintenant que mes boutons MENU et TITLE me ramènent au menu principal avec en mémoire un GPRM2 contenant le PGC du sous menu sur lequel je veux me brancher.... eh bien je n'ai plus qu'à me brancher.
Pour cela je sélectionne mon PGC de mon menu principal (MAIN), et je travaille dans la fenêtre de simulation.
En entrée du PGC je vais faire une série de tests du genre:
Si GPRM2 (le dernier sous menu utilisé) est égal à xx alors je branche sur le PGC menu xx.

En fin de liste de commande, je retrouve les commandes pour la sélection du bouton après quand le menu tourne en boucle.

Ps le NOP (No operation pour ceux qui on fait de l'assembleur dans leur jeunesse) ne fait rien
Par contre il rend plus lisible (?) la suite de code.
Bon je vais prendre un cachet d'aspirine....et vous aussi je suppose ! A tout à l'heure !