60

61

mercismile
avatar
納 豆パワー!
I becamed a natto!!!1!one!

62

bref, qu'attendez vous pour rejoindre manu dark angel pphd et plein d'autres programmeurs anonymes ?

GenLib RUUUUUUUUUUUUUULLLLLLLLLLLEEEEEEEEEEEEZZZZZZZZZZZZZZZZZ!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
avatar
納 豆パワー!
I becamed a natto!!!1!one!

63

bah moi j'ai appris à mer servir d'Xlib ect, et elle me va bien, donc pas le gout de réapprendre pour utiliser Genlib convenablement, ect ...
Non-Webmaster et non-programmeur du site. .Pour tout probleme ou question ,débrouillez vous avec les Webmasters .

«- Pas Moo ! ^^

64

Xlib Rulezsmile
XLib v1.00 Powerrrrrrrrrrrrrrrrrrrr!

65

TiMad a écrit :
Perso je n'aurai rien contre genlib, si elle n'etait pas si lente smile

mort de rire grin

66

RedHark >> tu es une fille (cf ton profil), tu aurais du mettre "morte de rire non" ??? mdr. grinrotfl
Non-Webmaster et non-programmeur du site. .Pour tout probleme ou question ,débrouillez vous avec les Webmasters .

«- Pas Moo ! ^^

67

Il me semble en lisant le post 64...
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é

68

peut-être bien Kevin. winkwink
Non-Webmaster et non-programmeur du site. .Pour tout probleme ou question ,débrouillez vous avec les Webmasters .

«- Pas Moo ! ^^

69

