quand je compile mon prog en mode kernel tt ma'rche très bien, mais quand je le compile en nostub, j'obtient un illegal instruction ds la plus grande partie du code (j'arrive a le lancer quand mm)
on peut m'expliquer ???
le prog est prevu d'etre en nostub mais pour essayer j'ai essayer en mode kernel, et la ça marche par contre
mais moi je veux en nostub !
niuob Le 22/10/2001 à 09:33 au niveau de la gestion de la mem. ?
ben la je sais pas trop, j'utilise 2 ecrans virtuels en local...
mais par contre pourquoi ça marcherait en mode kernel alors ???
PpHd Le 22/10/2001 à 09:33 Laisse le en kernel alors.
ben non je ne veux pas pasque j'ai besoin de le compresser ensuite au format ppg
je sais y a runc mais j'ai pas envie de 36 format de compression, et pis c moins pratique
> j'utilise 2 ecrans virtuels en local...
Alloue-les avec malloc plutôt.
PpHd Le 22/10/2001 à 09:33 Ca n'explique pas que ca marche en kernel.
A si. Il y aurait pas un SAVE_SCREEN a la con qui traine ?
>> NON! alloca alloue la place sur la pile ! Donc ça n'a aucun intérêt par rapport à une variable locale.
Je sais pas si son buffer est alloué par une déclaration de tableau locale, mais dans la négative, alloca est préférable car :
1 - plus rapide (un HeapCompress ne risque pas d'arriver)
2 - limite la fragmentation de la RAM (1 bloc de moins c'est une gêne en moins pour les blocs qui se redimensionnent dans son prog)
3 - n'utilise pas de RAM
4 - limitation des risques de plantages car pas besoin de libérer le bloc "à la main", donc si son code modifie le pointeur c'est pas grave.

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.
alloca utilise de la RAM, et justement dans la place où en a le plus besoin, dans la pile. Et si son programme plante à cause d'un débordement de la pile, utiliser alloca ne changera absolument rien au problème! Il faut utiliser malloc.
Et alloca est une fonction totalement inutile qui n'a aucun intérêt face à une simple variable locale à _main (que obza_Fazer utilise déjà, et qui n'a pas l'air de fonctionner).
ben oui j'ai declaré mes buffer avec malloc cette fois et c tt ok, plus de pb en nostub
donc merci
Kevin Kofler > ne t'exite pas comme ça, c t clair et net que je voulais qu'il soit en nostub, donc au pir j'aurais tt reecrit la partie qui foire jusqu'a ce que ça marche
PpHd Le 22/10/2001 à 09:33 Je suis d'abord pour debugguer les programmes !