A2osX/SYS/KERNEL.S.TIME.txt

88 lines
2.3 KiB
Plaintext
Raw Permalink Blame History

This file contains invisible Unicode characters

This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

NEW
AUTO 3,1
*/--------------------------------------
* # Time
* Get System Time in Buffer
* ## C
* `void time (struct tm* timeptr);`
* ## ASM
* `>PUSHW timer`
* `>SYSCALL time`
* ## RETURN VALUE
* S.TIME filled with System date/time
*\--------------------------------------
K.Time >PULLW FORPNT
>MLICALL MLI.GETTIME
>LDYAI GP.DATE
>STYA TXTPTR
ldx #_PTime2Time
jmp JMP.X
*/--------------------------------------
* # StrFTime
* ## C
* Convert S.TIME struct to CSTR
* `void strftime (char* str, const char* format, const struct tm* timeptr );`
* ## ASM
* `>PUSHW str`
* `>PUSHW format`
* + %a : Abbreviated weekday name : Thu
* + %A : Full weekday name : Thursday
* + %b : Abbreviated month name : Aug
* + %B : Full month name : August
* + %d : Day of the month, zero-padded (01-31)
* + %H : Hour in 24h format (00-23) 14
* + %I : Hour in 12h format (01-12) 02
* + %m : Month as a decimal number (01-12) 08
* + %M : Minute (00-59) 55
* + %p : AM or PM designation PM
* + %S : Second (00-61) 02
* + %w : Weekday as a decimal number with Sunday as 0 (0-6)
* + %y : Year, last two digits (00-99)
* + %Y : Year four digits 2001
* `>PUSHW timeptr`
* `>SYSCALL strftime`
* ## RETURN VALUE
* none. always succeed.
*\--------------------------------------
K.StrFTime >PULLW ZPPtr3 S.TIME
>PULLW TXTPTR format
>PULLW FORPNT str
jmp JMP.X
*/--------------------------------------
* # PTime2Time
* Convert ProDOS Time To S.TIME
* ## C
* `void PTime2Time (long* ptime, const struct tm* timeptr );`
* ## ASM
* `>PUSHW ptime`
* `>PUSHW timer`
* `>SYSCALL PTime2Time`
* ## RETURN VALUE
*\--------------------------------------
K.PTime2Time .EQ JMP.X2
* >PULLW FORPNT S.TIME
* >PULLW TXTPTR ptime
* jmp JMP.X
*/--------------------------------------
* # CTime2Time
* Convert CTime Time To S.TIME
* ## C
* `void CTime2Time (long* ctime, const struct tm* timeptr );`
* ## ASM
* `>PUSHW ctime`
* `>PUSHW timer`
* `>SYSCALL CTime2Time`
* ## RETURN VALUE
*\--------------------------------------
K.CTime2Time .EQ JMP.X2
* >PULLW FORPNT S.TIME
* >PULLW TXTPTR ctime
* jmp JMP.X
*--------------------------------------
MAN
SAVE usr/src/sys/kernel.s.time
LOAD usr/src/sys/kernel.s
ASM