Obligement - L'Amiga au maximum

Samedi 16 décembre 2017 - 02:16  

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


Contact

David Brunet

Courriel

 


Programmation : GFA Basic - les boucles
(Article écrit par Pierre-Philippe Launay et extrait d'Amiga News - juillet 1991)


Aujourd'hui, ça déménage, même si le code n'est ici pas compilé. La compilation permettrait de traduire le code en langage machine et donc de l'accélérer encore. Celle-ci n'est pas toujours nécessaire. J'ai même dû ici temporiser les routines pour les rendre visibles en GFA avant compilation. En effet, à la différence du C, tout le GFA a été écrit en assembleur et est donc particulièrement rapide.

Résumé des épisodes précédents : Frédéric Autechaud est parti en reportage dans son Tibet natal. Avant son départ, il a transmis à Super OctetoPhage une faible partie de son immense savoir. Celui-ci sait donc qu'il faut écrire en français, mettre un maximum de commentaires synthétiques, éviter toutes les abréviations et faire des copies très régulières de notre travail sur plusieurs disquettes. Il commence aussi à comprendre l'intérêt de la programmation modulaire. Elle lui permet d'avoir une vision plus structurée du programme.

La programmation modulaire avait fait le succès du C. Son mode de raisonnement rejoint la logique humaine : elle tend à tout résumer. Ainsi, on dira "je vais boire un café" sans nous encombrer de décrire toutes les innombrables actions que cela nécessite depuis la mise en route de la cafetière jusqu'au maniement de la cuillère dans la tasse. En globalisant, on s'aperçoit qu'il est souvent plus judicieux de ne réaliser qu'un seul type d'action en même temps. A l'inverse, on arrive vite à la confusion puis au drame quand on a renversé le café sur la lettre qu'on écrivait. GFA préfère donc la programmation procéduriale. Nous créons nous-mêmes les routines générales et un bon programme GFA ne comporte qu'une seule instruction :

programme! Les actions demandées

Il y a ensuite une procédure programme, elle-même divisée en plusieurs instructions :

GFA Basic

Dans la partie codage suivant ce cahier des charges, il y a encore et toujours trois erreurs. La première n'est qu'une simple faute de syntaxe que nous signalera aussitôt GFA. La deuxième est réalisée par un type d'esprit torturé au point de mélanger gras et italique. Cela ne plante pas le programme. Le programmeur qui reprendra quelques semaines plus tard la liste des instructions risque cependant de ne plus bien comprendre à la logique du code. Oui ! Elle est signalée dans les remarques.

Nous avons beaucoup de chance avec la troisième, car elle devrait planter le système sans la mansuétude de Franck. Pour cette histoire, On s'est rappelé que tout le monde ne connaissait pas les limitations physiques de l'écran. Il sait que le plaisir du codage commence parfois avec un bandeau sur les yeux.

L'avez-vous trouvé ? Oui ! C'est dans le bloc de lecture lettre par lettre. Le résultat sur écran n'est pas tout à fait ce qui est écrit dans les remarques. La programmation structurée par module vous permet de cibler rapidement ce que je viens de dire.

Un intérêt supplémentaire de la structuration est de se constituer en ASCII une bibliothèque de routines dont on est particulièrement sûr pour les réutiliser sans devoir les recoder. Cela autorise aussi des temps d'écriture très rapide lors de la traduction en assembleur Devpac comme le montre Annabella I dans l'exercice1_1. J'y mets en évidence les différents types de boucles "DO LOOP". "REPEAT UNTIL" et "FOR NEXT" grâce à une explication utilisant l'assembleur à l'usage des futurs pro. Annabella 4 va encore plus loin avec une disquette entière sur tous les genres de blocs conditionnels.

GFA Basic

La partie suivante montre le passage de GFA à Devpac. Elle est particulièrement rapide à écrire grâce au respect de cette structuration. Attention, l'assembleur est moins lisible et plus complexe. Voici la fonction "TEXT" qui suppose une fenêtre déjà ouverte. En macro, mettez donc le listing assembleur suivant.

GFA Basic


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