90

ben done n'est pas réinitialisé à 0 tongue


int done; 
void gl_main() 
{ 
   done= 0 ;
   while ( done != 1 )  

91

arf ok grin

c'est rigolo ca...
avatar
Menuisier of the Dead bientôt sur GBA !!!! :D

Projet en cours:
-Menuisier Of The Dead

92

Ben c'est un bug/défaut de la plateforme, qui ne possède pas de vrai format exécutable… Donc tes variables globales sont considérées comme des données et/ou du code (en fait y'a aucune distinction) à l'intérieur de ton programme…
Donc quand tu y accèdes ça utilise directement la copie à l'intérieur de ton programme ^^
avatar
Le scénario de notre univers a été rédigée par un bataillon de singes savants. Tout s'explique enfin.
T'as un problème ? Tu veux un bonbon ?
[CrystalMPQ] C# MPQ Library/Tools - [CrystalBoy] C# GB Emulator - [Monoxide] C# OSX library - M68k Opcodes

93

Sauf quand le programme est archivé, non?
avatar
Maintenant j'ai la flemme de garder une signature à jour sur ce site. Je n'ai même plus ma chaîne Exec sous la main.

94

Ben quand il est archivé, tu exécutes une copie, oui cheeky
avatar
Le scénario de notre univers a été rédigée par un bataillon de singes savants. Tout s'explique enfin.
T'as un problème ? Tu veux un bonbon ?
[CrystalMPQ] C# MPQ Library/Tools - [CrystalBoy] C# GB Emulator - [Monoxide] C# OSX library - M68k Opcodes

95

Sauf sous PedroM si tu spécifies que t'es en read-only, ou sous les AMS patchés par les soins de Lionel cheeky

96

Et sous UniOS cheeky

97

Quels sont les effets intéressants si on tente d'y écrire?
* Rien du tout?
* Une Exception?
* Une écriture que dans un sens? (bits seulement mis à 0 ou seulement mis à 1)

PS: Y'a pas de fonction de liste sur yN?
avatar
Maintenant j'ai la flemme de garder une signature à jour sur ce site. Je n'ai même plus ma chaîne Exec sous la main.

98

[ul][li]Rien ? Ben c'est la dernière valeur écrite qui est stockée.
[li]une exception ? confus
[li]hu ? tu peux préciser ce que tu veux faire ? confus²
[/ul]

99

Pen^2 > Tu as mal compris sa question cheeky

Sinon, tant que la mémoire Flash est protégée tu ne peux jamais y écrire quoi que ce soit, que ce soit un 0 ou un 1.
Après, de mémoire, il ne se passe juste rien…
avatar
Le scénario de notre univers a été rédigée par un bataillon de singes savants. Tout s'explique enfin.
T'as un problème ? Tu veux un bonbon ?
[CrystalMPQ] C# MPQ Library/Tools - [CrystalBoy] C# GB Emulator - [Monoxide] C# OSX library - M68k Opcodes

100

ou sous les AMS patchés par les soins de Lionel cheeky

La protection d'exécution en Flash est désactivée (sur HW2+ seulement pour le moment, comme l'a indiqué Kevin) par le patchset, mais les programmes ASM continuent à être copiés et à s'exécuter en RAM: sauf exception, ils ne sont pas faits pour être exécutés directement en Flash smile
avatar
Membre de la TI-Chess Team.
Co-mainteneur de GCC4TI (documentation en ligne de GCC4TI), TIEmu et TILP.
Co-admin de TI-Planet.

101

Ah pardon, je parlais des vrais programmes. Ceux qui ont un flag dans le stub, qu'on active en exportant _flag_2, pour pas qu'ils ne soient exécutés en RAM par le kernel. Faudrait que je vérifie, mais si un programme est read-only sous AMS, PedroM réduit son twin à deux octets et exécute l'original.

ps -> ah ok, ce type de programme est contenu dans ton "sauf exception" sûrement. Ok. MAis en fait, c'est simple de coder de cette manière, surtout en assembleur. Mais en C, c'est faisable aussi.

102

Hum, je sais pas si vous avez bien fait de lui parler de la flash et sa déprotection cheeky

Sawamura, si tu ne sais pas ce que tu fais, c'est le meilleur moyen d'user prématurément des secteurs de flash. sick
"De l'Art de faire des Posts qui ne servent a Rien." (c) Ximoon

15:13 @Ximoon - 29-11-2005
"C'est débile ce sondage, une fois de plus Dude, tu ne sers à rien #hehe#" #love# Il est collector celui là ^^

18:56 @Ximoon - 09-10-2010
"Mince Dude sert à quelque chose %) (pas taper :D )" Owii xD #trilove#

103

Pour l'histoire des variables globales, c'est écrit dans la FAQ: http://tigcc.ticalc.org/doc/faq.html#29.

