|
|
tm1s mov cu3,#2
mov cu2,#0
mov cu1,#0
tm1s_l nop
djnz cu1,tm1s_l
xor ra,#1 ;ra0 test out 1.22KHz
djnz cu2,tm1s_l
djnz cu3,tm1s_l
ret
clr_gie clrb gie
jb gie,clr_gie
ret
cuntdsp call clr_gie
cjne tmdt[0],#0,ttc0
cjne tmdt[1],#0,ttc0
cjne tmdt[2],#0,ttc0
cje tmdt[3],#0,dd0
ttc0 mov xx[0],tmdt[3]
mov xx[1],tmdt[2]
mov yy[0],#56h ;5d
mov yy[1],#9h ;7
call mul_xy ;data*1885*1.23 75dh*1.268=956h
mov dd[3],zz[3]
mov dd[2],zz[2]
mov dd[1],zz[1]
mov dd[0],zz[0]
mov xx[0],tmdt[1]
clr xx[1]
mov yy[0],#5dh
mov yy[1],#7h
call mul_xy ;data*1885
mov yy[0],dd[0]
mov yy[1],dd[1]
mov yy[2],dd[2]
mov yy[3],dd[3]
clr xx[0]
clr xx[1]
mov xx[2],zz[0]
mov xx[3],zz[1]
call add_xy
mov x[0],xx[0]
mov x[1],xx[1]
mov x[2],xx[2]
mov x[3],xx[3]
call div_1000 ;/1000
mov tmdt[3],zz[0]
mov tmdt[2],zz[1]
mov tmdt[1],zz[2]
mov tmdt[0],zz[3]
dd0 call dtset_1
clr dd[0]
clr dd[1]
clr dd[2]
clr dd[3]
clr dd[4]
clr dd[5]
clr dd[6]
clr dd[7]
clr dd[8]
clr dd[9]
mov y[0],#0 ;10,0000,0000
mov y[1],#0cah
mov y[2],#9ah
mov y[3],#3bh
mov crc,x[3]
dd1 call sub_xy
jnc dd1_1
cja x[3],crc,dd1_1
inc dd[0]
call dtset_2
goto dd1
dd1_1 mov y[0],#0 ;1,0000,0000
mov y[1],#0e1h
mov y[2],#0f5h
mov y[3],#5h
mov crc,x[3]
dd2 call dtset_1
call sub_xy
jnc dd2_1
cja x[3],crc,dd2_1
inc dd[1]
call dtset_2
goto dd2
dd2_1 mov y[0],#80h ;1000,0000
mov y[1],#96h
mov y[2],#98h
mov y[3],#0h
dd3 call dtset_1
call sub_xy
jnc dd3_1
cje x[3],#0ffh,dd3_1
inc dd[2]
call dtset_2
goto dd3
dd3_1 mov y[0],#40h ;100,0000
mov y[1],#42h
mov y[2],#0fh
mov y[3],#0h
dd4 call dtset_1
call sub_xy
jnc dd4_1
cje x[3],#0ffh,dd4_1
inc dd[3]
call dtset_2
goto dd4
dd4_1 mov y[0],#0a0h ;10,0000
mov y[1],#86h
mov y[2],#1h
mov y[3],#0h
dd5 call dtset_1
call sub_xy
jnc dd5_1
cje x[3],#0ffh,dd5_1
inc dd[4]
call dtset_2
goto dd5
dd5_1 mov y[0],#10h ;1,0000
mov y[1],#27h
mov y[2],#0h
mov y[3],#0h
dd6 call dtset_1
call sub_xy
jnc dd6_1
cje x[3],#0ffh,dd6_1
inc dd[5]
call dtset_2
goto dd6
dd6_1 mov y[0],#0e8h ;1000
mov y[1],#3h
mov y[2],#0h
mov y[3],#0h
dd7 call dtset_1
call sub_xy
jnc dd7_1
cje x[3],#0ffh,dd7_1
inc dd[6]
call dtset_2
goto dd7
dd7_1 mov y[0],#64h ;100
mov y[1],#0
mov y[2],#0
mov y[3],#0
dd8 call dtset_1
call sub_xy
jnc dd8_1
cje x[3],#0ffh,dd8_1
inc dd[7]
call dtset_2
goto dd8
dd8_1 mov y[0],#0ah ;10
mov y[1],#0h
mov y[2],#0h
mov y[3],#0h
dd9 call dtset_1
call sub_xy
jnc dd10
cje x[3],#0ffh,dd10
inc dd[8]
call dtset_2
goto dd9
dd10 mov dd[9],tmdt[3]
call lcd_top
mov rb,#'F'
call write_lcd8
mov rb,#'c'
call write_lcd8
mov rb,#20h ; ' '
call write_lcd8
call write_lcd8
mov rb,dd[0]
or rb,#30h
call write_lcd8
mov rb,dd[1]
or rb,#30h
call write_lcd8
mov rb,dd[2]
or rb,#30h
call write_lcd8
mov rb,dd[3]
or rb,#30h
call write_lcd8
mov rb,dd[4]
or rb,#30h
call write_lcd8
mov rb,dd[5]
or rb,#30h
call write_lcd8
mov rb,dd[6]
or rb,#30h
call write_lcd8
mov rb,dd[7]
or rb,#30h
call write_lcd8
mov rb,dd[8]
or rb,#30h
call write_lcd8
mov rb,dd[9]
or rb,#30h
call write_lcd8
mov rb,#'H'
call write_lcd8
mov rb,#'z'
call write_lcd8
clrb RS
ret
;---------- sub ------------------
dtset_1 mov x[3],tmdt[0]
mov x[2],tmdt[1]
mov x[1],tmdt[2]
mov x[0],tmdt[3]
ret
dtset_2 mov tmdt[0],x[3]
mov tmdt[1],x[2]
mov tmdt[2],x[1]
mov tmdt[3],x[0]
ret
http://homepage2.nifty.com/JG1FJC/
|
|