giz menu works
[picodrive.git] / platform / gizmondo / giz.c
1 #include <windows.h>
2 #include <stdio.h>
3 #include <version.h>
4
5 #include "giz.h"
6 #include "kgsdk/Framework.h"
7 #include "kgsdk/Framework2D.h"
8
9 #define LOG_FILE "log.log"
10
11 void *giz_screen = NULL;
12 static FILE *logf = NULL;
13
14 void lprintf_al(const char *fmt, ...)
15 {
16         va_list vl;
17
18         if (logf == NULL)
19         {
20                 logf = fopen(LOG_FILE, "w");
21                 if (logf == NULL)
22                         return;
23         }
24
25         //if (strchr(fmt, '\n'))
26         //      fprintf(logf, "%lu: ", GetTickCount());
27         va_start(vl, fmt);
28         vfprintf(logf, fmt, vl);
29         va_end(vl);
30         fflush(logf);
31 }
32
33 static void giz_log_close(void)
34 {
35         if (logf != NULL)
36         {
37                 fclose(logf);
38                 logf = NULL;
39         }
40 }
41
42 void giz_init(HINSTANCE hInstance, HINSTANCE hPrevInstance)
43 {
44         int ret;
45
46         giz_screen = NULL;
47
48         lprintf("PicoDrive v" VERSION " (c) notaz, 2006,2007\n");
49         lprintf("%s %s\n\n", __DATE__, __TIME__);
50
51         ret = Framework_Init(hInstance, hPrevInstance);
52         if (!ret)
53         {
54                 lprintf_al("Framework_Init() failed\n");
55                 exit(1);
56         }
57         ret = Framework2D_Init();
58         if (!ret)
59         {
60                 lprintf_al("Framework2D_Init() failed\n");
61                 exit(1);
62         }
63 }
64
65 void giz_deinit(void)
66 {
67         Framework2D_Close();
68         Framework_Close();
69
70         giz_log_close();
71 }
72