website logo
Auteur
avatar
JuLieN

Forum » » Développement » » Petites questions en Vrac.


Post� : 25-10-2011 09:51 icone du post

@Amidark

Henes, a raison, il faut que tu nettoies au maximum ton code toutes les parties du code qui devraient être générales mais font au contraire appel à des spécificités de la plateforme sur laquelle il est compilé.

En fait, ton code devrait être écrit pour tourner sous AmigaOS3.1, qui est la version commune à tous les OS actuels. Ensuite, bien sûr, rien ne t'empêche de faire des #IFDEF OS4, #IFDEF MorphOS (je ne sais pas si c'est très C/C++, car je programme en Pascal), etc... pour ajouter des fonctions ou des optimisations qui exploitent au mieux chaque plateforme.

Je connais très bien le problème, car j'ai converti l'année dernière mon jeu d'échecs de Windows vers MacOSX. Pour cela je l'ai tout simplement nettoyé de toutes ses parties purement Windows API, et les ai remplacées par du code universel. Résultat, à part des #IFDEF qui doivent concerner à tout casser 30 lignes de code sur 8000, le code est identique pour tout le reste sur chaque plateforme. Et oh!, divine surprise, la version OSX de mon code compile sans changer une ligne sur MorphOS :)

Pour l'instant, seules les versions Windows (x32 et x64) et OSX sont téléchargeables, mais la prochaine version aura un exe MorphOS inclus :

http://predateur-chess.blogspot.com/

(Pour les amateurs d'échecs ;) Attention, ce n'est qu'un "engine" la partie purement IA d'un jeu d'échecs: il faut utiliser une interface compatible UCI pour l'utiliser, ou alors piloter le moteur depuis un shell, en entrant les commandes UCI... raison pour laquelle l'intérêt est limité sous MorphOS, qui n'a aucune de ces interfaces...)

Cet article provient de Meta-MorphOS
https://www.meta-morphos.org/viewtopic.php?topic=869&forum=52