X-Git-Url: http://git.rohieb.name/hackover2013-badge-firmware.git/blobdiff_plain/ead4a16614e0b46cf7e4f00feec1411067c1c6f4..81659a17b0d13c96114c9b3a58550305ca31ce2a:/badge/main.c diff --git a/badge/main.c b/badge/main.c index 156d8e2..a712686 100644 --- a/badge/main.c +++ b/badge/main.c @@ -57,6 +57,7 @@ #include "ui/display.h" #include "ui/sprite.h" #include "ui/event.h" +#include "ui/font.h" #include "util/util.h" #include "jumpnrun/jumpnrun.h" @@ -64,6 +65,9 @@ #include "drivers/fatfs/ff.h" +#include "badge/pinconfig.h" +#include + #ifdef R0KET #include "r0ketports.h" @@ -124,7 +128,7 @@ void rbInit() { { RB_PWR_CHRG, &RB_PWR_CHRG_IO, gpioPullupMode_PullUp } #endif }; - + for(int i = 0; i < ARRAY_SIZE(input_pins); ++i) { gpioSetDir(input_pins[i].port, input_pins[i].pin, gpioDirection_Input); gpioSetPullup(input_pins[i].reg, input_pins[i].mode); @@ -201,69 +205,20 @@ int main(void) badge_init(); #endif - { - // f_mkfs(0, 1, 0); - badge_framebuffer fb; - int res = 0; - FATFS fatvol; - - while(FR_OK != f_mount(0, &fatvol)) { - f_mkfs(0, 1, 0); - } - - FIL fil; - if(FR_OK == (res = f_open(&fil, "sshot.dat", FA_OPEN_EXISTING | FA_READ))) { - UINT readbytes; + FATFS fs; + f_mount(0, &fs); - if(FR_OK != f_read(&fil, &fb, sizeof(fb), &readbytes)) { - } - - f_close(&fil); - } + if(badge_input_raw() & BADGE_EVENT_KEY_DOWN) { + badge_framebuffer fb = { { { 0 } } }; + fb.data[0][0] = badge_framebuffer_render_text(&fb, 23, 30, "USB-Modus"); badge_framebuffer_flush(&fb); - } - - if(badge_input_raw() & BADGE_EVENT_KEY_DOWN) { usbMSCInit(); for(;;); } badge_event_start(); - - for(;;) { - if(JUMPNRUN_ERROR == jumpnrun_play("smb.lvl")) { - break; - } - } - - uint8_t buttons = 0; - - for(uint8_t i = 0; ; ++i) { - badge_event_t event = badge_event_wait(); - - switch(badge_event_type(event)) { - case BADGE_EVENT_USER_INPUT: { - buttons = badge_event_current_input_state(); - break; - } - case BADGE_EVENT_GAME_TICK: { - badge_sprite const sp = { 4, 4, (uint8_t const *) "\xff\xff" }; - badge_framebuffer fb = { { { 0x80 } } }; - - if(buttons & BADGE_EVENT_KEY_UP) { badge_framebuffer_blt(&fb, 30, 10, &sp, 0); } - if(buttons & BADGE_EVENT_KEY_DOWN) { badge_framebuffer_blt(&fb, 30, 50, &sp, 0); } - if(buttons & BADGE_EVENT_KEY_LEFT) { badge_framebuffer_blt(&fb, 10, 30, &sp, 0); } - if(buttons & BADGE_EVENT_KEY_RIGHT) { badge_framebuffer_blt(&fb, 50, 30, &sp, 0); } - if(buttons & BADGE_EVENT_KEY_CENTER){ badge_framebuffer_blt(&fb, 30, 30, &sp, 0); } - if(buttons & BADGE_EVENT_KEY_BTN_A) { badge_framebuffer_blt(&fb, 70, 10, &sp, 0); } - if(buttons & BADGE_EVENT_KEY_BTN_B) { badge_framebuffer_blt(&fb, 70, 50, &sp, 0); } - - badge_framebuffer_flush(&fb); - break; - } - } - } + jumpnrun_play(); return 0; }