[rendering] Do not write duplicated hashes...
[wikipediardware.git] / kernel / mahatma.c
blob6119b7f3632bdfa7204cf9f8e7ac78a9cfb9d09e
1 /*
2 * mahatma - a simple kernel framework
3 * Copyright (c) 2008, 2009 Daniel Mack <daniel@caiaq.de>
5 * This program is free software: you can redistribute it and/or modify
6 * it under the terms of the GNU General Public License as published by
7 * the Free Software Foundation, either version 3 of the License, or
8 * (at your option) any later version.
10 * This program is distributed in the hope that it will be useful,
11 * but WITHOUT ANY WARRANTY; without even the implied warranty of
12 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13 * GNU General Public License for more details.
15 * You should have received a copy of the GNU General Public License
16 * along with this program. If not, see <http://www.gnu.org/licenses/>.
19 /* wikilib and guilib includes */
20 #include <guilib.h>
21 #include <wikilib.h>
22 #include <input.h>
23 #include <malloc.h>
24 #include <tff.h>
26 /* local includes */
27 #include "msg-output.h"
28 #include "serial.h"
29 #include "traps.h"
30 #include "suspend.h"
31 #include "gui.h"
32 #include "msg.h"
33 #include "touchscreen.h"
34 #include "regs.h"
35 #include "gpio.h"
36 #include "gui.h"
38 #define VERSION "0.1"
40 static FATFS fatfs;
43 int main(void)
45 /* set the default data pointer */
46 asm volatile ("xld.w %r15, __dp");
48 /* machine-specific init */
49 gpio_init();
50 traps_init();
51 msg_init();
53 touchscreen_init();
54 msg(MSG_INFO, "Starting\n");
56 fb_init();
58 /* generic init */
59 if (f_mount(0, &fatfs) != FR_OK)
60 msg(MSG_INFO, "unable to mount FAT filesystem!\n");
62 malloc_init();
63 wikilib_init();
64 guilib_init();
66 msg(MSG_INFO, "Mahatma super slim kernel v%s\n", VERSION);
68 /* the next function will loop forever and call wl_input_wait() */
69 wikilib_run();
71 /* never reached */
72 return 0;