Horloge
-------
Auteur : Sylvain Rodenburg
Publie dans Amstar & CPC numero 33 * Mai 1989
Le programme HORLOGE est un programme permettant l'affichage permanent de
l'heure pendant la programmation en Basic. Il vous est desormais possible de
connaitre l'heure en direct pendant que vous tapez les programmes de votre revue
preferee.
LES PROGRAMMES
--------------
- HORLOGE.BAS : c'est le programme BASIC lanceur d'HORLOGE. Il permet
l'affichage du cadran de l'horloge ainsi que l'introduction de differents
parametres tels que le mode ecran souhaite, les heures, minutes, secondes.
- HORLOG1.BIN : premiere routine assembleur de 106 octets generes par le
programme CHARG1.BAS, elle assume la fonction de transmission des adresses
dans les differentes tables des heures, minutes, secondes ainsi que la
recherche des premieres coordonnees pour le premier affichage des heures,
minutes, secondes. Elle sera ecrasee par la sauvegarde d'ecran apres son
emploi.
- HORLOG2.BIN : seconde routine assembleur de 974 octets generee par le
programme CHARG2.BAS; celle-ci gere les interruptions, la restitution du
cadran de l'horloge, les heures, minutes, secondes..
UTILISATION
-----------
* Tapez les trois programmes HORLOGE.BAS, CHARG1.BAS, CHARG2.BAS, lancez ces
deux derniers qui creeront respectivement les routines assembleur HORLOG1.BIN
et HORLOG2.BIN, puis lancez le tout par RUN"HORLOGE"; vous repondrez ensuite
aux differentes question il faut savoir que Horloge fonctionne en systeme
24H, les heures varient de 0 a 24.
Horloge a ete cree afin de ne gener en aucun cas la programmation en Basic.
Il fonctionne exclusivement en mode 2 (la definition graphique etant la
meilleure), mais celui-ci peut fonctionner egalement, sans aucun probleme,
en mode 1 (le mode 0 est exclu). ATTENTION, le passage d'un mode ecran a un
autre entrainera un affichage incomprehensible du cadran de l'horloge; il
est donc conseille de rester dans le meme mode.
Lors de la programmation en Basic, n'ayez pas peur de faire scroller votre
ecran, Horloge regenera automatiquement le cadran de l'horloge, n'ayez
egalement aucune crainte lors de l'entree de vos instructions Basic,
d'ecrire sur le cadran de l'horloge, celui-ci s'affichera automatiquement
toutes les minutes ou, si ce temps vous semble trop long, par la simple
pression de la touche <TAB>.
Pour le meilleur fonctionnement d'Horloge, il faut faire attention que
l'origine (ORIGIN) reste bien de coordonnees (0,0), car le programme utilise
le curseur graphique, et surveiller les parametres du stylo graphique
d'ecriture, ceux-ci ne doivent en aucun cas etre les memes que la couleur de
fond (INK 0,parametre), sinon l'horloge serait invisible. Le listage d'un
programme a l'ecran, sur l'imprimante, la sauvegarde, le chargement d'un
programme ainsi que le catalogue pourront etre effectues sans probleme mais
ralentiront l'horloge (ordre de priorite plus important).
Horloge pourra egalement etre present lors de l'execution de certains
programmes (dans des conditions citees dans le paragraphe) mais ceux-ci seront
un peu ralentis.
FONCTIONNEMENT
--------------
L'horloge est basee sur le vecteur d'interruption KL NEW FRAME FLY (#BCD7) sur
6128), en effet, ce vecteur cree une interruption tous les 1/50e de seconde
(liee au controleur video) de ce fait, il faut bien considerer que l'horloge
fait, il faut bien considerer que l'horloge ne sera pas d'une stabilite
absolue. Cependant, le resultat obtenu est acceptable.
Dans le programme HORLOGE2, il existe un petit module qui permet de compter 50
interruptions ce qui fait logiquement 1 seconde. A ce stade, un saut sera
effectue a la routine d'affichage de l'heure.