CHDK_DE Vorschauversion
Trunk Rev. 6014
|
#include "camera_info.h"
#include "keyboard.h"
#include "clock.h"
#include "backlight.h"
#include "lang.h"
#include "gui.h"
#include "gui_draw.h"
#include "gui_lang.h"
#include "gui_batt.h"
#include "gui_mbox.h"
#include "modes.h"
#include "time.h"
#include "module_def.h"
#include "simple_game.c"
gehe zum Quellcode dieser Datei
Datenstrukturen | |
struct | StcTetramino |
struct | StcGame |
Makrodefinitionen | |
#define | BOARD_WIDTH (10) |
#define | BOARD_HEIGHT (22) |
#define | INI_DELAY_FALL (540) |
#define | SCORE_1_FILLED_ROW (40) |
#define | SCORE_2_FILLED_ROW (100) |
#define | SCORE_3_FILLED_ROW (300) |
#define | SCORE_4_FILLED_ROW (1200) |
#define | FILLED_ROWS_FOR_LEVEL_UP (10) |
#define | DELAY_FACTOR_FOR_LEVEL_UP (0.9) |
#define | GAME_ERROR_NONE (0) /* Everything is OK, oh wonders! */ |
#define | GAME_ERROR_USER_QUITS (1) /* The user quits (bored?), our fail */ |
#define | GAME_ERROR_NO_MEMORY (-1) /* Not enough memory */ |
#define | GAME_ERROR_NO_VIDEO (-2) /* Video system was not initialized */ |
#define | GAME_ERROR_NO_IMAGES (-3) /* Problem loading the image files */ |
#define | GAME_ERROR_ASSERT (-100) /* Something went very very wrong... */ |
#define | EVENT_NONE (0) |
#define | EVENT_MOVE_DOWN (1 << 1) |
#define | EVENT_MOVE_LEFT (1 << 2) |
#define | EVENT_MOVE_RIGHT (1 << 3) |
#define | EVENT_ROTATE_CW (1 << 4) /* rotate clockwise */ |
#define | EVENT_ROTATE_CCW (1 << 5) /* rotate counter-clockwise */ |
#define | EVENT_DROP (1 << 6) |
#define | EVENT_PAUSE (1 << 7) |
#define | EVENT_RESTART (1 << 8) |
#define | EVENT_SHOW_NEXT (1 << 9) /* toggle show next tetromino */ |
#define | TETROMINO_I (0) |
#define | TETROMINO_O (1) |
#define | TETROMINO_T (2) |
#define | TETROMINO_S (3) |
#define | TETROMINO_Z (4) |
#define | TETROMINO_J (5) |
#define | TETROMINO_L (6) |
#define | TETRIS_COLOR_CYAN COLOR_CYAN |
#define | TETRIS_COLOR_RED COLOR_RED |
#define | TETRIS_COLOR_BLUE COLOR_BLUE |
#define | TETRIS_COLOR_ORANGE COLOR_WHITE |
#define | TETRIS_COLOR_GREEN COLOR_GREEN |
#define | TETRIS_COLOR_YELLOW COLOR_YELLOW |
#define | TETRIS_COLOR_PURPLE COLOR_MAGENTA |
#define | EMPTY_CELL (-1) |
#define | TETRIS_COLOR_BG COLOR_GREY_DK |
#define | TETRIS_COLOR_BOARD COLOR_GREY |
#define | TETRIS_COLOR_TEXT COLOR_WHITE |
#define | PREVIEW_X (tile_size*15) |
#define | PREVIEW_Y (tile_size) |
#define | BOARD_X (tile_size) |
#define | BOARD_Y (tile_size) |
#define | TILE_SIZE (tile_size) |
Typdefinitionen | |
typedef struct StcTetramino | StcTetramino |
typedef struct StcPlatform | StcPlatform |
typedef struct StcGame | StcGame |
Funktionen | |
void | gui_game_menu_kbd_process () |
int | gui_tetris_kbd_process () |
void | gui_tetris_draw () |
StcGame * | createGame () |
void | deleteGame (StcGame *pGame) |
int | gameInit (StcGame *gameInstance) |
void | gameEnd () |
void | gameUpdate (StcGame *gameInstance) |
long | mkdir_if_not_exist (const char *dirname) |
int | platformInit () |
void | platformEnd () |
void | platformReadInput () |
void | platformRenderGame () |
long | platformGetSystemTime () |
static void | setMatrixCells (int *matrix, int width, int height, int value) |
static void | setTetramino (int indexTetramino, StcTetramino *tetramino) |
static void | startGame (StcGame *game) |
void | rotateTetramino (StcGame *game, int clockwise) |
static int | checkCollision (StcGame *game, int dx, int dy) |
static void | onFilledRows (StcGame *game, int filledRows) |
static void | moveTetramino (StcGame *game, int x, int y) |
static void | dropTetramino (StcGame *game) |
void | gui_tetris_init () |
int | basic_module_init () |
Variablen | |
gui_handler | GUI_MODE_TETRIS |
StcGame * | game = 0 |
int | tile_size |
int | tmp [BOARD_WIDTH][BOARD_HEIGHT] |
int | tmp2 [BOARD_WIDTH][BOARD_HEIGHT] |
int | prevNextBlockType = -1 |
ModuleInfo | _module_info |
#define BOARD_HEIGHT (22) |
Definiert in Zeile 24 der Datei gui_tetris.c.
#define BOARD_WIDTH (10) |
Definiert in Zeile 23 der Datei gui_tetris.c.
#define BOARD_X (tile_size) |
Definiert in Zeile 137 der Datei gui_tetris.c.
#define BOARD_Y (tile_size) |
Definiert in Zeile 138 der Datei gui_tetris.c.
#define DELAY_FACTOR_FOR_LEVEL_UP (0.9) |
Definiert in Zeile 35 der Datei gui_tetris.c.
#define EMPTY_CELL (-1) |
Definiert in Zeile 70 der Datei gui_tetris.c.
#define EVENT_DROP (1 << 6) |
Definiert in Zeile 50 der Datei gui_tetris.c.
#define EVENT_MOVE_DOWN (1 << 1) |
Definiert in Zeile 45 der Datei gui_tetris.c.
#define EVENT_MOVE_LEFT (1 << 2) |
Definiert in Zeile 46 der Datei gui_tetris.c.
#define EVENT_MOVE_RIGHT (1 << 3) |
Definiert in Zeile 47 der Datei gui_tetris.c.
#define EVENT_NONE (0) |
Definiert in Zeile 44 der Datei gui_tetris.c.
#define EVENT_PAUSE (1 << 7) |
Definiert in Zeile 51 der Datei gui_tetris.c.
#define EVENT_RESTART (1 << 8) |
Definiert in Zeile 52 der Datei gui_tetris.c.
#define EVENT_ROTATE_CCW (1 << 5) /* rotate counter-clockwise */ |
Definiert in Zeile 49 der Datei gui_tetris.c.
#define EVENT_ROTATE_CW (1 << 4) /* rotate clockwise */ |
Definiert in Zeile 48 der Datei gui_tetris.c.
#define EVENT_SHOW_NEXT (1 << 9) /* toggle show next tetromino */ |
Definiert in Zeile 53 der Datei gui_tetris.c.
#define FILLED_ROWS_FOR_LEVEL_UP (10) |
Definiert in Zeile 33 der Datei gui_tetris.c.
#define GAME_ERROR_ASSERT (-100) /* Something went very very wrong... */ |
Definiert in Zeile 42 der Datei gui_tetris.c.
#define GAME_ERROR_NO_IMAGES (-3) /* Problem loading the image files */ |
Definiert in Zeile 41 der Datei gui_tetris.c.
#define GAME_ERROR_NO_MEMORY (-1) /* Not enough memory */ |
Definiert in Zeile 39 der Datei gui_tetris.c.
#define GAME_ERROR_NO_VIDEO (-2) /* Video system was not initialized */ |
Definiert in Zeile 40 der Datei gui_tetris.c.
#define GAME_ERROR_NONE (0) /* Everything is OK, oh wonders! */ |
Definiert in Zeile 37 der Datei gui_tetris.c.
#define GAME_ERROR_USER_QUITS (1) /* The user quits (bored?), our fail */ |
Definiert in Zeile 38 der Datei gui_tetris.c.
#define INI_DELAY_FALL (540) |
Definiert in Zeile 26 der Datei gui_tetris.c.
#define PREVIEW_X (tile_size*15) |
Definiert in Zeile 135 der Datei gui_tetris.c.
#define PREVIEW_Y (tile_size) |
Definiert in Zeile 136 der Datei gui_tetris.c.
#define SCORE_1_FILLED_ROW (40) |
Definiert in Zeile 28 der Datei gui_tetris.c.
#define SCORE_2_FILLED_ROW (100) |
Definiert in Zeile 29 der Datei gui_tetris.c.
#define SCORE_3_FILLED_ROW (300) |
Definiert in Zeile 30 der Datei gui_tetris.c.
#define SCORE_4_FILLED_ROW (1200) |
Definiert in Zeile 31 der Datei gui_tetris.c.
#define TETRIS_COLOR_BG COLOR_GREY_DK |
Definiert in Zeile 72 der Datei gui_tetris.c.
#define TETRIS_COLOR_BLUE COLOR_BLUE |
Definiert in Zeile 65 der Datei gui_tetris.c.
#define TETRIS_COLOR_BOARD COLOR_GREY |
Definiert in Zeile 73 der Datei gui_tetris.c.
#define TETRIS_COLOR_CYAN COLOR_CYAN |
Definiert in Zeile 63 der Datei gui_tetris.c.
#define TETRIS_COLOR_GREEN COLOR_GREEN |
Definiert in Zeile 67 der Datei gui_tetris.c.
#define TETRIS_COLOR_ORANGE COLOR_WHITE |
Definiert in Zeile 66 der Datei gui_tetris.c.
#define TETRIS_COLOR_PURPLE COLOR_MAGENTA |
Definiert in Zeile 69 der Datei gui_tetris.c.
#define TETRIS_COLOR_RED COLOR_RED |
Definiert in Zeile 64 der Datei gui_tetris.c.
#define TETRIS_COLOR_TEXT COLOR_WHITE |
Definiert in Zeile 74 der Datei gui_tetris.c.
#define TETRIS_COLOR_YELLOW COLOR_YELLOW |
Definiert in Zeile 68 der Datei gui_tetris.c.
#define TETROMINO_I (0) |
Definiert in Zeile 55 der Datei gui_tetris.c.
#define TETROMINO_J (5) |
Definiert in Zeile 60 der Datei gui_tetris.c.
#define TETROMINO_L (6) |
Definiert in Zeile 61 der Datei gui_tetris.c.
#define TETROMINO_O (1) |
Definiert in Zeile 56 der Datei gui_tetris.c.
#define TETROMINO_S (3) |
Definiert in Zeile 58 der Datei gui_tetris.c.
#define TETROMINO_T (2) |
Definiert in Zeile 57 der Datei gui_tetris.c.
#define TETROMINO_Z (4) |
Definiert in Zeile 59 der Datei gui_tetris.c.
#define TILE_SIZE (tile_size) |
Definiert in Zeile 139 der Datei gui_tetris.c.
typedef struct StcPlatform StcPlatform |
Definiert in Zeile 84 der Datei gui_tetris.c.
typedef struct StcTetramino StcTetramino |
int basic_module_init | ( | ) |
Definiert in Zeile 792 der Datei gui_tetris.c.
|
static |
Definiert in Zeile 484 der Datei gui_tetris.c.
StcGame * createGame | ( | ) |
void deleteGame | ( | StcGame * | pGame) |
Definiert in Zeile 412 der Datei gui_tetris.c.
|
static |
Definiert in Zeile 649 der Datei gui_tetris.c.
void gameEnd | ( | ) |
Definiert in Zeile 406 der Datei gui_tetris.c.
int gameInit | ( | StcGame * | gameInstance) |
Definiert in Zeile 393 der Datei gui_tetris.c.
void gameUpdate | ( | StcGame * | gameInstance) |
Definiert in Zeile 664 der Datei gui_tetris.c.
void gui_game_menu_kbd_process | ( | ) |
Definiert in Zeile 7 der Datei simple_game.c.
void gui_tetris_draw | ( | ) |
Definiert in Zeile 799 der Datei gui_tetris.c.
void gui_tetris_init | ( | ) |
Definiert in Zeile 765 der Datei gui_tetris.c.
int gui_tetris_kbd_process | ( | ) |
Definiert in Zeile 804 der Datei gui_tetris.c.
long mkdir_if_not_exist | ( | const char * | dirname) |
Definiert in Zeile 121 der Datei gui_tetris.c.
|
static |
Definiert in Zeile 552 der Datei gui_tetris.c.
|
static |
Definiert in Zeile 514 der Datei gui_tetris.c.
void platformEnd | ( | ) |
Definiert in Zeile 129 der Datei gui_tetris.c.
long platformGetSystemTime | ( | ) |
Definiert in Zeile 267 der Datei gui_tetris.c.
int platformInit | ( | ) |
Definiert in Zeile 128 der Datei gui_tetris.c.
void platformReadInput | ( | ) |
Definiert in Zeile 132 der Datei gui_tetris.c.
void platformRenderGame | ( | ) |
Definiert in Zeile 145 der Datei gui_tetris.c.
void rotateTetramino | ( | StcGame * | game, |
int | clockwise | ||
) |
Definiert in Zeile 421 der Datei gui_tetris.c.
|
static |
Definiert in Zeile 270 der Datei gui_tetris.c.
|
static |
Definiert in Zeile 283 der Datei gui_tetris.c.
|
static |
Definiert in Zeile 344 der Datei gui_tetris.c.
ModuleInfo _module_info |
Definiert in Zeile 850 der Datei gui_tetris.c.
StcGame* game = 0 |
Definiert in Zeile 118 der Datei gui_tetris.c.
gui_handler GUI_MODE_TETRIS |
Definiert in Zeile 20 der Datei gui_tetris.c.
int prevNextBlockType = -1 |
Definiert in Zeile 144 der Datei gui_tetris.c.
int tile_size |
Definiert in Zeile 134 der Datei gui_tetris.c.
int tmp[BOARD_WIDTH][BOARD_HEIGHT] |
Definiert in Zeile 141 der Datei gui_tetris.c.
int tmp2[BOARD_WIDTH][BOARD_HEIGHT] |
Definiert in Zeile 142 der Datei gui_tetris.c.