Vark Le 01/05/2003 à 21:33 sauf que :
-l'ogg n'a rien à foutre ds ce topic
-entre ta signature et ton topic on est au courant de l'existance de l'ogg
-on s'en bas les couilles de l'ogg !!!!!!! on a pas besoin de toi pour savoir que ça existe
sérieux tu compte faire ça pour chaque nouveau format de média qui sort ? (tu l'avais déjà fais pour l'xvid si je me souviens bien ...)
*** Ne sous-estimez pas la puissance de la Marmotte ***
©
Marmotte Team : LaMarmotte, sBibi, Vark & sabrina
AAAARRRRRRRRRGGGGGGGGGGGGGGGGGGHHHHHHHHHHHHHHHHHHHHH
/me fait une alergie a l'Ogg
squale : pk ?
Vark : Je pense me restreindre beaucoup. Je n'en parle que dans mon topic. Ici c'est bien la première fois que j'en parle ailleurs. En plus j'ai essayé de faire un post discret !
Bon on revient au sujet ?

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.
Vark Le 01/05/2003 à 21:45 retour au sujet
[cowboy]pollux va-t-il sortir gtc ?[/cowboy]
*** Ne sous-estimez pas la puissance de la Marmotte ***
©
Marmotte Team : LaMarmotte, sBibi, Vark & sabrina
plutôt qu'allergie, "overdose" serait un mot plus juste, en fait
PpHd Le 02/05/2003 à 19:30 Kevin: Elle pose un autre probleme : Elle peut dire qu'un ptr appartient a un handle alors qu'il appartient a un bloc libre.
Voici le code (non fini et non testé) que je pense utiliser pour refaire un Ptr2Hd. Si même ça ne marche pas sous PedroM (ce qui serait parfaitement inadmissible et indigne d'une ROM), alors je mets moi-même une protection anti-PedroM dans mon code !
Ptr2Hd (__noinline__,__regparm__): | This is not ASM code...
| Input: d3.w: nr_blocks-1.
| a2.l: pointer.
| a3.l: list.
| a4.l: 'HeapTable'.
| a5.l: jump table.
| Output: d0.w: handle.
| Destroyed: d0, d1, d2, a0, a1.
movem.l %d3-%d5/%a2-%a3/%a6,-(%sp)
subq.l #2,%sp
movea.l 0xnn*4(%a5),%a6 | HeapSize.
_Ptr2Hd_loop_:
move.w (%a3),%d4
move.w %d4,(%sp)
lsl.w #2,%d4
move.l 0(%a4,%d4.w),%d5
| Safety check, that should never happen, as only allocated handles are supposed to be stored in list...
beq.s _Ptr2Hd_error_
| If a2 is lower than d5, there's no point in testing further if a2 is between d5 and d5 + size of the handle whose number is pushed on the stack...
cmp.l %a2,%d5
b(cs).s _Ptr2Hd_not_that_handle_
jsr (%a6)
add.l %d0,%d5
cmp.l %a2,%d5
b(cc).s _Ptr2Hd_not_that_handle_
| We've found the handle (a2 is between d5 and the size of the handle whose number is pushed on the stack).
lsr.w #2,%d4
move.w %d4,%d0
bra.s _Ptr2Hd_end_
| Let's try with next element in list (if there are still elements).
_Ptr2Hd_not_that_handle_:
addq.l #4,%a3
dbf %d3,_Ptr2Hd_loop_
| We didn't find any handle containing the address in a2.
| Either there is an incorrect entry in list (very unlikely) or no match.
_Ptr2Hd_error_:
clr.w %d0
| Cleanup and return...
_Ptr2Hd_end_:
addq.l #2,%sp
movem.l (%sp)+,%d3-%d5/%a2-%a3/%a6
rts

PpHd Le 03/05/2003 à 12:13 a mon avis, ca marche sous PedroM, mais evite de l'appeller Ptr2Hd.
car le prototype de Ptr2Hd est :
HANDLE Ptr2Hd (void *adr asm("a0"));
OK. C'est une bonne nouvelle (je m'y attendais, quand même...). Je changerai le nom.
Je ne peux pas mettre l'adresse dans a0 car a0 est potentiellement détruit par HeapSize qu'il FAUT utiliser pour pouvoir être compatible avec tout. De toute façon, c'est plus propre, il aurait probablement fallu le faire tôt ou tard...
Et non. Ce que j'ai posté ne marche pas à coup sûr sous AMS (ce qui est tout sauf l'effet recherché) ! J'avais fait le bout de code on-calc dans l'éditeur de texte, sans regarder le type de return de HeapSize. C'est unsigned short, donc ce que j'avais posté ne marchera pas à coup sûr...
Donc, je vais assumer que HeapSize retourne unsigned short. La protection anti-PedroM va être mise, ce qui aurait d'ailleurs déjà dû être fait car j'utilise la méthode que j'ai postée pour trouver les fonts, basée sur un hack sous AMS 1.xx, avec lequel PedroM est incompatible...
Je vais changer beaucoup de choses dans les blocs ASM de mainproc car c'est lent (des secondes) dès qu'il y a beaucoup de fichiers et/ou de trucs dans la home screen history. Et encore, j'utilise une méthode rapide pour trouver les fonts, cf plus haut...
Je n'ai jamais fait d'étude de complexité des algorithmes, mais je pense que le temps est de l'ordre de k*n où n est le nombre de handles et k le nombre de fois que la table est parcourue.
Et ce que je veux faire (faire un tableau qui a autant d'éléments que le numéro du dernier handle utilisé, au lieu de faire un tableau avec le nombre de handles utilisés), interdit d'utiliser des algorithmes de tri récursifs type quicksort.
Y a-t-il plus rapide qu'un insert sort (sans utiliser du récursif type quicksort; il y a jusqu'à 1999 éléments, même si en général ça reste en-dessous de 500) ?

Ta version de TIGCC n'est pas à jour! HeapSize renvoie un unsigned long (size_t), dont le mot de poids fort est toujours 0. Ça fait longtemps qu'on a corrigé cette erreur-là.
Pour finir avec les uptimes, essayer avec 95/98/Me de faire des up de plusieurs mois sans plantage, mon pc ss XP Pro tourne 24/24 7/7 sans planter, sans reboot, les seul reboot qui on pu avoir lieu et me cassant les uptime ct pour passer se Win a Linux, mais généralement je prefere utilise Linux avec VMWare, mais bon ya des fois ou VMWare est un peu leeentttt....

Proud to be CAKE©®™
GCC4TI importe qui a problème en Autriche, pour l'UE plus et une encore de correspours nucléaire, ce n'est pas ytre d'instérier. L'état très même contraire, toujours reconstruire un pouvoir une choyer d'aucrée de compris le plus mite de genre, ce n'est pas moins)
Stalin est l'élection de la langie.
> Ta version de TIGCC n'est pas à jour! HeapSize renvoie un unsigned long (size_t), dont le mot de poids fort est toujours 0. Ça fait longtemps qu'on a corrigé cette erreur-là.
Ah, OK. Tout va bien alors.
J'avais vu en désassemblant les opcodes avec tthdex que le mot de poids fort était mis à 0 sur ma 2.03, mais je n'avais pas vérifié qu'il en était ainsi sur tous les AMS (et donc sur PedroM).
Un problème de moins. Je n'avais pas encore mis la protection anti-PedroM, on va voir si je la mets...
normal si c un serveur tu l'utilise pas directement..
Prend une machine ss 95/98/ME que tu utilise tout les jour pour surfer, jouer un peu etc... et qui reboot jamais !
Deja utilise Me pour le reseau c limite...

Proud to be CAKE©®™
GCC4TI importe qui a problème en Autriche, pour l'UE plus et une encore de correspours nucléaire, ce n'est pas ytre d'instérier. L'état très même contraire, toujours reconstruire un pouvoir une choyer d'aucrée de compris le plus mite de genre, ce n'est pas moins)
Stalin est l'élection de la langie.
Bon. Vu que les modifications dans le code vont certainement être très importantes, je pense que je vais rendre plus propre le code et quelques autres trucs peut-être, et releaser des versions intermédiaires (2.97...). Dans les 3.xx viendront les autres changements.
Mais ça risque de prendre un peu de temps.
Il va de soi que ceux qui veulent faire du bêta-test en attendant, peuvent me le demander. Je l'enverrai de toute façon pour test à ExtendeD et PpHd avant de le releaser. Ca serait bête qu'il reste encore des horreurs...
Vous changez le format de vos sprites ?

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.
Pas du tout. Là, je parle de tthdex.
C'est vrai que c'est off-topic, mais tout autant que de parler des différentes versions de Windows ou d'ExtGraph...
tien??? 0 reponse, 0 vue...
Ca doit être un bug....
Edit: Premiere fois que je suis le premier a parler sur un topic que n'est pas a mon non!!!! C chouette ca!