18,7 → 18,7 |
* http://shark.sssup.it |
*/ |
|
/* CVS : $Id: bca.c,v 1.4 2003-01-07 17:10:16 pj Exp $ */ |
/* CVS : $Id: bca.c,v 1.5 2004-05-23 08:59:27 giacomo Exp $ */ |
|
/* |
* Copyright (C) 2000 Fabio Calabrese <fabiocalabrese77@yahoo.it> |
71,9 → 71,11 |
|
// *** Librerie S.Ha.R.K *** |
#include <kernel/kern.h> |
#include <drivers/keyb.h> |
#include <ll/i386/cons.h> |
#include <drivers/glib.h> |
|
#include <drivers/shark_fb26.h> |
#include <drivers/shark_keyb26.h> |
|
// *** Librerie Standard C *** |
#include <stdlib.h> |
// *** Librerie FAB *** |
122,32 → 124,8 |
TASK esplo(void *); |
#include"esplo.c" |
|
void demo_exc_handler(int signo, siginfo_t *info, void *extra) |
{ |
struct timespec t; |
|
grx_close(); |
|
/* Default action for an kern exception is */ |
kern_cli(); |
kern_gettime(&t), |
kern_printf("\nS.Ha.R.K. Exception raised!!!" |
"\nTime (s:ns) :%ld:%ld" |
"\nException number:%d" |
"\nPID :%d\n", |
t.tv_sec, t.tv_nsec, info->si_value.sival_int, |
info->si_task); |
sys_end(); |
} |
|
void my_close(void *arg) |
{ FAB_grx_close(); |
place(0,0); |
info(); |
} |
|
void end_fun(KEY_EVT* k) |
{ cprintf("Ending...\n"); |
{ sys_shutdown_message("Ending...\n"); |
sys_end(); |
} |
void incrementa_aerei_fun(KEY_EVT* k) |
168,33 → 146,33 |
PID pid; |
|
KEY_EVT k; |
keyb_set_map(itaMap); |
|
k.flag = 0; |
k.scan = KEY_ENT; |
k.ascii = 13; |
keyb_hook(k,end_fun); |
k.status = KEY_PRESSED; |
keyb_hook(k,end_fun,FALSE); |
k.flag = 0; |
k.scan = KEY_1; |
k.ascii = '1'; |
keyb_hook(k,incrementa_aerei_fun); |
k.status = KEY_PRESSED; |
keyb_hook(k,incrementa_aerei_fun,FALSE); |
k.flag = 0; |
k.scan = KEY_2; |
k.ascii = '2'; |
keyb_hook(k,decrementa_aerei_fun); |
k.status = KEY_PRESSED; |
keyb_hook(k,decrementa_aerei_fun,FALSE); |
k.flag = 0; |
k.scan = KEY_3; |
k.ascii = '3'; |
keyb_hook(k,incrementa_cannoni_fun); |
k.status = KEY_PRESSED; |
keyb_hook(k,incrementa_cannoni_fun,FALSE); |
k.flag = 0; |
k.scan = KEY_4; |
k.ascii = '4'; |
keyb_hook(k,decrementa_cannoni_fun); |
k.status = KEY_PRESSED; |
keyb_hook(k,decrementa_cannoni_fun,FALSE); |
|
sys_atrunlevel(my_close, NULL, RUNLEVEL_BEFORE_EXIT); |
|
FAB_grx_open(800,600); |
|
/* inizializza il mutex grafico */ |
app_mutex_init(&grx_mutex); |
|
217,6 → 195,9 |
pid=crea_soft_control(); |
task_activate(pid); |
//---------- |
|
return 0; |
|
} |
|
|