?? old_task.c
字號:
/*
* Task related routines.
*
* Copyright(?) 1999 R.J.M. Close, distribute under GPL
*/
#include "task.h"
// Initiates the relavent type of task with the supplied args.
void x_send_mail (unsigned int arg1, unsigned int arg2, unsigned char* arg3, unsigned int arg4)
{
switch (arg2) {
case 1:
dp_task (arg1, arg3, arg4);
return;
case 2:
at_task (arg1, arg3, arg4);
return;
case 3:
io_task (arg1, arg3, arg4);
return;
default:
printf("x_send_mail: error task type %d not valid!\n", arg2);
return;
}
}
void dp_task(unsigned int arg1, unsigned char* arg2, unsigned int arg3)
{
// Major function, needs filling in!
//printf("dp_task: (%x, %p, %x);\n", arg1, arg2, arg3);
if (arg1 > 0x1b) goto loc_290B3;
if (arg1 >= 0x1a) goto loc_2906D;
if (arg1 > 0x13) return;
switch(arg1) {
//loc_28D38
case 0:
// This is how it is called in UART_init().
dp_init_variables();
if (arg2 == NULL) {
printf("dp_task: error: arg2 is NULL.\n");
return;
}
if (dp_init_modem() != 1) {
*arg2 = 0;
x_modem_state = 1;
return;
}
else {
*arg2 = 1;
x_init_modem_options();
// ll_load_modem_options(); Loads options from registry in NT.
x_output(0);
dp_update_modem_options();
x_modem_state = 1;
return;
}
case 0x78:
dp_hdlc_mode();
return;
default:
printf("dp_task: error: case %d not implemented.\n", arg1);
return;
}
loc_2906D:
loc_290B3:
// Fill in!
dp_test_cmd (arg3, arg2);
}
void at_task(unsigned int arg1, unsigned char* arg2, unsigned int arg3)
{
switch (arg1) {
case 0:
at_init_variables();
return;
case 0x15: case 0x17: case 0x18: case 0x19: case 0x1a: case 0x1b:
return;
case 0x16:
//atparse_cmd();
return;
case 0x1d:
if (x_dial_residual == 0)
at_result_code = 0;
else if (x_dial_residual == 2)
at_result_code = 6;
else if (x_dial_residual == 1)
at_result_code = 7;
else if (x_dial_residual == 3)
at_result_code = 8;
else if (x_dial_residual == 11)
at_result_code = 30;
else if (x_dial_residual == 12)
at_result_code = 31;
else if (x_dial_residual == 13)
at_result_code = 32;
else
at_result_code = 3;
//at_output_msg (0, 0);
return;
default:
// Needs filling in (low priority!).
printf("at_task(%d, %s, %d): not implemented.\n", arg1, arg2, arg3);
return;
}
}
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -