HPGCC3 Documentation 3.0 R003

hpgcc_config.h

Go to the documentation of this file.
00001 //& *** (c) 2006-2011 The HPGCC3 Team ***
00002 //& Claudio Lapilli
00003 //& Ingo Blank
00004 //&
00005 //& This file is licensed under the terms and conditions of the
00006 //& HPGCC3 license that is included with the source distribution.
00007 //& *** (c) 2006-2011 The HPGCC3 Team ***
00008 
00009 
00010 #ifndef __HPGCC_CONFIG_H
00011 #define __HPGCC_CONFIG_H
00012 
00226 #define HPGCC_VERSION 3.0
00227 
00233 #define HPGCC_VERSION_MAJOR 3
00234 
00239 #define HPGCC_VERSION_MINOR 0
00240 
00261 #define ROMLIB_BUILD 0x003
00262 
00263 
00264 
00271 #define ARMCODE_CONFIG(var) unsigned int __##var __attribute__ ((section(".config")))
00272 
00273 
00278 #define USE_MAINRAM 0x00010000
00279 
00282 #define USE_ERAM    0x00020000
00283 
00287 #define USE_KOSRAM  0x00040000
00288 
00291 #define RESERVE_TEMPOB(a) (a&0xff)
00292 
00296 #define RESERVE_USEROB(a) ((a&0xff)<<8)
00297 
00300 #define MAKE_ROMLIB_VER(n) ( ((n&0xf0)<<12) | ((n&0xf00)) | ((n&0xf)<<24) | 0x30303052)
00301 
00305 #define _ENABLE_INTS  0x00000001
00306 
00309 //#define _SPEED_1MHZ   0x00000010
00310 
00314 #define _SPEED_6MHZ   0x00000020
00315 
00318 #define _SPEED_12MHZ  0x00000000
00319 
00322 #define _SPEED_48MHZ  0x00000030
00323 
00326 #define _SPEED_75MHZ  0x00000040
00327 
00330 #define _SPEED_120MHZ 0x00000050
00331 
00335 #define _SPEED_152MHZ 0x00000060
00336 
00340 #define _SPEED_192MHZ 0x00000070
00341 
00345 #define _NO_SPEEDCHANGE 0x000000f0
00346 
00350 #define _CLK_MODE_MSK 0x000000f0
00351 
00354 #define _NO_WAITKEY    0x00000002
00355 
00358 #define _NO_GUI_CONSOLE 0x00000004
00359 
00362 #define _NO_SCREEN     0x00000008
00363 
00366 #define _NO_TIMERS     0x00000100
00367 
00371 #define _NO_EXCEPTIONS     0x00000200
00372 
00376 #define _NO_KEYBOARD     0x00000400
00377 
00381 #define _RAW_EXECUTE (_NO_KEYBOARD | _NO_EXCEPTIONS | _NO_TIMERS | _NO_SCREEN | _NO_GUI_CONSOLE | _NO_WAITKEY | _NO_SPEEDCHANGE | _ENABLE_INTS)
00382 
00386 #define _STACK_ONLY (_NO_KEYBOARD | _NO_TIMERS | _NO_SCREEN | _NO_GUI_CONSOLE | _NO_WAITKEY | _NO_SPEEDCHANGE)
00387 
00390 #define _STACK_SPEED (_NO_KEYBOARD | _NO_TIMERS | _NO_SCREEN | _NO_GUI_CONSOLE | _NO_WAITKEY)
00391 
00395 #define _STACK_SPEED_120MHZ (_STACK_SPEED | _SPEED_120MHZ)
00396 
00399 #define _STACK_SPEED_152MHZ (_STACK_SPEED | _SPEED_152MHZ)
00400 
00403 #define _STACK_SPEED_192MHZ (_STACK_SPEED | _SPEED_192MHZ)
00404 
00407 #define _STACK_SPEED_75MHZ (_STACK_SPEED | _SPEED_75MHZ)
00408 
00411 #define _STACK_SPEED_48MHZ (_STACK_SPEED | _SPEED_48MHZ)
00412 
00415 #define _STACK_SPEED_12MHZ (_STACK_SPEED | _SPEED_12MHZ)
00416 
00419 #define _STACK_SPEED_6MHZ (_STACK_SPEED | _SPEED_6MHZ)
00420 
00421 
00425 #define ARMCODE_CONFIG_STACK_STANDARD ARMCODE_CONFIG(startup)=_STACK_SPEED | _NO_SPEEDCHANGE; ARMCODE_CONFIG(memory_req)=USE_MAINRAM|USE_ERAM|USE_KOSRAM|RESERVE_TEMPOB(16)|RESERVE_USEROB(16);
00426 
00429 #define ARMCODE_CONFIG_STACK_SLOW ARMCODE_CONFIG(startup)=_STACK_SPEED_12MHZ; ARMCODE_CONFIG(memory_req)=USE_MAINRAM|USE_ERAM|USE_KOSRAM|RESERVE_TEMPOB(16)|RESERVE_USEROB(16);
00430 
00433 #define ARMCODE_CONFIG_STACK_OVERCLOCK ARMCODE_CONFIG(startup)=_STACK_SPEED_192MHZ; ARMCODE_CONFIG(memory_req)=USE_MAINRAM|USE_ERAM|USE_KOSRAM|RESERVE_TEMPOB(16)|RESERVE_USEROB(16);
00434 
00437 #define ARMCODE_CONFIG_STACK_FULLMEMORY ARMCODE_CONFIG(startup)=_STACK_SPEED | _NO_SPEEDCHANGE; ARMCODE_CONFIG(memory_req)=USE_ERAM|USE_KOSRAM;
00438 
00441 #define ARMCODE_CONFIG_STACK_FULLMEMORY_SLOW ARMCODE_CONFIG(startup)=_STACK_SPEED_12MHZ; ARMCODE_CONFIG(memory_req)=USE_ERAM|USE_KOSRAM;
00442 
00445 #define ARMCODE_CONFIG_STACK_FULLMEMORY_OVERCLOCK ARMCODE_CONFIG(startup)=_STACK_SPEED_192MHZ; ARMCODE_CONFIG(memory_req)=USE_ERAM|USE_KOSRAM;
00446 
00447 
00448 #endif