41,8 → 41,6 |
#include "kernel/kern.h" |
#include "ll/i386/cons.h" |
|
#include "ll/i386/advtimer.h" |
|
#include "drivers/keyb.h" |
|
#define UPDATE_PERIOD 10000 |
66,25 → 64,17 |
TASK Update(void *arg) |
{ |
struct timespec actual_timer; |
struct timespec s_test,e_test; |
|
long nsec,sec,min,hrs,day; |
|
signed long long start,end,res; |
struct timespec s_test; |
sys_gettime(&s_test); |
sys_gettime(&e_test); |
SUBTIMESPEC(&e_test,&s_test,&s_test); |
|
task_nopreempt(); |
|
while (1) { |
|
rdtscll(start); |
|
sys_gettime(&actual_timer); |
rdtscll(end); |
res = end - start; |
rdtscll(start); |
rdtscll(end); |
res -= (end - start); |
s_test.tv_nsec = res * 1000000 / clk_per_msec; |
|
nsec = actual_timer.tv_nsec; |
sec = actual_timer.tv_sec; |
min = sec / 60; |
109,7 → 99,7 |
printf_xy(0,9,WHITE,"CMOS last delta Clk/msec: %12ld",(long)last_delta_clk_per_msec); |
printf_xy(0,10,WHITE,"CMOS total delta Clk/msec: %12ld",(long)total_delta_clk_per_msec); |
|
printf_xy(0,12,WHITE,"Timer Access Delay: %12ld ns",s_test.tv_nsec); |
printf_xy(0,12,WHITE,"Timer Access Delay: %12ld ns",s_test.tv_nsec/2); |
|
task_endcycle(); |
|
135,7 → 125,7 |
HARD_TASK_MODEL mp; //Show current setting |
PID update; |
KEY_EVT k; |
|
|
k.flag = ALTL_BIT; |
k.scan = KEY_C; |
k.ascii = 'c'; |
144,7 → 134,7 |
clear(); |
|
set_screen(); |
|
|
hard_task_default_model(mp); |
hard_task_def_ctrl_jet(mp); |
hard_task_def_group(mp, 1); |