1

J'avais décidé de me mettre au C sur TI pour voir ce que ça donne, j'ai cherché un petit programme à adapté et je suis tombé sur un vieux puzzle "7 colors". J'ai donc tenté une adaptation, pour l'instant il ne manque que l'IA.
Remarques, idées et commentaire sont les bienvenus si vous avez du temps à perdre.
(le but étant de faire un programme le plus petit et fonctionnel possible, pas forcément beau et rapide)
Autant faire une beta publique tant que j'y suis ...

http://membres.lycos.fr/ximoon/download.php?s=Seven_Tiles.zip


PS: oui, je me suis inspiré de Jackiechan pour le suivi du projet, ça m'a semblé une bonne idée
PPS: ça marche ou pas sur PedRom ? Pour l'instant j'ai juste testé sous VTI...

edit: un screen ...
seven_tiles.gif
avatar
Que cache le pays des Dieux ? - Forum Ghibli - Forum Littéraire

La fin d'un monde souillé est venue. L'oiseau blanc plane dans le ciel annonçant le début d'une longue ère de purification. Détachons-nous à jamais de notre vie dans ce monde de souffrance. Ô toi l'oiseau blanc, l'être vêtu de bleu, guide nous vers ce monde de pureté. - Sutra originel dork.

2

-

3

Si, mais TIGCC devrait l'optimiser si j est un unsigned.
avatar
« Quand le dernier arbre sera abattu, la dernière rivière empoisonnée, le dernier poisson capturé, alors vous découvrirez que l'argent ne se mange pas. »

4

hmmm ça a l'air de prendre moins de place ainsi en tout cas, je vais voir ça ... j'ai un peu du mal à optimiser en C :/ (contrairement à l'asm j'ai pas trop l'impression de savoir réellement ce que je fais puisque le compilo prend la main ...)
avatar
Que cache le pays des Dieux ? - Forum Ghibli - Forum Littéraire

La fin d'un monde souillé est venue. L'oiseau blanc plane dans le ciel annonçant le début d'une longue ère de purification. Détachons-nous à jamais de notre vie dans ce monde de souffrance. Ô toi l'oiseau blanc, l'être vêtu de bleu, guide nous vers ce monde de pureté. - Sutra originel dork.

5

Ça prend moins de place avec &1 ou avec %2 ?
avatar
« Quand le dernier arbre sera abattu, la dernière rivière empoisonnée, le dernier poisson capturé, alors vous découvrirez que l'argent ne se mange pas. »

6

-

7

Et c'est quoi la fonction MODulo ?
avatar
« Quand le dernier arbre sera abattu, la dernière rivière empoisonnée, le dernier poisson capturé, alors vous découvrirez que l'argent ne se mange pas. »

8

-

9

a modulo b est le reste de la division euclidienne de a par b
avatar
Que cache le pays des Dieux ? - Forum Ghibli - Forum Littéraire

La fin d'un monde souillé est venue. L'oiseau blanc plane dans le ciel annonçant le début d'une longue ère de purification. Détachons-nous à jamais de notre vie dans ce monde de souffrance. Ô toi l'oiseau blanc, l'être vêtu de bleu, guide nous vers ce monde de pureté. - Sutra originel dork.

10

autrement di c'est une congruence.

11

Non, mais je sais ce qu'est un modulo, mais je demandais à Orion ce qu'était pour lui la fonction MODulo (au niveau du code).
Enfin, ce n'est pas important.
avatar
« Quand le dernier arbre sera abattu, la dernière rivière empoisonnée, le dernier poisson capturé, alors vous découvrirez que l'argent ne se mange pas. »

12

le modulo en C fait appel a division/multiplication et le compilo optimise rarement un %
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.

13

Bah la 'fonction modulo' c'est juste une division (les instructions divu et divs) donc Orion_ a raison de dire que le modulo n'est pas très rapide.
godzil> Apparement si, gcc optimise les modulo pour les puissances de 2 avec des nombres non-signés.
avatar
;)

14

Évidemment qu'il optimise quand c'est possible. GCC n'est pas con à ce point!
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é

15

Sauf que c'est rarement possible, sauf si c'est unsigned. Le plus prudent est de mettre un &1, ça va aussi vite à écrire et on est sûr du résultat.

« The biggest civil liberty of all is not to be killed by a terrorist. » (Geoff Hoon, ministre des transports anglais)

16

./6> fonction MODulo = divu + swap (dans le cas general smile)

17

Pollux
: Sauf que c'est rarement possible, sauf si c'est unsigned. Le plus prudent est de mettre un &1, ça va aussi vite à écrire et on est sûr du résultat.

Je suis d'accord sur ce point, même si je conseille aussi de n'utiliser que des unsigned quand les nombres sont toujours positifs.
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é

