Pl2 EXOS 4.DOC
Jump to navigation
Jump to search
------------------------
EXERCICES sur les
programmes sous
INTERRUPTION
-----------------------
1) Exercice nr°1:
--------------
a) Si TACR vaut %100 et que le registre de donn‚e vaut 42, quelle sera
la fr‚quence d'appel d'un programme sur ce TIMER ?
Le programme sera-t-il install‚ sur le TIMER A ou sur le TIMER B ?
b) Comment faire pour stopper un programme sous interruption install‚
sous le TIMER A ? (En 1 ligne!)
c) On veut installer un programme sous interruption qui doit s'ex‚cuter
à peu près 245 fois par seconde, donnez une valeur possible des regi-
stres de controle et de donn‚e pour obtenir cet effet.
d) Peut-on installer plusieurs programmes sous interruption dans un
même TIMER ?
(Un peu de bon sens suffit pour trouver la r‚ponse...)
e) Un programme sous interruption doit obligatoirement s'ex‚cuter en
MODE SUPERVISEUR.
Trouvez une raison à cela ... (Très simple)
1) Exercice nr°2:
--------------
Comme les op‚rations d'installation d'une routine sur le TIMER A ou
sur le TIMER B sont assez r‚p‚titives, vous allez cr‚er deux MACROS
INSTRUCTIONS ( TIMERA et TIMERB ) qui se chargeront d'installer un
programme respectivement sur le TIMER A et le TIMER B.
Indications:
------------
.Utilisez les op‚rations de masquage AND.B #BBB,$adresse et
BLCR #BBB,$adresse pour modifier les valeurs des diff‚rents
registres du MFP.
.Servez vous de la fonction XBTIMER de l'XBIOS pour vous
simplifier le travail...
2) Exercice nr°3:
--------------
Cr‚ez 2 MACROS INSTRUCTIONS :STOPTIMEA et STOPTIMEA qui doivent
respectivement stopper le TIMER A et le TIMER B.
3) Exercice nr°3:
--------------
Cr‚ez un programme qui, après avoir ‚t‚ charg‚, retourne au DESKTOP
et change la palette des couleurs à intervals r‚guliers.
Indications:
------------
.Vous vous en doutez, ce programme sera un programme sous
interruption!
.Utilisez vos macros TIMERA et TIMERB pour installer le programme
.Attention!, pour retourner au DESKTOP, il ne faudra pas utiliser
le fonction PTERM du gemdos (Macro 'TERM') , mais la fonction de
code $31 du gemdos: KEEP PROCESS (Macro 'KEEP') pour que le prg
sous interruption ne soit pas effac‚ !
.Pour le changement de la palette, utilisez la variable système
'colorptr' car la fonction du GEMDOS utilise SP...
4) Exercice nr°4:
--------------
Cr‚ez un programme dont la partie principale tourne dans une boucle et
affiche (Macro HEXA) la valeur d'un L-M du segment BSS et dont une au-
tre partie, une routine sous interruption, incr‚mente le L-M qui est
affich‚ par le programme principal.
--------------------
PIECHOCKI Laurent
8, Impasse Bellevue Corrig‚ dans le fichier:CORRIG_4.DOC
57980 TENTELING ------------
Back to ASM_Tutorial