void alarm1_handler(intptr_t exinf) { ER ercd; check_point(14); ercd = iwup_tsk(TASK3); check_ercd(ercd, E_NOSPT); check_point(15); ercd = irel_wai(TASK3); check_ercd(ercd, E_NOSPT); check_point(16); ercd = iwup_tsk(TASK1); check_ercd(ercd, E_OK); check_point(17); ercd = iact_tsk(TASK3); check_ercd(ercd, E_OK); check_point(18); ercd = iact_tsk(TASK4); check_ercd(ercd, E_OK); check_point(19); ercd = irot_rdq(MID_PRIORITY); check_ercd(ercd, E_OK); check_point(20); ercd = irot_rdq(MID_PRIORITY); check_ercd(ercd, E_NOSPT); check_point(21); return; check_point(0); }
void alarm1_handler(intptr_t exinf) { ER ercd; switch (++alarm1_count) { case 1: check_point(8); ercd = pol_sem(SEM1); check_ercd(ercd, E_CTX); ercd = twai_sem(SEM1, TMO_POL); check_ercd(ercd, E_CTX); check_point(9); ercd = iloc_cpu(); check_ercd(ercd, E_OK); ercd = isig_sem(SEM1); check_ercd(ercd, E_CTX); ercd = iunl_cpu(); check_ercd(ercd, E_OK); check_point(10); ercd = isig_sem(SEM1); check_ercd(ercd, E_OK); return; check_point(0); case 2: check_point(14); ercd = isig_sem(SEM1); check_ercd(ercd, E_OK); signal_var(); return; check_point(0); case 3: check_point(17); ercd = isig_sem(SEM1); check_ercd(ercd, E_OK); signal_var(); return; check_point(0); case 4: check_point(21); ercd = isig_sem(SEM1); check_ercd(ercd, E_OK); signal_var(); return; check_point(0); case 5: check_point(28); ercd = isig_sem(SEM1); check_ercd(ercd, E_OK); signal_var(); return; check_point(0); case 6: check_point(32); ercd = irel_wai(TASK1); check_ercd(ercd, E_OK); return; check_point(0); } check_point(0); }