ARM Technical Support Knowledge Articles
C166 C Compiler Knowledge Articles
Knowledge Articles in this section
#IFDEF CAUSING STRING TEST PROBLEMS
'REORDER' MAY GENERATE WRONG CODE IN VERSION 5.00
?C_INITSEC AND ?C_CLRMEMSEC FUNCTIONS
ACCESS PROBLEM WITH XC16X ON-CHIP FLASH
ACCESS RTC IN ST10-F269
ACCESSING THE FULL ADDRESS RANGE
ADD WIGGLER SUPPORT TO C166 VERSION 6
AMAKE BUILDS FOREVER
ASMEXPAND DIRECTIVE
BOOTLOADER EXAMPLES
BYTEALIGN DIRECTIVE
BYTES IN RAM APPEAR TWICE
C153 WARNING APPEARS USING C166 V4.24
C166 UTAH SUPPORT
CAN CONTROLLER FAILS WITH C167CR CPU FA/GA STEP
CANNOT READ *.SBR FILE WHEN USING SOURCE BROWSER
CANREGS.H
CASTING A VARIABLE ON THE STACK TO A CODE POINTER
CHANGE CAN INTERFACE ON XC16X DEVICES
CHANGING THE LOCATION OF THE RESET VECTOR
CHANGING THE SYSTEM STACK SIZE AND LOCATION
COMMONRET DIRECTIVE
COMPILER RUNS SLOWLY UNDER NT
CONSTANTS IN SPECIFIC MEMORY AREAS
CONVERTING C167 PROGRAMS TO THE C161
COPYING C INTERRUPT ROUTINES TO IDATA IN V3.X
CPU.21 ERRATA PROBLEMS AND FIXBFLD DIRECTIVE
CPU.22 ERRATA PROBLEM: Z FLAG AFTER PUSH AND PCALL
CUSTOMIZING THE STARTUP CODE
DEBUG WITH ULINK AND OFF-CHIP MEMORY
DECLARING BDATA AND SBIT VARIABLES
DETERMINING PROGRAM SIZE AT RUN-TIME
DIFFERENCES BETWEEN V4.10 AND V4.10A
DISABLE WARNINGS ON EC166 EC++ COMPILER
DISABLING INTERRUPTS IN A FUNCTION
DO PERIPHERALS STOP WITH ULINK DEBUGGING
DO THE C166 TOOLS SUPPORT THE SIEMENS C164?
DOUBLE PRECISION FLOATS TRUNCATED TO SINGLE PRECISION
DSP LIBRARY FOR XC16X MAC UNIT
DYNAMICUSRSTK DIRECTIVE
EC++ EXCEPTION CODE
ENABLING XBUS PERIPHERALS
ENUM TYPE CHECKING
ERROR 155 (INVALID BASE ADDRESS)
ERROR 167 (DECLARATION/ACTIVATION ERROR) FOR _MMOV_
ERROR 185 (ATOMIC #5 OUT OF RANGE)
ERROR C1 (MISPLACED PRIMARY CONTROL LINE)
ERROR C102 (DIFFERENT CONST/VOLATILE...) USING SBIT
ERROR C11 (INTERNAL ERROR)
EXPANSION BUFFER OVERFLOW ERROR
EXTINS DIRECTIVE
EXTS PROBLEMS USING THE _ATOMIC_ FUNCTION
FIXBFLD DIRECTIVE
FIXPEC DIRECTIVE
FLASH DOWNLOAD WITH ULINK FAILS WITH VERIFY ERROR
FLASH PROGRAMMING UTILITIES
FLOATING-POINT SUPPORT
FUNCTIONAL PROBLEM CPU.12
GENERATE ENWDT INSTRUCTION
GENERATING A CALL TO AN ABSOLUTE MEMORY LOCATION
GENERATING INSTRUCTIONS USING CERTAIN ADDRESSING MODES
GENERATING PUSH AND JMP INSTEAD OF CALL INSTRUCTIONS
GENERATING THE DIVL INSTRUCTION
HALT BUTTON DOES NOT STOP SIMULATOR EXECUTION
HANDLING UNUSED INTERRUPTS
HEX FILE NOT CREATED
HOW DO I PROGRAM THE ON-CHIP FLASH
HOW DO I USE INLINE ASSEMBLY
HOW TO GET 16-BIT ADDRESSES INTO THE PEC REGISTERS?
HOW TO LOAD PEC REGISTERS OF XC16X DEVICES
I²C SIMULATION WITH C16X DEVICES
IDENTIFY INSTRUCTION CAUSING CLASS B HARDWARE TRAP
IN-LINE ASSEMBLER: INVALID EXPRESSION TOKEN
INCORRECT ADDRESS WHEN INITIALIZING A POINTER
INCREMENTING A CAST POINTER PRODUCES AN INTERNAL ERROR
INCREMENTING HUGE POINTER ONLY CHANGES LOWER 16-BITS
INDIRECTLY ACCESSING SFRS
INFINEON GENERAL DSP LIBRARIES
INFINEON XC16X CAN CONTROLLER FAILS
INFORMATION ABOUT MOTOR CONTROL
INLINE EXPANSION OF LIBRARY FUNCTIONS
INTERRUPT BEHAVIOUR ON INFINEON XC16X DEVICES
INTERRUPT PIPELINE QUESTIONS
INTERRUPT SERVICE ROUTINES
INTERRUPT VECTOR REDIRECTION
INTERRUPTS DO NOT WORK
IS THE INFINEON C161CS DEVICE SUPPORTED?
JTAG OCDS DEBUGGER SUPPORT
JUMPING TO A SECOND PROGRAM FROM A BOOT LOADER
LOADING PROGRAM INTO TARGET WITHOUT USING THE MONITOR
LOCATE CONSTANTS TO ABSOLUTE ADDRESSES
LOCATE VARIABLES TO ABSOLUTE ADDRESSES
LOCATE VARIABLES TO XC16X ON-CHIP ERAM
LOCATING ARRAYS OF STRINGS IN ROM
LOCATING MORE VARIABLES IN THE NEAR MEMORY AREA
LOCATING PROGRAM SECTIONS TO SPECIAL MEMORY AREAS
LOCATING VARIABLES TO FIXED ADDRESSES
MAC UNIT SUPPORT
MALLOC AND MEMORY ALLOCATION ROUTINES
MIXING NCODE AND FCODE
MODIFYING A STRUCT USING POINTERS
MONITOR CONFIGURATION DOES NOT WORK IN V4.22
MOVING CODE FROM FLASH TO RAM FOR EXECUTION
MULTIPLE VECTORS FOR A SINGLE INTERRUPT FUNCTION
MULTIPLICATION BUG
NOFRAME DIRECTIVE
OBTAINING THE SEGMENT OFFSET OF AN SFR
OMF166 FILE FORMAT
OPTIMIZE(7) DIRECTIVE
OSEK COMPATIBLE RTOS
PACK DIRECTIVE
PACKING BYTES IN UNIONS AND STRUCTURES
PAG AND POF FROM POINTERS
PAGE OVERRIDE OPERATOR GENERATING INCORRECT ADDRESS
PERFORMING A SOFTWARE RESET IN C
PLACING VARIABLES IN NON-VOLATILE RAM
POINTER TRUNCATION FOR IDENTICALLY DECLARED POINTERS
PREPRINTONLY DIRECTIVE
PROBLEMS ACCESSING STRUCTURES USING POINTERS
PROBLEMS SOLVED IN C166 V4.11
PROBLEMS WITH C++ SOURCE LEVEL DEBUGGING
PROBLEMS WITH THE USER STACK
PROGRAM-WIDE SOURCE/ASSEMBLY LISTING
PURPOSE OF 'VOLATILE' AND 'CONST' KEYWORDS
PURPOSE OF START167.A66
PUTTING INITIALIZED VARIABLES IN XDATA
RE-USING INLINE FUNCTIONS
RELOCATE SYSTEM STACK FROM IDATA TO SDATA
RENAMING CLASSES IN A C MODULE
RENAMING MULTIPLE DATA CLASSES IN C
RESTRICTED DSCOPE
RET AND RETS GENERATED IN THE SAME FUNCTION
RETURN(0) IN A VOID FUNCTION
RTC INTERRUPT REQUEST FLAG REMAINS SET IN SIMULATOR
RUNNING CODE FROM IDATA
SAVESYS DIRECTIVE
SAVEUSR DIRECTIVE
SAVING RETURN ADDRESSES ON USER STACK
SERIAL EXAMPLE IN GETTING STARTED BOOK FAILS
SETTING CONFIGURATION BYTES FOR THE C164
SHARE INTERRUPT VECTOR WITH BOOT LOADER
SINGLE STEP WITH ULINK JUMPS TO ADDRESS 20H
SMALL PROGRAM DOES NOT FIT INTO MEMORY
SPRINTF AND FAR STRINGS
SPRINTF CONVERTS FLOAT VARIABLES TO ZERO?
ST10-F269 BONDOUT DEVICE MAC.1 CHIP BUG WORKAROUND
START167 AND BOOT167
START167.A66 FOR EVALUATION BOARDS
STRTOD LIBRARY ROUTINE
STRTOL LIBRARY ROUTINE
STRTOUL LIBRARY ROUTINE
SUPPORT FOR THE SGS-THOMSON ST10R262 MAC
SUPPORT FOR THE SIEMENS C161CI
TESTING CAN PROGRAMS
THIS PROGRAM CANNOT BE RUN IN DOS MODE
TRANSFERRING CONTROL FROM BOOT LOADER TO APPLICATION
TRANSLATION OF START_V2.A66 FAILS
ULINK DOES NOT ERASE ALL SECTORS
UNUSUAL CHARACTERS IN FILENAMES
UPDATES FOR PK161
USERSTACKDPP3 DIRECTIVE
USING 2ND SERIAL PORT (ASC1) ON INFINEON XC16X DEVICES
USING 2ND SERIAL PORT (ASC1) ON THE INFINEON C161CS
USING BOTH ASC0 AND ASC1 ON THE INFINEON C161CS
USING DONGLES WITH WINDOWS NT/2000
USING EMBEDDED C++
USING HVAR OR XVAR GENERATES BAD EXTS SEQUENCES
USING MACROS WITH IN-LINE ASSEMBLY
USING SBIT IN EMBEDDED C++
USING SOF FOR PEC IN EMBEDDED C++
USING THE CODEWRIGHT EDITOR
USING THE MVAR MACRO FOR FIXED VARIABLE LOCATION
USING THE ON-CHIP RAM OF THE INFINEON C167CR
USING THE STACK FOR ALL LOCAL VARIABLES
USING THE _ATOMIC_ FUNCTION
USING XC16X FAST INTERRUPTS
USING XC16X FAST REGISTER BANK SWITCHING
USING XHUGE POINTERS WITH LIBRARY ROUTINES LIKE STRCPY
V3.11 BUG CORRECTIONS
V3.11 NDATA/NCONST SIZE EXCEEDS 16KB MESSAGE
V4.06 UPDATE SAYS V4.05
VARIABLE ORDERING
VERSION 4 RELEASE NOTES
VERSION 4.01 UPDATE PROBLEMS
VIRTUAL FUNCTION POINTERS IN DIFFERENT MEMORY SPACES
WARNING 140 (FUNCTION UNDEFINED, ASSUMING...)
WARNING 189 (STORAGE CLASS CHANGED TO STATIC)
WARNING C192 (VALUE TRUNCATED)
WHAT ARE THE NEW SETTING OPTIONS FOR THE SIMULATOR
WHAT IS R0 USED FOR?
WHERE IS THE USER STACK LOCATED?
WIDE CHARACTER SUPPORT
WORD VARIABLES ON ODD-BYTE BOUNDARIES
WRITING RELOCATABLE C FUNCTIONS FOR COPYING TO RAM
WRONG CODE WITH BIT-FIELD WIDTH EQUAL TO BASE TYPE
_INIT_BOXH LIBRARY ROUTINE
_POP_ INTRINSIC LIBRARY ROUTINE
_PRIORD_ INTRINSIC LIBRARY ROUTINE
_PRIOR_ INTRINSIC LIBRARY ROUTINE
_PUSH_ INTRINSIC LIBRARY ROUTINE
_TESTBIT_ FUNCTION GIVES A WARNING
_TESTCLEAR_ INTRINSIC FUNCTION
__INLINE GENERATES CALL OR WARNING #197
Link to this index