void alarm1_handler(intptr_t exinf) { ER_UINT ercd; SYSTIM systim; switch (++alarm1_count) { case 1: check_point(36); ercd = set_tim(1LLU << 32); check_ercd(ercd, E_CTX); ercd = get_tim(&systim); check_ercd(ercd, E_CTX); return; check_point(0); case 2: check_point(74); ercd = adj_tim(+1000000); check_ercd(ercd, E_OK); check_point(76); ercd = adj_tim(+1000000); check_ercd(ercd, E_OBJ); check_point(78); return; check_point(0); default: check_point(0); } check_point(0); }
void task1(intptr_t exinf) { ER_UINT ercd; check_point(2); check_assert(fch_hrt() == 10U); simtim_advance(90U); check_assert(fch_hrt() == 100U); check_point(3); ercd = sta_alm(ALM1, 100U); check_ercd(ercd, E_OK); check_point(5); ercd = slp_tsk(); check_ercd(ercd, E_OK); check_point(9); simtim_advance(79U); check_assert(fch_hrt() == 300U); check_point(10); ercd = sta_alm(ALM1, 100U); check_ercd(ercd, E_OK); check_point(12); simtim_advance(10U); check_assert(fch_hrt() == 310U); check_point(13); ercd = sta_alm(ALM2, 100U); check_ercd(ercd, E_OK); check_point(14); simtim_advance(10U); check_assert(fch_hrt() == 320U); check_point(15); ercd = sta_alm(ALM3, 110U); check_ercd(ercd, E_OK); check_point(16); ercd = slp_tsk(); check_ercd(ercd, E_OK); check_point(24); simtim_advance(59U); check_assert(fch_hrt() == 500U); check_point(25); ercd = sta_alm(ALM1, 100U); check_ercd(ercd, E_OK); check_point(27); simtim_advance(10U); check_assert(fch_hrt() == 510U); check_point(28); ercd = sta_alm(ALM2, 110U); check_ercd(ercd, E_OK); check_point(29); ercd = slp_tsk(); check_ercd(ercd, E_OK); check_point(34); simtim_advance(69U); check_assert(fch_hrt() == 700U); check_point(35); ercd = sta_alm(ALM1, 100U); check_ercd(ercd, E_OK); check_point(37); simtim_advance(10U); check_assert(fch_hrt() == 710U); check_point(38); ercd = sta_alm(ALM2, 100U); check_ercd(ercd, E_OK); check_point(39); ercd = slp_tsk(); check_ercd(ercd, E_OK); check_point(47); simtim_advance(60U); check_assert(fch_hrt() == 900U); check_point(48); ercd = sta_alm(ALM1, 100U); check_ercd(ercd, E_OK); check_point(50); simtim_advance(10U); check_assert(fch_hrt() == 910U); check_point(51); ercd = sta_alm(ALM2, 50U); check_ercd(ercd, E_OK); check_point(53); ercd = slp_tsk(); check_ercd(ercd, E_OK); check_point(59); simtim_advance(89U); check_assert(fch_hrt() == 1100U); check_point(60); ercd = sta_alm(ALM1, 10U); check_ercd(ercd, E_OK); check_point(62); simtim_add(20U); check_assert(fch_hrt() == 1120U); check_point(63); ercd = sta_alm(ALM2, 100U); check_ercd(ercd, E_OK); check_point(64); simtim_advance(10U); check_point(70); check_assert(fch_hrt() == 1160U); check_point(71); ercd = slp_tsk(); check_ercd(ercd, E_OK); check_point(75); target_raise_hrt_int(); check_point(77); simtim_advance(59U); check_assert(fch_hrt() == 1300U); check_point(78); ercd = sta_alm(ALM1, 100U); check_ercd(ercd, E_OK); check_point(80); ercd = adj_tim(200); check_ercd(ercd, E_OK); check_point(84); ercd = sta_alm(ALM1, TMAX_RELTIM); check_ercd(ercd, E_OK); check_point(86); ercd = adj_tim(-200); check_ercd(ercd, E_OK); check_point(88); ercd = slp_tsk(); check_ercd(ercd, E_OK); check_finish(93); check_point(0); }
void task1(intptr_t exinf) { ER_UINT ercd; T_RALM ralm; SYSTIM systim; check_point(3); ercd = loc_cpu(); check_ercd(ercd, E_OK); ercd = set_tim(1000000LLU); check_ercd(ercd, E_CTX); ercd = get_tim(&systim); check_ercd(ercd, E_CTX); ercd = adj_tim(100); check_ercd(ercd, E_CTX); ercd = unl_cpu(); check_ercd(ercd, E_OK); check_point(4); ercd = get_tim(&systim); check_ercd(ercd, E_OK); check_point(6); check_assert(systim == 40U - 10U); ercd = set_tim(2LLU << 32); check_ercd(ercd, E_OK); check_point(8); ercd = get_tim(&systim); check_ercd(ercd, E_OK); check_point(10); check_assert(systim == (2LLU << 32) + 10U); check_point(11); target_raise_hrt_int(1U); ercd = tslp_tsk(TMAX_RELTIM); check_ercd(ercd, E_TMOUT); check_point(17); ercd = get_tim(&systim); check_ercd(ercd, E_OK); check_point(19); check_assert(systim == (2LLU << 32) + 4000000050U); check_point(20); ercd = get_tim(&systim); check_ercd(ercd, E_OK); check_point(22); check_assert(systim == (3LLU << 32) + 50U); ercd = adj_tim(-1000001); check_ercd(ercd, E_PAR); ercd = adj_tim(+1000001); check_ercd(ercd, E_PAR); ercd = sta_alm(ALM1, 2000000U); check_ercd(ercd, E_OK); check_point(25); ercd = get_tim(&systim); check_ercd(ercd, E_OK); check_point(27); check_assert(systim == (3LLU << 32) + 80U); ercd = adj_tim(+1000000); check_ercd(ercd, E_OK); check_point(30); ercd = get_tim(&systim); check_ercd(ercd, E_OK); check_point(32); check_assert(systim == (3LLU << 32) + 1000000U + 100U); ercd = ref_alm(ALM1, &ralm); check_ercd(ercd, E_OK); check_point(34); check_assert(ralm.lefttim == 999960U); target_raise_hrt_int(0U); check_point(39); ercd = sta_alm(ALM1, 2000000U); check_ercd(ercd, E_OK); check_point(42); ercd = get_tim(&systim); check_ercd(ercd, E_OK); check_point(44); check_assert(systim == (3LLU << 32) + 1000000U + 1000110U); ercd = adj_tim(-1000000); check_ercd(ercd, E_OK); check_point(47); ercd = get_tim(&systim); check_ercd(ercd, E_OK); check_point(49); check_assert(systim == (3LLU << 32) + 1000000U + 1000120U); ercd = ref_alm(ALM1, &ralm); check_ercd(ercd, E_OK); check_assert(ralm.lefttim == 2999960U); ercd = get_tim(&systim); check_ercd(ercd, E_OK); check_point(52); check_assert(systim == (3LLU << 32) + 1000000U + 1000120U); ercd = get_tim(&systim); check_ercd(ercd, E_OK); check_point(54); check_assert(systim == (3LLU << 32) + 2000160U); ercd = adj_tim(-1000000); check_ercd(ercd, E_OK); ercd = get_tim(&systim); check_ercd(ercd, E_OK); check_point(58); check_assert(systim == (3LLU << 32) + 2000170U); ercd = set_tim(4LLU << 32); check_ercd(ercd, E_OK); ercd = get_tim(&systim); check_ercd(ercd, E_OK); check_point(61); check_assert(systim == (4LLU << 32)); ercd = get_tim(&systim); check_ercd(ercd, E_OK); check_point(63); check_assert(systim == (4LLU << 32)); ercd = get_tim(&systim); check_ercd(ercd, E_OK); check_point(65); check_assert(systim == (4LLU << 32) - 999980U + 1000020U); ercd = sta_alm(ALM1, 1000U); check_ercd(ercd, E_OK); check_point(70); ercd = sta_alm(ALM2, 1000U); check_ercd(ercd, E_OK); check_point(72); target_raise_hrt_int(0U); check_point(82); target_raise_hrt_int(0U); check_point(85); ercd = set_tim(5LLU << 32); check_ercd(ercd, E_OK); check_point(87); ercd = adj_tim(200); check_ercd(ercd, E_OK); check_point(90); ercd = get_tim(&systim); check_ercd(ercd, E_OK); check_point(92); check_assert(systim == (5LLU << 32) + 200U + 20U); check_point(93); ercd = set_tim(6LLU << 32); check_ercd(ercd, E_OK); check_point(95); ercd = adj_tim(-200); check_ercd(ercd, E_OK); check_point(98); ercd = get_tim(&systim); check_ercd(ercd, E_OK); check_point(100); check_assert(systim == (6LLU << 32) + 10U); ercd = adj_tim(-1000000); check_ercd(ercd, E_OK); check_point(103); ercd = adj_tim(-1000000); check_ercd(ercd, E_OBJ); check_point(105); ercd = adj_tim(+1000000); check_ercd(ercd, E_OK); check_point(108); ercd = get_tim(&systim); check_ercd(ercd, E_OK); check_point(110); check_assert(systim == (6LLU << 32) + 10U); check_point(111); ercd = get_tim(&systim); check_ercd(ercd, E_OK); check_point(113); check_assert(systim == (6LLU << 32) - 200U + 260U); ercd = adj_tim(0); check_ercd(ercd, E_OK); check_point(116); ercd = get_tim(&systim); check_ercd(ercd, E_OK); check_point(118); check_assert(systim == (6LLU << 32) - 200U + 280U); check_finish(119); check_point(0); }