A2osX/SYS/KERNEL.S.TIME.txt

88 lines
2.3 KiB
Plaintext
Raw Normal View History

2017-12-22 21:24:30 +00:00
NEW
2019-05-25 19:24:07 +00:00
AUTO 3,1
*/--------------------------------------
2018-06-18 06:22:50 +00:00
* # Time
* Get System Time in Buffer
2018-06-18 08:44:02 +00:00
* ## C
2020-01-18 19:37:32 +00:00
* `int time (S.TIME* timer);`
2018-10-04 15:30:14 +00:00
* ## ASM
2020-01-18 19:37:32 +00:00
* `>PUSHW timer`
2018-10-11 15:23:06 +00:00
* `>SYSCALL time`
* ## RETURN VALUE
2018-06-18 06:22:50 +00:00
* S.TIME filled with System date/time
*\--------------------------------------
2020-01-18 19:37:32 +00:00
K.Time >PULLW FORPNT
>MLICALL MLIGETTIME
>LDYAI DATELO
2020-01-18 19:37:32 +00:00
>STYA TXTPTR
2020-01-21 07:34:32 +00:00
ldx #SYS.PTime2Time
2020-02-03 22:06:28 +00:00
jmp K.SYSCALL.JMPX
*/--------------------------------------
* # StrFTime
2018-06-18 06:22:50 +00:00
* ## C
* Convert S.TIME struct to CSTR
2020-01-21 11:06:59 +00:00
* `void strftime (char* str, const char* format, const struct S.TIME* timeptr );`
2018-06-18 06:22:50 +00:00
* ## ASM
2020-01-21 11:06:59 +00:00
* `>PUSHW str`
2020-01-18 19:37:32 +00:00
* `>PUSHW format`
2018-06-18 08:44:02 +00:00
* + %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
2020-01-20 07:23:51 +00:00
* `>PUSHW timeptr`
2018-10-11 15:23:06 +00:00
* `>SYSCALL strftime`
* ## RETURN VALUE
* none. always succeed.
*\--------------------------------------
2020-01-21 11:06:59 +00:00
K.StrFTime >PULLW ZPPtr3 S.TIME
>PULLW TXTPTR format
>PULLW FORPNT str
2020-02-03 22:06:28 +00:00
jmp K.SYSCALL.JMPX
2020-01-21 07:34:32 +00:00
*/--------------------------------------
* # PTime2Time
* Convert ProDOS Time To S.TIME
* ## C
* `int PTime2Time (long* ptime, S.TIME* timer);`
* ## ASM
* `>PUSHW ptime`
* `>PUSHW timer`
* `>SYSCALL PTime2Time`
* ## RETURN VALUE
*\--------------------------------------
2021-05-09 12:39:40 +00:00
K.PTime2Time .EQ K.SYSCALL.JMPX2
* >PULLW FORPNT S.TIME
* >PULLW TXTPTR ptime
* jmp K.SYSCALL.JMPX
2020-01-21 07:34:32 +00:00
*/--------------------------------------
* # CTime2Time
* Convert CTime Time To S.TIME
* ## C
* `int CTime2Time (long* ctime, S.TIME* timer);`
* ## ASM
* `>PUSHW ctime`
* `>PUSHW timer`
* `>SYSCALL CTime2Time`
* ## RETURN VALUE
*\--------------------------------------
2021-05-09 12:39:40 +00:00
K.CTime2Time .EQ K.SYSCALL.JMPX2
* >PULLW FORPNT S.TIME
* >PULLW TXTPTR ctime
* jmp K.SYSCALL.JMPX
*--------------------------------------
MAN
2020-12-15 13:23:22 +00:00
SAVE usr/src/sys/kernel.s.time
LOAD usr/src/sys/kernel.s
ASM