Author Archives: te-bachi

NIOS II: Development

Windows Cygwin: Use MinTTY

Using the DOS “start” command with parameters passed to the started program

[...]
:run_nios2_command_shell
@ start "" "%_QUARTUS_ROOT%\bin\cygwin\bin\mintty.exe" -e /bin/bash -c '%_NIOS2EDS_ROOT%nios2_command_shell.sh %*'
[...]
:run_nios2_command_shell
@ REM "%_QUARTUS_BIN%\cygwin\bin\bash.exe" -c '%_NIOS2EDS_ROOT%nios2_command_shell.sh %*'
@ start "" "%_QUARTUS_BIN%\cygwin\bin\mintty.exe" -e /bin/bash -c '%_NIOS2EDS_ROOT%nios2_command_shell.sh %*'

Windows Cygwin: Use Python

if [ -n "${COMSPEC}" ]; then
    _IS_WINDOWS=1
    PATH="/bin:/usr/bin:/cygdrive/c/Python27:${PATH}"
fi

Makefile changes (create-this-app-base.sh)

[...]
APP_ARGS=
NIOS2_APP_GEN_ARGS="$NIOS2_APP_GEN_ARGS_RELEASE"

while true; do
    case "$1" in
      -d|--debug)
          NIOS2_APP_GEN_ARGS="$NIOS2_APP_GEN_ARGS_DEBUG"
          shift
          ;;
          
      -s|--silent)
          APP_ARGS="$APP_ARGS --silent"
          shift
          ;;
          
      *)
          break
          ;;
    esac
done

. ../scripts/create-this-app-base.sh $APP_ARGS

# EOF
[...]
if [ -z "$SKIP_MAKE" ]; then
  cmd="make"
  
  if [ -n "$SILENT_MAKE" ]; then
      sed 's/^$(CC)/@$(CC)/' Makefile > Makefile.new
      mv Makefile.new Makefile
  fi
  
  sed 's/$(APP_CXXFLAGS) $(APP_CFLAGS)/$(APP_CXXFLAGS)/' Makefile > Makefile.new
  mv Makefile.new Makefile
  
  echo "create-this-app.sh: Running \"$cmd\""
  $cmd || {
      echo "make failed"
      exit 1
  }
  [...]
fi
exit 0
# EOF

Software Build Tools (SBT) + create-this-app

$ nios2-swexample-create --list
hello_world_small
float2_gcc
simple_socket_server
float2_functionality
memtest_small
blank_project
memtest
simple_socket_server_rgmii
float2_performance
hello_ucosii
count_binary
board_diag
hello_alt_main
web_server
hello_world
web_server_rgmii

$ nios2-swexample-create \
--sopc-file=../../hdl/quartus/qsys/nios.sopcinfo \
--type=hello_world

Make not found

Problems -> Errors -> Program "make" is not found in PATH

Project -> Properties -> C/C++-Build -> Tool Chain Editor -> Linux NIOS II GCC4
or
Eclipse Preferences -> C/C++ -> Build -> Environment -> Add.. -> "${PATH}:/Developer/usr/bin"

Program “make” not found in PATH

Small Driver, Reduced Device Drivers

#if defined(ALT_USE_SMALL_DRIVERS) || defined(ALTERA_AVALON_UART_SMALL)
bsp_editor_reduced_device_drivers

bsp_editor_small_driver

Includes

/opt/altera12.1sp1/nios2eds/components/altera_nios2/HAL/inc
/opt/altera12.1sp1/nios2eds/bin/gnu/H-i686-pc-linux-gnu/nios2-elf/include
/opt/altera12.1sp1/nios2eds/bin/gnu/H-i686-pc-linux-gnu/lib/gcc/nios2-elf/4.1.2/include

Exception Handling

Nios II Exception Handling
alteraforum.com: Nios II exception handler

Stacktrace / Backtrace

ABachmann: Debug user space application with MMU

libc

Is malloc() and free() not thread-safe?

In addition, the MicroC/OS-II implementation provides appropriate task
locking to ensure that heap accesses, i.e., calls to malloc() and free()
are also thread safe.

GCC

$ nios2-elf-gcc -v
gcc version 4.1.2 (Altera 12.1sp1 Build 243)

$ nios2-elf-gcc -v
gcc version 4.7.3 (Altera 13.1 Build 162)

$ nios2-elf-gcc -v
gcc version 4.8.3 20140320 (prerelease) (Altera 14.1 Build 186)

Embedded News and Events: Nios II Gen2 Processor Support
Nios II GNU toolchain upgrade from GCC 4.1.2 to GCC 4.7.3
Can the linker inline functions?

rand()

Generate a random number between 'x' and 'y':

return [ x + random % (y - x + 1) }

ex. x = 2, y = 7
random % (7 - 2 + 1) = random % 6 = 0 ... 5
2 + random % 6                    = 2 ... 7

random number generator?
ucore-nios2/libs/rand.c
How to choose numbers random with C?

GDB

Place a .gdbinit in your app-directory

How to use GDB to find what function a memory address corresponds to
GDB: Getting a symbol name from a memory address