18

Je ne suis pas d'accord sur ce point. Un compilo peut générer souvent du code bien plus efficace avec des signed qu'avec des unsigned (exemple : un cast vers le type long ou unsigned long prend 12 cycles et 6 octets avec des unsigned short et 4 cycles et 2 octets avec des (signed) short). En plus le type le plus couramment utilisé est int, pas unsigned int.

« The biggest civil liberty of all is not to be killed by a terrorist. » (Geoff Hoon, ministre des transports anglais)

19

On peut faire en moins de 6 octets:
moveq.l #0,%d1;move.w %d0,%d1 -> 4 octets
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é

20

Ce n'est pas toujours possible, et ça reste de toutes façons moins efficace.

« The biggest civil liberty of all is not to be killed by a terrorist. » (Geoff Hoon, ministre des transports anglais)

21

Pourquoi ce n'est pas toujours possible ? Au cas où on aurait quelque chose dans la partie haute de d0 ?
avatar
« Quand le dernier arbre sera abattu, la dernière rivière empoisonnée, le dernier poisson capturé, alors vous découvrirez que l'argent ne se mange pas. »

22

Exemple, fonction1((long)fonction2()). Le compilo est obligé de manger 6 octets si fonction2() renvoie un unsigned short, alors que ça ne prend que 2 octets si fonction2() renvoie un signed short.

« The biggest civil liberty of all is not to be killed by a terrorist. » (Geoff Hoon, ministre des transports anglais)

23

ça peut pas se faire simplement avec un ext.l ?
EDIT: a non, oubliez ce que j'ai dit
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

24

Pollux> Pourquoi ? Parce que fonction1 prend son argument dans d0 et que la valeur de retour de fonction2 se met dans d0 ? Donc on serait obligés de faire :
moveq.l #0,d1
move.w d0,d1
move.l d1,d0

C'est ça ?
avatar
« Quand le dernier arbre sera abattu, la dernière rivière empoisonnée, le dernier poisson capturé, alors vous découvrirez que l'argent ne se mange pas. »

25

Ximoon> J'ai remarqué un truc à propos de ton algo de contour, je ne sais pas si c'est un bug : http://perso.wanadoo.fr/jackiechan68k/stile.gif
Sur le shot, tout en bas, la case gris clair juste à droite de mon contour se trouve absorbée quand je joue, alors que j'ai choisi le motif avec une ligne oblique gris foncé.
C'est un bug ou c'est normal ?
avatar
« Quand le dernier arbre sera abattu, la dernière rivière empoisonnée, le dernier poisson capturé, alors vous découvrirez que l'argent ne se mange pas. »

26

Sasume> oui.

« The biggest civil liberty of all is not to be killed by a terrorist. » (Geoff Hoon, ministre des transports anglais)

27

Sasume> C'est normal, le seul contact qui lui reste est en diagonale avec la case gris foncé à droite, or les contacts diagonaux ne comptent pas smile Elle est considérée dans ce cas comme entourée et donc capturée.
avatar
Que cache le pays des Dieux ? - Forum Ghibli - Forum Littéraire

La fin d'un monde souillé est venue. L'oiseau blanc plane dans le ciel annonçant le début d'une longue ère de purification. Détachons-nous à jamais de notre vie dans ce monde de souffrance. Ô toi l'oiseau blanc, l'être vêtu de bleu, guide nous vers ce monde de pureté. - Sutra originel dork.

28

Ah ok, j'avais pas saisi le fait que si une case est entourée, elle est capturée.
avatar
« Quand le dernier arbre sera abattu, la dernière rivière empoisonnée, le dernier poisson capturé, alors vous découvrirez que l'argent ne se mange pas. »

29

Regarde les derniers coups du screen du post #0, en capturant une ou deux cases ça en entoure plein (et me mène à la victoire ^^).
D'ailleurs c'est comme ça qu'on bat le plus facilement l'IA qui ne voit pas plusieurs coups à l'avance, et donc ne va pas forcément vers des choix optimaux à long terme.
avatar
Que cache le pays des Dieux ? - Forum Ghibli - Forum Littéraire

La fin d'un monde souillé est venue. L'oiseau blanc plane dans le ciel annonçant le début d'une longue ère de purification. Détachons-nous à jamais de notre vie dans ce monde de souffrance. Ô toi l'oiseau blanc, l'être vêtu de bleu, guide nous vers ce monde de pureté. - Sutra originel dork.

30

Tu as fait un icone pour ID ?
avatar
« Quand le dernier arbre sera abattu, la dernière rivière empoisonnée, le dernier poisson capturé, alors vous découvrirez que l'argent ne se mange pas. »