what is different form, follow as:
(1)code XBYTE *AA[]={...}; (2)code void (*BB[])(void)={...};
"Of sourse, it's XBYTE data type rather than XDATA data type." XBYTE is one of Keil's Absolute Memory Access Macros, from ABSACC.H - see the C51 Manual. Using that in a variable definition won't work. Presumably, the OP has some other definition of XBYTE...?