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