Keil Logo

C51 C Compiler

C51: #PRAGMA MESSAGE AND #PRAGMA ERROR
C51: ?C? LIBRARY ROUTINES
C51: ?C? LOAD AND STORE LIBRARY ROUTINES
C51: ?C? LONG/FLOAT MATH LIBRARY ROUTINES
C51: ?C?COPYXX UNRESOLVED EXTERNAL FROM EVAL VERSION
C51: '\N' DOES NOT WORK IN PRINTF() STATEMENTS
C51: __DATE__ AND __TIME__ MACROS
C51: _CHKFLOAT_ RETURNS STRANGE VALUES
C51: 16-BIT MULTIPLY WITH 32-BIT RESULT
C51: 16MB XDATA RAM WITH ANALOG DEVICES MICROCONVERTER
C51: 256 GLOBAL SYMBOLS LIMIT
C51: 4K-LIMITED COMPILER FOR THE PHILIPS LPC  FAMILY
C51: 64-BIT FLOATING-POINT OPERATIONS
C51: 8051 PORT FOR JEAN LABROSSE'S MICRO C/OS-II  RTOS
C51: 8051 SERIAL I/O IN C
C51: 80C517A MA-STEP SHIFT BUG
C51: 80C751.LIB IS MISSING FROM EVALUATION CD-ROM
C51: 80C751.LIB MISSING FROM RELEASE TOOLS
C51: 8K LIMIT ON MEMORY ALLOCATION
C51: A/D EXAMPLES FOR THE ADUC812
C51: ABSOLUTE ACCESS FOR FAR VARIABLES
C51: ABSOLUTE ADDRESSES
C51: ABSOLUTE FAR VARIABLES DO NOT CALL IBANKING FUNCTIONS
C51: ABSOLUTE FUNCTION ADDRESS
C51: ABSOLUTE MEMORY ACCESSES TO DALLAS 390'S FAR MEMORY
C51: ABSOLUTE REGISTERS AND USING DIRECTIVE
C51: ACCESS LOW/HIGH BYTES OF A INTEGER VARIABLE
C51: ACCESS TO PAGED SFR REGISTERS
C51: ACCESSING A POINTER IN ASSEMBLER
C51: ACCESSING A STRUCTURE VIA A POINTER
C51: ACCESSING ASSEMBLY VARIABLES FROM C
C51: ACCESSING BITS ON P5 OF PHILIPS 552
C51: ACCESSING EXTERNAL SFR'S IN A C PROGRAM
C51: ACCESSING I/O PORTS IN C
C51: ACCESSING INTERNAL EEPROM ON ATMEL 89S9252
C51: ACCESSING REGISTER BANKS IN C
C51: ACCESSING SPECIAL FUNCTION REGISTERS IN C
C51: ACCESSING SPECIFIC MEMORY BYTES
C51: ACCESSING THE DS390 ON-CHIP 4K SRAM AND STACK
C51: ADDING C FUNCTIONS TO EXISTING ASSEMBLER CODE
C51: ADDING INTRINSIC FUNCTIONS
C51: ADDING TO THE STARTUP CODE
C51: ADDRESS SPACE OVERFLOW WITH FAR CONST
C51: ADUC812 COMPATIBILITY
C51: ADUC812 EXAMPLE PROGRAM
C51: AFTER REGLIVE SUCCESS MESSAGE
C51: ALTERNATE STARTUP CODE
C51: ANALOG DEVICES ADUC812 EXTERNAL CODE PROBLEMS
C51: ARE 32-BIT SFRS SUPPORTED?
C51: ARE CHECKSUM LIBRARY ROUTINES INCLUDED?
C51: ARE CODE AND DATA OBJECTS RELOCATABLE?
C51: ARE LINK AND MAKE FUNCTIONS AVAILABLE?
C51: ARE RAM BIT-ADDRESSABLE REGISTERS SUPPORTED?
C51: ARE UNIONS SUPPORTED IN C51
C51: AREGS/NOAREGS DIRECTIVE
C51: ARITHMETIC PROBLEMS WITH CHAR TYPES
C51: ARRAY INDEX USES BYTE INSTEAD OF WORD
C51: ASM/ENDASM DIRECTIVE
C51: ASSIGNING AN I/O ADDRESS TO A VARIABLE
C51: ATMEL EEPROM PROGRAMMING SUPPORT
C51: ATMEL T89C51CC01 INTERNAL EEPROM SUPPORT
C51: ATOF LIBRARY ROUTINE USES BIT VARIABLES
C51: AVOIDING ACALL PROBLEMS IN DS80C390 REV BX DEVICES
C51: AVOIDING MOVC FETCHES FROM CODE SPACE
C51: AVOIDING STARTUP INITIALIZATION OF STATIC VARIABLES
C51: BAD JUMP IN .SRC FILE
C51: BANK SWITCHING COMMON AREA
C51: BANK SWITCHING USING ASSEMBLY
C51: BANK TABLE ENTRIES FOR INDIRECTLY CALLED FUNCTIONS
C51: BATTERY-BACKED NON-VOLATILE MEMORY
C51: BIT ADDRESSABLE ARRAYS
C51: BIT FIELD UNIONS DON'T WORK AS EXPECTED
C51: BIT FIELD UNIONS GIVE STRANGE RESULTS
C51: BIT FORMAT SPECIFIERS FOR PRINTF
C51: BITS USED FOR BANK SELECTION
C51: BOOTLOADER AND ISP FOR THE CYGNAL C8051FXX DEVICES
C51: BROWSER INFORMATION IN OMF51 FILE MAKES EMULATOR FAIL
C51: CALCULATING BAUD RATES FOR THE 8051 SERIAL PORT
C51: CALCULATING CODE SPACE FOR BANK SWITCHING
C51: CALCULATING STACK SIZE
C51: CALCULATING TIMER SETTINGS FOR SERIAL I/O
C51: CALL C FUNCTIONS WITHIN STARTUP CODE
C51: CALLING ASSEMBLY ROUTINES FROM C
C51: CALLING FUNCTIONS FROM INTERRUPTS
C51: CALLING PRINTF IN AN INTERRUPT
C51: CAN STRUCT MEMBERS RESIDE IN DIFFERENT MEMORY SPACES?
C51: CANNOT FIND DEMO USB DRIVERS
C51: CHANGING L51_BANK TO OUTPUT INVERTED SIGNALS
C51: CHANGING OPTIMIZER LEVEL FOR A SINGLE FUNCTION
C51: CHANGING THE ORDER OF OBJ FILES MAKES PROGRAM CRASH
C51: CHECKING FOR STACK UNDERFLOW AT RUNTIME
C51: CHECKING TOOL FOR XC800 CHIP BUG
C51: CLEARING THE SCANF INPUT STREAM
C51: CODE BANKING LATCH ON EXTRA ADDRESS LINES
C51: CODE BANKING WITH ON-CHIP AND OFF-CHIP MEMORY
C51: CODE BANKING WITH SILABS C8051F12X/F13X DEVICES
C51: CODE DIRECTIVE
C51: CODE GENERATOR SUPPORT FOR MULTIPLE DATA POINTERS
C51: CODE STRINGS IN STRUCTS ARE NOT MERGED
C51: COMMAND LINE GLOBAL REGISTER OPTIMIZATION
C51: COMMENTS IN ASSEMBLY BLOCKS
C51: COMPACT DIRECTIVE
C51: COMPILER DIRECTIVE FOR LINKER-LEVEL OPTIMIZATION
C51: COMPILER DIRECTIVE FOR OMF2 FILE FORMAT
C51: COMPILER DIRECTIVE FOR OMF-51 EXTENDED FORMAT
C51: COMPILER DOES NOT INITIALIZE R1/R2/R3 FOR ?C?CSTOPTR
C51: COMPILER DOESN'T WORK WITH BORLAND MAKE
C51: COMPILER GENERATES ZERO LENGTH JUMP
C51: COMPILER IS UNABLE TO FIND INCLUDE FILES
C51: COMPILER OPTIMIZES OUT NECESSARY XDATA READS
C51: COMPILER USES DPL AND DPH FOR VARIABLES
C51: COND/NOCOND DIRECTIVE
C51: CONFIGURABLE SFR BIT ACCESSES
C51: CONFIGURING FOR THE DALLAS 390 CONTIGUOUS MODE
C51: CONFIGURING PPAGE AND PPAGEENABLE
C51: CONFIGURING XDATA BANKING
C51: CONST VARIABLE BANKING WITH SILABS C8051F12X DEVICES
C51: CONST VARIABLE STORAGE LOCATION
C51: CONSTANT ARRAYS LARGER THAN 64KB
C51: CONSTANT FLOATING POINT NUMBER '0E'
C51: CONSTANT VALUES AT FIXED ADDRESSES IN CODE SPACE
C51: CONTENTS OF THE ?C_INITSEG SEGMENT
C51: CONTROL DIRECTIVES
C51: CONVERTING BIG ENDIAN TO LITTLE ENDIAN
C51: CONVERTING IAR BANKED CODE TO KEIL
C51: CONVERTING PORT.BIT CODE FROM IAR
C51: CORRECTED SETJMP.H FOR CX51
C51: CORRECTLY DECLARING VARIABLES WITH MEMORY SPACES
C51: CORRUPTION OF DPTR WHEN USING MODP2
C51: CREATE A PATCH VECTOR TABLE
C51: CREATING A FIXED STACK SEGMENT
C51: CREATING CODE BANKING PROGRAMS
C51: CREATING CPU HEADER FILES
C51: CREATING HEX FILES FOR THE CYPRESS USB DEVICES
C51: CREATING OUTPUT FILES FOR OLDER PHILIPS PDS51 EMULATORS
C51: DALLAS 390 HANGS ON MATH OPERATIONS
C51: DALLAS 390 MATH ACCELERATOR OPERATIONS
C51: DALLAS 390/400 INTERRUPTS IN ALTERNATE 64K CODE PAGE
C51: DALLAS 390/400/520 STRUCTURE POINTER INCREMENT PROBLEM
C51: DALLAS 390/400/5240 REENTRANT FUNCTION
C51: DALLAS 80C420 OR 89C420 HEADER FILE?
C51: DALLAS DS5240 MODULO-ARITHMETIC ACCELERATOR
C51: DALLAS TINI BOARD SOFTWARE PROBLEMS
C51: DASHES IN FILENAMES
C51: DATA OVERLAYING PROBLEM WITH STRUCT PARAMETERS
C51: DATA OVERLAYING WITH RTOS APPLICATIONS
C51: DATA TYPE QUESTION
C51: DATA_GROUP AND STACK PROBLEMS
C51: DEBUG DIRECTIVE
C51: DEBUGGER WON'T STOP ON BREAKPOINTS, ON ST UPSD33XX
C51: DECLARING 2 VARIABLES AT THE SAME ADDRESS
C51: DECLARING BDATA AND SBIT VARIABLES
C51: DECLARING EXTERNAL SBITS
C51: DEFAULT PAGELENGTH IS 68, NOT 60
C51: DEFAULT STARTUP AND INITIALIZATION CODE
C51: DEFINE DIRECTIVE
C51: DEFINING THE MINIMUM STACK SIZE
C51: DETERMINING THE LOCATION OF ASSEMBLER INSTRUCTIONS
C51: DIFFERENCES BETWEEN C51 V7.50 AND V7.50A
C51: DIFFERENCES BETWEEN V6.10 AND V6.10A
C51: DIRECTING PRINTF OUTPUT TO SECOND SERIAL PORT
C51: DISABLE DIRECTIVE
C51: DISABLING INTERRUPTS ON SILICON LABS F12X/F13X DEVICES
C51: DIVISION DOESN'T WORK
C51: DIVISION PROBLEMS WITH THE DALLAS 390 / DALLAS 400
C51: DO THE KEIL TOOLS WORK WITH ALL 8051 CHIPS?
C51: DO XDATA AND CODE MEMORY OVERLAP?
C51: Does CA51/PK51 support Sinowealth 8-Bit Flash MCUs?
C51: DOES ENUM TYPE CHECKING WORK?
C51: DOES THE RUN-TIME LIBRARY DISABLE INTERRUPTS?
C51: DOUBLE PRECISION MATH ROUTINES
C51: DS5000 REAL-TIME CLOCK EXAMPLE CODE
C51: DS80C320.H INCLUDE FILE IS INCORRECT
C51: DS80C390 ARITHMETIC ACCELERATOR
C51: DUAL DATA POINTER PERFORMANCE INCREASE
C51: DUAL DATA POINTERS AND CYPRESS EZ-USB
C51: DUAL DATA POINTERS AND PHILIPS
C51: DUAL DATA POINTERS FOR DALLAS PARTS
C51: EFFICIENT CODE FOR BYTE ACCESS CONVERSION TO LONG
C51: ELIMINATING 16-BIT POINTER INCREMENTS
C51: EMPTY RELOCATABLE SEGMENT
C51: ENUM EXAMPLES
C51: ERROR 146 (INVALID BASE ADDRESS)
C51: ERROR 166 (ARRAY OF FUNCTIONS)
C51: ERROR 200 (LEFT SIDE OF '.' REQUIRES STRUCT/UNION)
C51: ERROR 230 (UNKNOWN STRUCT/UNION/ENUM TAG)
C51: ERROR 258 (MSPACE ILLEGAL IN STRUCT/UNION)
C51: ERROR 274 (ABSOLUTE SPECIFIER ILLEGAL)
C51: ERROR C202 USING XBYTE ABSOLUTE ADDRESSING
C51: ERROR C249 (SPECIAL INITIALIZATION EXCEEDS 8K)
C51: ERROR C267 ('FUNCTION': REQUIRES ANSI-STYLE PROTOTYPE)
C51: ERRORS USING SBITS AND SFRS
C51: EVAL AND THE FLOATING-POINT LIBRARY
C51: EVALUATION COMPILER FOR CYPRESS EZ-USB FAMILY
C51: EXAMPLE PROGRAMS FOR THE DALLAS 390 CONTIGUOUS MODE
C51: EXAMPLE PROGRAMS FOR THE PHILIPS MX DEVICES
C51: EXECUTING SPECIAL INSTRUCTIONS IMMEDIATELY AFTER RESET
C51: EXPECT LCALL BUT SEE LJMP
C51: EXPORTING SYMBOLS FOR EMULATORS
C51: EXTERN DECLARATIONS USING _AT_
C51: EXTERN VARS AND INLINE ASSEMBLY
C51: EXTERNAL MEMORY ACCESSED FOR DATA MEMORY POINTER
C51: EXTERNAL SFR ACCESS FOR 8051 PROGRAMS
C51: EZ-USB STARTUP CODE
C51: FAR DATA POINTER BOUNDARIES
C51: FAR VAR _AT_ COMPARED TO CAST VALUE
C51: FASTER INTEGER DIVISION
C51: FATAL ERROR (CANNOT OPTIMIZE FUNCTION)
C51: FATAL ERROR (MORE THAN 256 SEGMENTS)
C51: FATAL ERROR 210 (RTX51.LIB NOT FOUND)
C51: FATAL ERROR WHEN USING #PRAGMA SRC
C51: FLASH MEMORY ON THE ADUC812
C51: FLOATFUZZY DIRECTIVE
C51: FLOATING POINT LIBRARY ROUTINES REGISTER USAGE
C51: FLOATING-POINT REENTRANCY IN ISR?
C51: FORMAT OF ?C_INITSEG SEGMENT
C51: FORMAT OF __DATE__ MACRO HAS CHANGED
C51: FORMFEEDS IN LISTING FILES
C51: FULL VERSION OF TOOLS SHOW CODE SIZE LIMIT
C51: FUNCTION OF ?C?ICALL AND ?C?ICALL2
C51: FUNCTION POINTERS IN CONTIGUOUS MODE
C51: FUNCTION PROTOTYPES FOR REENTRANT FUNCTIONS
C51: FUNCTIONS THAT ARE REENTRANT
C51: GAPS IN DATA SPACE
C51: GENERAL PURPOSE SFR INTERFACE
C51: GENERATING HEX FILES FOR CODE BANKING PROGRAMS
C51: GET ERROR A45: USING IN-LINE ASSEMBLER
C51: GETCHAR ECHOS CHARACTERS
C51: GETTING EVAL VERSION USING SILABS IDE
C51: GETTING INLINE ASSEMBLY TO WORK
C51: GETTING INTERRUPTS WORKING
C51: GETTING MANUALS
C51: GETTING THE CODE BANK OF A FUNCTION
C51: GETTING THE CURRENT BANK NUMBER
C51: GLOBAL OR STATIC VARIABLES NOT BEING INITIALIZED
C51: GLOBAL VARIABLE PROBLEM WITH DALLAS 390 CONTIGUOUS MODE
C51: HALT BUTTON DOES NOT STOP SIMULATOR EXECUTION
C51: HANDLING UNUSED INTERRUPTS
C51: HEADER FILE FOR THE PHILIPS 87C554
C51: HOW ARE FUNCTION PARAMETERS HANDLED?
C51: HOW BIG CAN A BINARY NUMBER BE?
C51: HOW DO I READ A LATCH?
C51: HOW TO DIRECTLY ADDRESS MULTIPLE CONSECUTIVE SFRS
C51: HOW TO GIVE DESCRIPTIVE NAMES TO PORT PINS
C51: HOW TO USE 256 BYTES DATA SPACE
C51: HYPHENS ARE NOT ALLOWED IN INCLUDE FILE FILENAMES
C51: IDATALOOP NEVER ENDS
C51: IMPLEMENTING XDATA BANKING
C51: IN-APPLICATION PROGRAMMING (IAP) ON PHILIPS LPC9XX
C51: INCLUDE FILE FOR ATMEL 89S8252
C51: INCLUDE FILES IN THE DEPENDENCY CHECK
C51: INCORRECT ACCESSING OF 2D ARRAY IN STRUCTURE
C51: INCORRECT OPERATION OF PRINTF AND SIZEOF
C51: INCORRECT VALUE STORED IN CHAR
C51: INDENTIFY UNCALLED LIBRARY ROUTINES
C51: INDIRECT FUNCTION CALLS WITH CODE BANKING
C51: INDIRECTLY ACCESSING 8051 SFRS
C51: INDIRECTLY CALLED REENTRANT FUNCTIONS
C51: INFINEON C517A A/D EXAMPLE PROGRAM
C51: INFINEON WATCHDOG TIMER RESETS SIMULATOR
C51: INIT_MEMPOOL REQUIRES MORE MEMORY THAN IS ACTUALLY USED
C51: INITIALIZING AN ABSOLUTELY LOCATED VARIABLE
C51: INITIALIZING FAR DATA
C51: INITIALIZING THE 320/520 2ND SERIAL PORT
C51: INITIALIZING XDATA OVER FF00H
C51: IN-LINE ASM GIVES COMPILER WARNINGS
C51: INLINE ASSEMBLY
C51: INLINE ASSEMBLY GENERATES TARGET OUT OF RANGE
C51: IN-SYSTEM FLASH PROGRAMMING (PART 1)
C51: IN-SYSTEM FLASH PROGRAMMING (PART 2)
C51: IN-SYSTEM FLASH PROGRAMMING WITH ROM SIZE > 64KB
C51: INTEGER PROMOTION
C51: INTERFACE FOR IAP FUNCTIONS ON PHILIPS DEVICES
C51: INTERRUPT CODE NOT IN CORRECT SPACE
C51: INTERRUPT SERVICE ROUTINES LOCATED AT WRONG ADDRESSES
C51: INTERRUPT VECTOR NUMBERS
C51: INTERRUPT-DRIVEN SERIAL I/O
C51: INTERRUPTS AND LOCAL VARIABLES
C51: INTERRUPTS NOT GENERATED
C51: INTERVAL DIRECTIVE
C51: INTPROMOTE/NOINTPROMOTE DIRECTIVE
C51: INTVECTOR/NOINTVECTOR DIRECTIVE
C51: INVALID SERIAL NUMBER/UNABLE TO INSTALL FROM CD
C51: IS RETURN REQUIRED FOR VOID FUNCTIONS?
C51: IS STARTUP.A51 REQUIRED?
C51: IS THE PHILIPS XA SUPPORTED?
C51: IS THERE A LITTLE ENDIAN/BIG ENDIAN COMPILER OPTION?
C51: IS THERE A TRANSLATOR FOR PL/M-51 TO C?
C51: IS V5.1 REALLY V5.1?
C51: KBHIT LIBRARY ROUTINE IS MISSING
C51: L51_BANK.A51 ASSEMBLES WITH ERRORS
C51: LARGE DIRECTIVE
C51: LATENCY OF INTERRUPT SERVICE ROUTINES
C51: Library is not created
C51: LIBRARY PROBLEMS WITH DALLAS CONTIGUOUS MODE
C51: LIMITS ON FUNCTIONS WITH VARIABLE-LENGTH ARGUMENT LISTS
C51: LINK INTERBANK CALL TABLE ?BANK?SELECT
C51: LINKER WARNINGS AFTER UPGRADING SOFTWARE
C51: LINKING PROGRAMS FOR DS80C400 USING START400.A51 FAILS
C51: LINKING V6 LIBRARIES WITH V5 PROGRAMS
C51: LISTINCLUDE DIRECTIVE
C51: LITTLE-ENDIAN CAN REGISTERS, BIG-ENDIAN COMPILER
C51: LJMP & LCALL INSTEAD OF AJMP & ACALL
C51: LJMP INSTRUCTIONS IN INLINE ASSEMBLER CORRUPTED
C51: LOCAL VARIABLES PRESERVE VALUES BETWEEN FUNCTION CALLS
C51: LOCATE STRUCT TO SFR SPACE
C51: LOCATING A TABLE OF POINTERS AT A SPECIFIC ADDRESS
C51: LOCATING A VARIABLE IN A REGISTER
C51: LOCATING DATA STRUCTURES IN XDATA IN THE ORDER DEFINED
C51: LOCATING FUNCTION TABLES IN CODE MEMORY
C51: LOCATING INITIALIZED VARIABLES AT ABSOLUTE ADDRESSES
C51: LOCATING INTERRUPTS IN EVAL SOFTWARE
C51: LOCATING OBJECT FILES AT SPECIFIC STARTING ADDRESSES
C51: LOCATING THE STACK AFTER IDATA VARIABLES
C51: LOCATING VARIABLES IN MULTIPLE XDATA AREAS
C51: LOCATING VARIABLES TO  FAR CONST SPACE
C51: LOG AND POW FUNCTION PROBLEMS
C51: LONG FILE NAMES
C51: LONG POINTER ARITHMETIC
C51: LROL AND LROR FUNCTIONS ARE NOT INTRINSIC
C51: MATH FUNCTIONS
C51: MATH OPERATIONS SUPPORTED
C51: MAXARGS DIRECTIVE
C51: MEMORY ALLOCATION
C51: MEMORY CLASSES FOR STRINGS AND STRING POINTERS
C51: MEMORY TYPES FOR THE DALLAS 390 CONTIGUOUS MODE
C51: Missing Multiple DPTR support for some ATMEL Devices
C51: MISSING UART SFR DEFINITIONS FOR PHILIPS 8XC51MX
C51: MIXING C AND ASSEMBLY
C51: MIXING MEMORY MODELS
C51: MIXING MEMORY MODELS AND MEMORY AREAS
C51: MIXING REENTRANT FUNCTIONS AND NON-REENTRANT FUNCTIONS
C51: MIXING SRAM AND NVRAM
C51: MOD517/ NOMOD517 DIRECTIVE
C51: MODDP2/NOMODDP2 DIRECTIVE
C51: MODIFYING CONSTANT STRUCTURES
C51: MODIFYING THE STARTUP ROUTINES
C51: MULTIPLE LARGE OBJECTS IN HDATA
C51: MULTIPLE VARIABLES AT THE SAME ADDRESS
C51: NAMING CONVENTIONS FOR FUNCTION SYMBOLS
C51: NO SIMULATION OF A/D CONVERTER
C51: NOAMAKE DIRECTIVE
C51: NOEXTEND DIRECTIVE
C51: NOEXTEND DOES NOT WORK PROPERLY
C51: NON-REENTRANT PRINTF
C51: NOREGPARMS DOES NOT WORK ON REENTRANT FUNCTIONS
C51: NULL POINTER COMPARE FAILS WHEN MIXING MEMORY TYPES
C51: NULL POINTER COMPARE FAILS WITH MALLOC AND CALLOC
C51: OBJECT/NOOBJECT DIRECTIVE
C51: OBJECTEXTEND DIRECTIVE
C51: OBTAINING THE PARITY OF A CHARACTER
C51: OFFSETS WITH FAR MEMORY ACCESS
C51: ON-CHIP BANKED PDATA SUPPORT
C51: ON-CHIP MEMORY CONFIGURATION FOR STM UPSD DEVICES
C51: OPTIMIZED C WITH INLINE ASSEMBLER
C51: OPTIMIZER LEVELS AND VOLATILE VARIABLES
C51: OPTIMUM CODE FOR BIT TO BYTE CONVERSION
C51: ORDER DIRECTIVE
C51: ORDER OF BITFIELDS
C51: OUT OF STACK SPACE
C51: OVERLAYABLE SEGMENTS AND MEMORY MODELS
C51: PAGELENGTH DIRECTIVE
C51: PAGEWIDTH DIRECTIVE
C51: PASSING PARAMETERS TO INDIRECTLY CALLED FUNCTIONS
C51: PERFORMING A SOFTWARE RESET
C51: PHILIPS 87C51RC 512-BYTE INTERNAL RAM SUPPORT
C51: PHILIPS LPC SUPPORT
C51: PHILIPS P8XC557E8 2KB INTERNAL RAM SUPPORT
C51: PHYSICAL LOCATION OF REGISTERS
C51: PLACING FAR VARIABLES AT ABSOLUTE LOCATIONS
C51: POINTER ASSIGNMENT CRASHES IN THE CONTIGUOUS MODE
C51: POINTER STORAGE SIZE
C51: POP INTRINSIC GENERATES UNRESOLVED EXTERNAL
C51: PORTING CODE FROM PL/M-51
C51: PORTING FROM OLDER TO NEWER TOOLS
C51: PORTING IAR XMEM TO KEIL XDATA
C51: POST INCREMENT ON LONG FAR TYPES
C51: PREPRINT DIRECTIVE
C51: PREVENTING COMMON BLOCK OPTIMIZATION
C51: PRINT/NOPRINT DIRECTIVE
C51: PRINTF GIVES WRONG VALUES
C51: PRINTF LIBRARY ROUTINE PROBLEM WITH 0-LENGTH PRECISION
C51: PROBLEMS IN SCANF AND SSCANF
C51: PROBLEMS INITIALIZING BITFIELD WITH POINTER
C51: PROBLEMS SOLVED IN C51 V5.50
C51: PROBLEMS SOLVED IN C51 V6.01
C51: PROBLEMS SOLVED IN C51 V6.02
C51: PROBLEMS SOLVED IN C51 V6.02 - V6.14
C51: PROBLEMS SOLVED IN C51 V6.12
C51: PROBLEMS SOLVED IN C51 V6.20 - V6.23
C51: PROBLEMS SOLVED IN C51 V7.00 - V7.01
C51: PROBLEMS USING PRINTF
C51: PROBLEMS WHEN LOCATING FUNCTIONS IN CODE BANKS
C51: PROBLEMS WITH #PRAGMA ASM
C51: PROBLEMS WITH FUNCTION POINTERS OVERWRITING VARIABLES
C51: PROBLEMS WITH HYPHENS IN FILENAMES AND PROJECT NAMES
C51: PROBLEMS WITH LONG COMPARISONS TO 0 IN V6.21
C51: PROBLEMS WITH REGISTER OPTIMIZATION IN V6.22
C51: PROGRAM HANGS CASTING INT TO FLOAT ON DALLAS 400
C51: PROGRAM NEVER REACHES MAIN
C51: PROGRAMMING THE CYPRESS CY3671 FOR GPIF ACCESS
C51: PROGRAMS THAT USE ONE REGISTERBANK
C51: PROGRAM-WIDE SOURCE/ASSEMBLY LISTING FILE
C51: PURPOSE OF THE INIT.A51 FILE
C51: RAMSIZE FOR THE PHILIPS 87C528
C51: READING CODE SPACE
C51: READING FROM AN INPUT PORT
C51: READING PORT INPUT VERSUS PORT LATCH
C51: READ-MODIFY-WRITE REGISTERS
C51: REDIRECTING INTERRUPT VECTORS
C51: REDIRECTING SERIAL I/O TO OTHER UARTS
C51: redistribution of Keil source files
C51: REENTRANCY ISSUES WITH THE DALLAS 390 MATH ACCELERATOR
C51: REENTRANT FUNCTIONS AND THE REENTRANT STACK POINTER
C51: REENTRANT FUNCTIONS AND VARIABLES
C51: REENTRANT STACK NEEDED FOR REENTRANT LIBRARY FUNCTIONS?
C51: REGFILE DIRECTIVE
C51: REGISTER USAGE OVER  XBANKING.A51 FUNCTIONS
C51: REGISTER VARIABLES
C51: REGISTERBANK DIRECTIVE
C51: RELOCATING AUTOVECTOR INTERRUPTS ON THE CYPRESS EZ-USB
C51: RELOCATING INTERRUPT VECTOR TABLES
C51: RELOCATING PROGRAM CODE IN C
C51: REMOVING AND DISABLING WARNING 13 (RECURSIVE CALL)
C51: REMOVING LINKER WARNING L16 (UNCALLED SEGMENT)
C51: REPLACE AJMP/ACALL WITH LJMP/LCALL
C51: REPLACING MEM AND STR LIBRARY ROUTINES
C51: RESERVE MEMORY AT ABSOLUTE BANK ADDRESSES
C51: RESERVING CODE SPACE
C51: RESERVING MEMORY ACCESSED WITH XBYTE AND XWORD
C51: RESERVING SPACE IN CODE BANKS
C51: RESERVING SPACE IN CODE MEMORY
C51: RESET VECTOR DOES NOT JUMP TO C CODE
C51: RET_ISTK DIRECTIVE
C51: RET_PSTK DIRECTIVE
C51: RET_XSTK DIRECTIVE
C51: RE-USE LIBRARY FUNCTIONS FROM A BOOT APPLICATION
C51: ROM DIRECTIVE
C51: ROM(COMPACT)
C51: RTX51 AND TRISCEND BANKING WITH CUSTOM L51_BANK.A51
C51: RUNTIME DETERMINATION OF LAST XDATA ADDRESS USED
C51: SAVE/RESTORE DIRECTIVE
C51: SAVING EXTRA VARIABLES ON THE STACK
C51: SAVING REGISTERS IN INTERRUPTS
C51: SBIT MODIFICATIONS NOT CORRECTLY WRITTEN TO MEMORY
C51: SCANF %F FAILS WITH USER-DEFINED GETKEY FUNCTION
C51: SCANF() BEHAVES INCORRECTLY
C51: SELECTING DIFFERENT REGISTER BANKS IN A FUNCTION
C51: SETTING OR CLEARING BITS IN THE ACCUMULATOR
C51: SETTING PROGRAM START ADDRESS
C51: SETTING THE LOCATION OF THE REENTRANT STACK POINTER
C51: SIDE-EFFECTS OF VPRINTF AND VSPRINTF
C51: Sigma Z-Wave support with PK51
C51: SIGNED BIT FIELD NOT SUPPORTED
C51: SMALL DIRECTIVE
C51: SOFTWARE RESET IN C
C51: SOME HLP FILES DON'T WORK UNDER WINDOWS
C51: SOURCE CODE DOESN'T DISPLAY IN MY EMULATOR
C51: SPECIFYING HEADER PATHS FROM THE COMMAND LINE
C51: SPLITTING CODE BETWEEN EPROM AND FLASH/EEPROM
C51: SRC DIRECTIVE
C51: SROM MACROS RETURN INCORRECT ADDRESSES
C51: SSCANF RETURNS INCORRECT NUMBER OF PARAMETERS SCANNED
C51: STACK AND REENTRANT STACK SYMBOLIC NAMES
C51: STACK POINTER INITIALIZATION IN STARTUP CODE
C51: STACK REQUIREMENTS OF RUN-TIME LIBRARY FUNCTIONS
C51: STACK UTILIZATION
C51: STARTING A FUNCTION AT A SPECIFIC ADDRESS
C51: STARTUP CODE UNRESOLVED EXTERNAL (?B_SWITCH0)
C51: STATIC DATA VARIABLES
C51: STATIC POINTERS VS EXPLICITLY PLACED VARIABLES
C51: STDARG.H QUESTIONS
C51: STDDEF.H CREATES WARNING
C51: STORAGE OF LOCAL VARIABLES
C51: STRING TABLE IN XDATA
C51: STRUCTURE MEMORY SPACE DETAILS IN LISTING FILES
C51: SUPPORT FOR C505 DATA POINTERS
C51: SUPPORT FOR DEVICES WITH UNDER 2K CODE SPACE
C51: SUPPORT FOR FLOATING-POINT NUMBERS
C51: SUPPORT FOR -I AND -D MAKEFILE COMMANDS
C51: SUPPORT FOR INLINE KEYWORD
C51: SUPPORT FOR PHILIPS P89C51RC & P89C51RC2
C51: SUPPORT FOR THE 515C EIGHT DATA POINTERS
C51: SUPPORT FOR THE 8744 SDLC MICROCONTROLLER
C51: SUPPORT FOR THE ATMEL AT89C
C51: SUPPORT FOR THE ATMEL T80C51 DEVICES
C51: SUPPORT FOR THE DALLAS 390
C51: SUPPORT FOR THE PHILIPS 80C51RX
C51: SUPPORT FOR THE PHILIPS 87C652
C51: SUPPORT FOR THE PHILIPS 87LPC764
C51: SUPPORT FOR THE PHILIPS P89C66X DEVICES
C51: SUPPORT FOR THE SIEMENS DECT472X
C51: SUPPORT FOR THE SST89C5X
C51: SUPPORT FOR THE WINBOND W77C32
C51: SUPPORT OF NON-STANDARD CHIP FEATURES
C51: SUPPORTED DATA TYPES
C51: SUPPRESSING CALLS TO FUNCTION FROM COMMON CODE BLOCKS
C51: SWITCH/CASE STATEMENTS
C51: SYMBOLS DIRECTIVE
C51: TCP/IP SUPPORT
C51: TRANSMITTING FLOATING-POINT NUMBERS
C51: TYPEDEF ENUM
C51: UNABLE TO FIND INCLUDE FILES USING LONG DIRECTORY NAMES
C51: Unexpected value when assigning a bitfield value to a bit
C51: UNRESOLVED EXTERNAL ?C?CLDOPTR
C51: UNRESOLVED EXTERNAL ERROR USING ASSEMBLER AND C
C51: UNRESOLVED EXTERNAL SYMBOL ?C?XPAGE1SFR
C51: UNRESOLVED EXTERNAL WITH FAR MEMORY TYPE
C51: UNUSED OPCODES
C51: UPDATING THE PROGRAM COUNTER ON THE STACK
C51: USB DONGLE NOT RECOGNIZED
C51: USE OF DUAL DATA POINTERS
C51: USE OF F0 AND F1 IN PSW
C51: USE SPECIFIC ADDRESS RANGE FOR MOVC
C51: USING #IF TO TEST CONDITIONS
C51: USING > 64KB EXTERNAL SRAM WITH C8051F12X DEVICES
C51: USING 1K SRAM ON DALLAS DS89C420
C51: Using ACC, B, R0-R7 Register in C-Source Code
C51: USING AUTO-DECREMENT/AUTO-TOGGLE WITH DALLAS 390 & 400
C51: USING C51 V7.50 WITH A C51 V8 PSN
C51: Using CC Debugger With µVISION
C51: USING DONGLES WITH WINDOWS NT/2000
C51: USING LIBRARY FUNCTIONS
C51: USING MDU_F120 AND MDU_R515 IN µVISION
C51: USING MEMORY FROM 00H TO 1FH
C51: USING MEMORY-MAPPED DEVICES
C51: USING MICROCONTROLLERS WITH ON-CHIP XDATA
C51: USING MORE THAN 2K OF CODE SPACE
C51: USING MOVX TO UPDATE FLASH ON C8051F320
C51: USING MULTI-FUNCTION PINS ON ATMEL AT89C51RD2
C51: USING NON-REENTRANT FUNCTION IN MAIN AND INTERRUPTS
C51: USING NOOVERLAY WITH µVISION2
C51: USING NOP IN C
C51: USING ONLY ONE REGISTERBANK
C51: USING PDATA MEMORY
C51: USING PDATA ON ADUC83X AND ADUC84X DEVICES
C51: USING PDATA VARIABLES ON INFINEON XC800
C51: USING PHILIPS MX DEVICE WITH C51 / BL51
C51: USING ROM LIBRARY IN INFINEON XC8XX DEVICES
C51: USING SETJMP AND LONGJMP WITH CODE BANKING AND RTX51
C51: USING SFR16 FOR 16-BIT SFRS
C51: USING SIO0 AND SIO1 WITH THE DALLAS 320
C51: USING THE 517 MULTIPLY/DIVIDE UNIT IN INTERRUPTS
C51: USING THE C509 MULTIPLY/DIVIDE UNIT
C51: USING THE CODEWRIGHT EDITOR
C51: USING THE DS87C520 INTERNAL SRAM
C51: USING THE ON-CHIP XDATA OF THE INFINEON C515C
C51: USING THE PHILIPS 87C751
C51: USING TIMED ACCESS REGISTERS ON DALLAS PARTS
C51: USING VERSION 6.12 WITH A VERSION 8 INSTALLATION
C51: USING XRAM ON THE PHILIPS 80C66X AND 80C51RX DEVICES
C51: V6.0 INSTALLATION PROBLEMS WITH CD-ROM RELEASE 12.99
C51: V6.00 OPTIMIZATIONS CAUSE LINKER ERRORS/WARNINGS
C51: V6.02 UPDATE SAYS V6.01
C51: VARIABLE BANKING CONFIGURATION OPTIONS
C51: VARIABLE ZERO INITIALIZIATION
C51: VARIABLES CREATED IN XDATA USING SMALL MODEL
C51: VARIABLES IN LARGE AND COMPACT MEMORY MODEL DON'T WORK
C51: VERIFYING LOOK-UP TABLE VALUES
C51: VERSION 6 RELEASE NOTES
C51: WARNING 173 (MISSING RETURN-EXPRESSION)
C51: WARNING 182 (POINTER TO DIFFERENT OBJECTS)
C51: WARNING 185 (DIFFERENT MEMORY SPACE)
C51: WARNING 196 (MSPACE PROBABLY INVALID)
C51: WARNING 198 (SIZEOF RETURNS ZERO)
C51: WARNING 206 (MISSING FUNCTION PROTOTYPE)
C51: WARNING 209 (TOO FEW ACTUAL PARAMETERS)
C51: WARNING 219 (LONG CONSTANT TRUNCATED TO INT)
C51: WARNING 245 (UNKNOWN PRAGMA, LINE IGNORED)
C51: WARNING 258 (MSPACE ILLEGAL ON STRUCT/UNION MEMBER)
C51: WARNING 259 (POINTER: DIFFERENT MSPACE)
C51: WARNING 259 (POINTER: DIFFERENT MSPACE)
C51: WARNING 260 (POINTER TRUNCATION)
C51: WARNING 261 (BIT IN REENTRANT FUNCTION)
C51: WARNING 265 (RECURSIVE CALL TO NON-REENTRANT FUNCTION)
C51: WARNING 271 (MISPLACED ASM/ENDASM CONTROL)
C51: WARNING 275 (EXPRESSION WITH POSSIBLY NO EFFECT)
C51: WARNING 276 (CONSTANT IN CONDITION EXPRESSION)
C51: WARNING 277 (DIFFERENT MSPACES TO POINTER)
C51: WARNING 280 (UNREFERENCED SYMBOL/LABEL)
C51: WARNING 307 (MACRO 'NAME': PARAMETER COUNT MISMATCH)
C51: WARNING 317 (MACRO 'NAME': INVALID REDEFINITION)
C51: WARNING 317 (REDEFINITION OF MACRO)
C51: WARNING 322 (UNKNOWN IDENTIFIER)
C51: WARNING 323 (NEWLINE EXPECTED EXTRA CHARACTERS FOUND)
C51: WARNING 324 (PREPROCESSOR TOKEN EXPECTED)
C51: WARNING 500 (BAD OR MISSING COMPILER OVERLAY)
C51: WARNING C259 (DIFFERENT ENUMERATION TYPES)
C51: WARNING C500 (MISSING DEVICE) AFTER UPDATE
C51: Warning C500: Serial Number Expired
C51: WARNINGLEVEL DIRECTIVE
C51: WHAT ARE THE LIMITS FOR FLOATING-POINT NUMBERS?
C51: WHAT C51 KIT SHOULD I BUY TO WORK WITH CYPRESS EZ-USB
C51: WHAT CAUSES HEX FILES TO CHANGE BETWEEN VERSIONS?
C51: WHAT IS ?C?LIB_DATA USED FOR?
C51: WHAT IS THE ADDRESS RANGE ACCEPTABLE BY XBYTE MACRO
C51: WHAT'S IN THE ?CO? SEGMENTS?
C51: WHAT'S THE BEST WAY TO DISABLE/REENABLE INTERRUPTS
C51: WHEN ARE FUNCTIONS REENTRANT
C51: WHEN/WHERE ARE GLOBAL AND STATIC VARIABLES INITIALIZED?
C51: Where can I find Evatronix devices in µVISION?
C51: WHERE IS THE ABSOLUTE OMF OBJECT MODULE?
C51: WHICH 8051-BASED CHIPS ARE SUPPORTED?
C51: WHICH STARTUP CODE TO USE
C51: WHY DOES C51 V6.01 INCLUDE C51 V5.50A?
C51: WHY DOES VA_ARGS WORK?
C51: WHY NUMBER OF BYTES PASSED TO PRINTF IS LIMITED
C51: WIDE CHARACTER SUPPORT
C51: WRITING INTERRUPT ROUTINES
C51: WRITING TO THE OUTPUT PORTS
C51: WRONG CODE GENERATED FOR DOUBLE INDIRECTION
C51: WRONG HEADER FILE FOR PHILIPS P89C664
C51: XC800: 'Use multiple DPTR registers' may cause runtime errors
C51: XDATA BANKING WITH R8051XC
C51: XDATA OVERLAYING
C51: XDATA PROBLEMS PORTING C51 CODE TO C251
C51: XOR GIVES INCORRECT RESULTS
C51: XWORD MACRO QUESTIONS
  
  Arm logo
Important information

This site uses cookies to store information on your computer. By continuing to use our site, you consent to our cookies.

Change Settings

Privacy Policy Update

Arm’s Privacy Policy has been updated. By continuing to use our site, you consent to Arm’s Privacy Policy. Please review our Privacy Policy to learn more about our collection, use and transfers
of your data.