Obligement - L'Amiga au maximum

Vendredi 19 avril 2024 - 21:40  

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 : Assembleur - un pointeur lemming
(Article écrit par Roméo Rapido et extrait d'Amiga News - juillet 1991)


Récemment, je suis tombé sur une séquence de démarrage qui transformait la souris en pointeur animé, plus précisément, en un lemming qui marche, infatigable et imperturbable. Je vous propose donc un petit "hack" inspiré de cette séquence.

La technique est simple : nous avons déjà détournée l'interruption Copper pour savoir quand le spot arrivait en bas de l'écran, eh bien il suffit de faire la même chose mais en utilisant l'IT envoyé par le Copper à chaque exécution de la liste Copper, soit tout les 1/50e de seconde. On incrémente un compteur et quand celui-ci arrive à une valeur déterminée, on le remet à zéro et on avance dans la table des sprites.

Il ne reste plus qu'à remplacer l'ancien sprite de la souris par le nouveau. Le code de l'IT ainsi que les données des sprites doivent être recopiés dans une zone de mémoire allouée pour qu'il ne soient pas écrasés par un autre programme. Il faut donc prendre particulièrement garde à ce que le code soit relogeable.

Autre problème, arrêter l'IT et désallouer la mémoire, la solution que j'ai adoptée n'est peut-être pas la plus élégante, mais elle est simple à mettre en oeuvre et elle fonctionne parfaitement. Il suffit de regarder s'il n'y a pas les caractères "ABCD" juste avant le code de l'IT, simple mais efficace. De plus, il faut restaurer l'ancienne souris et ces couleurs. C'est pourquoi on sauvegarde les préférences (GetPrefs) pour pouvoir les restituer (SetPrefs) en sortie. Un appel au programme lance le pointeur animé et un deuxième arrête tout. Bon, assez papoté, envoyez les lemmings, pardon, le code.

Assembleur
Assembleur
Assembleur
Assembleur
Assembleur
Assembleur
Assembleur
Assembleur

Et voilà, vous pouvez bien sûr remplacer les sprites, jouer sur la durée des tempos et l'ordre des images. Si vous êtes très courageux, rien n'empêche de réaliser une animation de longue durée, voire de déplacer réellement la souris et de faire faire demi-tour au lemming lorsqu'il arrive en bout d'écran. Remarquez tout de même que ce petit programme comporte un léger défaut : lorsque le Workbench travaille, il affiche le "ZZ" qui est immédiatement remplacé par un lemming marcheur, mais il en reste un morceau en bas.


[Retour en haut] / [Retour aux articles]