Accueil Ti-Gen Foire Aux Questions Chat sur le chan #tigcc sur IRC
Liste des membres Rechercher Aide
Bienvenue Invité !   Se connecter             Mes sujets   
Administrer
0 membre(s) et 1 visiteur(s) actif(s) durant les 5 dernières minutes Utilisateurs actifs : Aucun membre + 1 visiteur
Avant de poster sur le forum, il y a des régles de bases à respecter pour une bonne entente et un respect de tous.
Veuillez lire la charte du forum.
  :: Index » Forum Ti68K » Programmation C » Affichage d'une image (7 réponse(s))
./POST DE DEPART (post n°0)   Marquer comme non lu.
Invité Ecrit le: Samedi 26 mars 2005 à 19:19 Déconnecté(e)    
 
J'ai besoin d'afficher une image en 4NVG en plein écran, à partir de 2 planes (light et dark).
J'ai essayé en me basant sur les tutoriaux de la TICT et sur les sources de BomberDude mais je n'arrive pas à afficher correctement une image. Soit il y a un bug d'affichage soit rien ne s'affiche.
Comment est-ce que je peux faire ?
    
./Post n°1   Marquer comme non lu.
Kevin Kofler Ecrit le: Samedi 26 mars 2005 à 19:25 Déconnecté(e)    Voir le profil de Kevin Kofler Envoyer un email à Kevin Kofler Visiter le site WEB de Kevin Kofler Envoyer un message privé à Kevin Kofler  


N'oublie pas que les plans ne sont a priori pas adjacents, donc il faut 2 memcpy séparés, un par plan.
Membre de l'équipe de TIGCC: http://tigcc.ticalc.org
Mainteneur du portage Linux/Unix de TIGCC: http://tigcc.ticalc.org/linux/
Membre de l'équipe de CalcForge: http://www.calcforge.org:70/

Participez à la reprise de Ti-Gen!
    
./Post n°2   Marquer comme non lu.
Sasume Ecrit le: Samedi 26 mars 2005 à 20:26 Déconnecté(e)    Voir le profil de Sasume Envoyer un email à Sasume Visiter le site WEB de Sasume Envoyer un message privé à Sasume  

Poste ton code (pas tout non plus ! Isole l'important). Tu ne donnes pas suffisemment d'informations.
    
./Post n°3   Marquer comme non lu.
Invité Ecrit le: Dimanche 27 mars 2005 à 09:51 Déconnecté(e)    
 
J'ai deux variables :
static unsigned char title_light[] = {} (je ne met pas ce qu'il y a dedans parce que c'est un peu long, mais c'est du type 0xyy, fait avec image Studio)
et static unsigned char title_dark[] = {}.

Dans main j'ai adapté le code du s1p1 de la TICT et ça donne
clrscr();
GrayOn();
unsigned char* plane1;
unsigned char* plane2;
unsigned char* dest1;
unsigned char* dest2;
unsigned char* src1;
unsigned char* src2;
int loop;
plane1 = GetPlane(0);
plane2 = GetPlane(1);
dest1 = plane1;
dest2 = plane2;
src1 = title_light;
src2 = title_dark;
if (!TI89) {
memset(plane1,0,LCD_SIZE);
memset(plane2,0,LCD_SIZE);
dest1 += ((128-100)*30)/2 + ((240-160)/8)/2;
dest2 += ((128-100)*30)/2 + ((240-160)/8)/2;
}
for (loop=0;loop<100;loop++,src1+=20,src2+=20,dest1+=30,dest2+=30) {
memcpy(dest1,src1,20);
memcpy(dest2,src2,20);
}
ngetchx();

En testant avec une image quelconque, ça me donne :
http://raphaelfg.free.fr/screen.bmp

Donc en fait j'ai deux problèmes :
Déjà je trouve qu'il y a un peu beaucoup de code pour afficher deux plans en 4 NVG,
et en plus j'ai un bug alors que j'ai respecté les dimensions de l'image du s1p1 et que je n'ai changé que layer1 en title_light et layer2 en title_dark.

EDIT : Smileys envahissants désactivés.
-Edité le Dimanche 27 mars 2005 à 09:52 par AS-
    
./Post n°4   Marquer comme non lu.
Kevin Kofler Ecrit le: Dimanche 27 mars 2005 à 12:08 Déconnecté(e)    Voir le profil de Kevin Kofler Envoyer un email à Kevin Kofler Visiter le site WEB de Kevin Kofler Envoyer un message privé à Kevin Kofler  


Ton code est fait pour une TI-89, et tu testes sur une TI-92+/V200, donc ça ne va pas.
Un écran de TI-92+/V200 est simple à copier, il suffit d'un memcpy de 3840 octets pour chaque plan.
Membre de l'équipe de TIGCC: http://tigcc.ticalc.org
Mainteneur du portage Linux/Unix de TIGCC: http://tigcc.ticalc.org/linux/
Membre de l'équipe de CalcForge: http://www.calcforge.org:70/

Participez à la reprise de Ti-Gen!
    
./Post n°5   Marquer comme non lu.
Invité Ecrit le: Dimanche 27 mars 2005 à 12:42 Déconnecté(e)    
 
Ah ça y est j'ai compris ! Ca marche super bien ! Merci ! :)
-Edité le Dimanche 27 mars 2005 à 14:25 par AS-
    
./Post n°6   Marquer comme non lu.
Invité Ecrit le: Dimanche 27 mars 2005 à 19:19 Déconnecté(e)    
 
Une petite question, comment fait-on pour afficher une sprite de la taille d'un ecran 89 sur 92 pour que celle ci soir centré et pas en haut à gauche ?
    
./Post n°7   Marquer comme non lu.
Kevin Kofler Ecrit le: Dimanche 27 mars 2005 à 19:22 Déconnecté(e)    Voir le profil de Kevin Kofler Envoyer un email à Kevin Kofler Visiter le site WEB de Kevin Kofler Envoyer un message privé à Kevin Kofler  


Bah, tu calcules les coordonnées.
(240-160)/2=40
(128-100)/2=14
Membre de l'équipe de TIGCC: http://tigcc.ticalc.org
Mainteneur du portage Linux/Unix de TIGCC: http://tigcc.ticalc.org/linux/
Membre de l'équipe de CalcForge: http://www.calcforge.org:70/

Participez à la reprise de Ti-Gen!
    
  :: Index » Forum Ti68K » Programmation C » Affichage d'une image (7 réponse(s))
Pages : 1/1     « [1] » »|

.Répondre à ce sujet
Les boutons de code
[B]old[I]talic[U]nderline[S]trikethrough[L]ine Flip Hori[Z]ontallyFlip [V]erticallySha[D]ow[G]low[S]poilerCode [G][C]ite
Bullet [L]istList Item [K] Link [H][E]mail[P]icture SmileysHelp
Couleurs :
Saisissez votre message
Activer les smileys
     

Forum de Ti-Gen v3.0 Copyright ©2004 by Geoffrey ANNEHEIM
Webmaster: Kevin KOFLER, Content Admins: list, Server Admins: Tyler CASSIDY and Kevin KOFLER, DNS Admin: squalyl
Page générée en 61.22ms avec 22 requetes