Спасибо за ответ Alex. Я посмотрел, nо не поумнел. Вот код из вашего примерa:
/////////////////////////////////////////////////////////////////////////////////////////////////////
int main (void)
57: {
00470 FA0002 lnk #0x2
58: unsigned char errc;
59:
60: OSInit(); // uCOS-II init
00472 0211AE call 0x0011ae
00474 000000 nop
61:
62: // Create start task, that creates all other tasks and events
63:
64: OSTaskCreateExt(AppStartTask, // Create application start task
00476 200030 mov.w #0x3,0x0000 ;OS_TASK_OPT_STK_CHK | OS_TASK_OPT_STK_CLR
00478 781F80 mov.w 0x0000,[0x001e++]
0047A EB1F80 clr.w [0x001e++] ;(void *)0,
0047C 200806 mov.w #0x80,0x000c ;APP_TASK_START_STK_SIZE
0047E 200007 mov.w #0x0,0x000e
00480 213265 mov.w #0x1326,0x000a ;&AppStartTaskStk[APP_TASK_START_STK_SIZE - 1]
00482 200054 mov.w #0x5,0x0008 ;APP_TASK_START_PRIO
00484 784184 mov.b 0x0008,0x0006
00486 212282 mov.w #0x1228,0x0004 ;&AppStartTaskStk[0]
00488 EB0080 clr.w 0x0002
0048A 204B00 mov.w #0x4b0,0x0000 ;AppStartTask!!! 0x4b0 = реальный адрес, не таблица
0048C 0221EC call 0x0021ec
0048E 000000 nop
65: (void *)0, // Appl start task parameter
66: (OS_STK *)& AppStartTaskStk[0], // Top of task stack pointer
67: APP_TASK_START_PRIO, // Prioriity
68: APP_TASK_START_PRIO, // Task ID - should be the same as priority
69: (OS_STK *)&AppStartTaskStk[APP_TASK_START_STK_SIZE - 1], // Bottom of task stack pointer
70: APP_TASK_START_STK_SIZE, // Stack size
71: (void *)0, // Supplied memory location
72: OS_TASK_OPT_STK_CHK | OS_TASK_OPT_STK_CLR); // Options
/////////////////////////////////////////////////////////////////////////////////////////////////////
106: __task static void AppStartTask (void *p_arg)
107: {
004B0 FA0002 lnk #0x2
108: unsigned char errc;
109:
110: // Setup RTOS timer
111:
112: T2CON_bit.TCS = 0; // Clock source - internal
004B2 A92110 bclr.b 0x0110,#1
.....
/////////////////////////////////////////////////////////////////////////////////////////////////////
290: INT8U OSTaskCreateExt (void (*task)(void *p_arg),
291: void *p_arg,
292: OS_STK *ptos,
293: INT8U prio,
294: INT16U id,
295: OS_STK *pbos,
296: INT32U stk_size,
297: void *pext,
298: INT16U opt)
299: {
021EC 4787E8 add.w 0x001e,#8,0x001e
021EE BE9F88 mov.d 0x0010,[0x001e++]
021F0 BE9F8A mov.d 0x0014,[0x001e++]
021F2 BE9F8C mov.d 0x0018,[0x001e++]
021F4 781F8E mov.w 0x001c,[0x001e++]
021F6 780600 mov.w 0x0000,0x0018 ;AppStartTask -> W12
021F8 780581 mov.w 0x0002,0x0016
021FA 780502 mov.w 0x0004,0x0014
021FC 9FEFC3 mov.b 0x0006,[0x001e-20]
021FE 780684 mov.w 0x0008,0x001a
02200 780705 mov.w 0x000a,0x001c
02202 BE0406 mov.d 0x000c,0x0010
......
325: psp = OSTaskStkInit(task, p_arg, ptos, opt); /* Initialize the task's stack */
0225C 97B19F mov.w [0x001e-30],0x0006
0225E 78010A mov.w 0x0014,0x0004
02260 78008B mov.w 0x0016,0x0002
02262 78000C mov.w 0x0018,0x0000 ;W12 -> task
02264 02071A call 0x00071a
Никакой таблици я не вижу и адрес на task идёт только через 2 байты.