1

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 ???

2

attention ca vas mal finir ce topic wink

3

ça va chauffer dans les casebas... attention
En HIBERNATION !
C'est une façon pour moi de dire merde à la société :D

MERCI sBibi ENCORE ET ENCORE POUR ...

From Grenoble.

4

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 !

5

t'utilises pas de librairies au moins ?grin
wink

6

nan aucunes, chuis pas non plus bete a ce point la roll

7

au niveau de la gestion de la mem. ?

8

ben la je sais pas trop, j'utilise 2 ecrans virtuels en local...

mais par contre pourquoi ça marcherait en mode kernel alors ???

9

Laisse le en kernel alors.

10

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

11

> j'utilise 2 ecrans virtuels en local...

Alloue-les avec malloc plutôt.
avatar
Mes news pour calculatrices TI: Ti-Gen
Mes projets PC pour calculatrices TI: TIGCC, CalcForge (CalcForgeLP, Emu-TIGCC)
Mes chans IRC: #tigcc et #inspired sur irc.freequest.net (UTF-8)

Liberté, Égalité, Fraternité

12

S'ils ne servent que dans la routine, alloca est largement préférable : ça n'utilise pas de mémoire (paradoxal wink) et tu es sûr que le bloc ne sera jamais déplacé (=> moins de risques de plantages).
avatar
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.

13

>Thibaut: S'ils ne servent que dans la routine, alloca est largement préférable : ça n'utilise pas de mémoire (paradoxal wink) et tu es sûr que le bloc ne sera jamais déplacé (=> moins de risques de plantages).

NON! eek attention alloca alloue la place sur la pile! Donc ça n'a aucun intérêt par rapport à une variable locale.
Et malloc est un alias pour HeapAllocPtr qui utilise HeapAllocHigh qui verrouille automatiquement le bloc, donc un bloc alloué avec malloc ne sera jamais déplacé par AMS.
avatar
Mes news pour calculatrices TI: Ti-Gen
Mes projets PC pour calculatrices TI: TIGCC, CalcForge (CalcForgeLP, Emu-TIGCC)
Mes chans IRC: #tigcc et #inspired sur irc.freequest.net (UTF-8)

Liberté, Égalité, Fraternité

14

Ca n'explique pas que ca marche en kernel.
A si. Il y aurait pas un SAVE_SCREEN a la con qui traine ?

15

Et oui, #define SAVE_SCREEN prend 3840 octets de pile. sad Soit tu sauvegardes l'écran toi-même autre part (sur le heap, donc dans un bloc alloué avec malloc), soit tu alloues tes plans avec malloc plutôt que de les mettre en local.
avatar
Mes news pour calculatrices TI: Ti-Gen
Mes projets PC pour calculatrices TI: TIGCC, CalcForge (CalcForgeLP, Emu-TIGCC)
Mes chans IRC: #tigcc et #inspired sur irc.freequest.net (UTF-8)

Liberté, Égalité, Fraternité

16

>> 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.
avatar
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.

17

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.
avatar
Mes news pour calculatrices TI: Ti-Gen
Mes projets PC pour calculatrices TI: TIGCC, CalcForge (CalcForgeLP, Emu-TIGCC)
Mes chans IRC: #tigcc et #inspired sur irc.freequest.net (UTF-8)

Liberté, Égalité, Fraternité

18

Mais non, bordel !
Il n'a pas parlé comme message d'erreur de "Stack Overflow" rage
Donc alloca reste le mieux, cf arguments cités précédemment.

Arrête de toujours vouloir me contredire grin
avatar
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.

19

>obza_Fazer:
>ben la je sais pas trop, j'utilise 2 ecrans virtuels en local...
>
>mais par contre pourquoi ça marcherait en mode kernel alors ???

[...]

>PpHd:
>A si. Il y aurait pas un SAVE_SCREEN a la con qui traine ?

>Kevin Kofler:
>Et oui, #define SAVE_SCREEN prend 3840 octets de pile. sad Soit tu sauvegardes l'écran toi-même autre part (sur le heap, donc dans un bloc alloué avec malloc), soit tu alloues tes plans avec malloc plutôt que de les mettre en local.

Voilà pourquoi je suppose que c'est un problème de débordement de pile.
avatar
Mes news pour calculatrices TI: Ti-Gen
Mes projets PC pour calculatrices TI: TIGCC, CalcForge (CalcForgeLP, Emu-TIGCC)
Mes chans IRC: #tigcc et #inspired sur irc.freequest.net (UTF-8)

Liberté, Égalité, Fraternité

20

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).
avatar
Mes news pour calculatrices TI: Ti-Gen
Mes projets PC pour calculatrices TI: TIGCC, CalcForge (CalcForgeLP, Emu-TIGCC)
Mes chans IRC: #tigcc et #inspired sur irc.freequest.net (UTF-8)

Liberté, Égalité, Fraternité

21

ZdRUbAl est presque aussi bon que Coperfield avec le loto allemenad smile

22

C'était évident gringringringrin

Kevin : ben moi j'aime bien alloca. C'est pas une fonction, et puis ça permet de créer (façon de dire bien sûr) son buffer à n'importe quel endroit du code (en C les vars locales ne peuvent être déclarées qu'en début de bloc, [pub]contrairement à l'Azur[/pub]).
avatar
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.

23

trop pur ! Je sais debuggue en nostub ! grin

24

Que puis-je prédire de plus maintenant ?
grin
(petite comparaison Extgraph / Genclibgrin)

25

ben oui j'ai declaré mes buffer avec malloc cette fois et c tt ok, plus de pb en nostub
donc merci

26

Merci PpHd. grin (Tu viens de faire en sorte qu'il y ait un programme _nostub en plus et un programme kernel en moins. wink grin tongue grin)
avatar
Mes news pour calculatrices TI: Ti-Gen
Mes projets PC pour calculatrices TI: TIGCC, CalcForge (CalcForgeLP, Emu-TIGCC)
Mes chans IRC: #tigcc et #inspired sur irc.freequest.net (UTF-8)

Liberté, Égalité, Fraternité

27

PpHd >> tu tombes dans la facilité ou koi ??? grin

Laisse le en kernel alors.

28

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

29

embarrassed

30

Je suis d'abord pour debugguer les programmes !