]> git.sur5r.net Git - c128-kasse/blob - time.c
replace printf and file functions, warning: may be broken, not tested yet
[c128-kasse] / time.c
1 #include <peekpoke.h>
2 #include <stdlib.h>
3 #include <stdio.h>
4 #include "general.h"
5
6 char *get_time() {
7         long int h = PEEK(0x00A0) * 65536,
8                 m = PEEK(0x00A1) * 256,
9                 s = PEEK(0x00A2);
10         char *buffer = malloc(9 * sizeof(char));
11         BYTE hrs, min;
12         if (buffer == NULL) {
13                 perror("malloc()");
14                 exit(1);
15         }
16         h = (h + m + s) / 60;
17         hrs = (h / 3600);
18         h -= (hrs * 3600);
19         min = (h / 60);
20         h -= (min * 60);
21         sprintf(buffer, "%02d:%02d:%02d", hrs, min, (int)h);
22         return buffer;
23 }
24
25 void set_time(BYTE hrs, min, sec) {
26         long int added = ((long int)sec + ((long int)min * (long int)60) + ((long int)hrs * (long int)3600)) * (long int)60;
27         POKE(0x00A0, (BYTE)(added / 65536));
28         POKE(0x00A1, (BYTE)(added / 256));
29         POKE(0x00A2, (BYTE)added);
30 }