First commit with most sources
This commit is contained in:
59
mmvm/timerbios.cpp
Normal file
59
mmvm/timerbios.cpp
Normal file
@@ -0,0 +1,59 @@
|
||||
#include "wwbios.h"
|
||||
|
||||
extern "C" {
|
||||
#include "../wonx/wonx_include/timer.h"
|
||||
}
|
||||
|
||||
enum {
|
||||
RTC_RESET = 0,
|
||||
RTC_SET_DATETIME,
|
||||
RTC_GET_DATETIME,
|
||||
RTC_SET_DATETIME_STRUCT,
|
||||
RTC_GET_DATETIME_STRUCT,
|
||||
RTC_ENABLE_ALARM,
|
||||
RTC_DISABLE_ALARM,
|
||||
TIMER_ENABLE,
|
||||
TIMER_DISABLE,
|
||||
TIMER_GET_COUNT,
|
||||
};
|
||||
|
||||
void timer_handler(int func_no) {
|
||||
|
||||
switch(func_no) {
|
||||
case RTC_RESET:
|
||||
/* WonX で未実装
|
||||
rtc_reset();
|
||||
*/
|
||||
break;
|
||||
case RTC_SET_DATETIME:
|
||||
rtc_set_datetime(wregs[BX], wregs[CX]);
|
||||
break;
|
||||
case RTC_GET_DATETIME:
|
||||
wregs[AX] = rtc_get_datetime(wregs[BX]);
|
||||
break;
|
||||
case RTC_SET_DATETIME_STRUCT:
|
||||
rtc_set_datetime_struct((datetime_t *)(c_ds + wregs[DX]));
|
||||
break;
|
||||
case RTC_GET_DATETIME_STRUCT:
|
||||
rtc_get_datetime_struct((datetime_t *)(c_ds + wregs[DX]));
|
||||
break;
|
||||
case RTC_ENABLE_ALARM:
|
||||
rtc_enable_alarm(*bregs[BL], *bregs[BH]);
|
||||
break;
|
||||
case RTC_DISABLE_ALARM:
|
||||
rtc_disable_alarm();
|
||||
break;
|
||||
case TIMER_ENABLE:
|
||||
timer_enable(*bregs[AL], *bregs[BL], wregs[CX]);
|
||||
break;
|
||||
case TIMER_DISABLE:
|
||||
timer_disable(*bregs[AL]);
|
||||
break;
|
||||
case TIMER_GET_COUNT:
|
||||
wregs[AX] = timer_get_count(*bregs[AL]);
|
||||
break;
|
||||
|
||||
default:
|
||||
break;
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user