主题:急需各位高手帮助
DECLARE SUB yuli ()
DECLARE SUB yueli ()
DECLARE SUB AF.Print (Xpos%, Ypos%, Text$, col%)
SCREEN 12
PALETTE 0, 65536 * 45 + 256 * 45 + 45
LINE (40, 80)-(600, 80), 15
LINE -(600, 400), 8
LINE -(40, 400), 8
LINE -(40, 80), 15
LINE (360, 120)-(560, 120), 15
LINE -(560, 360), 8
LINE -(360, 360), 8
LINE -(360, 120), 15
LINE (400, 90)-(520, 90), 8
LINE -(520, 115), 15
LINE -(400, 115), 15
LINE -(400, 90), 8
LINE (460, 120)-(460, 130), 11
LINE (459, 120)-(459, 130), 11
LINE (460, 350)-(460, 360), 11
LINE (459, 350)-(459, 360), 11
LINE (360, 240)-(370, 240), 11
LINE (360, 239)-(370, 239), 11
LINE (550, 240)-(560, 240), 11
LINE (550, 239)-(560, 239), 11
LOCATE 9, 57: PRINT 12
LOCATE 22, 57: PRINT 6
LOCATE 15, 47: PRINT 9
LOCATE 15, 68: PRINT 3
15 LOCATE 12, 20: COLOR 10
16 PRINT DATE$
17 year = VAL(MID$(DATE$, 7, 4))
20 mon = 1: day = 1: c = 0
'30 DATA 31,28,31,30,31,30,31,31,30,31,30,31
40 y = year - 1: s = y + INT(y / 4) - INT(y / 100) + INT(y / 400) + 1
45 k = s - INT(s / 7) * 7
50 h = 6: L = 10
60 FOR i = 1 TO 12: CLS
61 LOCATE h + 2, L: COLOR 13
62 PRINT TAB(L + 2); " "; year; : COLOR 15
63 PRINT "("; i; ")"; : COLOR 13
64 PRINT " "
65 PRINT TAB(L); "-------------------------------"
67 PRINT : COLOR 14
68 PRINT TAB(L); "Sun Mon Tue Wed Thu Fri Sat"
70 COLOR 2
75 READ num
80 IF i <> 2 THEN 90
85 IF year = INT(year / 4) * 4 THEN num = num + 1
90 FOR j = 1 TO num
95 IF k = 0 OR k = 6 THEN s = 12 ELSE s = 2
96 COLOR s
100 PRINT TAB(L + 4 * k); j;
105 k = k + 1
110 IF k <= 6 THEN 120
115 PRINT : k = 0
120 NEXT j: COLOR 15
122 LOCATE 23, 8: PRINT "ESC .. Jump Out !! Any Key continue !!";
125 PRINT : z$ = INPUT$(1)
126 IF z$ = CHR$(27) THEN 135
130 NEXT i
LET pi = 3.1415926#
AF.Print 2, 2, "222", 42
'PALETTE 0, 65536 * 45 + 256 * 45 + 45
LOCATE 7, 54: PRINT DATE$
'CIRCLE (460, 230), 120, 5
'CIRCLE (460, 230), 100, 6
'COLOR 5
'LINE (308, 109)-(308, 131)
'LINE (460, 290)-(460, 310)
'LINE (210, 230)-(190, 230)
'LINE (310, 330)-(310, 350)
'LINE (410, 230)-(430, 230)
DO
LOCATE 2, 2
COLOR 0: PRINT TIME$
hour = VAL(LEFT$(TIME$, 2))
minute = VAL(MID$(TIME$, 4, 2))
second = VAL(MID$(TIME$, 7, 2))
COLOR 1
LET m = minute / 60 * (2 * pi) - pi / 2
LET h = hour / 12 * (2 * pi) - pi / 2
LET s = second / 60 * (2 * pi) - pi / 2
IF minute <> m2 THEN
COLOR 0
LINE (460, 240)-(460 + 50 * COS(m - pi / 30), 240 + 50 * SIN(m - pi / 30))
COLOR 14
LINE (460, 240)-(460 + 50 * COS(m), 240 + 50 * SIN(m))
ELSE
COLOR 0
LINE (460, 240)-(460 + 50 * COS(m), 240 + 50 * SIN(m))
LINE (460, 240)-(460 + 50 * COS(m3), 240 + 50 * SIN(m3))
COLOR 14
m = m + (second / 3600) * (2 * pi)
LET m3 = m
LINE (460, 240)-(460 + 50 * COS(m), 240 + 50 * SIN(m))
END IF
IF hour <> h2 THEN
COLOR 0
LINE (460, 240)-(460 + 30 * COS(h - pi / 30), 240 + 30 * SIN(h - pi / 30))
COLOR 6
LINE (460, 240)-(460 + 30 * COS(h), 240 + 30 * SIN(h))
ELSE
COLOR 0
LINE (460, 240)-(460 + 30 * COS(h), 240 + 30 * SIN(h))
LINE (460, 240)-(460 + 30 * COS(h3), 240 + 30 * SIN(h3))
COLOR 14
h = h + (minute / 3600) * (2 * pi)
LET h3 = h
LINE (460, 240)-(460 + 30 * COS(h), 240 + 30 * SIN(h))
END IF
IF second <> s2 THEN
COLOR 0
LINE (460, 240)-(460 + 80 * COS(s - pi / 30), 240 + 80 * SIN(s - pi / 30))
COLOR 0
LINE (460, 240)-(460 + 80 * COS(s), 240 + 80 * SIN(s))
ELSE
COLOR 4
LINE (460, 240)-(460 + 80 * COS(s), 240 + 80 * SIN(s))
END IF
h2 = hour
m2 = minute
s2 = second
135 LOOP UNTIL INKEY$ <> ""
DATA 31,28,31,30,31,30,31,31,30,31,30,31
'SUB AF.Print (Xpos%, Ypos%, Text$, col%)
SUB AF.Print (Xpos%, Ypos%, Text$, col%)
x% = Xpos%
y% = Ypos%
Spacing% = 8
FOR i% = 0 TO LEN(Text$) - 1
x% = x% + Spacing%
Offset% = 8 * ASC(MID$(Text$, i% + 1, 1)) + 14
FOR j% = 0 TO 7
DEF SEG = &HFFA6
Bit% = PEEK(Offset% + j%)
IF Bit% AND 1 THEN PSET (x%, y% + j%), col% + j%
IF Bit% AND 2 THEN PSET (x% - 1, y% + j%), col% + j%
IF Bit% AND 4 THEN PSET (x% - 2, y% + j%), col% + j%
IF Bit% AND 8 THEN PSET (x% - 3, y% + j%), col% + j%
IF Bit% AND 16 THEN PSET (x% - 4, y% + j%), col% + j%
IF Bit% AND 32 THEN PSET (x% - 5, y% + j%), col% + j%
IF Bit% AND 64 THEN PSET (x% - 6, y% + j%), col% + j%
IF Bit% AND 128 THEN PSET (x% - 7, y% + j%), col% + j%
NEXT j%
NEXT i%
END SUB
要实现在查阅历的时候不影响时钟
急用谢谢帮助
DECLARE SUB yueli ()
DECLARE SUB AF.Print (Xpos%, Ypos%, Text$, col%)
SCREEN 12
PALETTE 0, 65536 * 45 + 256 * 45 + 45
LINE (40, 80)-(600, 80), 15
LINE -(600, 400), 8
LINE -(40, 400), 8
LINE -(40, 80), 15
LINE (360, 120)-(560, 120), 15
LINE -(560, 360), 8
LINE -(360, 360), 8
LINE -(360, 120), 15
LINE (400, 90)-(520, 90), 8
LINE -(520, 115), 15
LINE -(400, 115), 15
LINE -(400, 90), 8
LINE (460, 120)-(460, 130), 11
LINE (459, 120)-(459, 130), 11
LINE (460, 350)-(460, 360), 11
LINE (459, 350)-(459, 360), 11
LINE (360, 240)-(370, 240), 11
LINE (360, 239)-(370, 239), 11
LINE (550, 240)-(560, 240), 11
LINE (550, 239)-(560, 239), 11
LOCATE 9, 57: PRINT 12
LOCATE 22, 57: PRINT 6
LOCATE 15, 47: PRINT 9
LOCATE 15, 68: PRINT 3
15 LOCATE 12, 20: COLOR 10
16 PRINT DATE$
17 year = VAL(MID$(DATE$, 7, 4))
20 mon = 1: day = 1: c = 0
'30 DATA 31,28,31,30,31,30,31,31,30,31,30,31
40 y = year - 1: s = y + INT(y / 4) - INT(y / 100) + INT(y / 400) + 1
45 k = s - INT(s / 7) * 7
50 h = 6: L = 10
60 FOR i = 1 TO 12: CLS
61 LOCATE h + 2, L: COLOR 13
62 PRINT TAB(L + 2); " "; year; : COLOR 15
63 PRINT "("; i; ")"; : COLOR 13
64 PRINT " "
65 PRINT TAB(L); "-------------------------------"
67 PRINT : COLOR 14
68 PRINT TAB(L); "Sun Mon Tue Wed Thu Fri Sat"
70 COLOR 2
75 READ num
80 IF i <> 2 THEN 90
85 IF year = INT(year / 4) * 4 THEN num = num + 1
90 FOR j = 1 TO num
95 IF k = 0 OR k = 6 THEN s = 12 ELSE s = 2
96 COLOR s
100 PRINT TAB(L + 4 * k); j;
105 k = k + 1
110 IF k <= 6 THEN 120
115 PRINT : k = 0
120 NEXT j: COLOR 15
122 LOCATE 23, 8: PRINT "ESC .. Jump Out !! Any Key continue !!";
125 PRINT : z$ = INPUT$(1)
126 IF z$ = CHR$(27) THEN 135
130 NEXT i
LET pi = 3.1415926#
AF.Print 2, 2, "222", 42
'PALETTE 0, 65536 * 45 + 256 * 45 + 45
LOCATE 7, 54: PRINT DATE$
'CIRCLE (460, 230), 120, 5
'CIRCLE (460, 230), 100, 6
'COLOR 5
'LINE (308, 109)-(308, 131)
'LINE (460, 290)-(460, 310)
'LINE (210, 230)-(190, 230)
'LINE (310, 330)-(310, 350)
'LINE (410, 230)-(430, 230)
DO
LOCATE 2, 2
COLOR 0: PRINT TIME$
hour = VAL(LEFT$(TIME$, 2))
minute = VAL(MID$(TIME$, 4, 2))
second = VAL(MID$(TIME$, 7, 2))
COLOR 1
LET m = minute / 60 * (2 * pi) - pi / 2
LET h = hour / 12 * (2 * pi) - pi / 2
LET s = second / 60 * (2 * pi) - pi / 2
IF minute <> m2 THEN
COLOR 0
LINE (460, 240)-(460 + 50 * COS(m - pi / 30), 240 + 50 * SIN(m - pi / 30))
COLOR 14
LINE (460, 240)-(460 + 50 * COS(m), 240 + 50 * SIN(m))
ELSE
COLOR 0
LINE (460, 240)-(460 + 50 * COS(m), 240 + 50 * SIN(m))
LINE (460, 240)-(460 + 50 * COS(m3), 240 + 50 * SIN(m3))
COLOR 14
m = m + (second / 3600) * (2 * pi)
LET m3 = m
LINE (460, 240)-(460 + 50 * COS(m), 240 + 50 * SIN(m))
END IF
IF hour <> h2 THEN
COLOR 0
LINE (460, 240)-(460 + 30 * COS(h - pi / 30), 240 + 30 * SIN(h - pi / 30))
COLOR 6
LINE (460, 240)-(460 + 30 * COS(h), 240 + 30 * SIN(h))
ELSE
COLOR 0
LINE (460, 240)-(460 + 30 * COS(h), 240 + 30 * SIN(h))
LINE (460, 240)-(460 + 30 * COS(h3), 240 + 30 * SIN(h3))
COLOR 14
h = h + (minute / 3600) * (2 * pi)
LET h3 = h
LINE (460, 240)-(460 + 30 * COS(h), 240 + 30 * SIN(h))
END IF
IF second <> s2 THEN
COLOR 0
LINE (460, 240)-(460 + 80 * COS(s - pi / 30), 240 + 80 * SIN(s - pi / 30))
COLOR 0
LINE (460, 240)-(460 + 80 * COS(s), 240 + 80 * SIN(s))
ELSE
COLOR 4
LINE (460, 240)-(460 + 80 * COS(s), 240 + 80 * SIN(s))
END IF
h2 = hour
m2 = minute
s2 = second
135 LOOP UNTIL INKEY$ <> ""
DATA 31,28,31,30,31,30,31,31,30,31,30,31
'SUB AF.Print (Xpos%, Ypos%, Text$, col%)
SUB AF.Print (Xpos%, Ypos%, Text$, col%)
x% = Xpos%
y% = Ypos%
Spacing% = 8
FOR i% = 0 TO LEN(Text$) - 1
x% = x% + Spacing%
Offset% = 8 * ASC(MID$(Text$, i% + 1, 1)) + 14
FOR j% = 0 TO 7
DEF SEG = &HFFA6
Bit% = PEEK(Offset% + j%)
IF Bit% AND 1 THEN PSET (x%, y% + j%), col% + j%
IF Bit% AND 2 THEN PSET (x% - 1, y% + j%), col% + j%
IF Bit% AND 4 THEN PSET (x% - 2, y% + j%), col% + j%
IF Bit% AND 8 THEN PSET (x% - 3, y% + j%), col% + j%
IF Bit% AND 16 THEN PSET (x% - 4, y% + j%), col% + j%
IF Bit% AND 32 THEN PSET (x% - 5, y% + j%), col% + j%
IF Bit% AND 64 THEN PSET (x% - 6, y% + j%), col% + j%
IF Bit% AND 128 THEN PSET (x% - 7, y% + j%), col% + j%
NEXT j%
NEXT i%
END SUB
要实现在查阅历的时候不影响时钟
急用谢谢帮助