1

J'aimerai afficher des messages dans la status bar une fois mon programme terminé. Mais preos redessine l'écran home et m'efface tout.
Existe-t-il un moyen pour que preos ne redessine pas ?

2

Oui, il s'agit d'un symbole à exporter dans ton prog. Regarde dans le sdk je crois que ça s'appelle _nosavescreen.
avatar« Quand le dernier arbre sera abattu, la dernière rivière empoisonnée, le dernier poisson capturé, alors vous découvrirez que l'argent ne se mange pas. »

3

Tout a fait, Sasuma.

4

ok, j'ai vu dans tios.h (mais bon, j'ai du faire un grep pour le trouver).
Par contre, là je suis en C.
en assembleur, pour exporter un symbole, c'est xdef. Y'a un moyen de le faire en C ? je ne pense pas que cela corresponde à extern.... (j'ai aussi essayé, ca marche pas).
Faut que je fasse un asm("...."); ?

5

Bizarre, je ne trouve rien.
Il faut déclarer une variable globale (non static) qui s'appelle _nosavescreen, comme ça le symbole sera exporté et le linker fera son boulot.
ort _nosavescreen;Donc par exemple :sh

VE_SCREEN dans ton fichier source que le header kernel.h teste et ajoute ce qu'il faut lui-même :#ifdef NO_SAVE_SCREEN short _nosavescreen; #endifMais ce serait plus élégant de faire un #define NO_SA
Mais ça ne serait pas terrible si le header était inclus dans plusieurs fichiers car ça multiplierait les définitions de la variable _nosavescreen.
Cela dit, c'est déjà ce qui est fait pour détecter le modèle cible...
avatar« Quand le dernier arbre sera abattu, la dernière rivière empoisonnée, le dernier poisson capturé, alors vous découvrirez que l'argent ne se mange pas. »

6

Sinon, finalement, faire un asm(" xdef _nosavescreen"); est peut-être ce qu'il y a de plus propre.
Qu'en penses-tu PpHd ?
avatar« Quand le dernier arbre sera abattu, la dernière rivière empoisonnée, le dernier poisson capturé, alors vous découvrirez que l'argent ne se mange pas. »

7

Le linkeur optmise les multiples references a _nosavescreen de lui meme, et les enleve.

8

je comprend pas, il le prend pas en compte, sous quelque forme que ce soit: avec asm(...), short _no...

J'ai même pensé que c'était un pb avec mes paramètres de compilation, mais même en les enlevant, ca marche pas.
Voila comment je compile :

hibou@i6000 ~/prog/ti/hibview/src $ make
Building file: comp.c
tigcc -c -Os -Wall -W -Wwrite-strings -ffunction-sections -fdata-sections -Werror-implicit-function-declaration -WA,-t comp.c -I/home/hibou/prog/ti/hibview/src/../../hiblib/lib/ -I/home/hibou/prog/ti/hibview/src/../../hiblib/liba/ -I/home/hibou/prog/ti/hibview/src/../../preos/sdk/include/c/ -DUSE_TI89 -DUSE_TI92PLUS -DUSE_V200
comp.c: In function 'uncomp':
comp.c:41: warning: unused variable 'ret'
Building file: hibview.c
tigcc -c -Os -Wall -W -Wwrite-strings -ffunction-sections -fdata-sections -Werror-implicit-function-declaration -WA,-t hibview.c -I/home/hibou/prog/ti/hibview/src/../../hiblib/lib/ -I/home/hibou/prog/ti/hibview/src/../../hiblib/liba/ -I/home/hibou/prog/ti/hibview/src/../../preos/sdk/include/c/ -DUSE_TI89 -DUSE_TI92PLUS -DUSE_V200
Building file: options.c
tigcc -c -Os -Wall -W -Wwrite-strings -ffunction-sections -fdata-sections -Werror-implicit-function-declaration -WA,-t options.c -I/home/hibou/prog/ti/hibview/src/../../hiblib/lib/ -I/home/hibou/prog/ti/hibview/src/../../hiblib/liba/ -I/home/hibou/prog/ti/hibview/src/../../preos/sdk/include/c/ -DUSE_TI89 -DUSE_TI92PLUS -DUSE_V200
Linking the program : hibview.??z
ld-tigcc -o hibview comp.o hibview.o options.o /usr/ti-linux-gnu/lib/tigcc.a /home/hibou/prog/ti/hibview/src/../../hiblib/liba//hibliba.a --remove-unused --optimize-relocs --optimize-code --cut-ranges --reorder-sections --merge-constants --omit-bss-init
Copying files
********************** hibview.??z done
Copying files
-rw-r--r-- 1 hibou users 25695 nov 6 17:36 ../hiblib.89z
-rw-r--r-- 1 hibou users 16551 nov 6 17:36 ../hibview.89z

une idée ?

9

Quelle version de PreOS ?

10

11

PpHd :
Le linkeur optmise les multiples references a _nosavescreen de lui meme, et les enleve.
Il fait ça pour tous les symboles ou seulement certains particuliers ?
avatar« Quand le dernier arbre sera abattu, la dernière rivière empoisonnée, le dernier poisson capturé, alors vous découvrirez que l'argent ne se mange pas. »

12

En principe, seulement pour les variables non initialisées... Mais ça n'a rien de spécifique à (TI)GCC, c'est spécifié par le standard C ^^

13

hibou> Avec TIGCC, il faut utiliser un nom plus explicite : _flag_2.
avatar« Quand le dernier arbre sera abattu, la dernière rivière empoisonnée, le dernier poisson capturé, alors vous découvrirez que l'argent ne se mange pas. »

14

de quoi parles-tu ?

15

La version tigcc de _no_savescreen avec son nom tellement intuitif grin
avatarQue cache le pays des Dieux ? - Forum Ghibli - Forum Littéraire

La fin d'un monde souillé est venue. L'oiseau blanc plane dans le ciel annonçant le début d'une longue ère de purification. Détachons-nous à jamais de notre vie dans ce monde de souffrance. Ô toi l'oiseau blanc, l'être vêtu de bleu, guide nous vers ce monde de pureté. - Sutra originel dork.

16

_flag_2 est l'équivalent de _nosavescreen ??!!?! confus ?!??!!?!

17

Oui.
avatar« Quand le dernier arbre sera abattu, la dernière rivière empoisonnée, le dernier poisson capturé, alors vous découvrirez que l'argent ne se mange pas. »

18

19

C'est ça le progrès chapo
avatarQue cache le pays des Dieux ? - Forum Ghibli - Forum Littéraire

La fin d'un monde souillé est venue. L'oiseau blanc plane dans le ciel annonçant le début d'une longue ère de purification. Détachons-nous à jamais de notre vie dans ce monde de souffrance. Ô toi l'oiseau blanc, l'être vêtu de bleu, guide nous vers ce monde de pureté. - Sutra originel dork.

20

pas mal, ça oblige à avoir la doc sous la main pour paramétrer les flags sick
avatarMon journal de bord <flux rss manuel> asTI68k : WIP </flux>

Le modernisme ne diffère guère de la libre pensée absolue que par sa prétention de demeurer catholique.

21

Martial Demolins :
pas mal, ça oblige à avoir la doc sous la main pour paramétrer les flags sick.gif

et la doc de tigcc ne donne que les trois flags de modèle de calc...
avatarTutorial C (TI-89/92+/v200) - Articles Développement Web (PHP, Javascript, ...)
« What is the sound of Perl? Is it not the sound of a wall that people have stopped banging their heads against? » - Larry Wall

22

En gros ça oblige à faire de l'archéologie, à les rentrer sur tiwiki (s'ils n'y sont pas déjà), ou à poser la question sur un forum.
avatarQue cache le pays des Dieux ? - Forum Ghibli - Forum Littéraire

La fin d'un monde souillé est venue. L'oiseau blanc plane dans le ciel annonçant le début d'une longue ère de purification. Détachons-nous à jamais de notre vie dans ce monde de souffrance. Ô toi l'oiseau blanc, l'être vêtu de bleu, guide nous vers ce monde de pureté. - Sutra originel dork.

23

ah ok, je comprends un peu mieux pourquoi _flag_2 en lisant la doc tigcc.
effectivement ca mérite une entrée dans le wiki.