라고 하면 거창한데, 내가 짠 code를 내가 헥갈려서 정리한다는 거다. (자폭 모드 T.T)

일단, 어디 어디 있는지 정리부터 해볼까.

1. phone.c
[CODE]static int b_phone_power(batt_info_t *info, phone_pkt_t *pp) {[/CODE]
[CODE]if (pp->action == LXT_PHN_POWER_BATTERY_STATUS_NOTIFICATION) { switch (stat) { case PHONE_POWER_IS_NORMAL: case PHONE_POWER_IS_WARNING: case PHONE_POWER_IS_OFF:[/CODE]

[CODE]int handle_phone_off(batt_info_t *info); int handle_phone_warning(batt_info_t *info);[/CODE]


2. misc.c
[CODE]void b_set_battery_low(batt_info_t *info); int b_check_battery_low(batt_info_t *info) {[/CODE]
[CODE] if (!(info->stat & BATTERY_SENT_ALARM)) { ... } if (info->dat.voltage < BATTERY_VOL_PDA_OFF) { } else { /* if (info->dat.voltage < BATTERY_VOL_PDA_OFF) */ }[/CODE]


3. handler.c
[CODE]int b_handler_normal(batt_info_t *info, BATTERY_RET *bat) {[/CODE]
[CODE] /* check whether battery is low or not */ if ((info->dat.ac == AC_OFF_LINE) && (info->dat.level == BATTERY_LEVEL_BAR_0)) { /* update battery_status except mz_battery_stat(0xff) */ info->dat.battery = bat->battery & ~mz_battery_stat(0xff); b_set_battery_low(info); MSG_INFO(1, "battery_low: %dv\n", info->dat.voltage); if (info->dat.voltage <= BATTERY_VOL_LOW) b_check_battery_low(info); } else { info->dat.battery = bat->battery; b_time_clr(info, BATTERY_OFF_MSG_TIME); } return 0;[/CODE]