Esempio n. 1
0
int load_menu() {
	vg_init(0x117);
	vg_fill(0xff);
	vg_draw("/usr/src/drivers/proj/images/image_title.mg", 156, 413, 279, 107);
	vg_draw("/usr/src/drivers/proj/images/image_play.mg", 83, 460, 45, 350);
	vg_draw("/usr/src/drivers/proj/images/image_exit.mg", 90, 378, 45, 470);
	drawDate();
}
Esempio n. 2
0
void vier_gewinnt_start()
{
    int i, j, spieler = VG_KREIS;
    char *spl_str="Kreis", spl_chr=VG_STEIN_KREIS;

    struct vg_feld map;
    map.runde = 0;
    for(i=0;i<VG_X;i++)
        for(j=0;j<VG_Y;j++)
            map.status[i][j] = VG_LEER;

    initscr();
    raw();
    cbreak();
    noecho();
    keypad(stdscr, TRUE);

    vg_draw(&map);
    while(1)
    {
        mvprintw(1,13,"%s ist am Zug!", spl_str);
        i = vg_steuern(&map, spl_chr);
        vg_setzen(&map, i, spieler);
        vg_draw(&map);

        move(1,13);
        if(vg_prufe_gewinn(&map))
            break;

        if(spieler == VG_KREIS)
        {
            spieler = VG_KREUZ;
            spl_str = "Kreuz";
            spl_chr = VG_STEIN_KREUZ;
        }
        else
        {
            spieler = VG_KREIS;
            spl_str = "Kreis";
            spl_chr = VG_STEIN_KREIS;
        }
    }

    mvprintw(1,13,"%s gewinnt!   ", spl_str);
    getch();
    endwin();
}
Esempio n. 3
0
int game() {

	int menu = 0;

	load_cards();
	load_menu();

	if ((irq_set = keyboard_subscribe_int()) == 1) {
		vg_exit();
		return 1;
	}

	while (menu == 0) {
		if (keyboard_int_handler(irq_set) == 0) {
			if (scancode == 0x82) {
				menu = 1;
				vg_fill(0xff);
				vg_draw("/usr/src/drivers/proj/images/image_nivel3.mg", 64, 167,
						428, 36);
				vg_draw_all(&d1, 134, 180);
				vg_draw("/usr/src/drivers/proj/images/image_selected.mg",
						d1.cards[0]->height, d1.cards[0]->width, d1.posx[0],
						d1.posy[0]);
			} else {
				if (scancode == 0x83) {
					vg_exit();
					return 0;
				}
			}
		}
	}

	while (game_over == 0) {
		if (keyboard_int_handler(irq_set) == 0) {
			game_handling(&d1);
		}
	}

	if (keyboard_unsubscribe_int() != 0) {
		return 1;
	}

	sleep(5);
	vg_exit();
	return 0;
}
Esempio n. 4
0
void drawTime(int seconds)
{
	int newSeconds;
	int newMinutes;

	secondsToTime(seconds,&newSeconds,&newMinutes);

	drawNum(newSeconds/10, 926, 35);
	drawNum(newSeconds%10, 938, 35);
	vg_draw("/usr/src/drivers/proj/images/image_10.mg", 22, 8, 950, 35);
	drawNum(newMinutes/10, 958, 35);
	drawNum(newMinutes%10, 970, 35);
}
Esempio n. 5
0
void drawNum(int num, int x,int y)
{
	switch (num)
	{
	case 0:
		vg_draw("/usr/src/drivers/proj/images/image_0.mg", 22, 12, x, y);
		break;
	case 1:
		vg_draw("/usr/src/drivers/proj/images/image_1.mg", 22, 12, x, y);
		break;
	case 2:
		vg_draw("/usr/src/drivers/proj/images/image_2.mg", 22, 12, x, y);
		break;
	case 3:
		vg_draw("/usr/src/drivers/proj/images/image_3.mg", 22, 12, x, y);
		break;
	case 4:
		vg_draw("/usr/src/drivers/proj/images/image_4.mg", 22, 12, x, y);
		break;
	case 5:
		vg_draw("/usr/src/drivers/proj/images/image_5.mg", 22, 12, x, y);
		break;
	case 6:
		vg_draw("/usr/src/drivers/proj/images/image_6.mg", 22, 12, x, y);
		break;
	case 7:
		vg_draw("/usr/src/drivers/proj/images/image_7.mg", 22, 12, x, y);
		break;
	case 8:
		vg_draw("/usr/src/drivers/proj/images/image_8.mg", 22, 12, x, y);
		break;
	case 9:
		vg_draw("/usr/src/drivers/proj/images/image_9.mg", 22, 12, x, y);
		break;
	}
}
Esempio n. 6
0
int game_handling(deck* d) {
	int i;
	int turned = 0;

	if (scancode == 0x9e) {
		for (i = 0; i < 11; i++) {
			vg_draw(d->cards[j]->card_paths[i], d->cards[j]->height,
					d->cards[j]->width, d->posx[j], d->posy[j]);
			tickdelay(micros_to_ticks(DELAY_US));
		}
		d->cards[j]->selected = 1;
	}

	else if (scancode == 0x83 || scancode == 0x81) {
		game_over = 1;
		vg_exit();
	}

	//Press right
	else if (scancode == 0xcd) {
		if (d->cards[j]->selected == 0) {
			vg_draw(d->cards[j]->card_paths[0], d->cards[j]->height,
					d->cards[j]->width, d->posx[j], d->posy[j]);
		}
		j++;

		do {
			if (j == d->num_cards) {
				j = 0;
			}
			if (d->cards[j]->selected == 1)
				j++;
		} while (d->cards[j]->selected == 1);

		vg_draw("/usr/src/drivers/proj/images/image_selected.mg",
				d->cards[j]->height, d->cards[j]->width, d->posx[j],
				d->posy[j]);
	}

	//Press left
	else if (scancode == 0xcb) {
		if (d->cards[j]->selected == 0) {
			vg_draw(d->cards[j]->card_paths[0], d->cards[j]->height,
					d->cards[j]->width, d->posx[j], d->posy[j]);
		}
		j--;

		do {
			if (j == -1) {
				j = d->num_cards - 1;
			}
			if (d->cards[j]->selected == 1)
				j--;
		} while (d->cards[j]->selected == 1);

		vg_draw("/usr/src/drivers/proj/images/image_selected.mg",
				d->cards[j]->height, d->cards[j]->width, d->posx[j],
				d->posy[j]);
	}

	//Press up
	else if (scancode == 0xc8) {
		if (j >= d->num_cards / 2) {
			if (d->cards[j]->selected == 0) {
				vg_draw(d->cards[j]->card_paths[0], d->cards[j]->height,
						d->cards[j]->width, d->posx[j], d->posy[j]);
			}
			j -= 5;

			if (d->cards[j]->selected == 0) {
				vg_draw("/usr/src/drivers/proj/images/image_selected.mg",
						d->cards[j]->height, d->cards[j]->width, d->posx[j],
						d->posy[j]);
			}
		}
	}

	//Press down
	else if (scancode == 0xd0) {
		if (j < d->num_cards / 2) {
			if (d->cards[j]->selected == 0) {
			vg_draw(d->cards[j]->card_paths[0], d->cards[j]->height,
					d->cards[j]->width, d->posx[j], d->posy[j]);
			}
			j += 5;

			if (d->cards[j]->selected == 0) {
				vg_draw("/usr/src/drivers/proj/images/image_selected.mg",
						d->cards[j]->height, d->cards[j]->width, d->posx[j],
						d->posy[j]);
			}
		}
	}

}
Esempio n. 7
0
void drawDate()
{
	unsigned long day, month, year;
	getDate(&day,&month,&year);
	unsigned long i = (bcd2binary(day)) / 10;
	unsigned long ii = (bcd2binary(day)) % 10;
	unsigned long j = (bcd2binary(month)) / 10;
	unsigned long jj = (bcd2binary(month)) % 10;
	unsigned long k = (bcd2binary(year)) / 10;
	unsigned long kk = (bcd2binary(year)) % 10;
	printf("%d\n",i);
	if(i == 0)
		vg_draw("/usr/src/drivers/proj/images/image_0.mg", 22, 12, 850, 700);
	else if(i == 1)
		vg_draw("/usr/src/drivers/proj/images/image_1.mg", 22, 12, 850, 700);
	else if(i == 2)
		vg_draw("/usr/src/drivers/proj/images/image_2.mg", 22, 12, 850, 700);
	else if(i == 3)
		vg_draw("/usr/src/drivers/proj/images/image_3.mg", 22, 12, 850, 700);
	else if(i == 4)
		vg_draw("/usr/src/drivers/proj/images/image_4.mg", 22, 12, 850, 700);
	else if(i == 5)
		vg_draw("/usr/src/drivers/proj/images/image_5.mg", 22, 12, 850, 700);
	else if(i == 6)
		vg_draw("/usr/src/drivers/proj/images/image_6.mg", 22, 12, 850, 700);
	else if(i == 7)
		vg_draw("/usr/src/drivers/proj/images/image_7.mg", 22, 12, 850, 700);
	else if(i == 8)
		vg_draw("/usr/src/drivers/proj/images/image_8.mg", 22, 12, 850, 700);
	else if(i == 9)
		vg_draw("/usr/src/drivers/proj/images/image_9.mg", 22, 12, 850, 700);

	if(ii == 0)
		vg_draw("/usr/src/drivers/proj/images/image_0.mg", 22, 12, 862, 700);
	else if(ii == 1)
		vg_draw("/usr/src/drivers/proj/images/image_1.mg", 22, 12, 862, 700);
	else if(ii == 2)
		vg_draw("/usr/src/drivers/proj/images/image_2.mg", 22, 12, 862, 700);
	else if(ii == 3)
		vg_draw("/usr/src/drivers/proj/images/image_3.mg", 22, 12, 862, 700);
	else if(ii == 4)
		vg_draw("/usr/src/drivers/proj/images/image_4.mg", 22, 12, 862, 700);
	else if(ii == 5)
		vg_draw("/usr/src/drivers/proj/images/image_5.mg", 22, 12, 862, 700);
	else if(ii == 6)
		vg_draw("/usr/src/drivers/proj/images/image_6.mg", 22, 12, 862, 700);
	else if(ii == 7)
		vg_draw("/usr/src/drivers/proj/images/image_7.mg", 22, 12, 862, 700);
	else if(ii == 8)
		vg_draw("/usr/src/drivers/proj/images/image_8.mg", 22, 12, 862, 700);
	else if(ii == 9)
		vg_draw("/usr/src/drivers/proj/images/image_9.mg", 22, 12, 862, 700);

	vg_draw("/usr/src/drivers/proj/images/image_11.mg", 22, 12, 874, 700);

	if(j == 0)
		vg_draw("/usr/src/drivers/proj/images/image_0.mg", 22, 12, 886, 700);
	else if(j == 1)
		vg_draw("/usr/src/drivers/proj/images/image_1.mg", 22, 12, 886, 700);
	else if(j == 2)
		vg_draw("/usr/src/drivers/proj/images/image_2.mg", 22, 12, 886, 700);
	else if(j == 3)
		vg_draw("/usr/src/drivers/proj/images/image_3.mg", 22, 12, 886, 700);
	else if(j == 4)
		vg_draw("/usr/src/drivers/proj/images/image_4.mg", 22, 12, 886, 700);
	else if(j == 5)
		vg_draw("/usr/src/drivers/proj/images/image_5.mg", 22, 12, 886, 700);
	else if(j == 6)
		vg_draw("/usr/src/drivers/proj/images/image_6.mg", 22, 12, 886, 700);
	else if(j == 7)
		vg_draw("/usr/src/drivers/proj/images/image_7.mg", 22, 12, 886, 700);
	else if(j == 8)
		vg_draw("/usr/src/drivers/proj/images/image_8.mg", 22, 12, 886, 700);
	else if(j == 9)
		vg_draw("/usr/src/drivers/proj/images/image_9.mg", 22, 12, 886, 700);

	if(jj == 0)
		vg_draw("/usr/src/drivers/proj/images/image_0.mg", 22, 12, 898, 700);
	else if(jj == 1)
		vg_draw("/usr/src/drivers/proj/images/image_1.mg", 22, 12, 898, 700);
	else if(jj == 2)
		vg_draw("/usr/src/drivers/proj/images/image_2.mg", 22, 12, 898, 700);
	else if(jj == 3)
		vg_draw("/usr/src/drivers/proj/images/image_3.mg", 22, 12, 898, 700);
	else if(jj == 4)
		vg_draw("/usr/src/drivers/proj/images/image_4.mg", 22, 12, 898, 700);
	else if(jj == 5)
		vg_draw("/usr/src/drivers/proj/images/image_5.mg", 22, 12, 898, 700);
	else if(jj == 6)
		vg_draw("/usr/src/drivers/proj/images/image_6.mg", 22, 12, 898, 700);
	else if(jj == 7)
		vg_draw("/usr/src/drivers/proj/images/image_7.mg", 22, 12, 898, 700);
	else if(jj == 8)
		vg_draw("/usr/src/drivers/proj/images/image_8.mg", 22, 12, 898, 700);
	else if(jj == 9)
		vg_draw("/usr/src/drivers/proj/images/image_9.mg", 22, 12, 898, 700);

	vg_draw("/usr/src/drivers/proj/images/image_11.mg", 22, 12, 910, 700);

	if(k == 0)
		vg_draw("/usr/src/drivers/proj/images/image_0.mg", 22, 12, 922, 700);
	else if(k == 1)
		vg_draw("/usr/src/drivers/proj/images/image_1.mg", 22, 12, 922, 700);
	else if(k == 2)
		vg_draw("/usr/src/drivers/proj/images/image_2.mg", 22, 12, 922, 700);
	else if(k == 3)
		vg_draw("/usr/src/drivers/proj/images/image_3.mg", 22, 12, 922, 700);
	else if(k == 4)
		vg_draw("/usr/src/drivers/proj/images/image_4.mg", 22, 12, 922, 700);
	else if(k == 5)
		vg_draw("/usr/src/drivers/proj/images/image_5.mg", 22, 12, 922, 700);
	else if(k == 6)
		vg_draw("/usr/src/drivers/proj/images/image_6.mg", 22, 12, 922, 700);
	else if(k == 7)
		vg_draw("/usr/src/drivers/proj/images/image_7.mg", 22, 12, 922, 700);
	else if(k == 8)
		vg_draw("/usr/src/drivers/proj/images/image_8.mg", 22, 12, 922, 700);
	else if(k == 9)
		vg_draw("/usr/src/drivers/proj/images/image_9.mg", 22, 12, 922, 700);

	if(kk == 0)
		vg_draw("/usr/src/drivers/proj/images/image_0.mg", 22, 12, 934, 700);
	else if(kk == 1)
		vg_draw("/usr/src/drivers/proj/images/image_1.mg", 22, 12, 934, 700);
	else if(kk == 2)
		vg_draw("/usr/src/drivers/proj/images/image_2.mg", 22, 12, 934, 700);
	else if(kk == 3)
		vg_draw("/usr/src/drivers/proj/images/image_3.mg", 22, 12, 934, 700);
	else if(kk == 4)
		vg_draw("/usr/src/drivers/proj/images/image_4.mg", 22, 12, 934, 700);
	else if(kk == 5)
		vg_draw("/usr/src/drivers/proj/images/image_5.mg", 22, 12, 934, 700);
	else if(kk == 6)
		vg_draw("/usr/src/drivers/proj/images/image_6.mg", 22, 12, 934, 700);
	else if(kk == 7)
		vg_draw("/usr/src/drivers/proj/images/image_7.mg", 22, 12, 934, 700);
	else if(kk == 8)
		vg_draw("/usr/src/drivers/proj/images/image_8.mg", 22, 12, 934, 700);
	else if(kk == 9)
		vg_draw("/usr/src/drivers/proj/images/image_9.mg", 22, 12, 934, 700);
}