Obligement - L'Amiga au maximum

Vendredi 06 juin 2025 - 12:54  

Translate

En De Nl Nl
Es Pt It Nl


Rubriques

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

Articles in English


Réseaux sociaux

Suivez-nous sur X




Liste des 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,
ALL


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


Galeries

Menu des galeries

BD d'Amiga Spécial
Caricatures Dudai
Caricatures Jet d'ail
Diagrammes de Jay Miner
Images insolites
Fin de jeux (de A à E)
Fin de Jeux (de F à O)
Fin de jeux (de P à Z)
Galerie de Mike Dafunk
Logos d'Obligement
Pubs pour matériels
Systèmes d'exploitation
Trombinoscope Alchimie 7
Vidéos


Téléchargement

Documents
Jeux
Logiciels
Magazines
Divers


Liens

Associations
Jeux
Logiciels
Matériel
Magazines et médias
Pages personnelles
Réparateurs
Revendeurs
Scène démo
Sites de téléchargement
Divers


Partenaires

Annuaire Amiga

Amedia Computer

Relec


A Propos

A propos d'Obligement

A Propos


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]