Thibaut Le 06/06/2002 à 16:18Edité par Thibaut le 06/06/2002 à 16:23 Dans la documentaion de TIGCC, il est dit de faire comme ça :
short progrun (char *name)
{
char fname[25];
HANDLE h;
TRY
strcpy(fname, name);
strcat(fname, "()");
push_parse_text(fname);
h= HS_popEStack();
NG_execute(h, FALSE);
HeapFree(h);
ONERR
return FALSE;
ENDTRY
return TRUE;
}
1) il ne serait pas plus optimisé en taille et en vitesse de faire sprintf(fname, "%s()", name) pour l'ajout des parenthèses ?????????
2) au retour de cette fonction, si le programme Basic est archivé, la copie en RAM du programme ainsi que son entrée en VAT ne semblent pas effacés : on se retrouve avec deux fichiers de même nom et de même taille !
3) en cas d'erreur, le handle alloué par HS_popEStack n'est pas libéré !! si ?
4) lorsqu'une erreur survient dans le programme Basic, il est immédiatement quitté, sans qu'on ait le temps de lire la boîte de dialogue donnant l'erreur.
bref voilà, si vous avez un code plus performant que la bizarrerie ci-dessus, je suis preneur...

Un site complet sur lequel vous trouverez des programmes et des jeux pour votre calculatrice TI 89 / Titanium / 92+ / Voyage 200 :
www.ti-fr.com.
Quelques idées personnelles
ici.
il me semble que ceci ne arche pas sur HW2 sans HW2patch ,non ?
(enfin, il me semble seulement)
Kevin Kofler Le 06/06/2002 à 20:59Edité par Kevin Kofler le 06/06/2002 à 21:01 Le code posté ne marche pas sur HW2 AMS 2 sans HW2Patch ni h220xTSR si et seulement si le programme TI-BASIC appelle un programme en assembleur ou C (genre FLib) ou une chaîne Exec. Ça marchera avec du TI-BASIC pur. Et EXECUTE_IN_GHOST_SPACE ne changera rien à la situation. Il faut rediriger le trap 11 comme le fait h220xTSR pour résoudre le problème. (D'ailleurs, h220xTSR résout en effet ce problème en tant qu'"effet collatéral" positif de son travail.)
Pourquoi vous ne le dites pas dans la documentation de TIGCC (j'ai trouvé ce code dans la FAQ) ???
Et pour les 4 points du premier post, si quelqu'un pouvait y répondre...

Un site complet sur lequel vous trouverez des programmes et des jeux pour votre calculatrice TI 89 / Titanium / 92+ / Voyage 200 :
www.ti-fr.com.
Quelques idées personnelles
ici.
PpHd Le 07/06/2002 à 10:05 Si tu veux, tu peux tester si le programme basic est archive.
Si c'est le cas, tu le desarchives puis tu l'executes.
Puis tu testes si la sym est bien avec le flag twin, si c'est le cas tu supprimes. (SymDelTwin)
Faut faire gaffe, car le ptr vers SYM_ENTRY *, le Hsym sont invalides apres l'appel au Ti-basic