|
DataMuseum.dkPresents historical artifacts from the history of: DKUUG/EUUG Conference tapes |
This is an automatic "excavation" of a thematic subset of
See our Wiki for more about DKUUG/EUUG Conference tapes Excavated with: AutoArchaeologist - Free & Open Source Software. |
top - metrics - downloadIndex: T m
Length: 5543 (0x15a7) Types: TextFile Names: »main.c«
└─⟦b20c6495f⟧ Bits:30007238 EUUGD18: Wien-båndet, efterår 1987 └─⟦this⟧ »EUUGD18/Sun/Tetris/main.c«
#include "defs.h" static short icon_image[] = { #include "tetris.icon" }; mpr_static(tetris_icon, 64, 64, 1, icon_image); main(argc, argv) int argc; char **argv; { int i; Icon icon; icon = icon_create(ICON_IMAGE, &tetris_icon, 0); frame = window_create(NULL, FRAME, FRAME_LABEL, "tetris", FRAME_ICON, icon, FRAME_ARGS, argc, argv, 0); panel = window_create(frame, PANEL, WIN_WIDTH, UWIDTH * UNIT, 0); score_item = panel_create_item(panel, PANEL_MESSAGE, PANEL_ITEM_X, ATTR_COL(0), PANEL_ITEM_Y, ATTR_ROW(0), PANEL_LABEL_STRING, "Score: 0", 0); level_item = panel_create_item(panel, PANEL_MESSAGE, PANEL_ITEM_X, ATTR_COL(0), PANEL_ITEM_Y, ATTR_ROW(1), PANEL_LABEL_STRING, "Level: 0", 0); rows_item = panel_create_item(panel, PANEL_MESSAGE, PANEL_ITEM_X, ATTR_COL(0), PANEL_ITEM_Y, ATTR_ROW(2), PANEL_LABEL_STRING, "Rows : 0", 0); game_over = panel_create_item(panel, PANEL_MESSAGE, PANEL_ITEM_X, ATTR_COL(0), PANEL_ITEM_Y, ATTR_ROW(3), PANEL_LABEL_STRING, "Game Over", PANEL_SHOW_ITEM, FALSE, 0); panel_create_item(panel, PANEL_BUTTON, PANEL_ITEM_X, ATTR_COL(13), PANEL_ITEM_Y, ATTR_ROW(0), PANEL_LABEL_IMAGE, panel_button_image(panel, "Start", 0, 0), PANEL_NOTIFY_PROC, start_proc, 0); panel_create_item(panel, PANEL_BUTTON, PANEL_ITEM_X, ATTR_COL(13), PANEL_ITEM_Y, ATTR_ROW(1), PANEL_LABEL_IMAGE, panel_button_image(panel, "Pause", 0, 0), PANEL_NOTIFY_PROC, pause_proc, 0); panel_create_item(panel, PANEL_BUTTON, PANEL_ITEM_X, ATTR_COL(13), PANEL_ITEM_Y, ATTR_ROW(2), PANEL_LABEL_IMAGE, panel_button_image(panel, "New Game", 0, 0), PANEL_NOTIFY_PROC, restart_proc, 0); panel_create_item(panel, PANEL_BUTTON, PANEL_ITEM_X, ATTR_COL(13), PANEL_ITEM_Y, ATTR_ROW(3), PANEL_LABEL_IMAGE, panel_button_image(panel, "Scores", 0, 0), PANEL_NOTIFY_PROC, print_high_scores, 0); panel_create_item(panel, PANEL_BUTTON, PANEL_ITEM_X, ATTR_COL(13), PANEL_ITEM_Y, ATTR_ROW(4), PANEL_LABEL_IMAGE, panel_button_image(panel, "Quit", 0, 0), PANEL_NOTIFY_PROC, quit_proc, 0); window_fit_height(panel); canvas = window_create(frame, CANVAS, WIN_X, 0, WIN_BELOW, panel, WIN_WIDTH, UWIDTH * UNIT, WIN_HEIGHT, UHEIGHT * UNIT + SHADOW_HEIGHT + NEXT_HEIGHT, WIN_EVENT_PROC, canvas_event_proc, 0); pw = canvas_pixwin(canvas); setup_colours(pw); window_fit(frame); initialise(); score_frame = window_create(frame, FRAME, WIN_SHOW, FALSE, 0); score_panel = window_create(score_frame, PANEL, WIN_WIDTH, ATTR_COLS(80), WIN_HEIGHT, ATTR_ROWS(HIGH_TABLE_SIZE + 1), 0); for (i = 0; i < HIGH_TABLE_SIZE + 1; i++) high_score_item[i] = panel_create_item(score_panel, PANEL_MESSAGE, PANEL_ITEM_X, ATTR_COL(0), PANEL_ITEM_Y, ATTR_ROW(i), PANEL_LABEL_STRING, " ", 0); panel_set(high_score_item[0], PANEL_LABEL_BOLD, TRUE, PANEL_LABEL_STRING, "Pos Name Score Rows Lev Machine When", 0); panel_create_item(score_panel, PANEL_BUTTON, PANEL_LABEL_IMAGE, panel_button_image(score_panel, "done", 0, 0), PANEL_NOTIFY_PROC, done_proc, PANEL_ITEM_X, ATTR_COL(76), PANEL_ITEM_Y, ATTR_ROW(0), 0); window_fit(score_panel); window_fit(score_frame); init_timer(); window_main_loop(frame); exit(0); }