Mise à jour : 5 avril 97

oici directement décompiler soit de MathTools 6.0 et 7.0 de Jack Levy, soit tout simplement de la ROM de la HP.


Menus noir sur blanc comme MTOOLS:

begin
~ begin
~ begin
dup;gn?
pift
nm=>st!
MakeStoLabel(st)
PutLabel(s,go)
end
InitLabels
{{ nom1 prg1}...}
end
DoMenuList
end
{
#6E97h {
#6E97h {
#62035h
#619BCh
#5BE9h
#3A44Eh
#3A297h
}
#418F4
::{{}...}
}
#40F86h
}


Menu avec choix YES-NO de MathTools7.0


Voici la routine YesNo(s,st) qui renvoit un booléen:
s indique la position du texte st
begin
ClearMenuGrob
<0h> "YES"
MakeStoLabel(st) PutLabel(s,go)
<110d> "NO"
MakeStoLabel(st) PutLabel(s,go)
1->grob(st) RclMenuGrob
rot <2h>
repl(2go,2s) do
GetTouch <n><p>=>rc.p
begin
dup 11.1
same?:dq/sk
begin
drop 2true
end
16.1 same?:dq/sk
false;true
bip;freeze false
end
until
end
{
#51125h
0 "YES"
#3A44Eh #3A297h
110 "NO"
#3A44Eh #3A297h
#11F80h #12645h
#3295h 2
#11679h #71A2h
#41F65h #41D92h
{
#3188h ::11.1
#63CFEh
{
#3244h #BBEDh
}
::16.1 #63CFEh
#6350Bh
#3FDD1h #3AC0h
}
#71C8h
}

Si vous créez un programme dépendant de MT, cette routine peut être apellée XLIB 1091 31


Créer un menu de dossier

(avec le petit trait dessus). Décompilation de Pépé.
begin
?
begin
InitDirLabel
NoShift
{{"nom1" prg1}...}
end
DoMenu(li);3Freeze!
end
{
#407FBh
{
#3F036h
#3EFE6h
::{...}
}
#40DC0h
}


Menu avec quelque directory

begin
InitOneDirLabel
"..."
end
begin
...
end
{
#3ED6Bh
@ nom du label
}
{
@ programme associe au dir label
}
Ce morceau s'utilise comme argument dans une liste pour DoMenu(li) comme si c'était une chaine et un programme.


EmptyMenu XLIB 168 0

C'est le menu vide utilisé par la HP.


Pour ce qui on plein de library et qui on des probl&egravemes; pour les affichers je vous donne LibMenu2.1 de Pépé.

©zeHP

Club HP|Annonces| HoPsy| Mail| Débutant| Bricolage| Programation| IRC| Liens