tien pphd, bench cette routine pour une abscisse de 0 a 100 que je rigole:happy
///////////////////////////////////////////////////////////////////////////////// //                    XLib: Harder Better Faster Stronger                      // ///////////////////////////////////////////////////////////////////////////////// // Fonction: XGSpriteT16x.. ///////////////////////////////////////////////////// void XGSpriteT16X8(register int X asm("d0"),register int X asm("d1"), register void *GMSprite asm("a0"));  void XGSpriteT16X16(register int X asm("d0"),register int X asm("d1"), register void *GMSprite asm("a0"));  void XGSpriteT16X24(register int X asm("d0"),register int X asm("d1"), register void *GMSprite asm("a0"));  void XGSpriteT16X32(register int X asm("d0"),register int X asm("d1"), register void *GMSprite asm("a0"));    asm(" XGSpriteT16X8:      move.w     %d3,-(%a7)      move.w          #0,%d3                                                        bra.s          XLIB_SpriteT16                                    XGSpriteT16X24:      move.w     %d3,-(%a7)      move.w          #2,%d3      bra.s          XLIB_SpriteT16 XGSpriteT16X32:      move.w     %d3,-(%a7)      move.w          #3,%d3      bra.s          XLIB_SpriteT16 XGSpriteT16X16:      move.w     %d3,-(%a7)      moveq          #1,%d3       XLIB_SpriteT16:      move.l          CGplan,%a1      add.w               #32,%d0      add.w               #32,%d1           add.w   %d1,%d1      move.w     %d0,%d2                          lsr.w          #4,%d0                          add.w          %d0,%d0                          and.w          #15,%d2                       add.w   0(%a1,%d1.w),%d0    add.w   %d0,%a1         tst.w          %d2      beq               SpriteT16_16X      cmp.w          #7,%d2      ble               SpriteT16_none22b      moveq          #16,%d1                           sub.w          %d2,%d1 SpriteT16_none2:      moveq          #0,%d0      moveq          #0,%d2      move.w     (%a0)+,%d0                                                                  lsl.l          %d1,%d0      move.w     (%a0)+,%d2                                                                    lsl.l          %d1,%d2      not.l          %d0      not.l          %d2           and.l          %d2,(%a1)      and.l          %d0,6080(%a1)      not.l          %d0      not.l          %d2      or.l          %d0,(%a1)      or.l          %d2,6080(%a1)      add.w          #38,%a1           moveq          #0,%d0      moveq          #0,%d2      move.w     (%a0)+,%d0                                                                  lsl.l          %d1,%d0      move.w     (%a0)+,%d2                                                                    lsl.l          %d1,%d2      not.l          %d0      not.l          %d2           and.l          %d2,(%a1)      and.l          %d0,6080(%a1)      not.l          %d0      not.l          %d2      or.l          %d0,(%a1)      or.l          %d2,6080(%a1)      add.w          #38,%a1           moveq          #0,%d0      moveq          #0,%d2      move.w     (%a0)+,%d0                                                                  lsl.l          %d1,%d0      move.w     (%a0)+,%d2                                                                    lsl.l          %d1,%d2      not.l          %d0      not.l          %d2           and.l          %d2,(%a1)      and.l          %d0,6080(%a1)      not.l          %d0      not.l          %d2      or.l          %d0,(%a1)      or.l          %d2,6080(%a1)      add.w          #38,%a1           moveq          #0,%d0      moveq          #0,%d2      move.w     (%a0)+,%d0                                                                  lsl.l          %d1,%d0      move.w     (%a0)+,%d2                                                                    lsl.l          %d1,%d2      not.l          %d0      not.l          %d2           and.l          %d2,(%a1)      and.l          %d0,6080(%a1)      not.l          %d0      not.l          %d2      or.l          %d0,(%a1)      or.l          %d2,6080(%a1)      add.w          #38,%a1           moveq          #0,%d0      moveq          #0,%d2      move.w     (%a0)+,%d0                                                                  lsl.l          %d1,%d0      move.w     (%a0)+,%d2                                                                    lsl.l          %d1,%d2      not.l          %d0      not.l          %d2           and.l          %d2,(%a1)      and.l          %d0,6080(%a1)      not.l          %d0      not.l          %d2      or.l          %d0,(%a1)      or.l          %d2,6080(%a1)      add.w          #38,%a1           moveq          #0,%d0      moveq          #0,%d2      move.w     (%a0)+,%d0                                                                  lsl.l          %d1,%d0      move.w     (%a0)+,%d2                                                                    lsl.l          %d1,%d2      not.l          %d0      not.l          %d2           and.l          %d2,(%a1)      and.l          %d0,6080(%a1)      not.l          %d0      not.l          %d2      or.l          %d0,(%a1)      or.l          %d2,6080(%a1)      add.w          #38,%a1           moveq          #0,%d0      moveq          #0,%d2      move.w     (%a0)+,%d0                                                                  lsl.l          %d1,%d0      move.w     (%a0)+,%d2                                                                    lsl.l          %d1,%d2      not.l          %d0      not.l          %d2           and.l          %d2,(%a1)      and.l          %d0,6080(%a1)      not.l          %d0      not.l          %d2      or.l          %d0,(%a1)      or.l          %d2,6080(%a1)      add.w          #38,%a1           moveq          #0,%d0      moveq          #0,%d2      move.w     (%a0)+,%d0                                                                  lsl.l          %d1,%d0      move.w     (%a0)+,%d2                                                                    lsl.l          %d1,%d2      not.l          %d0      not.l          %d2           and.l          %d2,(%a1)      and.l          %d0,6080(%a1)      not.l          %d0      not.l          %d2      or.l          %d0,(%a1)      or.l          %d2,6080(%a1)      add.w          #38,%a1           dbra          %d3,SpriteT16_none2      move.w  (%a7)+,%d3      rts       SpriteT16_16X:      move.l     (%a0)+,%d0                                                                  not.l          %d0      and.w          %d0,6080(%a1)      swap          %d0      and.w          %d0,(%a1)      not.l          %d0      or.w          %d0,(%a1)      swap          %d0      or.w          %d0,6080(%a1)      add.w          #38,%a1      move.l     (%a0)+,%d0                                                                  not.l          %d0      and.w          %d0,6080(%a1)      swap          %d0      and.w          %d0,(%a1)      not.l          %d0      or.w          %d0,(%a1)      swap          %d0      or.w          %d0,6080(%a1)      add.w          #38,%a1      move.l     (%a0)+,%d0                                                                  not.l          %d0      and.w          %d0,6080(%a1)      swap          %d0      and.w          %d0,(%a1)      not.l          %d0      or.w          %d0,(%a1)      swap          %d0      or.w          %d0,6080(%a1)      add.w          #38,%a1      move.l     (%a0)+,%d0                                                                  not.l          %d0      and.w          %d0,6080(%a1)      swap          %d0      and.w          %d0,(%a1)      not.l          %d0      or.w          %d0,(%a1)      swap          %d0      or.w          %d0,6080(%a1)      add.w          #38,%a1      move.l     (%a0)+,%d0                                                                  not.l          %d0      and.w          %d0,6080(%a1)      swap          %d0      and.w          %d0,(%a1)      not.l          %d0      or.w          %d0,(%a1)      swap          %d0      or.w          %d0,6080(%a1)      add.w          #38,%a1      move.l     (%a0)+,%d0                                                                  not.l          %d0      and.w          %d0,6080(%a1)      swap          %d0      and.w          %d0,(%a1)      not.l          %d0      or.w          %d0,(%a1)      swap          %d0      or.w          %d0,6080(%a1)      add.w          #38,%a1      move.l     (%a0)+,%d0                                                                  not.l          %d0      and.w          %d0,6080(%a1)      swap          %d0      and.w          %d0,(%a1)      not.l          %d0      or.w          %d0,(%a1)      swap          %d0      or.w          %d0,6080(%a1)      add.w          #38,%a1      move.l     (%a0)+,%d0                                                                  not.l          %d0      and.w          %d0,6080(%a1)      swap          %d0      and.w          %d0,(%a1)      not.l          %d0      or.w          %d0,(%a1)      swap          %d0      or.w          %d0,6080(%a1)      add.w          #38,%a1      dbra          %d3,SpriteT16_16X      move.w  (%a7)+,%d3      rts SpriteT16_none22b:      moveq          #0,%d0      moveq          #0,%d1      move.w     (%a0)+,%d0                                                                  move.w     (%a0)+,%d1                                                                    swap          %d0      swap          %d1      lsr.l          %d2,%d0      lsr.l          %d2,%d1      not.l          %d0      not.l          %d1      and.l          %d1,(%a1)      and.l          %d0,6080(%a1)      not.l          %d1      not.l          %d0      or.l          %d0,(%a1)      or.l          %d1,6080(%a1)      add.w          #38,%a1      moveq          #0,%d0      moveq          #0,%d1      move.w     (%a0)+,%d0                                                                  move.w     (%a0)+,%d1                                                                    swap          %d0      swap          %d1      lsr.l          %d2,%d0      lsr.l          %d2,%d1      not.l          %d0      not.l          %d1      and.l          %d1,(%a1)      and.l          %d0,6080(%a1)      not.l          %d1      not.l          %d0      or.l          %d0,(%a1)      or.l          %d1,6080(%a1)      add.w          #38,%a1      moveq          #0,%d0      moveq          #0,%d1      move.w     (%a0)+,%d0                                                                  move.w     (%a0)+,%d1                                                                    swap          %d0      swap          %d1      lsr.l          %d2,%d0      lsr.l          %d2,%d1      not.l          %d0      not.l          %d1      and.l          %d1,(%a1)      and.l          %d0,6080(%a1)      not.l          %d1      not.l          %d0      or.l          %d0,(%a1)      or.l          %d1,6080(%a1)      add.w          #38,%a1      moveq          #0,%d0      moveq          #0,%d1      move.w     (%a0)+,%d0                                                                  move.w     (%a0)+,%d1                                                                    swap          %d0      swap          %d1      lsr.l          %d2,%d0      lsr.l          %d2,%d1      not.l          %d0      not.l          %d1      and.l          %d1,(%a1)      and.l          %d0,6080(%a1)      not.l          %d1      not.l          %d0      or.l          %d0,(%a1)      or.l          %d1,6080(%a1)      add.w          #38,%a1      moveq          #0,%d0      moveq          #0,%d1      move.w     (%a0)+,%d0                                                                  move.w     (%a0)+,%d1                                                                    swap          %d0      swap          %d1      lsr.l          %d2,%d0      lsr.l          %d2,%d1      not.l          %d0      not.l          %d1      and.l          %d1,(%a1)      and.l          %d0,6080(%a1)      not.l          %d1      not.l          %d0      or.l          %d0,(%a1)      or.l          %d1,6080(%a1)      add.w          #38,%a1      moveq          #0,%d0      moveq          #0,%d1      move.w     (%a0)+,%d0                                                                  move.w     (%a0)+,%d1                                                                    swap          %d0      swap          %d1      lsr.l          %d2,%d0      lsr.l          %d2,%d1      not.l          %d0      not.l          %d1      and.l          %d1,(%a1)      and.l          %d0,6080(%a1)      not.l          %d1      not.l          %d0      or.l          %d0,(%a1)      or.l          %d1,6080(%a1)      add.w          #38,%a1      moveq          #0,%d0      moveq          #0,%d1      move.w     (%a0)+,%d0                                                                  move.w     (%a0)+,%d1                                                                    swap          %d0      swap          %d1      lsr.l          %d2,%d0      lsr.l          %d2,%d1      not.l          %d0      not.l          %d1      and.l          %d1,(%a1)      and.l          %d0,6080(%a1)      not.l          %d1      not.l          %d0      or.l          %d0,(%a1)      or.l          %d1,6080(%a1)      add.w          #38,%a1      moveq          #0,%d0      moveq          #0,%d1      move.w     (%a0)+,%d0                                                                  move.w     (%a0)+,%d1                                                                    swap          %d0      swap          %d1      lsr.l          %d2,%d0      lsr.l          %d2,%d1      not.l          %d0      not.l          %d1      and.l          %d1,(%a1)      and.l          %d0,6080(%a1)      not.l          %d1      not.l          %d0      or.l          %d0,(%a1)      or.l          %d1,6080(%a1)      add.w          #38,%a1      dbra          %d3,SpriteT16_none22b      move.w  (%a7)+,%d3      rts ");
XLib v1.00 Powerrrrrrrrrrrrrrrrrrrr!

70

Pour les paresseux: #define USE_TI89 #define USE_TI92P #include "genlib.h" ///////////////////////////////////////////////////////////////////////////////// // Xlib              #include "_X_Lib.h" #include "_X_Plane.h"                                                       #include "a.h" #include "_X_Lib_MACRO.h" ///////////////////////////////////////////////////////////////////////////////// #define xd 0 #define xf 200 #define yd 0 #define yf 100 unsigned short spritedata[] =       {0xaaaa,0x5555,0xaaaa,0x5555,0xaaaa,0x5555,0xaaaa,0x5555,       0xaaaa,0x5555,0xaaaa,0x5555,0xaaaa,0x5555,0xaaaa,0x5555}; BGS bgs16 = {16, 2}; SPRITE_16 spr16[1] =      {{      {0xffff,0xffff},      {0xcccd,0xffff},      {0xb333,0xffff},      {0xb333,0xffff},      {0xcccd,0xffff},      {0xcccd,0xffff},      {0xb333,0xffff},      {0xb333,0xffff},      {0xcccd,0xffff},      {0xcccd,0xffff},      {0xb333,0xffff},      {0xb333,0xffff},      {0xcccd,0xffff},      {0xcccd,0xffff},      {0xb333,0xffff},      {0xffff,0xffff}}}; BGS bgs32 = {32, 2}; BGS bgs64 = {64, 4}; SCR_RECT full = {{0,0,239,127}}; BITMAP bmp = {32,32}; POINT P1 = {10,10}, P2 = {150,20}, P3 = {30,90}; void _main(void)      {      PUSH_DSCREEN(DSCREEN *Scr);          // DScreen + Adress of the DScreen       short     x, y;      volatile short z;      unsigned long count ;                 z = 0;      //Init GENLIB      gl_init();      gl_set_dscreen_function(Scr);      gl_set_dscreen_int(Scr);      gl_cls();      gl_set_spr_xy(0, 0);      gl_set_spr_tile(spr16);            // Init XGLib           // Hard patch so that XGLib uses the allocated DSCREEN            // Instead of XGOn()           tigcc0=(void *) LIGHT_SCREEN(Scr);            tigcc1=(void *) DARK_SCREEN(Scr);       XGPlanc(XNewGPlan()); ///////////////////////////////////////////////////////////////////////////////// // Sprite16 Bench                                                              // /////////////////////////////////////////////////////////////////////////////////      gl_cls();      count = 0;      gl_timer = 0;      for (y=yd;y<yf;y++)          for (x=xd;x<xf;x++)           {            count++;                        XGSpriteT16x16(x,y, spritedata);           }      glaux_text(0,0,C_BLACK,T_LARGE,"XT16: %ld Spr/s", 90*count/gl_timer);      gl_wait_a_key();      gl_cls();      count = 0;      gl_timer = 0;      for (y=yd;y<yf;y++)          for (x=xd;x<xf;x++)           {            count++;            gl_put_sprite_16(x,y,z);           }      glaux_text(0,0,C_BLACK,T_LARGE,"GT16: %ld Spr/s", 90*count/gl_timer);      gl_wait_a_key(); // Fin                                                                         //      PortRestore();      gl_quit(); }



