Obligement - L'Amiga au maximum

Vendredi 26 mai 2017 - 21:03  

Translate

En De Nl Nl
Es Pt It Nl


Rubriques

 · Accueil
 · A Propos
 · Articles
 · Galeries
 · Glossaire
 · Hit Parade
 · Liens
 · Liste jeux Amiga
 · Quizz
 · Téléchargements
 · Trucs et astuces


Articles

 · Actualité (récente)
 · Actualité (archive)
 · Comparatifs
 · Dossiers
 · Entrevues
 · Matériel (tests)
 · Matériel (bidouilles)
 · Points de vue
 · En pratique
 · Programmation
 · Reportages
 · Tests de jeux
 · Tests de logiciels
 · Tests de compilations
 · Articles divers

 · Articles in english
 · Articles in other languages


Twitter

Suivez-nous sur Twitter




Liens

 · Sites de téléchargements
 · Associations
 · Pages Personnelles
 · Moteurs de recherche
 · Pages de liens
 · Constructeurs matériels
 · Matériel
 · Autres sites de matériel
 · Réparateurs
 · Revendeurs
 · Presse et médias
 · Programmation
 · Développeurs logiciels
 · Logiciels
 · Développeurs de jeux
 · Jeux
 · Autres sites de jeux
 · Scène démo
 · Divers
 · Informatique générale


Jeux Amiga

0, A, B, C, D, E, F,
G, H, I, J, K, L, M,
N, O, P, Q, R, S, T,
U, V, W, X, Y, Z


Trucs et astuces

0, A, B, C, D, E, F,
G, H, I, J, K, L, M,
N, O, P, Q, R, S, T,
U, V, W, X, Y, Z


Glossaire

0, A, B, C, D, E, F,
G, H, I, J, K, L, M,
N, O, P, Q, R, S, T,
U, V, W, X, Y, Z


Partenaires

Annuaire Amiga

Amedia Computer

Relec

Hit Parade


Soutien

N'hésitez pas à soutenir le projet Obligement



Contact

David Brunet

Courriel

 


Programmation : GFA Basic - fonction PRINT
(Article écrit par Pierre-Philippe Launay et extrait d'Amiga News - avril 1992)


Jusqu'à présent, je n'ai montré que l'aspect BASIC du GFA alors que ce n'est qu'une toute petite partie de ce super langage. La différence entre certaines fonctions C et BASIC du GFA pourra paraître parfois subtile mais elle existe.

C et GFA

Nous avons écrit une même routine en C puis en GFA Basic. C'est une fonction PRINT allégée qui affiche les lettres A à Z sans interruption pendant 15 secondes puis, arrivé au bas de l'écran, tout remonte d'une ligne comme les PRINT d'antan. Le but du jeu est de mettre en valeur les avantages et inconvénients de chacun des deux langages.

Je voudrais préciser les conditions imposées à la version C : faire très court et sans les remarques. En C, seule la méthode (1) a été choisie pour la publication mais les écarts de vitesse détectées sur les autres méthodes se tiennent. Pour GFA, j'ai choisi le procédé Blitter (3) en pensant surtout aux A500 et A500 Plus. Pour une plus grande sûreté, je vous demande d'utiliser aussi les parties (3 bis) sinon gare au gourou dès que surviendrait un évènement perturbant le déroulement de l'écran.

Les constatations

Rapidité du codage terminé : pas de problèmes, GFA maîtrise et supplante largement le C mais la vitesse n'est pas le seul argument à considérer.

Rapidité d'écriture : GFA permet des raccourcis saisissants dans l'écriture des fonctions. On peut généraliser cette notion de raccourci à toutes les fonctions de bureautique, de combinatoire ou de trigonométrie et à la plupart des fonctions graphiques ou sonores.

Clarté d'écriture : GFA ne sait pas présenter de façon claire et aérée les structures du C, écrites d'ailleurs pour le seul usage du C. Il ne sait pas non plus utiliser les Includes et là, cela devient un peu gênant car il faudra utiliser abusivement l'option Merge du menu pour insérer tous les textes ASCII. Pour le reste, l'éditeur GFA est devenu une référence : indentation automatique et instantanée, détection immédiate des erreurs de syntaxe dès leur écriture, etc.

Évolution : il serait utile que notre super langage sache insérer plus facilement les exécutables : inclure dans un code GFA un programme écrit en C nécessite quelques minutes de travail et quelques lignes de code. Pour conclure, GFA c'est un peu le C mais aussi un peu l'assembleur.

Codage en C

GFA Basic
GFA Basic

Codage en GFA Basic

GFA Basic
GFA Basic
GFA Basic

Les erreurs des codages

Voici les erreurs qu'il fallait trouver :
  • Code C : ce qui suit #define doit figurer sur une seule ligne ou alors il faut ajouter des antislashs à cause de certains compilateurs C.

  • Code GFA : ~ClipBlit(...) est bien sûr précédé de ' (apostrophe) pour le mettre en remarque et il faut lire 38 microsecondes par lettre, 38 millionièmes de seconde. Pareil pour tick%. Cela donne 17 000 lettres par seconde ou 10 pages à la seconde.


[Retour en haut] / [Retour aux articles] [Article précédent]