Et ça va te paraître totalement tordu et à l'envers, mais si tu mets juste int done; à la place de int done=0;, la variable globale sera automatiquement remise à zéro à chaque exécution (en admettant les options par défaut, parce qu'il y a des flags qui influencent ce comportement). La raison technique, c'est qu'une variable globale ou statique non initialisée est alloué dans une section BSS et que par défaut cette section BSS est initialisée à zéro au démarrage du programme. (Attention, une variable locale non statique non initialisée n'est pas initialisée à zéro, mais a une valeur non déterminée. Pour une variable locale, il faut mettre le =0 pour avoir une initialisation à 0 à chaque appel de la fonction.)
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é

104

Complément: les variables BSS donnent du code moins efficace que les variables initialisées.
avatar
Membre de la TI-Chess Team.
Co-mainteneur de GCC4TI (documentation en ligne de GCC4TI), TIEmu et TILP.
Co-admin de TI-Planet.

105

Kevin Kofler (./103) :
La raison technique, c'est qu'une variable globale ou statique non initialisée est alloué dans une section BSS et que par défaut cette section BSS est initialisée à zéro au démarrage du programme.

J'ai failli le dire, mais il est en kernel. Le fonctionnement est le même, le compilateur crée une bss pour les variables globales ?
Dude (./102) :
Sawamura, si tu ne sais pas ce que tu fais, c'est le meilleur moyen d'user prématurément des secteurs de flash. sick.gif

Euh non, on parle de lecture ici, pas d'écriture.

106

(Non, Link parlait bien d'écriture ^^)
Sinon, les bss ne sont-elles pas gérées directement par le « kernel » ?
avatar
Le scénario de notre univers a été rédigée par un bataillon de singes savants. Tout s'explique enfin.
T'as un problème ? Tu veux un bonbon ?
[CrystalMPQ] C# MPQ Library/Tools - [CrystalBoy] C# GB Emulator - [Monoxide] C# OSX library - M68k Opcodes

107

Folco (./105) :
Kevin Kofler (./103) :
La raison technique, c'est qu'une variable globale ou statique non initialisée est alloué dans une section BSS et que par défaut cette section BSS est initialisée à zéro au démarrage du programme.
J'ai failli le dire, mais il est en kernel. Le fonctionnement est le même, le compilateur crée une bss pour les variables globales ?

Oui, sauf si elles ont une valeur initiale (et =0 est une valeur initiale), le comportement est le même qu'en _nostub. Et d'ailleurs le code de démarrage initialise la section BSS à zéro explicitement même en kernel parce que certains vieux kernels ne le faisaient pas (PreOs le fait, mais ça ne change rien de mettre à zéro 2 fois). (En revanche, l'allocation et le relogement sont effectués par le kernel.)
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é

108

Les BSS sont gérées directement par le "kernel", oui. Dans les programmes AMS native, les BSS nécessitent du code de démarrage.
avatar
Membre de la TI-Chess Team.
Co-mainteneur de GCC4TI (documentation en ligne de GCC4TI), TIEmu et TILP.
Co-admin de TI-Planet.

109

GoldenCrystal (./106) :
(Non, Link parlait bien d'écriture ^^)

Puisqu'on a dit à Link qu'il ne pouvait pas se produire d'écriture dans le cas qu'il donnait, j'ai plutôt pensé qu'il parlait de l'exécution en flash évoquée plus haut.

110

Dude (./102) :
Hum, je sais pas si vous avez bien fait de lui parler de la flash et sa déprotection cheeky

Sawamura, si tu ne sais pas ce que tu fais, c'est le meilleur moyen d'user prématurément des secteurs de flash. sick



T’inquiète pas, en général je touche pas aux trucs que je connais pas wink
J'ai pas envie de tout niquer, surtout que mon probleme est reglé par un p'tit "=0" smile



avatar
Menuisier of the Dead bientôt sur GBA !!!! :D

Projet en cours:
-Menuisier Of The Dead

111

Archiver le programme ne détruit pas la FlashROM et il est même conseillé de toujours tout archiver.
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é

112

Oui, Dude a fait un bel amalgame a priori, on ne t'a rien conseillé de dangereux ou quoi que ce soit.

113

Ah oui désolé magic
Dans son cas vous avez raison.
Ceci dit, je pensais à autre chose, et je crois que GoldenCrytal t'as bien compris de quoi je parlais wink
"De l'Art de faire des Posts qui ne servent a Rien." (c) Ximoon

15:13 @Ximoon - 29-11-2005
"C'est débile ce sondage, une fois de plus Dude, tu ne sers à rien #hehe#" #love# Il est collector celui là ^^

18:56 @Ximoon - 09-10-2010
"Mince Dude sert à quelque chose %) (pas taper :D )" Owii xD #trilove#

114

Si tu pensais à l'écriture à outrance en flash, oui, pourquoi pas.

115

Yop, c'est encore (et toujours) moi tongue


Je cherche un éditeur de map compatible Genlib, qui ne s’appellerait pas SNESCONV grin, pasque la "violation d’accès a l'adresse NANANINANANA dans le module" des que je touche
au moindre bouton (chuis peut être pas doué, mais la, ca sent le "nan, je veux pas")
avatar
Menuisier of the Dead bientôt sur GBA !!!! :D

Projet en cours:
-Menuisier Of The Dead

116

C'était pas le logiciel de création de map de CF ? Il fonctionnait bien pourtant confus

117

sisi, c'est celui la smile

Mais bon, ca fait plusieurs fois que j'essaie, j'ai l'impression qu'il ne m'aime pas sad
pour info je suis sous W7...



Edit: Je suis a la recherche de logiciel similaires, j'ai vu qu'il existait un "planewinapi", mais plus de lien valide .... sad
avatar
Menuisier of the Dead bientôt sur GBA !!!! :D

Projet en cours:
-Menuisier Of The Dead

118

À l'époque je devais déjà être sous XP. En mode compatibilité, ça ne va pas ?
Et sinon, avec XP Mode ? (selon ton W7)

119

La même, tu l'as essayé en compatibilité XP ? Il marchait sans souci... Si t'as un Linux, tu peux l'essayer dans Wine ? J'ai des vieux softs qui tournent avec et plus sous Windows grin

Sinon, tu peux recarder du côté de Graphic Studio (-> ticalc.org), mais malheureusement ce programme a toujours été assez buggué. A voir ce que t'arrives à en tirer.

(cross -> Pen^2, tu m'as hacké ma machine ou quoi ????? #trivtff#)

120

(Oué #trihutrihutrihu#)