bt
#0  alt_irq_entry () at HAL/src/alt_exception_entry.S:117
#1  0x00000024 in alt_irq_entry () at HAL/src/alt_exception_entry.S:107
Backtrace stopped: previous frame identical to this frame (corrupt stack?)
info symbol 0x1201c
sys_check_timeouts + 164 in section .text
list *0x1201c
0x1201c is in sys_check_timeouts (src/lwip-1.4.1/core/timers.c:374).
369	    /* this cares for wraparounds */
370	    diff = now - timeouts_last_time;
371	    do
372	    {
373	#if PBUF_POOL_FREE_OOSEQ
374	      PBUF_CHECK_FREE_OOSEQ();
375	#endif /* PBUF_POOL_FREE_OOSEQ */
376	      had_one = 0;
377	      tmptimeout = next_timeout;
378	      if (tmptimeout && (tmptimeout->time <= diff)) {

readelf

Dive into ELF files using readelf command
what are the meanings of the columns displayed by readelf?

objdump

Understanding ELF using readelf and objdump
How to get gcc to interleave assembly output with original source code

$ nios2-elf-objdump -d -j <section> <filename> | grep -C <context> <address>
$ nios2-elf-objdump -d -j .text hcpp.elf | grep -C 30 1201c

PRIxPTR and intptr_t

Info: Compiling src/test.c to obj/default/src/test.o
src/test.c: In function 'task_test':
src/test.c:642:9: warning: format '%llx' expects argument of type 'long long unsigned int', but argument 2 has type 'unsigned int' [-Wformat=]
src/test.c:642:9: warning: format '%llx' expects argument of type 'long long unsigned int', but argument 3 has type 'unsigned int' [-Wformat=]
         LOG_PRINTLN(LOG_TEST, LOG_VERBOSE, ("lut_entry = 0x%08" PRIxPTR " idx_table = 0x%08" PRIxPTR, (uintptr_t) lut_table, (uintptr_t) idx_tabl));

inttypes.h bug leads to inconsistent warnings cross platform

Remove build-in Include Path

eclipse_include_path
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<?scdStore version="2"?><scannerInfo id="org.eclipse.cdt.make.core.discoveredScannerInfo">
<instance id="preference.org.eclipse.cdt.managedbuilder.core.configurationDataProvider.1881282838;preference.org.eclipse.cdt.managedbuilder.core.configurationDataProvider.1881282838.;cdt.managedbuild.tool.gnu.cpp.compiler.cygwin.base.875764835;cdt.managedbuild.tool.gnu.cpp.compiler.input.cygwin.1182321586">
<collector id="org.eclipse.cdt.make.core.PerProjectSICollector">
<includePath path="C:\altera\14.1\quartus\bin64\cygwin\lib\gcc\x86_64-pc-cygwin\4.8.3\include\c++"/>
<includePath path="C:\altera\14.1\quartus\bin64\cygwin\lib\gcc\x86_64-pc-cygwin\4.8.3\include\c++\x86_64-pc-cygwin"/>
<includePath path="C:\altera\14.1\quartus\bin64\cygwin\lib\gcc\x86_64-pc-cygwin\4.8.3\include\c++\backward"/>
<includePath path="C:\altera\14.1\quartus\bin64\cygwin\lib\gcc\x86_64-pc-cygwin\4.8.3\include"/>
<includePath path="C:\altera\14.1\quartus\bin64\cygwin\lib\gcc\x86_64-pc-cygwin\4.8.3\include-fixed"/>
<includePath path="C:\altera\14.1\quartus\bin64\cygwin\usr\include"/>
<includePath path="C:\altera\14.1\quartus\bin64\cygwin\usr\include\w32api"/>
<includePath path="C:/src/hcpp/software/bsp/HAL/inc"/>
<includePath path="C:/src/hcpp/software/bsp/"/>
<includePath path="C:/src/hcpp/software/bsp/drivers/inc"/>
<includePath path="C:/src/hcpp/software/app/include/lwip-1.4.1"/>
<includePath path="C:/src/hcpp/software/app/include/lwip-1.4.1/ipv4"/>
<includePath path="C:/src/hcpp/software/app/include"/>
<includePath path="C:/src/hcpp/software/app/include/lwip-enet"/>
<includePath path="C:\altera\12.1sp1\quartus\bin\cygwin\lib\gcc\i686-pc-cygwin\4.5.3\include\c++"/>
<includePath path="C:\altera\12.1sp1\quartus\bin\cygwin\lib\gcc\i686-pc-cygwin\4.5.3\include\c++\i686-pc-cygwin"/>
<includePath path="C:\altera\12.1sp1\quartus\bin\cygwin\lib\gcc\i686-pc-cygwin\4.5.3\include\c++\backward"/>
<includePath path="C:\altera\12.1sp1\quartus\bin\cygwin\lib\gcc\i686-pc-cygwin\4.5.3\include"/>
<includePath path="C:\altera\12.1sp1\quartus\bin\cygwin\lib\gcc\i686-pc-cygwin\4.5.3\include-fixed"/>
<includePath path="C:\altera\12.1sp1\quartus\bin\cygwin\usr\include"/>
<includePath path="C:\altera\12.1sp1\quartus\bin\cygwin\usr\include\w32api"/>
<definedSymbol symbol="__STDC__=1"/>
<definedSymbol symbol="__cplusplus=1"/>
<definedSymbol symbol="__cplusplus=199711L"/>
<definedSymbol symbol="__STDC_HOSTED__=1"/>
<definedSymbol symbol="__GNUC__=4"/>
<definedSymbol symbol="__GNUC_MINOR__=5"/>
<definedSymbol symbol="__GNUC_MINOR__=8"/>
<definedSymbol symbol="__GNUC_PATCHLEVEL__=3"/>
<definedSymbol symbol="__GNUG__=4"/>
<definedSymbol symbol="__SIZE_TYPE__=unsigned int"/>
<definedSymbol symbol="__SIZE_TYPE__=long unsigned int"/>
<definedSymbol symbol="__PTRDIFF_TYPE__=int"/>
<definedSymbol symbol="__PTRDIFF_TYPE__=long int"/>
<definedSymbol symbol="__WCHAR_TYPE__=short unsigned int"/>
<definedSymbol symbol="__WINT_TYPE__=unsigned int"/>
<definedSymbol symbol="__INTMAX_TYPE__=long long int"/>
<definedSymbol symbol="__INTMAX_TYPE__=long int"/>
<definedSymbol symbol="__UINTMAX_TYPE__=long long unsigned int"/>
<definedSymbol symbol="__UINTMAX_TYPE__=long unsigned int"/>
<definedSymbol symbol="__CHAR16_TYPE__=short unsigned int"/>
<definedSymbol symbol="__CHAR32_TYPE__=unsigned int"/>
<definedSymbol symbol="__SIG_ATOMIC_TYPE__=int"/>
<definedSymbol symbol="__INT8_TYPE__=signed char"/>
<definedSymbol symbol="__INT16_TYPE__=short int"/>
<definedSymbol symbol="__INT32_TYPE__=int"/>
<definedSymbol symbol="__INT64_TYPE__=long long int"/>
<definedSymbol symbol="__INT64_TYPE__=long int"/>
<definedSymbol symbol="__UINT8_TYPE__=unsigned char"/>
<definedSymbol symbol="__UINT16_TYPE__=short unsigned int"/>
<definedSymbol symbol="__UINT32_TYPE__=unsigned int"/>
<definedSymbol symbol="__UINT64_TYPE__=long long unsigned int"/>
<definedSymbol symbol="__UINT64_TYPE__=long unsigned int"/>
<definedSymbol symbol="__INT_LEAST8_TYPE__=signed char"/>
<definedSymbol symbol="__INT_LEAST16_TYPE__=short int"/>
<definedSymbol symbol="__INT_LEAST32_TYPE__=int"/>
<definedSymbol symbol="__INT_LEAST64_TYPE__=long long int"/>
<definedSymbol symbol="__INT_LEAST64_TYPE__=long int"/>
<definedSymbol symbol="__UINT_LEAST8_TYPE__=unsigned char"/>
<definedSymbol symbol="__UINT_LEAST16_TYPE__=short unsigned int"/>
<definedSymbol symbol="__UINT_LEAST32_TYPE__=unsigned int"/>
<definedSymbol symbol="__UINT_LEAST64_TYPE__=long long unsigned int"/>
<definedSymbol symbol="__UINT_LEAST64_TYPE__=long unsigned int"/>
<definedSymbol symbol="__INT_FAST8_TYPE__=signed char"/>
<definedSymbol symbol="__INT_FAST16_TYPE__=int"/>
<definedSymbol symbol="__INT_FAST16_TYPE__=long int"/>
<definedSymbol symbol="__INT_FAST32_TYPE__=int"/>
<definedSymbol symbol="__INT_FAST32_TYPE__=long int"/>
<definedSymbol symbol="__INT_FAST64_TYPE__=long long int"/>
<definedSymbol symbol="__INT_FAST64_TYPE__=long int"/>
<definedSymbol symbol="__UINT_FAST8_TYPE__=unsigned char"/>
<definedSymbol symbol="__UINT_FAST16_TYPE__=unsigned int"/>
<definedSymbol symbol="__UINT_FAST16_TYPE__=long unsigned int"/>
<definedSymbol symbol="__UINT_FAST32_TYPE__=unsigned int"/>
<definedSymbol symbol="__UINT_FAST32_TYPE__=long unsigned int"/>
<definedSymbol symbol="__UINT_FAST64_TYPE__=long long unsigned int"/>
<definedSymbol symbol="__UINT_FAST64_TYPE__=long unsigned int"/>
<definedSymbol symbol="__INTPTR_TYPE__=int"/>
<definedSymbol symbol="__INTPTR_TYPE__=long int"/>
<definedSymbol symbol="__UINTPTR_TYPE__=unsigned int"/>
<definedSymbol symbol="__UINTPTR_TYPE__=long unsigned int"/>
<definedSymbol symbol="__GXX_WEAK__=1"/>
<definedSymbol symbol="__DEPRECATED=1"/>
<definedSymbol symbol="__GXX_RTTI=1"/>
<definedSymbol symbol="__EXCEPTIONS=1"/>
<definedSymbol symbol="__GXX_ABI_VERSION=1002"/>
<definedSymbol symbol="__SCHAR_MAX__=127"/>
<definedSymbol symbol="__SHRT_MAX__=32767"/>
<definedSymbol symbol="__INT_MAX__=2147483647"/>
<definedSymbol symbol="__LONG_MAX__=2147483647L"/>
<definedSymbol symbol="__LONG_MAX__=9223372036854775807L"/>
<definedSymbol symbol="__LONG_LONG_MAX__=9223372036854775807LL"/>
<definedSymbol symbol="__WCHAR_MAX__=65535"/>
<definedSymbol symbol="__WCHAR_MIN__=0"/>
<definedSymbol symbol="__WINT_MAX__=4294967295U"/>
<definedSymbol symbol="__WINT_MIN__=0U"/>
<definedSymbol symbol="__PTRDIFF_MAX__=2147483647"/>
<definedSymbol symbol="__PTRDIFF_MAX__=9223372036854775807L"/>
<definedSymbol symbol="__SIZE_MAX__=4294967295U"/>
<definedSymbol symbol="__SIZE_MAX__=18446744073709551615UL"/>
<definedSymbol symbol="__CHAR_BIT__=8"/>
<definedSymbol symbol="__INTMAX_MAX__=9223372036854775807LL"/>
<definedSymbol symbol="__INTMAX_MAX__=9223372036854775807L"/>
<definedSymbol symbol="__INTMAX_C(c)=c ## LL"/>
<definedSymbol symbol="__INTMAX_C(c)=c ## L"/>
<definedSymbol symbol="__UINTMAX_MAX__=18446744073709551615ULL"/>
<definedSymbol symbol="__UINTMAX_MAX__=18446744073709551615UL"/>
<definedSymbol symbol="__UINTMAX_C(c)=c ## ULL"/>
<definedSymbol symbol="__UINTMAX_C(c)=c ## UL"/>
<definedSymbol symbol="__SIG_ATOMIC_MAX__=2147483647"/>
<definedSymbol symbol="__SIG_ATOMIC_MIN__=(-__SIG_ATOMIC_MAX__ - 1)"/>
<definedSymbol symbol="__INT8_MAX__=127"/>
<definedSymbol symbol="__INT16_MAX__=32767"/>
<definedSymbol symbol="__INT32_MAX__=2147483647"/>
<definedSymbol symbol="__INT64_MAX__=9223372036854775807LL"/>
<definedSymbol symbol="__INT64_MAX__=9223372036854775807L"/>
<definedSymbol symbol="__UINT8_MAX__=255"/>
<definedSymbol symbol="__UINT16_MAX__=65535"/>
<definedSymbol symbol="__UINT32_MAX__=4294967295U"/>
<definedSymbol symbol="__UINT64_MAX__=18446744073709551615ULL"/>
<definedSymbol symbol="__UINT64_MAX__=18446744073709551615UL"/>
<definedSymbol symbol="__INT_LEAST8_MAX__=127"/>
<definedSymbol symbol="__INT8_C(c)=c"/>
<definedSymbol symbol="__INT_LEAST16_MAX__=32767"/>
<definedSymbol symbol="__INT16_C(c)=c"/>
<definedSymbol symbol="__INT_LEAST32_MAX__=2147483647"/>
<definedSymbol symbol="__INT32_C(c)=c"/>
<definedSymbol symbol="__INT_LEAST64_MAX__=9223372036854775807LL"/>
<definedSymbol symbol="__INT_LEAST64_MAX__=9223372036854775807L"/>
<definedSymbol symbol="__INT64_C(c)=c ## LL"/>
<definedSymbol symbol="__INT64_C(c)=c ## L"/>
<definedSymbol symbol="__UINT_LEAST8_MAX__=255"/>
<definedSymbol symbol="__UINT8_C(c)=c"/>
<definedSymbol symbol="__UINT_LEAST16_MAX__=65535"/>
<definedSymbol symbol="__UINT16_C(c)=c"/>
<definedSymbol symbol="__UINT_LEAST32_MAX__=4294967295U"/>
<definedSymbol symbol="__UINT32_C(c)=c ## U"/>
<definedSymbol symbol="__UINT_LEAST64_MAX__=18446744073709551615ULL"/>
<definedSymbol symbol="__UINT_LEAST64_MAX__=18446744073709551615UL"/>
<definedSymbol symbol="__UINT64_C(c)=c ## ULL"/>
<definedSymbol symbol="__UINT64_C(c)=c ## UL"/>
<definedSymbol symbol="__INT_FAST8_MAX__=127"/>
<definedSymbol symbol="__INT_FAST16_MAX__=2147483647"/>
<definedSymbol symbol="__INT_FAST16_MAX__=9223372036854775807L"/>
<definedSymbol symbol="__INT_FAST32_MAX__=2147483647"/>
<definedSymbol symbol="__INT_FAST32_MAX__=9223372036854775807L"/>
<definedSymbol symbol="__INT_FAST64_MAX__=9223372036854775807LL"/>
<definedSymbol symbol="__INT_FAST64_MAX__=9223372036854775807L"/>
<definedSymbol symbol="__UINT_FAST8_MAX__=255"/>
<definedSymbol symbol="__UINT_FAST16_MAX__=4294967295U"/>
<definedSymbol symbol="__UINT_FAST16_MAX__=18446744073709551615UL"/>
<definedSymbol symbol="__UINT_FAST32_MAX__=4294967295U"/>
<definedSymbol symbol="__UINT_FAST32_MAX__=18446744073709551615UL"/>
<definedSymbol symbol="__UINT_FAST64_MAX__=18446744073709551615ULL"/>
<definedSymbol symbol="__UINT_FAST64_MAX__=18446744073709551615UL"/>
<definedSymbol symbol="__INTPTR_MAX__=2147483647"/>
<definedSymbol symbol="__INTPTR_MAX__=9223372036854775807L"/>
<definedSymbol symbol="__UINTPTR_MAX__=4294967295U"/>
<definedSymbol symbol="__UINTPTR_MAX__=18446744073709551615UL"/>
<definedSymbol symbol="__FLT_EVAL_METHOD__=2"/>
<definedSymbol symbol="__FLT_EVAL_METHOD__=0"/>
<definedSymbol symbol="__DEC_EVAL_METHOD__=2"/>
<definedSymbol symbol="__FLT_RADIX__=2"/>
<definedSymbol symbol="__FLT_MANT_DIG__=24"/>
<definedSymbol symbol="__FLT_DIG__=6"/>
<definedSymbol symbol="__FLT_MIN_EXP__=(-125)"/>
<definedSymbol symbol="__FLT_MIN_10_EXP__=(-37)"/>
<definedSymbol symbol="__FLT_MAX_EXP__=128"/>
<definedSymbol symbol="__FLT_MAX_10_EXP__=38"/>
<definedSymbol symbol="__FLT_MAX__=3.40282346638528859812e+38F"/>
<definedSymbol symbol="__FLT_MIN__=1.17549435082228750797e-38F"/>
<definedSymbol symbol="__FLT_EPSILON__=1.19209289550781250000e-7F"/>
<definedSymbol symbol="__FLT_DENORM_MIN__=1.40129846432481707092e-45F"/>
<definedSymbol symbol="__FLT_HAS_DENORM__=1"/>
<definedSymbol symbol="__FLT_HAS_INFINITY__=1"/>
<definedSymbol symbol="__FLT_HAS_QUIET_NAN__=1"/>
<definedSymbol symbol="__DBL_MANT_DIG__=53"/>
<definedSymbol symbol="__DBL_DIG__=15"/>
<definedSymbol symbol="__DBL_MIN_EXP__=(-1021)"/>
<definedSymbol symbol="__DBL_MIN_10_EXP__=(-307)"/>
<definedSymbol symbol="__DBL_MAX_EXP__=1024"/>
<definedSymbol symbol="__DBL_MAX_10_EXP__=308"/>
<definedSymbol symbol="__DBL_MAX__=((double)1.79769313486231570815e+308L)"/>
<definedSymbol symbol="__DBL_MAX__=double(1.79769313486231570815e+308L)"/>
<definedSymbol symbol="__DBL_MIN__=((double)2.22507385850720138309e-308L)"/>
<definedSymbol symbol="__DBL_MIN__=double(2.22507385850720138309e-308L)"/>
<definedSymbol symbol="__DBL_EPSILON__=((double)2.22044604925031308085e-16L)"/>
<definedSymbol symbol="__DBL_EPSILON__=double(2.22044604925031308085e-16L)"/>
<definedSymbol symbol="__DBL_DENORM_MIN__=((double)4.94065645841246544177e-324L)"/>
<definedSymbol symbol="__DBL_DENORM_MIN__=double(4.94065645841246544177e-324L)"/>
<definedSymbol symbol="__DBL_HAS_DENORM__=1"/>
<definedSymbol symbol="__DBL_HAS_INFINITY__=1"/>
<definedSymbol symbol="__DBL_HAS_QUIET_NAN__=1"/>
<definedSymbol symbol="__LDBL_MANT_DIG__=64"/>
<definedSymbol symbol="__LDBL_DIG__=18"/>
<definedSymbol symbol="__LDBL_MIN_EXP__=(-16381)"/>
<definedSymbol symbol="__LDBL_MIN_10_EXP__=(-4931)"/>
<definedSymbol symbol="__LDBL_MAX_EXP__=16384"/>
<definedSymbol symbol="__LDBL_MAX_10_EXP__=4932"/>
<definedSymbol symbol="__DECIMAL_DIG__=21"/>
<definedSymbol symbol="__LDBL_MAX__=1.18973149535723176502e+4932L"/>
<definedSymbol symbol="__LDBL_MIN__=3.36210314311209350626e-4932L"/>
<definedSymbol symbol="__LDBL_EPSILON__=1.08420217248550443401e-19L"/>
<definedSymbol symbol="__LDBL_DENORM_MIN__=3.64519953188247460253e-4951L"/>
<definedSymbol symbol="__LDBL_HAS_DENORM__=1"/>
<definedSymbol symbol="__LDBL_HAS_INFINITY__=1"/>
<definedSymbol symbol="__LDBL_HAS_QUIET_NAN__=1"/>
<definedSymbol symbol="__DEC32_MANT_DIG__=7"/>
<definedSymbol symbol="__DEC32_MIN_EXP__=(-94)"/>
<definedSymbol symbol="__DEC32_MAX_EXP__=97"/>
<definedSymbol symbol="__DEC32_MIN__=1E-95DF"/>
<definedSymbol symbol="__DEC32_MAX__=9.999999E96DF"/>
<definedSymbol symbol="__DEC32_EPSILON__=1E-6DF"/>
<definedSymbol symbol="__DEC32_SUBNORMAL_MIN__=0.000001E-95DF"/>
<definedSymbol symbol="__DEC64_MANT_DIG__=16"/>
<definedSymbol symbol="__DEC64_MIN_EXP__=(-382)"/>
<definedSymbol symbol="__DEC64_MAX_EXP__=385"/>
<definedSymbol symbol="__DEC64_MIN__=1E-383DD"/>
<definedSymbol symbol="__DEC64_MAX__=9.999999999999999E384DD"/>
<definedSymbol symbol="__DEC64_EPSILON__=1E-15DD"/>
<definedSymbol symbol="__DEC64_SUBNORMAL_MIN__=0.000000000000001E-383DD"/>
<definedSymbol symbol="__DEC128_MANT_DIG__=34"/>
<definedSymbol symbol="__DEC128_MIN_EXP__=(-6142)"/>
<definedSymbol symbol="__DEC128_MAX_EXP__=6145"/>
<definedSymbol symbol="__DEC128_MIN__=1E-6143DL"/>
<definedSymbol symbol="__DEC128_MAX__=9.999999999999999999999999999999999E6144DL"/>
<definedSymbol symbol="__DEC128_EPSILON__=1E-33DL"/>
<definedSymbol symbol="__DEC128_SUBNORMAL_MIN__=0.000000000000000000000000000000001E-6143DL"/>
<definedSymbol symbol="__REGISTER_PREFIX__="/>
<definedSymbol symbol="__USER_LABEL_PREFIX__=_"/>
<definedSymbol symbol="__USER_LABEL_PREFIX__="/>
<definedSymbol symbol="__VERSION__=&quot;4.5.3&quot;"/>
<definedSymbol symbol="__VERSION__=&quot;4.8.3&quot;"/>
<definedSymbol symbol="__GNUC_GNU_INLINE__=1"/>
<definedSymbol symbol="__NO_INLINE__=1"/>
<definedSymbol symbol="__FINITE_MATH_ONLY__=0"/>
<definedSymbol symbol="__WCHAR_UNSIGNED__=1"/>
<definedSymbol symbol="__GCC_HAVE_SYNC_COMPARE_AND_SWAP_1=1"/>
<definedSymbol symbol="__GCC_HAVE_SYNC_COMPARE_AND_SWAP_2=1"/>
<definedSymbol symbol="__GCC_HAVE_SYNC_COMPARE_AND_SWAP_4=1"/>
<definedSymbol symbol="__GCC_HAVE_SYNC_COMPARE_AND_SWAP_8=1"/>
<definedSymbol symbol="__PRAGMA_REDEFINE_EXTNAME=1"/>
<definedSymbol symbol="__SIZEOF_INT__=4"/>
<definedSymbol symbol="__SIZEOF_LONG__=4"/>
<definedSymbol symbol="__SIZEOF_LONG__=8"/>
<definedSymbol symbol="__SIZEOF_LONG_LONG__=8"/>
<definedSymbol symbol="__SIZEOF_SHORT__=2"/>
<definedSymbol symbol="__SIZEOF_FLOAT__=4"/>
<definedSymbol symbol="__SIZEOF_DOUBLE__=8"/>
<definedSymbol symbol="__SIZEOF_LONG_DOUBLE__=12"/>
<definedSymbol symbol="__SIZEOF_LONG_DOUBLE__=16"/>
<definedSymbol symbol="__SIZEOF_SIZE_T__=4"/>
<definedSymbol symbol="__SIZEOF_SIZE_T__=8"/>
<definedSymbol symbol="__SIZEOF_WCHAR_T__=2"/>
<definedSymbol symbol="__SIZEOF_WINT_T__=4"/>
<definedSymbol symbol="__SIZEOF_PTRDIFF_T__=4"/>
<definedSymbol symbol="__SIZEOF_PTRDIFF_T__=8"/>
<definedSymbol symbol="__SIZEOF_POINTER__=4"/>
<definedSymbol symbol="__SIZEOF_POINTER__=8"/>
<definedSymbol symbol="__i386=1"/>
<definedSymbol symbol="__i386__=1"/>
<definedSymbol symbol="i386=1"/>
<definedSymbol symbol="__i686=1"/>
<definedSymbol symbol="__i686__=1"/>
<definedSymbol symbol="__pentiumpro=1"/>
<definedSymbol symbol="__pentiumpro__=1"/>
<definedSymbol symbol="_X86_=1"/>
<definedSymbol symbol="__stdcall=__attribute__((__stdcall__))"/>
<definedSymbol symbol="__fastcall=__attribute__((__fastcall__))"/>
<definedSymbol symbol="__cdecl=__attribute__((__cdecl__))"/>
<definedSymbol symbol="_stdcall=__attribute__((__stdcall__))"/>
<definedSymbol symbol="_fastcall=__attribute__((__fastcall__))"/>
<definedSymbol symbol="_cdecl=__attribute__((__cdecl__))"/>
<definedSymbol symbol="__GXX_MERGED_TYPEINFO_NAMES=0"/>
<definedSymbol symbol="__GXX_TYPEINFO_EQUALITY_INLINE=0"/>
<definedSymbol symbol="__declspec(x)=__attribute__((x))"/>
<definedSymbol symbol="__BIGGEST_ALIGNMENT__=16"/>
<definedSymbol symbol="__CYGWIN32__=1"/>
<definedSymbol symbol="__CYGWIN__=1"/>
<definedSymbol symbol="unix=1"/>
<definedSymbol symbol="__unix__=1"/>
<definedSymbol symbol="__unix=1"/>
<definedSymbol symbol="SYSTEM_BUS_WIDTH=32"/>
<definedSymbol symbol="__hal__=1"/>
<definedSymbol symbol="ALT_NO_INSTRUCTION_EMULATION=1"/>
<definedSymbol symbol="ALT_SINGLE_THREADED=1"/>
<definedSymbol symbol="__ATOMIC_RELAXED=0"/>
<definedSymbol symbol="__ATOMIC_SEQ_CST=5"/>
<definedSymbol symbol="__ATOMIC_ACQUIRE=2"/>
<definedSymbol symbol="__ATOMIC_RELEASE=3"/>
<definedSymbol symbol="__ATOMIC_ACQ_REL=4"/>
<definedSymbol symbol="__ATOMIC_CONSUME=1"/>
<definedSymbol symbol="__pic__=1"/>
<definedSymbol symbol="__PIC__=1"/>
<definedSymbol symbol="_LP64=1"/>
<definedSymbol symbol="__LP64__=1"/>
<definedSymbol symbol="__ORDER_LITTLE_ENDIAN__=1234"/>
<definedSymbol symbol="__ORDER_BIG_ENDIAN__=4321"/>
<definedSymbol symbol="__ORDER_PDP_ENDIAN__=3412"/>
<definedSymbol symbol="__BYTE_ORDER__=__ORDER_LITTLE_ENDIAN__"/>
<definedSymbol symbol="__FLOAT_WORD_ORDER__=__ORDER_LITTLE_ENDIAN__"/>
<definedSymbol symbol="__FLT_DECIMAL_DIG__=9"/>
<definedSymbol symbol="__DBL_DECIMAL_DIG__=17"/>
<definedSymbol symbol="__GCC_ATOMIC_BOOL_LOCK_FREE=2"/>
<definedSymbol symbol="__GCC_ATOMIC_CHAR_LOCK_FREE=2"/>
<definedSymbol symbol="__GCC_ATOMIC_CHAR16_T_LOCK_FREE=2"/>
<definedSymbol symbol="__GCC_ATOMIC_CHAR32_T_LOCK_FREE=2"/>
<definedSymbol symbol="__GCC_ATOMIC_WCHAR_T_LOCK_FREE=2"/>
<definedSymbol symbol="__GCC_ATOMIC_SHORT_LOCK_FREE=2"/>
<definedSymbol symbol="__GCC_ATOMIC_INT_LOCK_FREE=2"/>
<definedSymbol symbol="__GCC_ATOMIC_LONG_LOCK_FREE=2"/>
<definedSymbol symbol="__GCC_ATOMIC_LLONG_LOCK_FREE=2"/>
<definedSymbol symbol="__GCC_ATOMIC_TEST_AND_SET_TRUEVAL=1"/>
<definedSymbol symbol="__GCC_ATOMIC_POINTER_LOCK_FREE=2"/>
<definedSymbol symbol="__SIZEOF_INT128__=16"/>
<definedSymbol symbol="__amd64=1"/>
<definedSymbol symbol="__amd64__=1"/>
<definedSymbol symbol="__x86_64=1"/>
<definedSymbol symbol="__x86_64__=1"/>
<definedSymbol symbol="__ATOMIC_HLE_ACQUIRE=65536"/>
<definedSymbol symbol="__ATOMIC_HLE_RELEASE=131072"/>
<definedSymbol symbol="__k8=1"/>
<definedSymbol symbol="__k8__=1"/>
<definedSymbol symbol="__code_model_medium__=1"/>
<definedSymbol symbol="__MMX__=1"/>
<definedSymbol symbol="__SSE__=1"/>
<definedSymbol symbol="__SSE2__=1"/>
<definedSymbol symbol="__FXSR__=1"/>
<definedSymbol symbol="__SSE_MATH__=1"/>
<definedSymbol symbol="__SSE2_MATH__=1"/>
<definedSymbol symbol="__SEH__=1"/>
<definedSymbol symbol="__thiscall=__attribute__((__thiscall__))"/>
<definedSymbol symbol="_thiscall=__attribute__((__thiscall__))"/>
<definedSymbol symbol="__DECIMAL_BID_FORMAT__=1"/>
</collector>
</instance>
<instance id="preference.org.eclipse.cdt.managedbuilder.core.configurationDataProvider.1881282838;preference.org.eclipse.cdt.managedbuilder.core.configurationDataProvider.1881282838.;cdt.managedbuild.tool.gnu.c.compiler.cygwin.base.824698696;cdt.managedbuild.tool.gnu.c.compiler.input.cygwin.1417893846">
<collector id="org.eclipse.cdt.make.core.PerProjectSICollector">
<includePath path="C:\altera\14.1\quartus\bin64\cygwin\lib\gcc\x86_64-pc-cygwin\4.8.3\include"/>
<includePath path="C:\altera\14.1\quartus\bin64\cygwin\lib\gcc\x86_64-pc-cygwin\4.8.3\include-fixed"/>
<includePath path="C:\altera\14.1\quartus\bin64\cygwin\usr\include"/>
<includePath path="C:\altera\14.1\quartus\bin64\cygwin\usr\include\w32api"/>
<includePath path="C:/src/hcpp/software/bsp/HAL/inc"/>
<includePath path="C:/src/hcpp/software/bsp/"/>
<includePath path="C:/src/hcpp/software/bsp/drivers/inc"/>
<includePath path="C:/src/hcpp/software/app/include/lwip-1.4.1"/>
<includePath path="C:/src/hcpp/software/app/include/lwip-1.4.1/ipv4"/>
<includePath path="C:/src/hcpp/software/app/include"/>
<includePath path="C:/src/hcpp/software/app/include/lwip-enet"/>
<includePath path="C:\altera\12.1sp1\quartus\bin\cygwin\lib\gcc\i686-pc-cygwin\4.5.3\include"/>
<includePath path="C:\altera\12.1sp1\quartus\bin\cygwin\lib\gcc\i686-pc-cygwin\4.5.3\include-fixed"/>
<includePath path="C:\altera\12.1sp1\quartus\bin\cygwin\usr\include"/>
<includePath path="C:\altera\12.1sp1\quartus\bin\cygwin\usr\include\w32api"/>
<definedSymbol symbol="__STDC__=1"/>
<definedSymbol symbol="__STDC_HOSTED__=1"/>
<definedSymbol symbol="__GNUC__=4"/>
<definedSymbol symbol="__GNUC_MINOR__=5"/>
<definedSymbol symbol="__GNUC_MINOR__=8"/>
<definedSymbol symbol="__GNUC_PATCHLEVEL__=3"/>
<definedSymbol symbol="__SIZE_TYPE__=unsigned int"/>
<definedSymbol symbol="__SIZE_TYPE__=long unsigned int"/>
<definedSymbol symbol="__PTRDIFF_TYPE__=int"/>
<definedSymbol symbol="__PTRDIFF_TYPE__=long int"/>
<definedSymbol symbol="__WCHAR_TYPE__=short unsigned int"/>
<definedSymbol symbol="__WINT_TYPE__=unsigned int"/>
<definedSymbol symbol="__INTMAX_TYPE__=long long int"/>
<definedSymbol symbol="__INTMAX_TYPE__=long int"/>
<definedSymbol symbol="__UINTMAX_TYPE__=long long unsigned int"/>
<definedSymbol symbol="__UINTMAX_TYPE__=long unsigned int"/>
<definedSymbol symbol="__CHAR16_TYPE__=short unsigned int"/>
<definedSymbol symbol="__CHAR32_TYPE__=unsigned int"/>
<definedSymbol symbol="__SIG_ATOMIC_TYPE__=int"/>
<definedSymbol symbol="__INT8_TYPE__=signed char"/>
<definedSymbol symbol="__INT16_TYPE__=short int"/>
<definedSymbol symbol="__INT32_TYPE__=int"/>
<definedSymbol symbol="__INT64_TYPE__=long long int"/>
<definedSymbol symbol="__INT64_TYPE__=long int"/>
<definedSymbol symbol="__UINT8_TYPE__=unsigned char"/>
<definedSymbol symbol="__UINT16_TYPE__=short unsigned int"/>
<definedSymbol symbol="__UINT32_TYPE__=unsigned int"/>
<definedSymbol symbol="__UINT64_TYPE__=long long unsigned int"/>
<definedSymbol symbol="__UINT64_TYPE__=long unsigned int"/>
<definedSymbol symbol="__INT_LEAST8_TYPE__=signed char"/>
<definedSymbol symbol="__INT_LEAST16_TYPE__=short int"/>
<definedSymbol symbol="__INT_LEAST32_TYPE__=int"/>
<definedSymbol symbol="__INT_LEAST64_TYPE__=long long int"/>
<definedSymbol symbol="__INT_LEAST64_TYPE__=long int"/>
<definedSymbol symbol="__UINT_LEAST8_TYPE__=unsigned char"/>
<definedSymbol symbol="__UINT_LEAST16_TYPE__=short unsigned int"/>
<definedSymbol symbol="__UINT_LEAST32_TYPE__=unsigned int"/>
<definedSymbol symbol="__UINT_LEAST64_TYPE__=long long unsigned int"/>
<definedSymbol symbol="__UINT_LEAST64_TYPE__=long unsigned int"/>
<definedSymbol symbol="__INT_FAST8_TYPE__=signed char"/>
<definedSymbol symbol="__INT_FAST16_TYPE__=int"/>
<definedSymbol symbol="__INT_FAST16_TYPE__=long int"/>
<definedSymbol symbol="__INT_FAST32_TYPE__=int"/>
<definedSymbol symbol="__INT_FAST32_TYPE__=long int"/>
<definedSymbol symbol="__INT_FAST64_TYPE__=long long int"/>
<definedSymbol symbol="__INT_FAST64_TYPE__=long int"/>
<definedSymbol symbol="__UINT_FAST8_TYPE__=unsigned char"/>
<definedSymbol symbol="__UINT_FAST16_TYPE__=unsigned int"/>
<definedSymbol symbol="__UINT_FAST16_TYPE__=long unsigned int"/>
<definedSymbol symbol="__UINT_FAST32_TYPE__=unsigned int"/>
<definedSymbol symbol="__UINT_FAST32_TYPE__=long unsigned int"/>
<definedSymbol symbol="__UINT_FAST64_TYPE__=long long unsigned int"/>
<definedSymbol symbol="__UINT_FAST64_TYPE__=long unsigned int"/>
<definedSymbol symbol="__INTPTR_TYPE__=int"/>
<definedSymbol symbol="__INTPTR_TYPE__=long int"/>
<definedSymbol symbol="__UINTPTR_TYPE__=unsigned int"/>
<definedSymbol symbol="__UINTPTR_TYPE__=long unsigned int"/>
<definedSymbol symbol="__GXX_ABI_VERSION=1002"/>
<definedSymbol symbol="__SCHAR_MAX__=127"/>
<definedSymbol symbol="__SHRT_MAX__=32767"/>
<definedSymbol symbol="__INT_MAX__=2147483647"/>
<definedSymbol symbol="__LONG_MAX__=2147483647L"/>
<definedSymbol symbol="__LONG_MAX__=9223372036854775807L"/>
<definedSymbol symbol="__LONG_LONG_MAX__=9223372036854775807LL"/>
<definedSymbol symbol="__WCHAR_MAX__=65535"/>
<definedSymbol symbol="__WCHAR_MIN__=0"/>
<definedSymbol symbol="__WINT_MAX__=4294967295U"/>
<definedSymbol symbol="__WINT_MIN__=0U"/>
<definedSymbol symbol="__PTRDIFF_MAX__=2147483647"/>
<definedSymbol symbol="__PTRDIFF_MAX__=9223372036854775807L"/>
<definedSymbol symbol="__SIZE_MAX__=4294967295U"/>
<definedSymbol symbol="__SIZE_MAX__=18446744073709551615UL"/>
<definedSymbol symbol="__CHAR_BIT__=8"/>
<definedSymbol symbol="__INTMAX_MAX__=9223372036854775807LL"/>
<definedSymbol symbol="__INTMAX_MAX__=9223372036854775807L"/>
<definedSymbol symbol="__INTMAX_C(c)=c ## LL"/>
<definedSymbol symbol="__INTMAX_C(c)=c ## L"/>
<definedSymbol symbol="__UINTMAX_MAX__=18446744073709551615ULL"/>
<definedSymbol symbol="__UINTMAX_MAX__=18446744073709551615UL"/>
<definedSymbol symbol="__UINTMAX_C(c)=c ## ULL"/>
<definedSymbol symbol="__UINTMAX_C(c)=c ## UL"/>
<definedSymbol symbol="__SIG_ATOMIC_MAX__=2147483647"/>
<definedSymbol symbol="__SIG_ATOMIC_MIN__=(-__SIG_ATOMIC_MAX__ - 1)"/>
<definedSymbol symbol="__INT8_MAX__=127"/>
<definedSymbol symbol="__INT16_MAX__=32767"/>
<definedSymbol symbol="__INT32_MAX__=2147483647"/>
<definedSymbol symbol="__INT64_MAX__=9223372036854775807LL"/>
<definedSymbol symbol="__INT64_MAX__=9223372036854775807L"/>
<definedSymbol symbol="__UINT8_MAX__=255"/>
<definedSymbol symbol="__UINT16_MAX__=65535"/>
<definedSymbol symbol="__UINT32_MAX__=4294967295U"/>
<definedSymbol symbol="__UINT64_MAX__=18446744073709551615ULL"/>
<definedSymbol symbol="__UINT64_MAX__=18446744073709551615UL"/>
<definedSymbol symbol="__INT_LEAST8_MAX__=127"/>
<definedSymbol symbol="__INT8_C(c)=c"/>
<definedSymbol symbol="__INT_LEAST16_MAX__=32767"/>
<definedSymbol symbol="__INT16_C(c)=c"/>
<definedSymbol symbol="__INT_LEAST32_MAX__=2147483647"/>
<definedSymbol symbol="__INT32_C(c)=c"/>
<definedSymbol symbol="__INT_LEAST64_MAX__=9223372036854775807LL"/>
<definedSymbol symbol="__INT_LEAST64_MAX__=9223372036854775807L"/>
<definedSymbol symbol="__INT64_C(c)=c ## LL"/>
<definedSymbol symbol="__INT64_C(c)=c ## L"/>
<definedSymbol symbol="__UINT_LEAST8_MAX__=255"/>
<definedSymbol symbol="__UINT8_C(c)=c"/>
<definedSymbol symbol="__UINT_LEAST16_MAX__=65535"/>
<definedSymbol symbol="__UINT16_C(c)=c"/>
<definedSymbol symbol="__UINT_LEAST32_MAX__=4294967295U"/>
<definedSymbol symbol="__UINT32_C(c)=c ## U"/>
<definedSymbol symbol="__UINT_LEAST64_MAX__=18446744073709551615ULL"/>
<definedSymbol symbol="__UINT_LEAST64_MAX__=18446744073709551615UL"/>
<definedSymbol symbol="__UINT64_C(c)=c ## ULL"/>
<definedSymbol symbol="__UINT64_C(c)=c ## UL"/>
<definedSymbol symbol="__INT_FAST8_MAX__=127"/>
<definedSymbol symbol="__INT_FAST16_MAX__=2147483647"/>
<definedSymbol symbol="__INT_FAST16_MAX__=9223372036854775807L"/>
<definedSymbol symbol="__INT_FAST32_MAX__=2147483647"/>
<definedSymbol symbol="__INT_FAST32_MAX__=9223372036854775807L"/>
<definedSymbol symbol="__INT_FAST64_MAX__=9223372036854775807LL"/>
<definedSymbol symbol="__INT_FAST64_MAX__=9223372036854775807L"/>
<definedSymbol symbol="__UINT_FAST8_MAX__=255"/>
<definedSymbol symbol="__UINT_FAST16_MAX__=4294967295U"/>
<definedSymbol symbol="__UINT_FAST16_MAX__=18446744073709551615UL"/>
<definedSymbol symbol="__UINT_FAST32_MAX__=4294967295U"/>
<definedSymbol symbol="__UINT_FAST32_MAX__=18446744073709551615UL"/>
<definedSymbol symbol="__UINT_FAST64_MAX__=18446744073709551615ULL"/>
<definedSymbol symbol="__UINT_FAST64_MAX__=18446744073709551615UL"/>
<definedSymbol symbol="__INTPTR_MAX__=2147483647"/>
<definedSymbol symbol="__INTPTR_MAX__=9223372036854775807L"/>
<definedSymbol symbol="__UINTPTR_MAX__=4294967295U"/>
<definedSymbol symbol="__UINTPTR_MAX__=18446744073709551615UL"/>
<definedSymbol symbol="__FLT_EVAL_METHOD__=2"/>
<definedSymbol symbol="__FLT_EVAL_METHOD__=0"/>
<definedSymbol symbol="__DEC_EVAL_METHOD__=2"/>
<definedSymbol symbol="__FLT_RADIX__=2"/>
<definedSymbol symbol="__FLT_MANT_DIG__=24"/>
<definedSymbol symbol="__FLT_DIG__=6"/>
<definedSymbol symbol="__FLT_MIN_EXP__=(-125)"/>
<definedSymbol symbol="__FLT_MIN_10_EXP__=(-37)"/>
<definedSymbol symbol="__FLT_MAX_EXP__=128"/>
<definedSymbol symbol="__FLT_MAX_10_EXP__=38"/>
<definedSymbol symbol="__FLT_MAX__=3.40282346638528859812e+38F"/>
<definedSymbol symbol="__FLT_MIN__=1.17549435082228750797e-38F"/>
<definedSymbol symbol="__FLT_EPSILON__=1.19209289550781250000e-7F"/>
<definedSymbol symbol="__FLT_DENORM_MIN__=1.40129846432481707092e-45F"/>
<definedSymbol symbol="__FLT_HAS_DENORM__=1"/>
<definedSymbol symbol="__FLT_HAS_INFINITY__=1"/>
<definedSymbol symbol="__FLT_HAS_QUIET_NAN__=1"/>
<definedSymbol symbol="__DBL_MANT_DIG__=53"/>
<definedSymbol symbol="__DBL_DIG__=15"/>
<definedSymbol symbol="__DBL_MIN_EXP__=(-1021)"/>
<definedSymbol symbol="__DBL_MIN_10_EXP__=(-307)"/>
<definedSymbol symbol="__DBL_MAX_EXP__=1024"/>
<definedSymbol symbol="__DBL_MAX_10_EXP__=308"/>
<definedSymbol symbol="__DBL_MAX__=((double)1.79769313486231570815e+308L)"/>
<definedSymbol symbol="__DBL_MIN__=((double)2.22507385850720138309e-308L)"/>
<definedSymbol symbol="__DBL_EPSILON__=((double)2.22044604925031308085e-16L)"/>
<definedSymbol symbol="__DBL_DENORM_MIN__=((double)4.94065645841246544177e-324L)"/>
<definedSymbol symbol="__DBL_HAS_DENORM__=1"/>
<definedSymbol symbol="__DBL_HAS_INFINITY__=1"/>
<definedSymbol symbol="__DBL_HAS_QUIET_NAN__=1"/>
<definedSymbol symbol="__LDBL_MANT_DIG__=64"/>
<definedSymbol symbol="__LDBL_DIG__=18"/>
<definedSymbol symbol="__LDBL_MIN_EXP__=(-16381)"/>
<definedSymbol symbol="__LDBL_MIN_10_EXP__=(-4931)"/>
<definedSymbol symbol="__LDBL_MAX_EXP__=16384"/>
<definedSymbol symbol="__LDBL_MAX_10_EXP__=4932"/>
<definedSymbol symbol="__DECIMAL_DIG__=21"/>
<definedSymbol symbol="__LDBL_MAX__=1.18973149535723176502e+4932L"/>
<definedSymbol symbol="__LDBL_MIN__=3.36210314311209350626e-4932L"/>
<definedSymbol symbol="__LDBL_EPSILON__=1.08420217248550443401e-19L"/>
<definedSymbol symbol="__LDBL_DENORM_MIN__=3.64519953188247460253e-4951L"/>
<definedSymbol symbol="__LDBL_HAS_DENORM__=1"/>
<definedSymbol symbol="__LDBL_HAS_INFINITY__=1"/>
<definedSymbol symbol="__LDBL_HAS_QUIET_NAN__=1"/>
<definedSymbol symbol="__DEC32_MANT_DIG__=7"/>
<definedSymbol symbol="__DEC32_MIN_EXP__=(-94)"/>
<definedSymbol symbol="__DEC32_MAX_EXP__=97"/>
<definedSymbol symbol="__DEC32_MIN__=1E-95DF"/>
<definedSymbol symbol="__DEC32_MAX__=9.999999E96DF"/>
<definedSymbol symbol="__DEC32_EPSILON__=1E-6DF"/>
<definedSymbol symbol="__DEC32_SUBNORMAL_MIN__=0.000001E-95DF"/>
<definedSymbol symbol="__DEC64_MANT_DIG__=16"/>
<definedSymbol symbol="__DEC64_MIN_EXP__=(-382)"/>
<definedSymbol symbol="__DEC64_MAX_EXP__=385"/>
<definedSymbol symbol="__DEC64_MIN__=1E-383DD"/>
<definedSymbol symbol="__DEC64_MAX__=9.999999999999999E384DD"/>
<definedSymbol symbol="__DEC64_EPSILON__=1E-15DD"/>
<definedSymbol symbol="__DEC64_SUBNORMAL_MIN__=0.000000000000001E-383DD"/>
<definedSymbol symbol="__DEC128_MANT_DIG__=34"/>
<definedSymbol symbol="__DEC128_MIN_EXP__=(-6142)"/>
<definedSymbol symbol="__DEC128_MAX_EXP__=6145"/>
<definedSymbol symbol="__DEC128_MIN__=1E-6143DL"/>
<definedSymbol symbol="__DEC128_MAX__=9.999999999999999999999999999999999E6144DL"/>
<definedSymbol symbol="__DEC128_EPSILON__=1E-33DL"/>
<definedSymbol symbol="__DEC128_SUBNORMAL_MIN__=0.000000000000000000000000000000001E-6143DL"/>
<definedSymbol symbol="__REGISTER_PREFIX__="/>
<definedSymbol symbol="__USER_LABEL_PREFIX__=_"/>
<definedSymbol symbol="__USER_LABEL_PREFIX__="/>
<definedSymbol symbol="__VERSION__=&quot;4.5.3&quot;"/>
<definedSymbol symbol="__VERSION__=&quot;4.8.3&quot;"/>
<definedSymbol symbol="__GNUC_GNU_INLINE__=1"/>
<definedSymbol symbol="__NO_INLINE__=1"/>
<definedSymbol symbol="__FINITE_MATH_ONLY__=0"/>
<definedSymbol symbol="__GCC_HAVE_SYNC_COMPARE_AND_SWAP_1=1"/>
<definedSymbol symbol="__GCC_HAVE_SYNC_COMPARE_AND_SWAP_2=1"/>
<definedSymbol symbol="__GCC_HAVE_SYNC_COMPARE_AND_SWAP_4=1"/>
<definedSymbol symbol="__GCC_HAVE_SYNC_COMPARE_AND_SWAP_8=1"/>
<definedSymbol symbol="__PRAGMA_REDEFINE_EXTNAME=1"/>
<definedSymbol symbol="__SIZEOF_INT__=4"/>
<definedSymbol symbol="__SIZEOF_LONG__=4"/>
<definedSymbol symbol="__SIZEOF_LONG__=8"/>
<definedSymbol symbol="__SIZEOF_LONG_LONG__=8"/>
<definedSymbol symbol="__SIZEOF_SHORT__=2"/>
<definedSymbol symbol="__SIZEOF_FLOAT__=4"/>
<definedSymbol symbol="__SIZEOF_DOUBLE__=8"/>
<definedSymbol symbol="__SIZEOF_LONG_DOUBLE__=12"/>
<definedSymbol symbol="__SIZEOF_LONG_DOUBLE__=16"/>
<definedSymbol symbol="__SIZEOF_SIZE_T__=4"/>
<definedSymbol symbol="__SIZEOF_SIZE_T__=8"/>
<definedSymbol symbol="__SIZEOF_WCHAR_T__=2"/>
<definedSymbol symbol="__SIZEOF_WINT_T__=4"/>
<definedSymbol symbol="__SIZEOF_PTRDIFF_T__=4"/>
<definedSymbol symbol="__SIZEOF_PTRDIFF_T__=8"/>
<definedSymbol symbol="__SIZEOF_POINTER__=4"/>
<definedSymbol symbol="__SIZEOF_POINTER__=8"/>
<definedSymbol symbol="__i386=1"/>
<definedSymbol symbol="__i386__=1"/>
<definedSymbol symbol="i386=1"/>
<definedSymbol symbol="__i686=1"/>
<definedSymbol symbol="__i686__=1"/>
<definedSymbol symbol="__pentiumpro=1"/>
<definedSymbol symbol="__pentiumpro__=1"/>
<definedSymbol symbol="_X86_=1"/>
<definedSymbol symbol="__stdcall=__attribute__((__stdcall__))"/>
<definedSymbol symbol="__fastcall=__attribute__((__fastcall__))"/>
<definedSymbol symbol="__cdecl=__attribute__((__cdecl__))"/>
<definedSymbol symbol="_stdcall=__attribute__((__stdcall__))"/>
<definedSymbol symbol="_fastcall=__attribute__((__fastcall__))"/>
<definedSymbol symbol="_cdecl=__attribute__((__cdecl__))"/>
<definedSymbol symbol="__GXX_MERGED_TYPEINFO_NAMES=0"/>
<definedSymbol symbol="__GXX_TYPEINFO_EQUALITY_INLINE=0"/>
<definedSymbol symbol="__declspec(x)=__attribute__((x))"/>
<definedSymbol symbol="__BIGGEST_ALIGNMENT__=16"/>
<definedSymbol symbol="__CYGWIN32__=1"/>
<definedSymbol symbol="__CYGWIN__=1"/>
<definedSymbol symbol="unix=1"/>
<definedSymbol symbol="__unix__=1"/>
<definedSymbol symbol="__unix=1"/>
<definedSymbol symbol="SYSTEM_BUS_WIDTH=32"/>
<definedSymbol symbol="__hal__=1"/>
<definedSymbol symbol="ALT_NO_INSTRUCTION_EMULATION=1"/>
<definedSymbol symbol="ALT_SINGLE_THREADED=1"/>
<definedSymbol symbol="__ATOMIC_RELAXED=0"/>
<definedSymbol symbol="__ATOMIC_SEQ_CST=5"/>
<definedSymbol symbol="__ATOMIC_ACQUIRE=2"/>
<definedSymbol symbol="__ATOMIC_RELEASE=3"/>
<definedSymbol symbol="__ATOMIC_ACQ_REL=4"/>
<definedSymbol symbol="__ATOMIC_CONSUME=1"/>
<definedSymbol symbol="__pic__=1"/>
<definedSymbol symbol="__PIC__=1"/>
<definedSymbol symbol="_LP64=1"/>
<definedSymbol symbol="__LP64__=1"/>
<definedSymbol symbol="__ORDER_LITTLE_ENDIAN__=1234"/>
<definedSymbol symbol="__ORDER_BIG_ENDIAN__=4321"/>
<definedSymbol symbol="__ORDER_PDP_ENDIAN__=3412"/>
<definedSymbol symbol="__BYTE_ORDER__=__ORDER_LITTLE_ENDIAN__"/>
<definedSymbol symbol="__FLOAT_WORD_ORDER__=__ORDER_LITTLE_ENDIAN__"/>
<definedSymbol symbol="__FLT_DECIMAL_DIG__=9"/>
<definedSymbol symbol="__DBL_DECIMAL_DIG__=17"/>
<definedSymbol symbol="__GCC_ATOMIC_BOOL_LOCK_FREE=2"/>
<definedSymbol symbol="__GCC_ATOMIC_CHAR_LOCK_FREE=2"/>
<definedSymbol symbol="__GCC_ATOMIC_CHAR16_T_LOCK_FREE=2"/>
<definedSymbol symbol="__GCC_ATOMIC_CHAR32_T_LOCK_FREE=2"/>
<definedSymbol symbol="__GCC_ATOMIC_WCHAR_T_LOCK_FREE=2"/>
<definedSymbol symbol="__GCC_ATOMIC_SHORT_LOCK_FREE=2"/>
<definedSymbol symbol="__GCC_ATOMIC_INT_LOCK_FREE=2"/>
<definedSymbol symbol="__GCC_ATOMIC_LONG_LOCK_FREE=2"/>
<definedSymbol symbol="__GCC_ATOMIC_LLONG_LOCK_FREE=2"/>
<definedSymbol symbol="__GCC_ATOMIC_TEST_AND_SET_TRUEVAL=1"/>
<definedSymbol symbol="__GCC_ATOMIC_POINTER_LOCK_FREE=2"/>
<definedSymbol symbol="__SIZEOF_INT128__=16"/>
<definedSymbol symbol="__amd64=1"/>
<definedSymbol symbol="__amd64__=1"/>
<definedSymbol symbol="__x86_64=1"/>
<definedSymbol symbol="__x86_64__=1"/>
<definedSymbol symbol="__ATOMIC_HLE_ACQUIRE=65536"/>
<definedSymbol symbol="__ATOMIC_HLE_RELEASE=131072"/>
<definedSymbol symbol="__k8=1"/>
<definedSymbol symbol="__k8__=1"/>
<definedSymbol symbol="__code_model_medium__=1"/>
<definedSymbol symbol="__MMX__=1"/>
<definedSymbol symbol="__SSE__=1"/>
<definedSymbol symbol="__SSE2__=1"/>
<definedSymbol symbol="__FXSR__=1"/>
<definedSymbol symbol="__SSE_MATH__=1"/>
<definedSymbol symbol="__SSE2_MATH__=1"/>
<definedSymbol symbol="__SEH__=1"/>
<definedSymbol symbol="__thiscall=__attribute__((__thiscall__))"/>
<definedSymbol symbol="_thiscall=__attribute__((__thiscall__))"/>
<definedSymbol symbol="__DECIMAL_BID_FORMAT__=1"/>
</collector>
</instance>
</scannerInfo>

Eclipse CDT Invalid Project Path

Eclipse BSP-Project uses Nios II extensions

<nature>com.altera.sbtgui.project.SBTGUIBspNature</nature>
<?xml version="1.0" encoding="UTF-8"?>
<projectDescription>
	<name>hcpp_bsp</name>
	<comment></comment>
	<projects>
	</projects>
	<buildSpec>
		<buildCommand>
			<name>org.eclipse.cdt.managedbuilder.core.genmakebuilder</name>
			<triggers>clean,full,incremental,</triggers>
			<arguments>
			</arguments>
		</buildCommand>
		<buildCommand>
			<name>org.eclipse.cdt.managedbuilder.core.ScannerConfigBuilder</name>
			<triggers>full,incremental,</triggers>
			<arguments>
			</arguments>
		</buildCommand>
	</buildSpec>
	<natures>
		<nature>org.eclipse.cdt.core.cnature</nature>
		<nature>org.eclipse.cdt.managedbuilder.core.managedBuildNature</nature>
		<nature>org.eclipse.cdt.managedbuilder.core.ScannerConfigNature</nature>
		<nature>org.eclipse.cdt.core.ccnature</nature>
		<nature>com.altera.sbtgui.project.SBTGUINature</nature>
		<nature>com.altera.sbtgui.project.SBTGUICustomAppNature</nature>
		<nature>com.altera.sbtgui.project.SBTGUIBspNature</nature>
	</natures>
</projectDescription>

Use Folding / Expand / Collapse

eclipse_keys eclipse_folding

How to collapse blocks of code in Eclipse?
Is there a way to collapse all code blocks in Eclipse?

JTAG on Linux

$ jtagconfig 
1) USB-Blaster variant [6-2]
  Unable to lock chain - Insufficient port permissions

Altera USB-Blaster with Ubuntu 14.04

# For Altera USB-Blaster permissions.
SUBSYSTEM=="usb",\
ENV{DEVTYPE}=="usb_device",\
ATTR{idVendor}=="09fb",\
ATTR{idProduct}=="6010",\
MODE="0666",\
NAME="bus/usb/$env{BUSNUM}/$env{DEVNUM}",\
RUN+="/bin/chmod 0666 %c"
$ sudo udevadm control --reload
$ jtagd --foreground --debug
JTAG daemon started
Using config file /etc/jtagd/jtagd.conf
Remote JTAG permitted when password set
No USB device change detection because libudev.so.0 not found
USB-Blaster port (/dev/bus/usb/006/002) open failed (13)
USB-Blaster added "USB-Blaster variant [6-2]"

Ubuntu 13.04 (64 bit) won’t launch Brackets, libudev.so.0
The solution of lacking libudev.so.0

$ sudo ln -s /lib/x86_64-linux-gnu/libudev.so.1 /lib/x86_64-linux-gnu/libudev.so.0

Un-plug and re-plug the USB Blaster!!!

$ jtagd --foreground --debug
JTAG daemon started
Using config file /etc/jtagd/jtagd.conf
Remote JTAG permitted when password set
USB-Blaster "USB-Blaster" firmware version 4.00
USB-Blaster endpoints out=02(64), in=81(64); urb size=1024
USB-Blaster added "USB-Blaster [6-2]"
$ sudo killall -9 jtagd
$ jtagconfig 
1) USB-Blaster [6-2]
  020F70DD   EP3C120/EP4CE115

Reset NIOS by software

Can I perform a software reset on a Nios II embedded processor?

    NIOS2_WRITE_STATUS(0);
    NIOS2_WRITE_IENABLE(0);
    ((void (*) (void)) NIOS2_RESET_ADDR) ();

IEEE1588 PTPv2

Standards

wiki.hevs.ch: Standards/Ethernet PTP/frames
National Institute of Standards and Technology: IEEE 1588

Articles

Why is IEEE 1588 so accurate?
End-to-End Versus Peer-to-Peer
IEEE 1588, Standard for a Precision Clock Synchronization Protocol (PDF)
Precision Time Protocol (PTP/IEEE-1588) (PDF)
Evaluation of 1588v2 for Deployment (PDF)

PTPv2 Simulator

Similiar programs

Windows Based Pcap Editor

Companies

Symmetricom, Inc.
Microsemi (Symmetricom): TimeProvider 5000 (PTP IEEE 1588 v2 Grandmaster Clock)
Meinberg Funkuhren GmbH & Co. KG

Do-it-yourself

Time server using 1PPS GPS receiver

Wireshark

Bug 6126 – 1588-2008 does not decode tlvType in Signaling Message

TI Voyage 200: Cheatsheet

TIGCC

Programming for TI Calculator | TIGCC Tutorial #1
CAVERUSH by HeroQbe #GPPCC6 (source code)

Screenshots

List/Vector operations List append
Array/Matrix operations
List of lists: use comma!!

TIEdit

dnorm

YouTube Programming Tutorial

  • If
  • For
  • Disp

Programación Voyage 200 #1
Programación Voyage 200 #2
Programación Voyage 200 #3 (If)
Programación Voyage 200 #4 (Ejemplo)
Programación Voyage 200 #5 Entrada y Salida de datos

Linux

TI-Basic Developer

[   50.007217] usb 2-1.7: new full-speed USB device number 5 using ehci-pci
[   50.117451] usb 2-1.7: New USB device found, idVendor=0451, idProduct=e001
[   50.117456] usb 2-1.7: New USB device strings: Mfr=1, Product=2, SerialNumber=0
[   50.117459] usb 2-1.7: Product: TI-GRAPH LINK USB
[   50.117462] usb 2-1.7: Manufacturer: Texas Instruments

TiLP Project at SourceForge.net
ubuntuusers.de: TiLP

$ sudo apt-get install tilp2 
[sudo] password for andreas: 
Reading package lists... Done
Building dependency tree       
Reading state information... Done
The following additional packages will be installed:
  libticables2-6 libticalcs2-11 libticonv7 libtifiles2-9
The following NEW packages will be installed:
  libticables2-6 libticalcs2-11 libticonv7 libtifiles2-9 tilp2

TiEmu
TiEmu
TiEmu is a multi-platform emulator for TI89 / TI89 Titanium / TI92 / TI92+ / V200PLT hand-helds.

TilEm
TilEm
TilEm is an emulator and debugger for Texas Instruments Z80-based graphing calculators.

Basic Function Graphing

  • Finding y(x) at a Specified Point
  • Finding a Zero, Minimum, or Maximum within an Interval
  • Finding the Intersection of Two Functions within an Interval
  • Finding the Derivative (Differenzial) at a Point
  • Finding the Numerical Integral over an Interval
  • Finding an Inflection Point (Wendepunkt) within an Interval
  • Finding the Distance between Two Points
  • Drawing a Tangent Line

Units and Constants

List of Predefined Constants on the Voyage 200 Graphing Calculators
The Stefan-Boltzmann Constant Not Displaying as Listed in the Voyage 200 Guidebook

Serial Port Access Control

Problem:

Cannot open /dev/ttyS0: Permission denied

Answer:

$ ls -la /dev/ttyUSB0 
crw-rw---- 1 root dialout 188, 0 Sep 29 17:59 /dev/ttyUSB0

$ groups $USER
andreas : andreas adm cdrom sudo dip plugdev lpadmin sambashare wireshark

$ sudo gpasswd --add $USER dialout
Adding user andreas to group dialout

$ groups $USER
andreas : andreas adm dialout cdrom sudo dip plugdev lpadmin sambashare wireshark

Source: Serial port terminal > Cannot open /dev/ttyS0: Permission denied

Freescale/Motorola 68HC12

  • PC68HC912B32
  • 68HC912
  • 68HC12
  • HCS12
  • MC9S12
  • MC9S12XS128MAL
  • MC9S12XEP10
  • MC9S12XDT256

Overview

Freescale MC9S12 and MC9S12X
mikrocontroller.net: 68HC12
Freescale 68HC12
68HC12 CPU and Peripheral Overview
Türkisches 68HC12 Tutorial
M68HC12B32EVB Evaluation Board (PDF)
Microcontroller and PLD projects – 68HC11 (Motorola)
Roger’s Embedded Microcontrollers Home Page

Tutorials

GCC-HCS12 Video Tutorials
Getting Started with GCC for Motorola 68HC12 Using DRAGON12 and MiniDRAGON+ (PDF)

GCC Compiler

stackoverflow: GCC toolchain for 68HC12/68HC12X
GCC 3.3.6: 68HC11 & 68HC12 Windows Packages
GCC 3.3.1: 68HC11 & 68HC12 Windows Packages
Weblog GNU 68HC11/12
GNU C and the MicroController eXecutive for 68HC12

Shops

ELMICRO: Elektronikladen
ELMICRO: CardS12 HCS12 / S12X Controller Modul
BiPOM: 68HC12 Training Kit
EVBplus.com – DRAGON12-Plus2

Technological Arts neCore12: “networked embeddable” microcontroller
MicroController Pros LLC: MC9S12NE64 Embedded Ethernet Starter Kit
shop34763529.taobao.com

eBay

weixinliang729: Freescale development board for MC9S12XS128MAL XS128
weixinliang729: Freescale USBDM Emulator BDM Support HCS12 HC08 Coldfire Codewarrior
zysz68: XS128 Evaluation Board for Freescale MC9S12XS128MAL

xrdp (sesman-Xvnc) Keyboard Layout

How to use Remote Desktop connection against Ubuntu 12.04
XRDP – How To Make your keyboard “special keys” (Alt+Gr, Up,Down,..) working when using XRDP

$ onboard
2015-04-15 18:15:14,063:WARNING:Config: mousetweaks GSettings schema not found, mousetweaks integration disabled.
2015-04-15 18:15:14,407:WARNING:OnboardGtk: vk: XkbGetKeyboard failed.
2015-04-15 18:15:14,481:WARNING:Onboard.XInput: Failed to create osk.Devices: failed to initialize XInput extension
2015-04-15 18:15:14,481:WARNING:TouchInput: XInput event source failed to initialize, falling back to GTK.
2015-04-15 18:15:14,481:WARNING:Onboard.Keyboard: XInput click simulator CSFloatingSlave unavailable, falling back to CSButtonMapper.
2015-04-15 18:15:14,721:WARNING:TouchInput: XInput event source failed to initialize, falling back to GTK.
2015-04-15 18:15:15,868:WARNING:OnboardGtk: vk: XkbGetKeyboard failed.
2015-04-15 18:15:16,866:WARNING:OnboardGtk: vk: XkbGetKeyboard failed.

Microsoft’s proprietary Remote Desktop Protocol (RDP)

Language Code

@OSLang codes
Locale IDs Assigned by Microsoft
Locale IDs, Input Locales, and Language Collections for Windows XP and Windows Server 2003

German – Switzerland => 0807

Bug Report

Keyboard not working

Keyboard mapping

GitHub: FreeRDP/xrdp/instfiles/
GitHub: FreeRDP/xrdp/instfiles/km-0807.ini

# cd /root
# git clone https://github.com/FreeRDP/xrdp.git
# cd /etc/xrdp
# cp /root/xrdp/instfiles/km-0807.ini km-0807.ini

Tab

xrdp tab does not work
Bash auto_completion with Xubuntu and xrdp from windows
Fix for xubuntu/xrdp tab/autocomplete in multi-user environment

Xlib KeySym KeyCode

Nead help to create a shortcut with Xlib in C
Convert ASCII character to x11 keycode
Xkb: How to convert a keycode to keysym

Display *display = ...;
KeySym sym_a = XStringToKeysym("A");
KeyCode code_a = XKeysymToKeycode(display, sym_a);

References

Xrdp (= FeeRDP ?)
FreeRDP
rdesktop
Remmina – The GTK+ Remote Desktop Client

xrdp, X11rdp and X11RDP-o-Matic

X11RDP-o-Matic Version 3 Now Released
GitHub: X11RDP-o-Matic

**********************************************************************

 Done. The new package has been installed and saved to

 /root/Downloads/X11RDP-o-Matic/packages/xrdp//xrdp_0.7.0-1_amd64.deb

 You can remove it from your system anytime using:

      dpkg -r xrdp

**********************************************************************
Selecting previously unselected package x11rdp.
(Reading database ... 161218 files and directories currently installed.)
Unpacking x11rdp (from .../Xorg/x11rdp_0.7.0-1_amd64.deb) ...
Setting up x11rdp (0.7.0-1) ...
(Reading database ... 174238 files and directories currently installed.)
Preparing to replace xrdp 0.7.0-1 (using .../xrdp/xrdp_0.7.0-1_amd64.deb) ...
Unpacking replacement xrdp ...
Setting up xrdp (0.7.0-1) ...
Processing triggers for man-db ...
update-rc.d: using dependency based boot sequencing
insserv: script sedqp6v5P: service xrdp already provided!
[ ok ] Starting Remote Desktop Protocol server : xrdp sesman.
X11rdp and xrdp should now be fully installed, configured, and running on this system. One last thing to do now is to configure which desktop will be presented to the user after they log in via RDP. Use the RDPsesconfig utility to do this.