1

quel est la valeur pour OSSetSR() pour reactiver juste l'int5 ???, ou alors celle qui les desactive toutes sauf la 5eme ?

je cherche un moyen plus rapide que de toutes les rediriger sauf la 5eme

2

Désolé pour toi, le topic est clos grin
y'a pas d'autre moyen.
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.

3

Au fait, hint ça s'écrit avec un h wink
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.

4

il disait "int" pour AUTO_INT, je crois...
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

5


Ta gueule, il voulait dire hint grinbon d'accord c'est une hint sur les ints, donc on a à la fois raison et tord :p
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.

6

embarrassed

oué bon cessez les plaisanteries
y a pas d'autre moyens plus rapide de jarter toutes les auto-ints sauf la 5eme que des les detourner une par une avec Set/GetIntVec ???

7

+ rapide quoi ?
La méthode suppression, ou l'exécution des ints ?

Si c'est l'alternative 2, sache qu'un un appel+rte exécuté 256 fois par seconde c'est vraiment rien.
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.

8

J'avais raison, il voulait dire AUTO_INT !!!
lol
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

9

erf si tu veux tu peux deja arrete les ints de 1 a 4 (elle ne s'executeront plus)
avec:
asm("
move.w #400,d0
TRAP #1
")

il te reste ensuite plus qu'a redirige la 5,6,7 smile
pour les reactives:
[pre]asm(" clr.w d0 TRAP #1 ") Voilà il n'y a rien de mieux...
XLib v1.00 Powerrrrrrrrrrrrrrrrrrrr!

10

À ta place, j'utiliserais plutôt OSSetSR(0x400) et OSSetSR(0).

Ton appel au trap 1 détruit d0, et peut-être que le trap 1 détruit également des registres (d0-d2/a0-a1? à vérifier...) donc il faudrait des "clobbers".

Genre:
asm volatile ("clr.w %d0;trap #1"::"d0","d1","d2","a0","a1")

(Pour d1-d2 et a0-a1, il faut vérifier si c'est nécessaire, mais pour d0, c'est sûr, puisque tu le détruis toi-même.)

Et il ne faut pas oublier le "%" pour %d0 (sauf dans la liste des clobbers), ni le "0x"pour 0x400.
[edit]Edité par Kevin Kofler le 03-09-2001 à 06:39:24[/edit]
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

j'ai essayé OSSetSR(0x700/0) mais ça me coupe aussi la 5eme AUTO-INT ! et il me la faut !

TiMad > je savais bien qu'il y avait un truc de trap #1, mais je savais pas qu'il y avait besoin de move.w #400,d0 de vant, donc merci

12

erf.. pour les ai c'est simple.. tu a 7 niveaux (car 7 ai)
si tu mets: 0x0 dans d0, toutes les ai sont activees..
si tu mets 0x100 seul l'ai 1 est desactive
0x2 > ai 1&2 desactive
etc..
donc si tu mets 0x700 les ai de 1 a 7 sont desactviees..
dans ton cas tu n'as pas le choix..
tu doits mettre 0x400 pour desactive les ai de 1 a 4, puis tu doits redirige les ai 5 6 7...

il n'y a pas de meilleur solutions...
XLib v1.00 Powerrrrrrrrrrrrrrrrrrrr!

13

Juste un petit exemple pour le fun
(et apres on dit que je suis pas gentil.. halala..)
INT_HANDLER oldint7 = NULL;
INT_HANDLER oldint6 = NULL;
INT_HANDLER oldint5 = NULL;

volatile int mseconds50 =0;

volatile short count;

DEFINE_INT_HANDLER (myint5handler) { mseconds50--;}
DEFINE_INT_HANDLER (myint7handler) { }
DEFINE_INT_HANDLER (myint6handler) { }

void bench()
{
	unsigned long k=0;
//INITIALISATION//


  clrscr();
//////////////////  
	DrawStr(0,90,"Bench GO!",A_NORMAL);
    oldint5 = GetIntVec(AUTO_INT_5);
    SetIntVec(AUTO_INT_5, myint5handler);
	  oldint6 = GetIntVec(AUTO_INT_6);
    SetIntVec(AUTO_INT_6, myint6handler);
    oldint7 = GetIntVec(AUTO_INT_7);
    SetIntVec(AUTO_INT_7, myint7handler);
	asm("
	movem.l	%d0,-(%a7)
	move.w	#400,%d0
	TRAP	#1
	movem.l	(%a7)+,%d0	
	")


k=0;	mseconds50 =20;
	while (mseconds50)
		{ 
//RUOTINE 1//
Sprite_16_MASK3();

/////////////
			k++;
		}
	printf_xy(0,0,"Ptite r:  %ld /s",k);
 k=0;	mseconds50=20;
	while (mseconds50)
	 {
//ROUTINE 2//
pxl_noir();
/////////////

	 	 k++;
	 }
	printf_xy(0,10,"Must?: %ld Sp",k);

	SetIntVec(AUTO_INT_5, oldint5); 
	SetIntVec(AUTO_INT_6, oldint6); 
	SetIntVec(AUTO_INT_7, oldint7); 
	asm("
	movem.l	%d0,-(%a7)
	clr.w	%d0
	TRAP	#1
	movem.l	(%a7)+,%d0	
	")

  ngetchx();
}
XLib v1.00 Powerrrrrrrrrrrrrrrrrrrr!