Commit a7006727 by Pascal J. Bourguignon

Added test with CR and with BS, and loop calibration for sub-second delays.

parent fa3507a4
1*DEMONSTRATION DU SWANK-TERMINAL
10 AFFICHER[/,'BONJOUR; ATTENDONS 10 SECONDES: ']
12 &ATTEN(10)
14 AFFICHER[/,'C''EST FINI.',2/]
16 TERMINER
100 PROCEDURE &ATTEN(DELAI) LOCAL TEMPS,I,C,FINI,TRAIT
10 &CALIB()
12 AFFICHER[/,'BONJOUR; ATTENDONS 10 SECONDES: ',/]
14 AFFICHER[2/,' <-- AVEC RETOUR CHARIOT']
16 &ATTEN(10,1,0.1)
18 AFFICHER[2/,' AVEC ESPACE ARRIERE --> ']
20 &ATTEN(10,0,0.1)
22 AFFICHER[/,'C''EST FINI.',2/]
24 TERMINER
100 PROCEDURE &ATTEN(DELAI,UTICR,PERIO) LOCAL DELAI,UTICR,PERIO,BS,TEMPS,I,C,FINI,TRAIT,BS
102 CHAINE TRAIT,BS;TRAIT_'-/|\';BS_EQC(8)
104 I_0;FINI_TEM()+DELAI;AFFICHER &SUIV(TRAIT,I)
106 FAIRE 112 POUR C_0 TANT QUE TEM()<FINI
108 AFFICHER[U,U]BS,&SUIV(TRAIT,I)
110 &SECON()
112*FIN FAIRE
114 AFFICHER[U,' ']BS
116 RETOUR
120 PROCEDURE &SUIV(CHAIN,I)
122 I_I+1
124 SI LGR(CHAIN)<I ALORS I_1
126 RESULTAT SCH(CHAIN,I,1)
130 PROCEDURE &SECON() LOCAL T,C
132 T_TEM()
134 FAIRE 134 POUR C_0 TANT QUE T=TEM()
136 RETOUR
106 FAIRE 118 POUR C_0 TANT QUE TEM()<FINI
108 SI UTICR#0 ALORS ALLER EN 114
110 AFFICHER[U,U]BS,&SUIV(TRAIT,I)
112 ALLER EN 116
114 AFFICHER[C,U]&SUIV(TRAIT,I)
116 &DORS(PERIO)
118*FIN FAIRE
120 SI UTICR=0 ALORS AFFICHER[U,' ']BS SINON AFFICHER[C,' ']
122 RETOUR
200 PROCEDURE &SUIV(CHAIN,I)
202 I_I+1
204 SI LGR(CHAIN)<I ALORS I_1
206 RESULTAT SCH(CHAIN,I,1)
300 PROCEDURE &CALIB() LOCAL T
302 AFFICHER 'CALIBRATION DE LA VITESSE DE BOUCLE. UNE SECONDE…'
304* C'EST IMPORTANT DE LE FAIRE DEUX FOIS: LA PREMIERE FOIS PEUT COMMENCER AU MILIEU D'UNE SECONDE!
306 T_TEM();FAIRE 306 POUR CALIB_0 TANT QUE T=TEM()
308 T_TEM();FAIRE 308 POUR CALIB_0 TANT QUE T=TEM()
310 RETOUR
400 PROCEDURE &DORS(PERIO) LOCAL PERIO,T,C,FINI
402 SI PERIO#ENT(PERIO) ALORS ALLER EN 408
404 T_TEM()+PERIO;FAIRE 404 POUR C_0 TANT QUE T>TEM()
406 RETOUR
408 SI PERIO>1 ALORS DEBUT &DORS(ENT(PERIO));PERIO_PERIO-ENT(PERIO) FIN
410 C_CALIB*PERIO;FAIRE 410 POUR T_C PAS -1 TANT QUE T>0
412 RETOUR
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment