Commit 59a7fe2e47da9b163f42cbaf073c4b29ac49337c

Authored by Geoffrey PREUD'HOMME
1 parent 54877f0f

Correction des modulos

Ne semblent pas fonctionner, on utilise le fait que x%y=x-(x/y)*y (avec
/ étant une division entière) pour passer à côté.
Showing 1 changed file with 12 additions and 11 deletions   Show diff stats
@@ -126,24 +126,25 @@ afficherHorloge: @@ -126,24 +126,25 @@ afficherHorloge:
126 temp <- t2 & 0b00011111 126 temp <- t2 & 0b00011111
127 d3 <- 0x00 127 d3 <- 0x00
128 si temp > 10 alors d3 <- afficheur@ROM[temp/10] 128 si temp > 10 alors d3 <- afficheur@ROM[temp/10]
129 - d2 <- afficheur@ROM[temp%10] | 0b10000000  
130 - d1 <- afficheur@ROM[t2/10]  
131 - d0 <- afficheur@ROM[t2%10] 129 + d2 <- afficheur@ROM[temp-(temp/10)*10] | 0b10000000
  130 + d1 <- afficheur@ROM[t1/10]
  131 + d0 <- afficheur@ROM[t1-(t1/10)*10]
132 ret 132 ret
133 133
134 afficherTemperature: 134 afficherTemperature:
135 ; Considère le registre compteur comme une température et l'affiche 135 ; Considère le registre compteur comme une température et l'affiche
136 d0 <- 0x63 136 d0 <- 0x63
137 - d1 <- afficheur@ROM[compteur%10]  
138 - temp <- compteur + 50  
139 - d2 <- afficheur@ROM[(temp/10)%10] | 0b10000000  
140 - d3 <- afficheur@ROM[temp/100] 137 + d1 <- afficheur@ROM[compteur-(compteur/10)*10]
  138 + temp <- compteur / 10 + 5
  139 + d2 <- afficheur@ROM[temp-(temp/10)*10] | 0b10000000
  140 + d3 <- 0x00
  141 + si temp > 10 alors d3 <- afficheur@ROM[temp/10]
141 ret 142 ret
142 143
143 afficherHeur: 144 afficherHeur:
144 ; Considère le registre compteur comme une heure et l'affiche 145 ; Considère le registre compteur comme une heure et l'affiche
145 d3 <- afficheur@ROM[compteur/10] 146 d3 <- afficheur@ROM[compteur/10]
146 - d2 <- afficheur@ROM[compteur%10] | 0b10000000 147 + d2 <- afficheur@ROM[compteur-(compteur*10)/10] | 0b10000000
147 d1 <- 0x00 148 d1 <- 0x00
148 d0 <- 0x00 149 d0 <- 0x00
149 ret 150 ret
@@ -153,7 +154,7 @@ afficherMinu: @@ -153,7 +154,7 @@ afficherMinu:
153 d3 <- 0x00 154 d3 <- 0x00
154 d2 <- 0b10000000 155 d2 <- 0b10000000
155 d1 <- afficheur@ROM[compteur/10] 156 d1 <- afficheur@ROM[compteur/10]
156 - d0 <- afficheur@ROM[compteur%10] 157 + d0 <- afficheur@ROM[compteur-(compteur*10)/10]
157 ret 158 ret
158 159
159 afficherJour: 160 afficherJour:
@@ -289,7 +290,7 @@ etatParaJours: @@ -289,7 +290,7 @@ etatParaJours:
289 compteur <- 12 290 compteur <- 12
290 etatParaJoursU: 291 etatParaJoursU:
291 d3 <- afficheur@ROM[compteur/10] 292 d3 <- afficheur@ROM[compteur/10]
292 - d2 <- afficheur@ROM[compteur%10] 293 + d2 <- afficheur@ROM[compteur-(compteur*10)/10]
293 d1 <- 0x00 294 d1 <- 0x00
294 d0 <- 0xFF ; TODO Récupérer le mode 295 d0 <- 0xFF ; TODO Récupérer le mode
295 reti 296 reti
@@ -490,7 +491,7 @@ retour: @@ -490,7 +491,7 @@ retour:
490 watchdog: 491 watchdog:
491 ; Met à jour les registres de temps, active agir10s ou agirHeur si nécessaire 492 ; Met à jour les registres de temps, active agir10s ou agirHeur si nécessaire
492 inc t0 493 inc t0
493 - si t0 % 5 != 0 saut reti ; Continue si on est sur un multiple de 10 secondes 494 + si t0-(t0/5)*5 != 0 saut reti ; Continue si on est sur un multiple de 10 secondes
494 call agir10s 495 call agir10s
495 si t0 < 30 saut reti ; Continue si on est sur un multiple de 60 secondes 496 si t0 < 30 saut reti ; Continue si on est sur un multiple de 60 secondes
496 t0 <- 0 497 t0 <- 0