Resultat bench:
XLib transparence: 3887 Spr/sec
Genlib transparence: 3813

Sauf bug de ma routine (ce qui peux arriver car je l'ai programmer en 10 minute a partir de celle maskée) Xlib est plus rapide que genlib....
XLib v1.00 Powerrrrrrrrrrrrrrrrrrrr!

71

1. C'est pas moi Redhark (Regarder l'horraire).
2. TiMad : Arf.
a. Genlib fait du vrai clipping, pas ta routine.
b. Genlib fait une indirection de tiles, pas ta routine.
c. Genlib fait une correction de coordonnees, pas ta routine.
d. Ton bench a un gros biais.
e. Ta routine presente est bine bugguee grin
f. Ta routine ne fait pas de la transparence mais du masquage.
g. Tu dois tester sous Vti en plus (Pure conjecture).


72

1. Ma routine n'as pas besoin de gere le cliping (GPLan)
2. C'est du maskage qui doit donner le meme resultat que la transparence.
3. Si elle est bugué, j'aimerai bien savoir ou, car squale92 n'a pas trouver le bug.
4. correction de coordonnées, rien a voir avec une telle routine.
5. Je teste sur ti92+ HW2.
etc...
XLib v1.00 Powerrrrrrrrrrrrrrrrrrrr!

73

TiMad a écrit :
1. Ma routine n'as pas besoin de gere le cliping (GPLan)
2. C'est du maskage qui doit donner le meme resultat que la transparence.
3. Si elle est bugué, j'aimerai bien savoir ou, car squale92 n'a pas trouver le bug.
4. correction de coordonnées, rien a voir avec une telle routine.
5. Je teste sur ti92+ HW2. etc...


a.. Ok, j'affiche a des coordonnees -33,-33. Oups, plantage grin
b. C'est bugguee a donf !
c. Et le biais ?
d. Pourtant genlib le fait en plus.
e. J'arrive pas a te croire desole.

74

T'arrive pas a me croir, mais c'est pourtant vrai...
tu affiches souvent des coordonnées en -33;y? bein faudrai ptetre apprendre a programmer... (NB: je repond betement a des accusation bete, car tu sais tres bien que cette situation ne se presente jamais...)

Sinon je vais tester la routine.. je verai apres
XLib v1.00 Powerrrrrrrrrrrrrrrrrrrr!

75

La routine marche parfaitement:
Blanc= transaprence
Gris claire/foncé, noir sont afficher sans probleme... quelque soit la couleur de fond!
XLib v1.00 Powerrrrrrrrrrrrrrrrrrrr!

76

TiMad a écrit :
tu affiches souvent des coordonnées en -33;y? bein faudrai ptetre apprendre a programmer... (NB: je repond betement a des accusation bete, car tu sais tres bien que cette situation ne se presente jamais...)

La reponse est : OUI. en toute franchise. Si tu ne veux pas que ca soit afficher, il faut rajouter un test. Or Genlib integre ce test... Et dans mes jeux, je ne peux jamais predire ou va se ballader la petite bebete dans l'ecran. Surtout que l'ecran de 89 est petit.
TiMad a écrit :
La routine marche parfaitement:
Blanc= transaprence Gris claire/foncé, noir sont afficher sans probleme... quelque soit la couleur de fond!


En plus tu sais pas debuggue. Mais bon, peut etre que la routine que tu as mise sur ce forum n'est pas celle utilise wink

77

