Ce n'est pas vraiment une optimisation.
Le code généré sera le même, mais la deuxième version est plus difficile à lire (pour un humain).
« 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
. »
C'est une optimisation vraiment très simple à mettre en oeuvre, ça m'étonnerait franchement que tigcc génère des cmp #0,<ea> plutôt que des tst <ea>.
« 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
. »
Merci pour tout les gars...
J'ai fait un pong, y'en aurai pas qui voudrai le tester pour me dire ce qu'ils en pense (c'est un pong de débutant alors...de l' indulgence please...) ?
Y'a quelques bugs graphiques, le problème c'est que je n'arrive pas a effacer l'écran en mode GrayOn() , ça efface seulement le DARK_PLANE mais pas le light, vous n'aurriez pas une technique pour effacer seulement la balle, en fait pour effacer un sprite en particulier, je sais pas si c'est clair ce que je dis mais bon...
Ceux qui veulent tester mon jeu, contactez moi...
Tu peux effacer l'écran avec un memset sur le plane désiré.
Sinon, tu peux utiliser PortSet + ClrScr.
« 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
. »
GraySetAMSPlane plutôt qu'un PortSet direct. (Bon, il peut aussi appeler GrayGetPlane et PortSet à la main, mais la macro GraySetAMSPlane est là pour ça.)
Ne fonctionne pas s'il utilise un écran virtuel.
« 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
. »
Mais là il n'en utilise pas (cf. la description du problème).
Voilà, c'est envoyé, y'en a pas d'autres ? Allez y, profitez c'est gratuit !
Euh sinon, pour effacer les deux couche, LIGHT et DARK ce serait du genre:
...
GraySetAMSPlane(LIGHT_PLANE);
clrscr();
GraySetAMSPlane(DARK_PLANE);
clrscr();
Si je me trompe faîtes moi signe...
Et n'oubliez pas de me demander de vous envoyer mon jeu...
Ah ! oui au fait, y'a un truc en plus dans mon jeu, c'est un code pour avoir les missiles, vous faîtes dans le menu de sélection du mode (PLAYER VS PLAYER ou PLAYER VS CALC) F1 F1 F3 F2 F4 et la vous aurez les missies, ils vous permettent de givrer l'adversaire pendant un court instant, c'est le seul moyen de battre la calculatrice, elle est imbattable, je n'avais pas encore dévellopé l' I.A et j'ai changé de projet alors...
Allez SVP testez mon jeu...
Je veux bien que tu me l'envoie...
kamikazee@no-log.org
Et merci d'avoir posé certaines questions, car c'est celles que j'allais poser en venant ici !
C'est quoi la différence? Je sais juste que ClrScr garde la position du printf mais à part ça...
clrscr est fait pour être utilisé seulement avec les fonctions d'affichage de stdio.h qui ne gèrent pas vraiment les niveaux de gris, donc ce n'est pas la bonne fonction ici.
natto Le 13/09/2004 à 10:57 si ca te soule d'utiliser des routines merdiques de TIGCC (ams), tu peux utiliser Extgraph sur le site de la TICT, elle est tres bien !
納 豆パワー!
I becamed a natto!!!1!one!
Ok, j'ai trois questions:
1)que fait Extgraph ?
2)Quand j'utilise la fonction LCD_save, elle ne me sauve que la couche de NOIR et BLANC et non pas celle du gris, comment je peux faire pour sauver l'écran entier (Nv de gris).
3)Attention, la plus sauvage de toute, comment creer un scrolling?
Allez, @++
(merci pour ceux qui veulent tester mon jeu...)
natto Le 14/09/2004 à 02:43 attention 3 reponses en 1 : va sur le site de la TICT
納 豆パワー!
I becamed a natto!!!1!one!
Ok, je file sur le site de la TICT.
J'ai une question pour vraiment tout le monde, en fait c'est pour me repérer...
Est ce que chacun pourrai m'indiquer depuis combien de temps il programme sur TI.
Ca serai cool !
Pour ma part, j'ai commencé il y a 6 ans pour le Basic et il y a 2 ans pour le C
Je suis parti chercher des renseignements sur Extgraph mais sans succès, est ce que quelqu'un pourrait m'indiquer les nouvelles fonctions principales, en gros les pus importantes qu'elle apporte et m'expliquer un peu ce qu'elles font, merci d'avance !
Si tu télécharges le paquet, tu as une documentation en HTML.
bidoo Le 19/09/2004 à 16:56 [troll]aaaaa ne touche pas a extgraph !!! de maniere globale ce qu'elle propose est peut etre un peu mieux que ce que fais tigcc mais c'est vraiment bien loin de ce qui peut etre fais ( a par son FastCopyScreen_R) !! genlib a la rigeur ...[/troll]
la meilleure des librairies c'est la tienne !
ne (LIGHT_PLANE),*dp=GrayGetPlane (DARK_PLANE);
memset(lp,0,3840);memset(dp,0,3840);sinon, clrscr ca efface l'ecran LCD_MEM cad juste le noir et blanc donc pour effacer : void *lp=GrayGetPla
et de maniere generale n'efface pas l'ecran : si par exemple tu a 3 petit objets qui bouge, efface les chacun avec un xor si y'en a beaucoup plus utilise un buffer (void* buff=malloc(3840))affiche tous dedans a chaque fois et fais un memcpy sur l'ecran
Ok, merci, j'ai pas fait signe depuis un bon bout de temps, la Faq, les études et tout et tout...
Donc aujourd'hui je reviens vous emmerder.
Bon, ma question c'est que en fait j'ai un problème:
_keytest(RR_F1) et _keytest(RR_F5) entre en conflit dans mon programme, c.à.d que quand je maintient la touche F1 appuyée et bien la fonction qui est associée à la touche F5 se déclenche aussi est c'est assez embêtant...
J'ai utilisé la fonction _rowread() mais sans succès, ces deux touches sont en conflit, enfin je suis pas trop clair dans ce que je dis mais bon je sais pas comment l'expliquer alors voilà...
je vous donne l'exemple:
-> la touche F1 sert au joueur 1 de tirer
-> la touche F5 sert au joueur 2 de tirer
quand j'appuie sur F1, le joueur 1 tire et le joueur 2 tire aussi...
C'est un peu comme _keytest(RR_ESC), quand j'appuie sur ENTER ça fais le même affet...
Donc ma question c'est comment résoudre ce problème?
Merci à tous et à plus !!!
Zeph Le 24/09/2004 à 14:12 Tu as bien redirigé les interruptions 1 et 5 ?
Sinon regarde la doc de tigcc à propos de la fonction _rowread.
All right. Keep doing whatever it is you think you're doing.
------------------------------------------
Besoin d'aide sur le site ? Essayez
par ici :)