Obligement - L'Amiga au maximum

Dimanche 16 décembre 2018 - 12:41  

Translate

En De Nl Nl
Es Pt It Nl


Rubriques

 · Accueil
 · A Propos
 · Articles
 · Galeries
 · Glossaire
 · 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 en d'autres langues


Twitter

Suivez-nous sur Twitter




Liens

 · Sites de téléchargements
 · Associations
 · Pages Personnelles
 · Matériel
 · Réparateurs
 · Revendeurs
 · Presse et médias
 · Programmation
 · Logiciels
 · Jeux
 · Scène démo
 · Divers


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 : Assembleur - Programme d'effacement d'une fenêtre CLI/Shell
(Article écrit par Frédéric Mazué et extrait d'Amiga News Tech - février 1990)


Il est paradoxal qu'un ordinateur de la classe de l'Amiga ne possède pas de commande pour effacer une fenêtre CLI : l'alias Clear du Shell ne satisfait certainement pas tout le monde. En tout cas, pas ceux qui ne possèdent pas le Workbench 1.3 ! De plus, Clear efface les fenêtres Shell mais pas les fenêtres CLI.

Le programme qui suit, nommé CLS, répare cette petite lacune. Son principe est très simple : après avoir ouvert la dos.library, le programme recherche le canal de la fenêtre à partir de laquelle il a été appelé, puis y écrit une séquence de caractères de contrôle (Cf. documentation sur les entrées/sorties de l'Amiga) :

£9b,";H"   Ramène le curseur ligne 1 colonne 1 (HOME)
£9b,"J"    Efface la fenêtre à partir du curseur

Pour terminer, la dos.library est fermée et le programme rend la main.

Le programme a été écrit avec Devpac 2 mais ne présente pas de problème de compatibilité avec le préhistorique K-Seka que ceux qui aiment s'embêter affectionnent... Enfin, le code objet de ce programme est entièrement relogeable, ça peut toujours être utile. Mieux, il est complètement réentrant. En d'autres termes, vous pouvez le rendre résident par la commande "Resident CLS Pure ADD" placée dans votre startup-sequence, ou bien tout simplement en positionnant l'attribut "p" dans les attributs de protection par la commande "Protect CLS +p".

L'avantage de ceci est que l'AmigaDOS n'ira plus chercher la commande CLS sur disque mais en mémoire, ce qui évitera la très désagréable séance de "disk jockey" aux malheureux possesseurs d'un seul et unique lecteur de disquette.

Encore quelques remarques : il est parfaitement possible de modifier très légèrement ce programme afin qu'il permette de changer la couleur d'écriture ou celle du fond de la fenêtre. A titre d'indication, voici quelques codes utiles à placer au label "debut" dans le listing :

1. Définition de la couleur et du style d'écriture

$9b,style,";",cl,c2,"m"

...où "style" est un caractère ASCII pouvant être :
  • "0" : écriture normale.
  • "1" : écriture grasse.
  • "2" : écriture italique.
  • "3" : écriture soulignée.
"c1" est une chaîne de caractères ASCII pouvant être :
  • "30" à "37" : couleurs du texte de 0 à 7.
"c2" est chaîne de caractères ASCII pouvant être :
  • "40" à "47" : couleur du fond de 0 à 7.
2. Rendre le curseur invisible (pour faire une blague ?)

$9b,"0","","p"

3. Rendre le curseur visible

$9b,"","p"

Le listing :

assembleur


[Retour en haut] / [Retour aux articles]