Browse code

Fixed redraw and 12 hours format with clock

neauoire authored on 02/04/2021 00:21:13
Showing 1 changed files
... ...
@@ -1,6 +1,7 @@
1 1
 %RTN { JMP2r }
2 2
 %ABS2 { DUP2 #000f SFT2 EQU #04 JNZ #ffff MUL2 }
3 3
 %SCALE { #0002 DIV2 #0020 ADD2 }
4
+%12HOURS { DUP #0c GTH #0c MUL SUB }
4 5
 
5 6
 ;current { second 1 }
6 7
 ;line { x0 2 y0 2 x 2 y 2 sx 2 sy 2 dx 2 dy 2 e1 2 e2 2 }
... ...
@@ -32,6 +33,7 @@ BRK
32 33
 	
33 34
 	#00 =Time.get
34 35
 	~Time.second ~current.second NEQ #01 JNZ BRK
36
+	~Time.second =current.second
35 37
 
36 38
 	( clear )
37 39
 	#0080 SCALE #0080 SCALE ~needles.sx ~needles.sy #00 ,draw-line JSR2
... ...
@@ -41,12 +43,10 @@ BRK
41 43
 	( place )
42 44
 	#00 ~Time.second #0002 MUL2 ,table ADD2 LDR2
43 45
 	#00 SWP SCALE =needles.sy #00 SWP SCALE =needles.sx
44
-
45 46
 	#00 ~Time.minute #0002 MUL2 ,table ADD2 LDR2
46 47
 	#00 SWP #0004 DIV2 #0003 MUL2 #0020 ADD2 SCALE =needles.my 
47 48
 	#00 SWP #0004 DIV2 #0003 MUL2 #0020 ADD2 SCALE =needles.mx
48
-
49
-	#00 ~Time.hour #0005 MUL2 #0002 MUL2 ,table ADD2 LDR2
49
+	#00 ~Time.hour 12HOURS #05 MUL #0002 MUL2 ,table ADD2 LDR2
50 50
 	#00 SWP #0002 DIV2 #0040 ADD2 SCALE =needles.hy 
51 51
 	#00 SWP #0002 DIV2 #0040 ADD2 SCALE =needles.hx
52 52
 
... ...
@@ -64,16 +64,12 @@ BRK
64 64
 	#0008 =Sprite.x
65 65
 	,font_hex #00 ~Time.hour #0f AND #08 MUL ADD2 =Sprite.addr
66 66
 	#02 =Sprite.color
67
-
68
-
69 67
 	#0018 =Sprite.x
70 68
 	,font_hex #00 ~Time.minute #f0 AND #04 SFT #08 MUL ADD2 =Sprite.addr
71 69
 	#02 =Sprite.color
72 70
 	#0020 =Sprite.x
73 71
 	,font_hex #00 ~Time.minute #0f AND #08 MUL ADD2 =Sprite.addr
74 72
 	#02 =Sprite.color
75
-
76
-
77 73
 	#0030 =Sprite.x
78 74
 	,font_hex #00 ~Time.second #f0 AND #04 SFT #08 MUL ADD2 =Sprite.addr
79 75
 	#02 =Sprite.color
... ...
@@ -92,19 +88,13 @@ BRK
92 88
 	#00 #3c 
93 89
 	$loop
94 90
 		( load ) OVR #00 SWP #0002 MUL2 ,table ADD2 LDR2 
95
-
96 91
 		#00 SWP SCALE =Screen.y
97 92
 		#00 SWP SCALE =Screen.x
98
-		#01 =Screen.color
99
-
93
+		OVR #00 EQU #01 ADD =Screen.color
100 94
 		( incr ) SWP #01 ADD SWP
101 95
 		DUP2 LTH ^$loop JNZ
102 96
 	POP2
103 97
 
104
-	#00 ,table PEK2 SCALE =Screen.x
105
-	#00 ,table #0001 ADD2 PEK2 SCALE =Screen.y
106
-	#02 =Screen.color
107
-
108 98
 RTN
109 99
 
110 100
 @draw-line ( x1 y1 x2 y2 color -- )