Un petit jeu de stratégie que j'ai programmé il y a pas mal de temps sous TP6 et que j'ai depuis fait passer sous Delphi 1 puis Delphi 3. Je tente de nouveau la migration vers Kylix en utilisant le même principe que précédemment. J'ai toutefois rencontré quelques problèmes mineurs :

  • un composant TGauge hérité de D1 qui ne passe pas et que je remplace sans difficulté par une TTrackBar.
  • des composants qui apparaissent trop petits sur la nouvelle interface. Une seule solution, mettre à false la propriété Scaled de toutes les fiches et utiliser une police TrueType comme Arial.

Une compilation et ça roule :

Linux / Kylix Win32 / D3
Aperçu Aperçu

Et, là, je suis très content parce que dans le code source (ici 11 ko), il y a quand même une fonction critique en assembleur et qui fait 140 lignes. Attention, toutefois, il existe des différences entre Delphi et Kylix pour l'assembleur, Linux travaillant en adresse absolue alors que Windows utilise des adresses relatives (voir doc de Kylix).

Juste un petit détail pour finir. En bas à droite de la fenêtre de Puissance4, il y a un nombre. C'est le nombre de combinaisons évaluées pendant le temps de réflexion de l'ordinateur. On constate que la version Windows est plus rapide (190 932) que celle de Linux (152 334). Après étude, il s'avère que la méthode Application.ProcesseMessages est beaucoup lente sous Kylix que Delphi.



Retour à l'accueil de l'article Migration de Delphi vers Kylix