Obligement - L'Amiga au maximum

Vendredi 06 juin 2025 - 12:37  

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 - Programmation du clipboard.device
(Article écrit par Dominique Lorre et extrait d'Amiga News Tech - mai 1990)


Le clipboard.device est une partie parmi les plus mystérieuses de l'Amiga. Ceci est dû à la grande complexité de sa mise en oeuvre. Ce périphérique logique pas comme les autres permet aux programmes de s'échanger des données en faisant du couper/copier/coller (cut/copy/paste en anglais). Tout cela serait très simple si le clipboard.device n'imposait pas un format des données qu'on lui envoie.

Le format IFF

Ce format est le célèbre format IFF. Cela signifie que dans le clipboard.device, vous pourrez trouver aussi bien du texte que des images ou du son, à condition que ceux-ci soient placés sous un format IFF. Ceux qui connaissent bien le format IFF savent qu'il est possible de placer plusieurs types de données les uns à la suite des autres dans le presse-papiers, rendant la lecture très délicate à effectuer. C'est pourquoi notre exemple de démonstration ne s'occupe que du minimum, c'est-à-dire lire et écrire du texte dans le presse-papiers. Si une image est présente dans le presse-papiers, je ne garantis absolument rien !

Gérer le clipboard.device

Quand on sait programmer un des périphériques logiques de l'Amiga, les autres ne posent plus beaucoup de problèmes. Le clipboard.device est loin d'être aussi compliqué que l'audio,device mais recèle tout de même quelques difficultés.

La première difficulté consiste en la gestion d'un décalage ("offset"). On peut en fait considérer le presse-papiers comme une bande magnétique. Il est possible avant toute lecture ou écriture de se positionner ailleurs qu'au début. En lecture, cela permet de ne pas lire entièrement les données d'une image si c'est un texte que l'on recherche et qu'il est situé après elle. Comprendre cela demande une connaissance minimale de l'IFF. Un format IFF est repéré par quatre lettres qui sont FORM, CAT ("C","A","T", " ") ou LIST. Les quatre octets suivants et qui seront représentés par #### donnent la taille des données qui suivent. On peut donc lire les 12 ou 20 premiers octets du presse-papiers et rechercher du texte.

Il est possible de trouver directement du texte (FORM####FTXT, ce que le programme ci-dessous suppose). Il est également possible de ne trouver que des données images (FORM####ILBM) : dans ce cas, il y a échec en lecture. Une troisième possibilité est de rencontrer une image suivie d'un texte (CAT ####ILBMFTXT-FORM####ILBM####). Dans ce cas, on doit ignorer le FORM###ILBM en se positionnant à sa fin. Le déplacement est calculé avec la taille inscrite après FORM et effectué en utilisant le décalage.

Une autre difficulté tient dans l'obligation d'envoyer un nombre pair de caractères. Si vous désirez mettre trois caractères dans le presse-papiers, il vous faudra ajouter un octet nul en tant que pad-byte. Par contre, la taille indiquée après CHRS ne doit pas tenir compte de cet octet tandis que la taille de la FORM doit en tenir compte.

Voilà, vous pouvez considérer ce programme comme une introduction à la programmation du clipboard.device. Les opérations "copier" et "coller" sont présentes. Elles sont très rustiques mais cela vous permettra de mieux comprendre leur fonctionnement. Cet exemple permettra peut-être à quelques éditeurs de presse-papiers de voir le jour.

GFA Basic
GFA Basic


[Retour en haut] / [Retour aux articles]