Because when compiling. The following information appears... MAIN.C(1351): error C249: 'DATA': SEGMENT TOO LARGE Change the small:variables in DATA into the Large:variables in XDATA. While compiling again. The following information will appear.... Could you tell me what kind of situation it is. How to solve?? Help to answer it. THX! *** ERROR L102: EXTERNAL ATTRIBUTE MISMATCH SYMBOL: DDS_DATA_TEMP MODULE: tranCode.obj (TRANCODE) *** ERROR L102: EXTERNAL ATTRIBUTE MISMATCH SYMBOL: DDS_DATA MODULE: DDS_value.obj (DDS_value) *** ERROR L102: EXTERNAL ATTRIBUTE MISMATCH SYMBOL: LATCH_COUNTERvalue MODULE: Counter.obj (COUNTER) *** WARNING L16: UNCALLED SEGMENT, IGNORED FOR OVERLAY PROCESS SEGMENT: ?PR?ONUSBSUSPEND?MAIN *** WARNING L16: UNCALLED SEGMENT, IGNORED FOR OVERLAY PROCESS SEGMENT: ?PR?MAIN1?MAIN *** WARNING L16: UNCALLED SEGMENT, IGNORED FOR OVERLAY PROCESS SEGMENT: ?PR?_TRANSMITDATAEPX?UPSD_USB *** WARNING L1: UNRESOLVED EXTERNAL SYMBOL SYMBOL: TIMEINT2 MODULE: initial.obj (INITIAL) *** WARNING L1: UNRESOLVED EXTERNAL SYMBOL SYMBOL: SAVEANDRECALL MODULE: initial.obj (INITIAL) *** WARNING L2: REFERENCE MADE TO UNRESOLVED EXTERNAL BL51 BANKED LINKER/LOCATER V5.12 09/07/2005 11:41:29 PAGE 161 SYMBOL: TIMEINT2 MODULE: initial.obj (INITIAL) ADDRESS: 848AH . . . . . *** ERROR L118: REFERENCE MADE TO ERRONEOUS EXTERNAL SYMBOL: LATCH_COUNTERvalue MODULE: Counter.obj (COUNTER) ADDRESS: B612H *** WARNING L1: UNRESOLVED EXTERNAL SYMBOL SYMBOL: CUSCL_value MODULE: upsd_usb.obj (UPSD_USB) *** WARNING L2: REFERENCE MADE TO UNRESOLVED EXTERNAL SYMBOL: CUSCL_value MODULE: upsd_usb.obj (UPSD_USB) ADDRESS: B8E3H Program Size: data=174.0 xdata=613 code=47389 LINK/LOCATE RUN COMPLETE. 11 WARNING(S), 131 ERROR(S)
Jia, Drew explained the cause of your problem: "Something has been declared with an explicit memory type that doesn't match its real memory space. Given your description, this is probably one of the items you moved from data to xdata. Some other piece of code still refers to it in the data space." So you need to ensure that all your uses of the memory-type specifiers (data, xdata, etc) are consistent. Another possible cause could be that you didn't rebuild everything when you changed the memory model. You need to rebuild everything!