2020-08-26 18:52:38 +00:00
|
|
|
; CommanderX16 text clock example!
|
|
|
|
; make sure to compile with the cx16 compiler target.
|
|
|
|
|
2020-08-24 22:18:33 +00:00
|
|
|
%zeropage basicsafe
|
2020-03-24 18:37:54 +00:00
|
|
|
|
2020-07-26 22:32:59 +00:00
|
|
|
main {
|
2020-07-26 16:56:51 +00:00
|
|
|
|
2020-07-26 21:32:20 +00:00
|
|
|
sub start() {
|
2020-08-25 14:36:31 +00:00
|
|
|
|
2020-08-26 17:34:12 +00:00
|
|
|
cx16.r0L = 2020 - 1900
|
|
|
|
cx16.r0H = 8
|
|
|
|
cx16.r1L = 26
|
|
|
|
cx16.r1H = 19
|
|
|
|
cx16.r2L = 16
|
|
|
|
cx16.r2H = 0
|
|
|
|
cx16.r3L = 0
|
|
|
|
cx16.clock_set_date_time()
|
2020-08-26 18:52:38 +00:00
|
|
|
|
|
|
|
|
|
|
|
cx16.screen_set_charset(3, 0)
|
|
|
|
; c64.CHROUT(14) ; lowercase charset
|
2020-08-25 14:36:31 +00:00
|
|
|
|
2020-08-26 17:34:12 +00:00
|
|
|
repeat {
|
|
|
|
c64.CHROUT(19) ; HOME
|
|
|
|
screen.print(" yyyy-mm-dd HH:MM:SS.jj\n\n")
|
|
|
|
cx16.clock_get_date_time()
|
|
|
|
c64.CHROUT(' ')
|
|
|
|
print_date()
|
|
|
|
c64.CHROUT(' ')
|
|
|
|
print_time()
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
sub print_date() {
|
|
|
|
screen.print_uw(1900 + cx16.r0L)
|
|
|
|
c64.CHROUT('-')
|
|
|
|
if cx16.r0H < 10
|
|
|
|
c64.CHROUT('0')
|
|
|
|
screen.print_ub(cx16.r0H)
|
|
|
|
c64.CHROUT('-')
|
|
|
|
if cx16.r1L < 10
|
|
|
|
c64.CHROUT('0')
|
|
|
|
screen.print_ub(cx16.r1L)
|
|
|
|
}
|
2020-08-25 20:26:05 +00:00
|
|
|
|
2020-08-26 17:34:12 +00:00
|
|
|
sub print_time() {
|
|
|
|
if cx16.r1H < 10
|
|
|
|
c64.CHROUT('0')
|
|
|
|
screen.print_ub(cx16.r1H)
|
|
|
|
c64.CHROUT(':')
|
|
|
|
if cx16.r2L < 10
|
|
|
|
c64.CHROUT('0')
|
|
|
|
screen.print_ub(cx16.r2L)
|
|
|
|
c64.CHROUT(':')
|
|
|
|
if cx16.r2H < 10
|
|
|
|
c64.CHROUT('0')
|
|
|
|
screen.print_ub(cx16.r2H)
|
|
|
|
c64.CHROUT('.')
|
|
|
|
if cx16.r3L < 10
|
|
|
|
c64.CHROUT('0')
|
|
|
|
screen.print_ub(cx16.r3L)
|
2020-08-23 22:26:26 +00:00
|
|
|
}
|
2020-07-03 23:02:36 +00:00
|
|
|
}
|
2020-08-24 21:18:46 +00:00
|
|
|
|