1

Voila j'ai besoin d'un moyen de faire des conversion low/high endian et ce de maniere courte et rapide

apres un recherche dans ma tete j'en était parvenu a obtenir ça : (ça date de il y a deja bien un moment)

###################################################
#Useful macro definitions
#
# Invert two byte of a word
# In : d0 | Out : d0 | Destroy d1
.macro InvertByte
	moveq.l #0, %d1
	move.w %d0, %d1
	lsl.l #8, %d1
	swap %d1
	move.b %d1, %d0
	swap %d1
	or.w %d1, %d0
.endm


et maintent que j'y reflechi je suis sur qu'on peut faire plus simple ou du moins arriver a ne pas avoir a utilise d1

Si quelqu'un a une idée
avatar
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.

2

Euh #grosdoûte# tu cherches quand même pas rol.w #8,%d0 ?
avatar
Le scénario de notre univers a été rédigée par un bataillon de singes savants. Tout s'explique enfin.
T'as un problème ? Tu veux un bonbon ?
[CrystalMPQ] C# MPQ Library/Tools - [CrystalBoy] C# GB Emulator - [Monoxide] C# OSX library - M68k Opcodes

3

sisi je peut meme aller faire comme lui

sick

#treeeeeeeeeeloin#
avatar
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.

4

5

C bien t'as le niveau pour faire Arkanoid et Nebulus là cheeky
Attention: Un gigantesque troll (troll des montages précisons) se cache dans ce post
avatar
Le scénario de notre univers a été rédigée par un bataillon de singes savants. Tout s'explique enfin.
T'as un problème ? Tu veux un bonbon ?
[CrystalMPQ] C# MPQ Library/Tools - [CrystalBoy] C# GB Emulator - [Monoxide] C# OSX library - M68k Opcodes

6

7

boaf grin

8

sans utiliser d1 je dirais:
################################################### 
#Useful macro definitions 
# 
# Invert two byte of a word 
# In : d0 | Out : d0
.macro InvertByte 
	rol.w #8,%d0
	.endm 

9

merde pas vu le ./2
mais le ./1 et ./4 sont faux

10

11

Nerick: sisi le #0 est juste ^^ jsute que c'est pas la méthode la plus simple cheeky
avatar
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.

12

d0=#$AABBCCDD
d1=?

moveq.l #0, %d1
d0=#$AABBCCDD
d1=#0

move.w %d0, %d1
d0=#$AABBCCDD
d1=#$CCDD

lsl.l #8, %d1
d0=#$AABBCCDD
d1=#$CCDD00

swap %d1
d0=#$AABBCCDD
d1=#$DD0000CC

move.b %d1, %d0
d0=#$AABBCCCC
d1=#$DD0000CC

swap %d1
d0=#$AABBCCCC
d1=#$CCDD00

or.w %d1, %d0
? cheeky

13

oué bon manque un moveq #0, d0 et alors cheeky
avatar
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.

14

Pas tout à fait ce que tu veux, mais SWAP_ENDIAN sur 16 bits à partir de deux bytes séparés est faisable plus rapidement (et parfois sans impact négatif sur la taille) par move.b eahigh,-(sp); move.w (sp)+,eahigh; move.b ealow,eahigh.
Ce truc est utilisé au moins dans la version rapide de la dernière version de la routine de décompression PPG.
avatar
Membre de la TI-Chess Team.
Co-mainteneur de GCC4TI (documentation en ligne de GCC4TI), TIEmu et TILP.
Co-admin de TI-Planet.

15

Sauf dans la version optimisée en taille...
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é

16

enfin, pour le ppg l'important c'est tout de même d'avoir une décompression assez rapide.

17

Lionel Debroux :
Pas tout à fait ce que tu veux, mais SWAP_ENDIAN sur 16 bits à partir de deux bytes séparés est faisable plus rapidement (et parfois sans impact négatif sur la taille) par move.b eahigh,-(sp); move.w (sp)+,eahigh; move.b ealow,eahigh.
Ce truc est utilisé au moins dans la version rapide de la dernière version de la routine de décompression PPG.


Oui j'ai un registre avec une veleur (genre 0xFF3F) et je veux l'inverser en 0x3FFF

mais j'ai peur que tel quel ta technique ne puisse pas marcher..
avatar
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.

18

Pourquoi pas? C'est justement ce dont on parlait dans le topic de nesquick (grace a Samuel Stearley) pour remplacer le rol #8,dn ?

19

#14:
" [...] ET PARFOIS SANS IMPACT NEGATIF SUR LA TAILLE [...]"
"Ce truc est utilisé AU MOINS dans la version rapide de la dernière version de la routine de décompression PPG.".
(désolé, je n'utilise pas les tags)

#16: si tu as déjà la valeur toute prête dans 16 bits d'un registre de données, c'est en effet rol.w #8,dn qu'il faut faire. Si les deux octets sont séparés, en revanche, pour la vitesse, c'est l'optimisation que j'ai citée.
avatar
Membre de la TI-Chess Team.
Co-mainteneur de GCC4TI (documentation en ligne de GCC4TI), TIEmu et TILP.
Co-admin de TI-Planet.

20

Lionel: ok merci, je verrait ça dépend comment je réceptionnerais les words
avatar
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.