TiMad
a écrit : tu affiches souvent des coordonnées en -33;y? bein faudrai ptetre apprendre a programmer... (NB: je repond betement a des accusation bete, car tu sais tres bien que cette situation ne se presente jamais...)


Lol, faudrait peut-etre que tu ai programmé un jeu au moins une fois dans ta vie avant de dire des conneries pareilles. De toute maniere il faut faire un test pour savoir si le sprite est en dehors de l'écran, avec Genlib c'est la routine de sprite qui s'occupe de tout, en assembleur optimisé, alors qu'avec XLib c'est le programmeur qui doit le faire, et ce sera alors bien souvent en C... sans commentaire.
So much code to write, so little time.

78

RedHark=PpHd?
morte de rire grin
oui,je confirme que je ne suis pas pphd smile

79

je doute redhark, je suis pret à parier
avatar
納 豆パワー!
I becamed a natto!!!1!one!

80

pphd: je suis desole, mais il n'y a pas de bug... d'ailleur si il y en avait un, tu te serais empresser de me le dire.. et Squale92 l'aurai detecter sachant que son projet utilise pas mal cette routine...

Et pour l'histoire des -33, arretez de me faire rire... vous allez afficher 500 sprites en -33.. vous avez vraiment aucun argument valable.. le teste se fait tres bien en C.. et en plus l'argument de l'ecran de la 89 est completement stupide, car c'est strictement le meme probleme que sur 92+. De plus ce teste est indispensable meme avec genlib.. a moins que vous aimez perdre du temps pour decorer des ecrans fictif (mega lol)
XLib v1.00 Powerrrrrrrrrrrrrrrrrrrr!

81

>Et pour l'histoire des -33, arretez de me faire rire... vous allez afficher 500 sprites en -33.. vous avez vraiment aucun argument valable..

L'argument c'est que PpHd et moi on a deja programmé des jeux, on sait de quoi on parle... alors que toi...

>le teste se fait tres bien en C..

Mais c'est plus lent.
So much code to write, so little time.

82

Heu simple question? est ce que tu sais ce que j'ai programmer en dehors des TI68k?? je ne pense pas.. alors bon retourne chopper des sources pour te les appropriersmile
XLib v1.00 Powerrrrrrrrrrrrrrrrrrrr!

83

TiMad
a écrit : Heu simple question? est ce que tu sais ce que j'ai programmer en dehors des TI68k?? je ne pense pas..


Pas grand chose on dirait.
alors bon retourne chopper des sources pour te les approprier


Et que dire de la TIGCC Team qui reprend les sources de GCC, et Rusty qui reprend les sources de MAME pour VTI... oh la la pas bien du tout.
So much code to write, so little time.

84

t'1 TImad excuse, mais t'es devenu con là gol La gestion du clipping comprend aussi le test des coordonnées illégales. Et dans un jeu, je confirme, il arrive très souvent que les coordonnées soient illégales.
avatar
Un site complet sur lequel vous trouverez des programmes et des jeux pour votre calculatrice TI 89 / Titanium / 92+ / Voyage 200 : www.ti-fr.com.
Quelques idées personnelles ici.

85

Mais c'est plus rapide si le test est effectué dans le programme. Cf. mes posts n° 73 et 80 que je n'ai pas envie de répéter.
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é

86

la question etant: faut il penaliser la routine a chaque fois alors que l'on a besoin de ce teste que dans des cas tres particuliers?

Ma reponse: > surment pas, et Xlib ne fera jamais de clipping en dehors de la bordure des 32 pxl... il faudra utiliser le macro de Kevin si vous en avez besoin (thx kevin)
XLib v1.00 Powerrrrrrrrrrrrrrrrrrrr!

87

Oui, rajoute-la quand-même dans tes headers (avec une version pour chaque routine).
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é

88

La je commence a etre fatigue de me repeter. Je suis epuise par votre ignorance.
Tant pis.

89

TiMad> je suis d'avis que tu devrai inclure la macro de Kevin.
Laisse ensuite le programmeur choisir de l'utiliser, ou d'appeler directement la fonction...
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

90

PpHd: chaqun sa part d'ignorance:à)
XLib v1.00 Powerrrrrrrrrrrrrrrrrrrr!