Derniers sujets
Qui est en ligne ?
Il y a en tout 1 utilisateur en ligne :: 0 Enregistré, 0 Invisible et 1 Invité Aucun
Le record du nombre d'utilisateurs en ligne est de 29 le Mer 25 Fév 2015 - 14:01
Connexion
Statistiques
Nous avons 242 membres enregistrésL'utilisateur enregistré le plus récent est AIRBUS44
Nos membres ont posté un total de 8922 messages dans 811 sujets
recherche racine carrée 32 bits (et arctangente 16 bits) [RESOLU !! ]
5 participants
Forum Oric :: Forums :: Forum Public :: Assembleur
Page 1 sur 1
recherche racine carrée 32 bits (et arctangente 16 bits) [RESOLU !! ]
Bonsoir,
Je suis à la recherche d'une routine racine carrée 32 bits en asm 6502.
J'ai déjà trouvé une racine carrée 24 bits .. et elle fera très bien mon affaire si je ne trouve pas mieux mais si quelqu'un a déjà une version 32 bits qui marche .. je suis preneur.
Merci ..
PS: à part ça, je suis en train de terminer une arctangente 16 bits à résultat sur 8 btis.
Elle soufre malheureusement de quelques légers problèmes de précision sur certaines valeurs singulières .. et je compte bien y remédier .. Mais si quelqu'un me signale qu'il existe déjà une arctangente 16 bits en asm sur Oric sans erreur de précision .. je suis également preneur.
Oui je crois au père noël !! Et alors ???
Je suis à la recherche d'une routine racine carrée 32 bits en asm 6502.
J'ai déjà trouvé une racine carrée 24 bits .. et elle fera très bien mon affaire si je ne trouve pas mieux mais si quelqu'un a déjà une version 32 bits qui marche .. je suis preneur.
Merci ..
PS: à part ça, je suis en train de terminer une arctangente 16 bits à résultat sur 8 btis.
Elle soufre malheureusement de quelques légers problèmes de précision sur certaines valeurs singulières .. et je compte bien y remédier .. Mais si quelqu'un me signale qu'il existe déjà une arctangente 16 bits en asm sur Oric sans erreur de précision .. je suis également preneur.
Oui je crois au père noël !! Et alors ???
Dernière édition par jbperin le Ven 29 Nov 2019 - 9:44, édité 2 fois
jbperin- Messages : 132
Date d'inscription : 05/11/2019
Localisation : Drôme
Ca sent l'arctangente de compétition :-)
Hey hey !!
De bonnes nouvelles du côté de l'arctangente 16 bits à résultat sur 8 bits,
J'ai corrigé les quelques problèmes de précision qui me sont apparus. Il doit en rester que je n'ai pas encore croisé mais leur correction ne remettra pas en cause la structure de l'algo.
J'ai pu tester par brute force tout l'intervalle [-8 .. 8]*[-8 .. 8] => zéro erreur de précision !!!
J'ai tâché de mesurer la performance et j'arrive une arctangente qui s"exécute en 1/500ème de seconde sur oricutron !! (Alors que la routine n'est même pas encore vraiment optimisée).
J'ai mesuré avec le code suivant qui fait 10000 appels au pire des cas de atan2 et qui s'exécute en 20 secondes.
Je me demande si le temps d'exécution sur oricutron est fidèle au temps d'exécution sur un vrai Oric. Si c''est le cas, ça donne de l'espoir pour cette routine.
De bonnes nouvelles du côté de l'arctangente 16 bits à résultat sur 8 bits,
J'ai corrigé les quelques problèmes de précision qui me sont apparus. Il doit en rester que je n'ai pas encore croisé mais leur correction ne remettra pas en cause la structure de l'algo.
J'ai pu tester par brute force tout l'intervalle [-8 .. 8]*[-8 .. 8] => zéro erreur de précision !!!
J'ai tâché de mesurer la performance et j'arrive une arctangente qui s"exécute en 1/500ème de seconde sur oricutron !! (Alors que la routine n'est même pas encore vraiment optimisée).
J'ai mesuré avec le code suivant qui fait 10000 appels au pire des cas de atan2 et qui s'exécute en 20 secondes.
- Code:
printf ("Get ready \n");
get();
TanX = -5; TanY = -2; Arctan8 = 0; // Worst computationnal case
for (i=0; i<10000; i++) {
atan2();
}
printf ("Stop measure !!!");
Je me demande si le temps d'exécution sur oricutron est fidèle au temps d'exécution sur un vrai Oric. Si c''est le cas, ça donne de l'espoir pour cette routine.
jbperin- Messages : 132
Date d'inscription : 05/11/2019
Localisation : Drôme
Re: recherche racine carrée 32 bits (et arctangente 16 bits) [RESOLU !! ]
Tu peux mesure le temps exact au cycle près en allant dans le debugger, il y a un compteur de cycles:
http://osdk.org/index.php?page=articles&ref=ART11#title3
http://osdk.org/index.php?page=articles&ref=ART11#title3
Dbug- Messages : 248
Date d'inscription : 06/01/2013
Re: recherche racine carrée 32 bits (et arctangente 16 bits) [RESOLU !! ]
merci bien pour ce lien.
Je n'ai pas réussi à utiliser le "z" pour réinitialiser automatiquement le compteur. Mais j'ai quand même pu faire des mesures.
Le pire cas n'est pas celui que je pensais .. et il mène à pratiquement 1800 cycles :-(
Ça correspond à peu près à ce que j'avais estimé .. mais par contre, en lisant ton article, et plus particulièrement la phrase:
aïe ..
Je n'ai pas réussi à utiliser le "z" pour réinitialiser automatiquement le compteur. Mais j'ai quand même pu faire des mesures.
Le pire cas n'est pas celui que je pensais .. et il mène à pratiquement 1800 cycles :-(
Ça correspond à peu près à ce que j'avais estimé .. mais par contre, en lisant ton article, et plus particulièrement la phrase:
Je réalise que cette fonction bouffe déjà presque 1/20 du budget cycle par frame !!Dbug a écrit:When you reach the 40000 cycles per frame, you are now in the 25 fps range, which is still acceptable for most games.
aïe ..
jbperin- Messages : 132
Date d'inscription : 05/11/2019
Localisation : Drôme
Re: recherche racine carrée 32 bits (et arctangente 16 bits) [RESOLU !! ]
Une frame c'est 20000 cycles (enfin 199...), donc 1800 cycles c'est pas 1/20, c'est 1/10ème
'z' c'est le flag zero, c'est un breakpoint special, la touche sur le clavier pour remettre a zero c'est F9Je n'ai pas réussi à utiliser le "z" pour réinitialiser automatiquement le compteur.
Dbug- Messages : 248
Date d'inscription : 06/01/2013
Re: recherche racine carrée 32 bits (et arctangente 16 bits) [RESOLU !! ]
Dbug a écrit:1800 cycles c'est pas 1/20, c'est 1/10ème
Tu crois peut-être que je ne souffre pas assez comme ça ?
Dbug a écrit:'z' c'est le flag zero, c'est un breakpoint special, la touche sur le clavier pour remettre a zero c'est F9
Je parlais de la ligne de l'article qui dit que la commande :
bs 1000 zc
place un breakpoint à 1000 et met à zéro le compteur de cycle (le z) et continue (le n)
Je n'ai pas réussi à utiliser cette feature.
jbperin- Messages : 132
Date d'inscription : 05/11/2019
Localisation : Drôme
Re: recherche racine carrée 32 bits (et arctangente 16 bits) [RESOLU !! ]
It depends on Oricutron version you are using. Try my developer builds from here: https://iss.sandacite.com/iss/oricutron/jbperin a écrit:Je n'ai pas réussi à utiliser cette feature.
iss- Messages : 112
Date d'inscription : 30/10/2014
Re: recherche racine carrée 32 bits (et arctangente 16 bits) [RESOLU !! ]
iss a écrit:Try my developer builds from here: https://iss.sandacite.com/iss/oricutron/
Yes .. Thank you very much :-) .. I can use the automatic cycle counter feature with your version. It's terribly useful ;-)
Hey Waou .. I realize that there's an Android version of oricutron on your download page .. so amazing !!
I didn't know that such a thing could exist ..
So impressive .. thank you very much .
jbperin- Messages : 132
Date d'inscription : 05/11/2019
Localisation : Drôme
Re: recherche racine carrée 32 bits (et arctangente 16 bits) [RESOLU !! ]
I'm glad you like it. Oricutron for Android requires more work to be called ready, but it's functional. If you are Android user and have real Oric you can try TapOric too to load TAP files
https://iss.sandacite.com/iss/taporic/
https://iss.sandacite.com/iss/taporic/
iss- Messages : 112
Date d'inscription : 30/10/2014
Re: recherche racine carrée 32 bits (et arctangente 16 bits) [RESOLU !! ]
Hi Iss,
May I ask you what exactly does TapOric ?
It looks like it plays a TAP file ... then what's the différence with using oricutron and load a TAP file from it ?
I'm an android user but I don't have a real Oric. What the use of having a real Oric to use TapOric ?
May I ask you what exactly does TapOric ?
It looks like it plays a TAP file ... then what's the différence with using oricutron and load a TAP file from it ?
I'm an android user but I don't have a real Oric. What the use of having a real Oric to use TapOric ?
jbperin- Messages : 132
Date d'inscription : 05/11/2019
Localisation : Drôme
Re: recherche racine carrée 32 bits (et arctangente 16 bits) [RESOLU !! ]
Je suppose que si tu as le bon câble, tu peux relier le smartphone à l'Oric et lors d'un CLOAD"" tu lances la lecture d'un fichier .TAP avec TapOric pour le charger dans un vrai Oric. Ainsi tu peux avoir toute une collection de jeux sur ton smartphone et y jouer sur un vrai Oric.
Moonchild- Messages : 51
Date d'inscription : 05/08/2014
Age : 51
Localisation : Albigny Sur Saône
Re: recherche racine carrée 32 bits (et arctangente 16 bits) [RESOLU !! ]
Moonchild a écrit:Je suppose que si tu as le bon câble, tu peux relier le smartphone à l'Oric et lors d'un CLOAD"" tu lances la lecture d'un fichier .TAP avec TapOric pour le charger dans un vrai Oric.
If you're right, that's just a must-have tool for Oric owner.
First .. it saves life of tap reader .. next .. it prevents readings from being corrupted by mechanicals issues.
So clever !!!
jbperin- Messages : 132
Date d'inscription : 05/11/2019
Localisation : Drôme
Re: recherche racine carrée 32 bits (et arctangente 16 bits) [RESOLU !! ]
Je ne sais pas si tu connais ce site ou non, mais tu dois pouvoir trouver 2 ou 3 routines de calculs ici :
http://www.6502.org/source/
http://www.6502.org/source/
Ladywasky- Messages : 240
Date d'inscription : 25/08/2018
Age : 53
Re: recherche racine carrée 32 bits (et arctangente 16 bits) [RESOLU !! ]
Ladywasky a écrit:Je ne sais pas si tu connais ce site ou non, mais tu dois pouvoir trouver 2 ou 3 routines de calculs ici :
http://www.6502.org/source/
Oui excellent site !! une référence !!
Il n'y a pas de racine carrée 32 bits .. mais finalement je réalise que ce n'est pas forcément utile.
Je vais me contenter d'une routine 16 bits.
D'ailleurs il y en a une sur le site que tu proposes :-) ici http://www.6502.org/source/integers/root.htm
Et qui, paraît-il, a été optimisée dans cette version: http://6502org.wikidot.com/software-math-sqrt
Je vais matter tout ça ..
jbperin- Messages : 132
Date d'inscription : 05/11/2019
Localisation : Drôme
Re: recherche racine carrée 32 bits (et arctangente 16 bits) [RESOLU !! ]
Il y a aussi la version de 1337:
http://miniserve.defence-force.org/svn/users/chema/1337/TINE/oobj3d/mextra.s
et une version 24 bits que j'ai un peu testé et incorporé dans mes sources
Bref .. y'a de quoi faire ..
Mais je trouvais bizarre qu'il n'y ait pas de version 32 bits.
Mais en fait j'ai vite compris quand j'ai commencé à compter les nombres de cycles PTDR !!!
http://miniserve.defence-force.org/svn/users/chema/1337/TINE/oobj3d/mextra.s
et une version 24 bits que j'ai un peu testé et incorporé dans mes sources
Bref .. y'a de quoi faire ..
Mais je trouvais bizarre qu'il n'y ait pas de version 32 bits.
Mais en fait j'ai vite compris quand j'ai commencé à compter les nombres de cycles PTDR !!!
jbperin- Messages : 132
Date d'inscription : 05/11/2019
Localisation : Drôme
Re: recherche racine carrée 32 bits (et arctangente 16 bits) [RESOLU !! ]
ha ben finalement, en lisant cette page jusqu'au bout, je me rends compte qu'il y a une version 32 bits à la fin .. LOL
Désolé pour le dérangement ..
Désolé pour le dérangement ..
jbperin- Messages : 132
Date d'inscription : 05/11/2019
Localisation : Drôme
Sujets similaires
» Dépixeliser les jeux 8 bits
» Version compatible 64 bits de WAVtoTAP ?
» Calcul en langage machine [RESOLU]
» [résolu]Utilitaire Hex2Oric
» basic & lib ASM___[RESOLU]
» Version compatible 64 bits de WAVtoTAP ?
» Calcul en langage machine [RESOLU]
» [résolu]Utilitaire Hex2Oric
» basic & lib ASM___[RESOLU]
Forum Oric :: Forums :: Forum Public :: Assembleur
Page 1 sur 1
Permission de ce forum:
Vous ne pouvez pas répondre aux sujets dans ce forum
|
|
Dim 31 Mar 2024 - 14:35 par kenneth
» Bla Bla général du Jury
Jeu 21 Mar 2024 - 8:51 par Dom50
» carte mère Oric (re)tracée
Mar 5 Mar 2024 - 18:54 par kenneth
» Meurtre à Grande Vitesse
Dim 25 Fév 2024 - 5:09 par Iurius
» ORIC-1 sur LE BON COIN
Ven 23 Fév 2024 - 23:01 par Mcar
» ORIC ATMOS sur LE BON COIN
Dim 4 Fév 2024 - 12:06 par kiwilevrai
» Problème d'affichage des couleurs avec un Oric Atmos
Sam 27 Jan 2024 - 1:26 par pierbail
» Bienvenue dans le Forum des Oriciens
Mar 9 Jan 2024 - 12:33 par Dom50
» Rencontre avec Laurant Weill, co-fondateur de Loriciel, et mon garçon de 12 ans
Ven 29 Déc 2023 - 14:13 par Arcade-des-Monts
» Bonnes fêtes
Mar 26 Déc 2023 - 10:21 par Dom50
» Murders in Venice / Meutres à Venise
Sam 18 Nov 2023 - 22:44 par retroric
» Un clavier PS/2 pour tester un ORIC
Dim 27 Aoû 2023 - 9:49 par Voyageur
» Disquette 3" Sedoric
Mar 1 Aoû 2023 - 14:22 par AtomeX
» faire un 6502 avec des phototransistor
Dim 16 Juil 2023 - 17:26 par Voyageur
» Oricutron linux et DSK
Jeu 29 Juin 2023 - 18:34 par Voyageur