1

J'ai un problème : je sauvegarde un écran avec :

BitmapGet(&a_sauver, buffer1);

et j'ai précédemment déclaré:

char buffer1 [BITMAP_HDR_SIZE + 100*160/8];

SCR_RECT a_sauver = {{0, 0, 160, 100}};
SCR_RECT zone_clip = {{0, 0, 160, 100}};

et pour rappeller l'écran j'utilise :

BitmapPut(0,0,buffer1,&zone_clip,A_REPLACE);

mais le pb c'est que je n'arrive pas à quitter le prog sans une barre noire.

ps : jutilise _rowread.

vous avez une idée?
François BALLAND

Site Ti : http://www.balland.org

2

Ton SCR_RECT est trop grand et ne rentre pas dans ton buffer. C'est:
SCR_RECT a_sauver = {{0, 0, 159, 99}};
SCR_RECT zone_clip = {{0, 0, 159, 99}};

qu'il faut mettre. Et tu devrais prévoir l'écran de la TI-92+ tout de suite, ça t'éviterait de devoir te fatiguer pour un éventuel portage, et tu pourrais utiliser un simple memcpy plutôt que BitmapGet qui est assez lent.
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é

3

tien aussi des blem avec des rectangles ? rotflrotflgrin
Casio a quand meme un certains merite:
ils ont inventé les calculatrices jettables :D.

4

waaah! tout ca pour un pixel? J'en ai paasé des heures a rechercher l'erreur fou. En tout cas merci et bonne chance avec les rectangles progman!! top
François BALLAND

Site Ti : http://www.balland.org

5

Mais suis plutôt le 2ème conseil de kévin : utilise des memcpy.
unsigned char ecran[3840];
pour sauver l'écran :
memcpy(ecran,0x4C00,3840);
ou
LCD_save(ecran);
pour le restaurer :
memcpy(0x4C00,ecran,3840);
ou
LCD_restore(ecran);

Voilà et tu peux allouer la var ecran en RAM pour ne pas utiliser la pile.

6

aah oui c'est bien! c'est plus rapide! comme kevin l'a dit! gringringringringringringringrin
[edit]Edité par flow le 31-03-2002 à 19:23:43[/edit]
François BALLAND

Site Ti : http://www.balland.org

7

exact.
Kévin l'a pourtant déjà dit dans la dernière ligne de son post 2.

8

euh pour l'écran entier LCD_save /LCD_restore ça va très bien
(je savais pas ke ct equivalent à memcpy)
the car's on fire and there's no driver at the wheel
and the sewers are all muddied with a thousand lonely suicides
and a dark wind blows

GYBE! Dead Flag Blue

9

LCD_save et LCD_restore sont des macros qui font appel à memcpy
http://tigcc.ticalc.org/doc/graph.html#LCD_save
http://tigcc.ticalc.org/doc/graph.html#LCD_restore
avatar
Tutorial 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

10

ma technique est largement suffisante au point de vue vitesse (c pas un jeu...)
donc je ne vais pas changer...
François BALLAND

Site Ti : http://www.balland.org