X-Git-Url: https://git.sur5r.net/?a=blobdiff_plain;f=libsrc%2Fcbm510%2Fsystime.s;h=8a3858cef981a6f180831cbd587ba87cbed79e7b;hb=85885001b133e2dc320b6f6459259afa69784ca8;hp=69e60e7e659b05bf2e245f3eff6d9b5257244c75;hpb=44fd1082ae807a0b6b4046c65914e20a7e27101c;p=cc65 diff --git a/libsrc/cbm510/systime.s b/libsrc/cbm510/systime.s index 69e60e7e6..8a3858cef 100644 --- a/libsrc/cbm510/systime.s +++ b/libsrc/cbm510/systime.s @@ -12,65 +12,65 @@ .include "time.inc" .include "cbm510.inc" - .include "extzp.inc" + .include "extzp.inc" - .import sys_bank, restore_bank - .importzp tmp1, tmp2 + .import sys_bank, restore_bank + .importzp tmp1, tmp2 ;---------------------------------------------------------------------------- .code -.proc __systime +.proc __systime ; Switch to the system bank - jsr sys_bank + jsr sys_bank ; Read the clock - ldy #CIA::TODHR - lda (cia2),y - bpl AM - and #%01111111 - sed - clc - adc #$12 - cld -AM: jsr BCD2dec - sta TM + tm::tm_hour - ldy #CIA::TODMIN - lda (cia2),y - jsr BCD2dec - sta TM + tm::tm_min - ldy #CIA::TODSEC - lda (cia2),y - jsr BCD2dec - sta TM + tm::tm_sec - ldy #CIA::TOD10 - lda (cia2),y ; Dummy read to unfreeze + ldy #CIA::TODHR + lda (cia2),y + bpl AM + and #%01111111 + sed + clc + adc #$12 + cld +AM: jsr BCD2dec + sta TM + tm::tm_hour + ldy #CIA::TODMIN + lda (cia2),y + jsr BCD2dec + sta TM + tm::tm_min + ldy #CIA::TODSEC + lda (cia2),y + jsr BCD2dec + sta TM + tm::tm_sec + ldy #CIA::TOD10 + lda (cia2),y ; Dummy read to unfreeze ; Restore the bank - jsr restore_bank + jsr restore_bank ; Convert to a time - lda #TM - jmp _mktime + lda #TM + jmp _mktime .endproc ;---------------------------------------------------------------------------- ; dec = (((BCD>>4)*10) + (BCD&0xf)) -.proc BCD2dec +.proc BCD2dec - tax - and #%00001111 - sta tmp1 - txa + tax + and #%00001111 + sta tmp1 + txa and #%11110000 ; *16 lsr ; *8 sta tmp2 @@ -86,7 +86,7 @@ AM: jsr BCD2dec ; TM struct with date set to 1970-01-01 .data -TM: .word 0 ; tm_sec +TM: .word 0 ; tm_sec .word 0 ; tm_min .word 0 ; tm_hour .word 1 ; tm_mday