40,9 → 40,10 |
|
|
#include <kernel/kern.h> |
#include <drivers/keyb.h> |
#include <drivers/glib.h> |
|
#include <drivers/shark_keyb26.h> |
#include <drivers/shark_fb26.h> |
|
#include <drivers/pci6025e/timer.h> |
#include <drivers/pci6025e/dio_ppi.h> |
|
68,38 → 69,35 |
int main(int argc, char **argv) |
{ |
KEY_EVT k; |
int modenum; |
SOFT_TASK_MODEL show_model; |
HARD_TASK_MODEL gating; |
|
sys_atrunlevel(closeEvent, NULL, RUNLEVEL_BEFORE_EXIT); |
|
k.flag = CNTL_BIT; |
k.scan = KEY_X; |
k.ascii = 'x'; |
keyb_hook(k, endFun); |
k.status = KEY_PRESSED; |
keyb_hook(k, endFun, FALSE); |
|
k.flag = CNTR_BIT; |
keyb_hook(k, endFun); |
k.status = KEY_PRESSED; |
keyb_hook(k, endFun, FALSE); |
|
k.flag = 0; |
k.scan = KEY_G; |
k.ascii = 'g'; |
keyb_hook(k, gateEvent); |
k.status = KEY_PRESSED; |
keyb_hook(k, gateEvent, FALSE); |
|
k.scan = KEY_H; |
k.ascii = 'h'; |
keyb_hook(k, gateEvent); |
k.status = KEY_PRESSED; |
keyb_hook(k, gateEvent, FALSE); |
|
k.scan = KEY_S; |
k.ascii = 's'; |
keyb_hook(k, gateEvent); |
k.status = KEY_PRESSED; |
keyb_hook(k, gateEvent, FALSE); |
|
if(pci_init()==-1){ |
sys = 10; |
sys_end(); |
} |
|
if(!reMap()){ |
sys = 11; |
sys_end(); |
106,7 → 104,7 |
} |
|
soft_task_default_model(show_model); |
soft_task_def_level(show_model, 1); |
soft_task_def_level(show_model, 2); |
soft_task_def_met(show_model, TASK_MET); |
soft_task_def_wcet(show_model, TASK_WCET); |
soft_task_def_aperiodic(show_model); |
132,17 → 130,6 |
sys_end(); |
} |
|
if(grx_init()==-1){ |
sys = 30; |
sys_end(); |
} |
|
if( (modenum = grx_getmode(800, 600, 16)) == 0 ){ |
sys = 31; |
sys_end(); |
} |
|
grx_setmode(modenum); |
drawInterface(); |
//Enable DIO to manage gates |
DIO_init(); |
261,6 → 248,8 |
|
void endFun(KEY_EVT *k) |
{ |
closeEvent(NULL); |
|
sys_end(); |
} |
|
274,17 → 263,16 |
void closeEvent(void *arg) |
{ |
TIM_disarm(2); |
grx_close(); |
|
switch(sys){ |
case 0: cprintf("OK\n"); break; |
case 10: cprintf("No PCI bus found\n"); break; |
case 11: cprintf("No NATIONAL board found\n"); break; |
case 20: cprintf("task <show value> down!!\n"); break; |
case 21: cprintf("task <C0 gate manage> down!!!\n"); break; |
case 22: cprintf("task <C1 gate manage> down!!!\n"); break; |
case 30: cprintf("Cannot init graphic envirorment\n"); break; |
case 31: cprintf("graphic mode 800x600x16 not supported\n"); break; |
default: cprintf("???????????????\n"); break; |
case 0: sys_shutdown_message("OK\n"); break; |
case 10: sys_shutdown_message("No PCI bus found\n"); break; |
case 11: sys_shutdown_message("No NATIONAL board found\n"); break; |
case 20: sys_shutdown_message("task <show value> down!!\n"); break; |
case 21: sys_shutdown_message("task <C0 gate manage> down!!!\n"); break; |
case 22: sys_shutdown_message("task <C1 gate manage> down!!!\n"); break; |
case 30: sys_shutdown_message("Cannot init graphic envirorment\n"); break; |
case 31: sys_shutdown_message("graphic mode 800x600x16 not supported\n"); break; |
default: sys_shutdown_message("???????????????\n"); break; |
} |
} |