From ebc68a9442f7ca838945068fe8f8ab7a5dcaffac Mon Sep 17 00:00:00 2001 From: Daniel Stenberg Date: Sat, 27 Apr 2002 23:41:18 +0000 Subject: my first take at writing a little app, which of course can start tetris! git-svn-id: svn://svn.rockbox.org/rockbox/trunk@280 a1c6a512-1295-4272-9138-f99709370657 --- uisimulator/app.c | 74 +++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 74 insertions(+) create mode 100644 uisimulator/app.c (limited to 'uisimulator') diff --git a/uisimulator/app.c b/uisimulator/app.c new file mode 100644 index 0000000000..8f51f98f80 --- /dev/null +++ b/uisimulator/app.c @@ -0,0 +1,74 @@ +/*************************************************************************** + * __________ __ ___. + * Open \______ \ ____ ____ | | _\_ |__ _______ ___ + * Source | _// _ \_/ ___\| |/ /| __ \ / _ \ \/ / + * Jukebox | | ( <_> ) \___| < | \_\ ( <_> > < < + * Firmware |____|_ /\____/ \___ >__|_ \|___ /\____/__/\_ \ + * \/ \/ \/ \/ \/ + * $Id$ + * + * Copyright (C) 1999 Mattis Wadman (nappe@sudac.org) + * + * Heavily modified for embedded use by Björn Stenberg (bjorn@haxx.se) + * + * All files in this archive are subject to the GNU General Public License. + * See the file COPYING in the source tree root for full license agreement. + * + * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY + * KIND, either express or implied. + * + ****************************************************************************/ + +#include "types.h" +#include "lcd.h" +#define HAVE_RECORDER_KEYPAD +#include "button.h" + +#ifdef SIMULATOR +#include +#include +#endif + +#define LINE_HEIGHT 8 + +#define MAX_LINE 3 /* the last index with info, starting on 0 */ + +void app_main(void) +{ + lcd_puts(0, 0, "-Rockabox", 0); + lcd_puts(6, 8, "Boxrock", 0); + lcd_puts(6, 16, "Robkoxx", 0); + lcd_puts(6, 24, "Tetris", 0); + lcd_puts(8, 38, "Rockbox!", 2); + int cursor = 0; + int key; + + while(1) { + key = button_get(); + + switch(key) { + case BUTTON_UP: + if(cursor) { + lcd_puts(0, cursor, " ", 0); + cursor-= LINE_HEIGHT; + lcd_puts(0, cursor, "-", 0); + } + break; + case BUTTON_DOWN: + if(cursor<(MAX_LINE*LINE_HEIGHT)) { + lcd_puts(0, cursor, " ", 0); + cursor+=LINE_HEIGHT; + lcd_puts(0, cursor, "-", 0); + } + break; + case BUTTON_RIGHT: + if(cursor == (MAX_LINE * LINE_HEIGHT)) { + lcd_clearrect(0, 0, LCD_WIDTH, LCD_HEIGHT); + tetris(); + } + break; + } + lcd_update(); + Logf("key %x cursor at %d\n", key, cursor); + } +} -- cgit v1.2.3