1

Bon voila, alors que j'etait en train de programmer un joypad, j'ai remarquer une dificulte pour associer des touche de jeu pour la v200.

En effet pour le moment j'avais mis cela comme equivalence:

89 | 92+

haut bas gauche droite esc enter apps <=> haut bas gauche droite esc enter apps
Les 6 boutons d'actions
2nd <=> F1
shift <=> F5
diam<=> F2
alpha<=> F6
home<=> F3
Mode<=> F7

Ce joypad etait plutot bien niveau prise en main, il etait aussi pratique sur 89 que sur 92+, mais sur V200, je sais pas quoi mettre comme bouton d'action sad((
XLib v1.00 Powerrrrrrrrrrrrrrrrrrrr!

2

Autre question tres connesmile
comment on sur quel calc le prog est lancé? je ne trouve pas la fonction ;((
XLib v1.00 Powerrrrrrrrrrrrrrrrrrrr!

3

avec les constantes TI89, TI92PLUS, V200 confus

4

Sur V200, les boutons seraient hand, Q, A, Z...

5

ExtendeD> il me semlb eque les constante c'est uniquement pour la compilation ... et pas quand on lance le programme.

6

oui.. ce serait plus probable... donc cela ne repond toujours pas a mon probleme sad
XLib v1.00 Powerrrrrrrrrrrrrrrrrrrr!

7

Non, il me semble que ExtendeD a raison ... smile

Sinon, tu peux toujours t'arranger en combinant une détection de TI89 par ScrRect->xy.x1 (159 pour une 89) puis une différenciation de V200/92+ par ROM_base smile

8

Ok je vais verifier ca. Merci
XLib v1.00 Powerrrrrrrrrrrrrrrrrrrr!

9

Si tu as des #define USE_xxx différent dans ta source, ce sont des pseudo constantes. Tu peux voir aussi dans le dossier /lib de TIGCC tipatch.lib qui contient quelque part une détection en asm assez optimisée.

10

2nd <=> F1 <=> HAND
shift <=> F5 <=> F1
diam<=> F2 <=> Q
alpha<=> F6 <=> W
home<=> F3 <=> A
Mode<=> F7 <=> S (? Peut-être E ou F2 serait plus facilement accessible, mais ça ne serait plus le même layout que sur TI-89/92+.)
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é

11

Oui, mais le probleme c'est que la touche hand et F1 sont assez eloignéesad

Sinon j'ai une autre question:
Lorsque j'utilise mon JoyPad, et que je quitte par exemple avec la touche Enter le programme, le programme se relance... le tios lit que la touche enter est encore pressée.
Comment effacer la presence d'une touche pressée avant de quitter le programme?
XLib v1.00 Powerrrrrrrrrrrrrrrrrrrr!

12

GKeyFlush();
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é

13

en asm je fait u ne double boucle:
si enter presse alors go exit et à exit je fait une boucle que si enter presse on tourne en rond smile
En préretraitre

14

oui, ou bien moi je fais tourner une boucle d'attente, le temps que le gars relache la touche, sinon il relance le truc à chaque fois.
Non-Webmaster et non-programmeur du site. .Pour tout probleme ou question ,débrouillez vous avec les Webmasters .

«- Pas Moo ! ^^

15

bein j'ai mis une attente de 1/2 seconde puis je fais un GKeyFlush();
mais c'est pas encore suffisant sad
XLib v1.00 Powerrrrrrrrrrrrrrrrrrrr!

16

ben attend plus alors.

void wait_time(unsigned int tps)
{
  volatile unsigned int i;
  for(i=0; i<tps; i++);
}
Non-Webmaster et non-programmeur du site. .Pour tout probleme ou question ,débrouillez vous avec les Webmasters .

«- Pas Moo ! ^^

17

NOTE : 0< i < 65535
Non-Webmaster et non-programmeur du site. .Pour tout probleme ou question ,débrouillez vous avec les Webmasters .

«- Pas Moo ! ^^

18

ou alors utilise cette fonction qui attend un nombre précis de Milli-seconde :

/******************************************************************************
*
* project name:    TI-Chess
* file name:       waitms.c
* initial date:    27/07/2000
* authors:         thomas.nussbaumer@gmx.net (coding)
*                  marcos.lopez@gmx.net      (design/graphics/beta testing)
* description:     utility function which "waits" a given number of
*                  milliseconds
*
* $Id: waitms.c,v 1.5 2002/02/11 16:38:12 tnussb Exp $
*
*******************************************************************************/

#ifndef WAIT_FOR_MILLIS_C
#define WAIT_FOR_MILLIS_C

/*===========================================================================*/
/* "waits" a given number of milliseconds (dummy looping)                    */
/* NOTE: this wait loop is parametrized to fit on HW1 calculators            */
/*===========================================================================*/

void WaitForMillis(unsigned short);

asm("xdef WaitForMillisn"
"WaitForMillis:  movem.l %d0-%d3,-(%sp)n"
"           move.w (20,%sp),%d2n"
"           move.l #31,%d1n"
"           move.l #31,%d3n"
"_wl2_:     move.w #120,%d0    /* modify this value for exact timing !!! */n"
"_wl1_:     rol.l  %d3,%d1n"
"           dbra   %d0,_wl1_n"
"           dbra   %d2,_wl2_n"
"           movem.l (%sp)+,%d0-%d3n"
"           rts")


#endif

//#############################################################################
//###################### NO MORE FAKES BEYOND THIS LINE #######################
//#############################################################################
//
//=============================================================================
// Revision History
//=============================================================================
//
// $Log: waitms.c,v $
// Revision 1.5  2002/02/11 16:38:12  tnussb
// many changes due to "separate file compiling" restructuring
//
// Revision 1.4  2002/02/07 11:39:46  tnussb
// changes for v3.50beta and v3.50 (see history.txt)
//
// Revision 1.3  2001/02/17 15:00:11  Thomas Nussbaumer
// changes due to new TIGCC version
//
// Revision 1.2  2000/08/12 15:31:13  Thomas Nussbaumer
// substitution keywords added
//
//
Non-Webmaster et non-programmeur du site. .Pour tout probleme ou question ,débrouillez vous avec les Webmasters .

«- Pas Moo ! ^^

19

Non j'utilise:
XTimer=0;
while(XTimer<25);
GKeyFlush();
XLib v1.00 Powerrrrrrrrrrrrrrrrrrrr!

20

erf, on l'a pas encore nous XTimer ! tongue
Non-Webmaster et non-programmeur du site. .Pour tout probleme ou question ,débrouillez vous avec les Webmasters .

«- Pas Moo ! ^^

21

ca va venir... la la lib est en phase finale: redaction de doc plus optimisation avec bench.. (bench X vs X ...)
XLib v1.00 Powerrrrrrrrrrrrrrrrrrrr!

22

dommage d'ailleurs TiMad car je suis sur un truc bien sympa en ce moment et je pense pas avoir fini avec pas mal de tps ...

23

TiMad a écrit :
bein j'ai mis une attente de 1/2 seconde puis je fais un GKeyFlush();
mais c'est pas encore suffisant sad

Essaye:
OSSetSR(0x700);
while (_rowread(0));
OSSetSR(0);
GKeyFlush();
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é