From 3f1b39099b19fbf01ea40f803b1bf7d5856aa979 Mon Sep 17 00:00:00 2001 From: Leon Wilzer Date: Mon, 21 Nov 2022 21:38:08 +0100 Subject: [PATCH] Initial Commit --- .../Bin/GNU/GNU_ARM/arm-elf/include/_ansi.h | 99 +++ .../arm-elf/include/machine/_default_types.h | 121 +++ .../GNU_ARM/arm-elf/include/machine/_types.h | 8 + .../GNU_ARM/arm-elf/include/machine/ieeefp.h | 333 +++++++ Demo_C/Bin/GNU/GNU_ARM/arm-elf/include/math.h | 483 ++++++++++ .../Bin/GNU/GNU_ARM/arm-elf/include/newlib.h | 162 ++++ .../GNU/GNU_ARM/arm-elf/include/sys/_types.h | 87 ++ .../GNU/GNU_ARM/arm-elf/include/sys/config.h | 213 +++++ .../GNU/GNU_ARM/arm-elf/include/sys/lock.h | 24 + .../GNU/GNU_ARM/arm-elf/include/sys/reent.h | 837 ++++++++++++++++++ Demo_C/Bin/GNU/GNU_ARM/bin/arm-elf-gccbug | 558 ++++++++++++ .../lib/gcc/arm-elf/4.4.1/include/stddef.h | 416 +++++++++ Demo_C/Bin/GNU/Tools/copying.txt | 340 +++++++ Demo_C/Bin/GNU/Tools/source.txt | 29 + Demo_C/Bin/GNU/YAGARTO/binutils.url | 2 + Demo_C/Bin/GNU/YAGARTO/copying.newlib.txt | 640 +++++++++++++ Demo_C/Bin/GNU/YAGARTO/copying.txt | 340 +++++++ Demo_C/Bin/GNU/YAGARTO/copying3.txt | 674 ++++++++++++++ Demo_C/Bin/GNU/YAGARTO/gcc.url | 2 + Demo_C/Bin/GNU/YAGARTO/gdb.url | 2 + Demo_C/Bin/GNU/YAGARTO/gnu.url | 2 + Demo_C/Bin/GNU/YAGARTO/newlib.url | 7 + Demo_C/Bin/GNU/YAGARTO/source.txt | 6 + Demo_C/Bin/GNU/YAGARTO/version.txt | 12 + Demo_C/Bin/GNU/YAGARTO/yagarto.url | 7 + Demo_C/Bin/GNU/YAGARTO/yagarto_newlib.txt | 37 + Demo_C/Bin/_exec_cmd.bat | 24 + Demo_C/Bin/_load_flash.bat | 25 + Demo_C/Bin/_load_ramdisk.bat | 25 + Demo_C/Bin/_start.bat | 20 + Demo_C/Bin/set_port.bat | 6 + Demo_C/Common/Makefile | 120 +++ Demo_C/Common/ROBO_TX_FW.h | 576 ++++++++++++ Demo_C/Common/ROBO_TX_PRG.h | 126 +++ Demo_C/Common/ld.lcf | 171 ++++ Demo_C/Common/prg_bt.c | 142 +++ Demo_C/Common/prg_bt_addr.c | 20 + Demo_C/Common/prg_disp.c | 51 ++ Demo_C/Demo/I2cTemp/I2cTemp.c | 199 +++++ Demo_C/Demo/I2cTemp/clean.bat | 6 + Demo_C/Demo/I2cTemp/load_flash.bat | 2 + Demo_C/Demo/I2cTemp/load_ramdisk.bat | 2 + Demo_C/Demo/I2cTemp/load_ramdisk_bt.bat | 2 + Demo_C/Demo/I2cTemp/make.bat | 11 + Demo_C/Demo/I2cTemp/param.mk | 2 + Demo_C/Demo/I2cTemp/run.bat | 2 + Demo_C/Demo/I2cTemp/stop.bat | 2 + Demo_C/Demo/I2cTpa81/I2cTpa81.c | 234 +++++ Demo_C/Demo/I2cTpa81/clean.bat | 6 + Demo_C/Demo/I2cTpa81/load_flash.bat | 2 + Demo_C/Demo/I2cTpa81/load_ramdisk.bat | 2 + Demo_C/Demo/I2cTpa81/load_ramdisk_bt.bat | 2 + Demo_C/Demo/I2cTpa81/make.bat | 11 + Demo_C/Demo/I2cTpa81/param.mk | 2 + Demo_C/Demo/I2cTpa81/run.bat | 2 + Demo_C/Demo/I2cTpa81/stop.bat | 2 + Demo_C/Demo/LED/LED.c | 180 ++++ Demo_C/Demo/LED/clean.bat | 6 + Demo_C/Demo/LED/load_flash.bat | 2 + Demo_C/Demo/LED/load_ramdisk.bat | 2 + Demo_C/Demo/LED/make.bat | 12 + Demo_C/Demo/LED/param.mk | 2 + Demo_C/Demo/LED/run.bat | 2 + Demo_C/Demo/LED/stop.bat | 2 + Demo_C/Demo/LightRun/LightRun.c | 180 ++++ Demo_C/Demo/LightRun/clean.bat | 6 + Demo_C/Demo/LightRun/load_flash.bat | 2 + Demo_C/Demo/LightRun/load_ramdisk.bat | 2 + Demo_C/Demo/LightRun/make.bat | 12 + Demo_C/Demo/LightRun/param.mk | 2 + Demo_C/Demo/LightRun/run.bat | 2 + Demo_C/Demo/LightRun/stop.bat | 2 + .../MotorEx_2M_Master/MotorEx_2M_Master.c | 114 +++ Demo_C/Demo/MotorEx_2M_Master/clean.bat | 6 + Demo_C/Demo/MotorEx_2M_Master/load_flash.bat | 2 + .../Demo/MotorEx_2M_Master/load_ramdisk.bat | 2 + Demo_C/Demo/MotorEx_2M_Master/make.bat | 11 + Demo_C/Demo/MotorEx_2M_Master/param.mk | 2 + Demo_C/Demo/MotorEx_2M_Master/run.bat | 2 + Demo_C/Demo/MotorEx_2M_Master/stop.bat | 2 + Demo_C/Demo/MotorEx_Ext1/MotorEx_Ext1.c | 95 ++ Demo_C/Demo/MotorEx_Ext1/clean.bat | 6 + Demo_C/Demo/MotorEx_Ext1/load_flash.bat | 2 + Demo_C/Demo/MotorEx_Ext1/load_ramdisk.bat | 2 + Demo_C/Demo/MotorEx_Ext1/make.bat | 11 + Demo_C/Demo/MotorEx_Ext1/param.mk | 2 + Demo_C/Demo/MotorEx_Ext1/run.bat | 2 + Demo_C/Demo/MotorEx_Ext1/stop.bat | 2 + Demo_C/Demo/MotorRun/MotorRun.c | 160 ++++ Demo_C/Demo/MotorRun/clean.bat | 6 + Demo_C/Demo/MotorRun/load_flash.bat | 2 + Demo_C/Demo/MotorRun/load_ramdisk.bat | 2 + Demo_C/Demo/MotorRun/make.bat | 11 + Demo_C/Demo/MotorRun/param.mk | 2 + Demo_C/Demo/MotorRun/run.bat | 2 + Demo_C/Demo/MotorRun/stop.bat | 2 + Demo_C/Demo/StopGo/StopGo.c | 123 +++ Demo_C/Demo/StopGo/clean.bat | 6 + Demo_C/Demo/StopGo/load_flash.bat | 2 + Demo_C/Demo/StopGo/load_ramdisk.bat | 2 + Demo_C/Demo/StopGo/make.bat | 11 + Demo_C/Demo/StopGo/param.mk | 2 + Demo_C/Demo/StopGo/run.bat | 2 + Demo_C/Demo/StopGo/stop.bat | 2 + .../StopGoBtButtonPart/StopGoBtButtonPart.c | 337 +++++++ Demo_C/Demo/StopGoBtButtonPart/clean.bat | 6 + Demo_C/Demo/StopGoBtButtonPart/load_flash.bat | 2 + .../Demo/StopGoBtButtonPart/load_ramdisk.bat | 2 + .../StopGoBtButtonPart/load_ramdisk_bt.bat | 2 + Demo_C/Demo/StopGoBtButtonPart/make.bat | 11 + Demo_C/Demo/StopGoBtButtonPart/param.mk | 2 + Demo_C/Demo/StopGoBtButtonPart/run.bat | 2 + Demo_C/Demo/StopGoBtButtonPart/stop.bat | 2 + .../StopGoBtMotorPart/StopGoBtMotorPart.c | 323 +++++++ Demo_C/Demo/StopGoBtMotorPart/clean.bat | 6 + Demo_C/Demo/StopGoBtMotorPart/load_flash.bat | 2 + .../Demo/StopGoBtMotorPart/load_ramdisk.bat | 2 + .../StopGoBtMotorPart/load_ramdisk_bt.bat | 2 + Demo_C/Demo/StopGoBtMotorPart/make.bat | 11 + Demo_C/Demo/StopGoBtMotorPart/param.mk | 2 + Demo_C/Demo/StopGoBtMotorPart/run.bat | 2 + Demo_C/Demo/StopGoBtMotorPart/stop.bat | 2 + Demo_C/Demo/WarningLight/WarningLight.c | 132 +++ Demo_C/Demo/WarningLight/clean.bat | 6 + Demo_C/Demo/WarningLight/load_flash.bat | 2 + Demo_C/Demo/WarningLight/load_ramdisk.bat | 2 + Demo_C/Demo/WarningLight/make.bat | 11 + Demo_C/Demo/WarningLight/param.mk | 2 + Demo_C/Demo/WarningLight/run.bat | 2 + Demo_C/Demo/WarningLight/stop.bat | 2 + Doc/C_Compiler_RoboTXC-deutsch.pdf | Bin 0 -> 438869 bytes Doc/C_Compiler_RoboTXC_english_V1-2.pdf | Bin 0 -> 434905 bytes Driver/ROBO_TX_Controller.inf | 141 +++ Driver/Readme.txt | 8 + 134 files changed, 9280 insertions(+) create mode 100644 Demo_C/Bin/GNU/GNU_ARM/arm-elf/include/_ansi.h create mode 100644 Demo_C/Bin/GNU/GNU_ARM/arm-elf/include/machine/_default_types.h create mode 100644 Demo_C/Bin/GNU/GNU_ARM/arm-elf/include/machine/_types.h create mode 100644 Demo_C/Bin/GNU/GNU_ARM/arm-elf/include/machine/ieeefp.h create mode 100644 Demo_C/Bin/GNU/GNU_ARM/arm-elf/include/math.h create mode 100644 Demo_C/Bin/GNU/GNU_ARM/arm-elf/include/newlib.h create mode 100644 Demo_C/Bin/GNU/GNU_ARM/arm-elf/include/sys/_types.h create mode 100644 Demo_C/Bin/GNU/GNU_ARM/arm-elf/include/sys/config.h create mode 100644 Demo_C/Bin/GNU/GNU_ARM/arm-elf/include/sys/lock.h create mode 100644 Demo_C/Bin/GNU/GNU_ARM/arm-elf/include/sys/reent.h create mode 100644 Demo_C/Bin/GNU/GNU_ARM/bin/arm-elf-gccbug create mode 100644 Demo_C/Bin/GNU/GNU_ARM/lib/gcc/arm-elf/4.4.1/include/stddef.h create mode 100644 Demo_C/Bin/GNU/Tools/copying.txt create mode 100644 Demo_C/Bin/GNU/Tools/source.txt create mode 100644 Demo_C/Bin/GNU/YAGARTO/binutils.url create mode 100644 Demo_C/Bin/GNU/YAGARTO/copying.newlib.txt create mode 100644 Demo_C/Bin/GNU/YAGARTO/copying.txt create mode 100644 Demo_C/Bin/GNU/YAGARTO/copying3.txt create mode 100644 Demo_C/Bin/GNU/YAGARTO/gcc.url create mode 100644 Demo_C/Bin/GNU/YAGARTO/gdb.url create mode 100644 Demo_C/Bin/GNU/YAGARTO/gnu.url create mode 100644 Demo_C/Bin/GNU/YAGARTO/newlib.url create mode 100644 Demo_C/Bin/GNU/YAGARTO/source.txt create mode 100644 Demo_C/Bin/GNU/YAGARTO/version.txt create mode 100644 Demo_C/Bin/GNU/YAGARTO/yagarto.url create mode 100644 Demo_C/Bin/GNU/YAGARTO/yagarto_newlib.txt create mode 100644 Demo_C/Bin/_exec_cmd.bat create mode 100644 Demo_C/Bin/_load_flash.bat create mode 100644 Demo_C/Bin/_load_ramdisk.bat create mode 100644 Demo_C/Bin/_start.bat create mode 100644 Demo_C/Bin/set_port.bat create mode 100644 Demo_C/Common/Makefile create mode 100644 Demo_C/Common/ROBO_TX_FW.h create mode 100644 Demo_C/Common/ROBO_TX_PRG.h create mode 100644 Demo_C/Common/ld.lcf create mode 100644 Demo_C/Common/prg_bt.c create mode 100644 Demo_C/Common/prg_bt_addr.c create mode 100644 Demo_C/Common/prg_disp.c create mode 100644 Demo_C/Demo/I2cTemp/I2cTemp.c create mode 100644 Demo_C/Demo/I2cTemp/clean.bat create mode 100644 Demo_C/Demo/I2cTemp/load_flash.bat create mode 100644 Demo_C/Demo/I2cTemp/load_ramdisk.bat create mode 100644 Demo_C/Demo/I2cTemp/load_ramdisk_bt.bat create mode 100644 Demo_C/Demo/I2cTemp/make.bat create mode 100644 Demo_C/Demo/I2cTemp/param.mk create mode 100644 Demo_C/Demo/I2cTemp/run.bat create mode 100644 Demo_C/Demo/I2cTemp/stop.bat create mode 100644 Demo_C/Demo/I2cTpa81/I2cTpa81.c create mode 100644 Demo_C/Demo/I2cTpa81/clean.bat create mode 100644 Demo_C/Demo/I2cTpa81/load_flash.bat create mode 100644 Demo_C/Demo/I2cTpa81/load_ramdisk.bat create mode 100644 Demo_C/Demo/I2cTpa81/load_ramdisk_bt.bat create mode 100644 Demo_C/Demo/I2cTpa81/make.bat create mode 100644 Demo_C/Demo/I2cTpa81/param.mk create mode 100644 Demo_C/Demo/I2cTpa81/run.bat create mode 100644 Demo_C/Demo/I2cTpa81/stop.bat create mode 100644 Demo_C/Demo/LED/LED.c create mode 100644 Demo_C/Demo/LED/clean.bat create mode 100644 Demo_C/Demo/LED/load_flash.bat create mode 100644 Demo_C/Demo/LED/load_ramdisk.bat create mode 100644 Demo_C/Demo/LED/make.bat create mode 100644 Demo_C/Demo/LED/param.mk create mode 100644 Demo_C/Demo/LED/run.bat create mode 100644 Demo_C/Demo/LED/stop.bat create mode 100644 Demo_C/Demo/LightRun/LightRun.c create mode 100644 Demo_C/Demo/LightRun/clean.bat create mode 100644 Demo_C/Demo/LightRun/load_flash.bat create mode 100644 Demo_C/Demo/LightRun/load_ramdisk.bat create mode 100644 Demo_C/Demo/LightRun/make.bat create mode 100644 Demo_C/Demo/LightRun/param.mk create mode 100644 Demo_C/Demo/LightRun/run.bat create mode 100644 Demo_C/Demo/LightRun/stop.bat create mode 100644 Demo_C/Demo/MotorEx_2M_Master/MotorEx_2M_Master.c create mode 100644 Demo_C/Demo/MotorEx_2M_Master/clean.bat create mode 100644 Demo_C/Demo/MotorEx_2M_Master/load_flash.bat create mode 100644 Demo_C/Demo/MotorEx_2M_Master/load_ramdisk.bat create mode 100644 Demo_C/Demo/MotorEx_2M_Master/make.bat create mode 100644 Demo_C/Demo/MotorEx_2M_Master/param.mk create mode 100644 Demo_C/Demo/MotorEx_2M_Master/run.bat create mode 100644 Demo_C/Demo/MotorEx_2M_Master/stop.bat create mode 100644 Demo_C/Demo/MotorEx_Ext1/MotorEx_Ext1.c create mode 100644 Demo_C/Demo/MotorEx_Ext1/clean.bat create mode 100644 Demo_C/Demo/MotorEx_Ext1/load_flash.bat create mode 100644 Demo_C/Demo/MotorEx_Ext1/load_ramdisk.bat create mode 100644 Demo_C/Demo/MotorEx_Ext1/make.bat create mode 100644 Demo_C/Demo/MotorEx_Ext1/param.mk create mode 100644 Demo_C/Demo/MotorEx_Ext1/run.bat create mode 100644 Demo_C/Demo/MotorEx_Ext1/stop.bat create mode 100644 Demo_C/Demo/MotorRun/MotorRun.c create mode 100644 Demo_C/Demo/MotorRun/clean.bat create mode 100644 Demo_C/Demo/MotorRun/load_flash.bat create mode 100644 Demo_C/Demo/MotorRun/load_ramdisk.bat create mode 100644 Demo_C/Demo/MotorRun/make.bat create mode 100644 Demo_C/Demo/MotorRun/param.mk create mode 100644 Demo_C/Demo/MotorRun/run.bat create mode 100644 Demo_C/Demo/MotorRun/stop.bat create mode 100644 Demo_C/Demo/StopGo/StopGo.c create mode 100644 Demo_C/Demo/StopGo/clean.bat create mode 100644 Demo_C/Demo/StopGo/load_flash.bat create mode 100644 Demo_C/Demo/StopGo/load_ramdisk.bat create mode 100644 Demo_C/Demo/StopGo/make.bat create mode 100644 Demo_C/Demo/StopGo/param.mk create mode 100644 Demo_C/Demo/StopGo/run.bat create mode 100644 Demo_C/Demo/StopGo/stop.bat create mode 100644 Demo_C/Demo/StopGoBtButtonPart/StopGoBtButtonPart.c create mode 100644 Demo_C/Demo/StopGoBtButtonPart/clean.bat create mode 100644 Demo_C/Demo/StopGoBtButtonPart/load_flash.bat create mode 100644 Demo_C/Demo/StopGoBtButtonPart/load_ramdisk.bat create mode 100644 Demo_C/Demo/StopGoBtButtonPart/load_ramdisk_bt.bat create mode 100644 Demo_C/Demo/StopGoBtButtonPart/make.bat create mode 100644 Demo_C/Demo/StopGoBtButtonPart/param.mk create mode 100644 Demo_C/Demo/StopGoBtButtonPart/run.bat create mode 100644 Demo_C/Demo/StopGoBtButtonPart/stop.bat create mode 100644 Demo_C/Demo/StopGoBtMotorPart/StopGoBtMotorPart.c create mode 100644 Demo_C/Demo/StopGoBtMotorPart/clean.bat create mode 100644 Demo_C/Demo/StopGoBtMotorPart/load_flash.bat create mode 100644 Demo_C/Demo/StopGoBtMotorPart/load_ramdisk.bat create mode 100644 Demo_C/Demo/StopGoBtMotorPart/load_ramdisk_bt.bat create mode 100644 Demo_C/Demo/StopGoBtMotorPart/make.bat create mode 100644 Demo_C/Demo/StopGoBtMotorPart/param.mk create mode 100644 Demo_C/Demo/StopGoBtMotorPart/run.bat create mode 100644 Demo_C/Demo/StopGoBtMotorPart/stop.bat create mode 100644 Demo_C/Demo/WarningLight/WarningLight.c create mode 100644 Demo_C/Demo/WarningLight/clean.bat create mode 100644 Demo_C/Demo/WarningLight/load_flash.bat create mode 100644 Demo_C/Demo/WarningLight/load_ramdisk.bat create mode 100644 Demo_C/Demo/WarningLight/make.bat create mode 100644 Demo_C/Demo/WarningLight/param.mk create mode 100644 Demo_C/Demo/WarningLight/run.bat create mode 100644 Demo_C/Demo/WarningLight/stop.bat create mode 100644 Doc/C_Compiler_RoboTXC-deutsch.pdf create mode 100644 Doc/C_Compiler_RoboTXC_english_V1-2.pdf create mode 100644 Driver/ROBO_TX_Controller.inf create mode 100644 Driver/Readme.txt diff --git a/Demo_C/Bin/GNU/GNU_ARM/arm-elf/include/_ansi.h b/Demo_C/Bin/GNU/GNU_ARM/arm-elf/include/_ansi.h new file mode 100644 index 0000000..a3f0334 --- /dev/null +++ b/Demo_C/Bin/GNU/GNU_ARM/arm-elf/include/_ansi.h @@ -0,0 +1,99 @@ +/* Provide support for both ANSI and non-ANSI environments. */ + +/* Some ANSI environments are "broken" in the sense that __STDC__ cannot be + relied upon to have it's intended meaning. Therefore we must use our own + concoction: _HAVE_STDC. Always use _HAVE_STDC instead of __STDC__ in newlib + sources! + + To get a strict ANSI C environment, define macro __STRICT_ANSI__. This will + "comment out" the non-ANSI parts of the ANSI header files (non-ANSI header + files aren't affected). */ + +#ifndef _ANSIDECL_H_ +#define _ANSIDECL_H_ + +#include +#include + +/* First try to figure out whether we really are in an ANSI C environment. */ +/* FIXME: This probably needs some work. Perhaps sys/config.h can be + prevailed upon to give us a clue. */ + +#ifdef __STDC__ +#define _HAVE_STDC +#endif + +#ifdef _HAVE_STDC +#define _PTR void * +#define _AND , +#define _NOARGS void +#define _CONST const +#define _VOLATILE volatile +#define _SIGNED signed +#define _DOTS , ... +#define _VOID void +#ifdef __CYGWIN__ +#define _EXFUN(name, proto) __cdecl name proto +#define _EXPARM(name, proto) (* __cdecl name) proto +#else +#define _EXFUN(name, proto) name proto +#define _EXPARM(name, proto) (* name) proto +#endif +#define _DEFUN(name, arglist, args) name(args) +#define _DEFUN_VOID(name) name(_NOARGS) +#define _CAST_VOID (void) +#ifndef _LONG_DOUBLE +#define _LONG_DOUBLE long double +#endif +#ifndef _LONG_LONG_TYPE +#define _LONG_LONG_TYPE long long +#endif +#ifndef _PARAMS +#define _PARAMS(paramlist) paramlist +#endif +#else +#define _PTR char * +#define _AND ; +#define _NOARGS +#define _CONST +#define _VOLATILE +#define _SIGNED +#define _DOTS +#define _VOID void +#define _EXFUN(name, proto) name() +#define _DEFUN(name, arglist, args) name arglist args; +#define _DEFUN_VOID(name) name() +#define _CAST_VOID +#define _LONG_DOUBLE double +#define _LONG_LONG_TYPE long +#ifndef _PARAMS +#define _PARAMS(paramlist) () +#endif +#endif + +/* Support gcc's __attribute__ facility. */ + +#ifdef __GNUC__ +#define _ATTRIBUTE(attrs) __attribute__ (attrs) +#else +#define _ATTRIBUTE(attrs) +#endif + +/* ISO C++. */ + +#ifdef __cplusplus +#if !(defined(_BEGIN_STD_C) && defined(_END_STD_C)) +#ifdef _HAVE_STD_CXX +#define _BEGIN_STD_C namespace std { extern "C" { +#define _END_STD_C } } +#else +#define _BEGIN_STD_C extern "C" { +#define _END_STD_C } +#endif +#endif +#else +#define _BEGIN_STD_C +#define _END_STD_C +#endif + +#endif /* _ANSIDECL_H_ */ diff --git a/Demo_C/Bin/GNU/GNU_ARM/arm-elf/include/machine/_default_types.h b/Demo_C/Bin/GNU/GNU_ARM/arm-elf/include/machine/_default_types.h new file mode 100644 index 0000000..9a5fc8d --- /dev/null +++ b/Demo_C/Bin/GNU/GNU_ARM/arm-elf/include/machine/_default_types.h @@ -0,0 +1,121 @@ +/* + * $Id: _default_types.h,v 1.2 2008/06/11 22:14:54 jjohnstn Exp $ + */ + +#ifndef _MACHINE__DEFAULT_TYPES_H +#define _MACHINE__DEFAULT_TYPES_H + +#ifdef __cplusplus +extern "C" { +#endif + +/* + * Guess on types by examining *_MIN / *_MAX defines. + */ +#if defined(__GNUC__) && ((__GNUC__ >= 4) || (__GNUC__ >= 3 ) \ + && defined(__GNUC_MINOR__) && (__GNUC_MINOR__ > 2 )) +/* GCC >= 3.3.0 has ____ implicitly defined. */ +#define __EXP(x) __##x##__ +#else +/* Fall back to POSIX versions from */ +#define __EXP(x) x +#include +#endif + +#if __EXP(SCHAR_MAX) == 0x7f +typedef signed char __int8_t ; +typedef unsigned char __uint8_t ; +#define ___int8_t_defined 1 +#endif + +#if __EXP(INT_MAX) == 0x7fff +typedef signed int __int16_t; +typedef unsigned int __uint16_t; +#define ___int16_t_defined 1 +#elif __EXP(SHRT_MAX) == 0x7fff +typedef signed short __int16_t; +typedef unsigned short __uint16_t; +#define ___int16_t_defined 1 +#elif __EXP(SCHAR_MAX) == 0x7fff +typedef signed char __int16_t; +typedef unsigned char __uint16_t; +#define ___int16_t_defined 1 +#endif + +#if ___int16_t_defined +typedef __int16_t __int_least16_t; +typedef __uint16_t __uint_least16_t; +#define ___int_least16_t_defined 1 + +#if !___int8_t_defined +typedef __int16_t __int_least8_t; +typedef __uint16_t __uint_least8_t; +#define ___int_least8_t_defined 1 +#endif +#endif + +#if __EXP(INT_MAX) == 0x7fffffffL +typedef signed int __int32_t; +typedef unsigned int __uint32_t; +#define ___int32_t_defined 1 +#elif __EXP(LONG_MAX) == 0x7fffffffL +typedef signed long __int32_t; +typedef unsigned long __uint32_t; +#define ___int32_t_defined 1 +#elif __EXP(SHRT_MAX) == 0x7fffffffL +typedef signed short __int32_t; +typedef unsigned short __uint32_t; +#define ___int32_t_defined 1 +#elif __EXP(SCHAR_MAX) == 0x7fffffffL +typedef signed char __int32_t; +typedef unsigned char __uint32_t; +#define ___int32_t_defined 1 +#endif + +#if ___int32_t_defined +typedef __int32_t __int_least32_t; +typedef __uint32_t __uint_least32_t; +#define ___int_least32_t_defined 1 + +#if !___int8_t_defined +typedef __int32_t __int_least8_t; +typedef __uint32_t __uint_least8_t; +#define ___int_least8_t_defined 1 +#endif +#if !___int16_t_defined +typedef __int32_t __int_least16_t; +typedef __uint32_t __uint_least16_t; +#define ___int_least16_t_defined 1 +#endif +#endif + +#if __EXP(LONG_MAX) > 0x7fffffff +typedef signed long __int64_t; +typedef unsigned long __uint64_t; +#define ___int64_t_defined 1 + +/* GCC has __LONG_LONG_MAX__ */ +#elif defined(__LONG_LONG_MAX__) && (__LONG_LONG_MAX__ > 0x7fffffff) +typedef signed long long __int64_t; +typedef unsigned long long __uint64_t; +#define ___int64_t_defined 1 + +/* POSIX mandates LLONG_MAX in */ +#elif defined(LLONG_MAX) && (LLONG_MAX > 0x7fffffff) +typedef signed long long __int64_t; +typedef unsigned long long __uint64_t; +#define ___int64_t_defined 1 + +#elif __EXP(INT_MAX) > 0x7fffffff +typedef signed int __int64_t; +typedef unsigned int __uint64_t; +#define ___int64_t_defined 1 +#endif + +#undef __EXP + +#ifdef __cplusplus +} +#endif + +#endif /* _MACHINE__DEFAULT_TYPES_H */ diff --git a/Demo_C/Bin/GNU/GNU_ARM/arm-elf/include/machine/_types.h b/Demo_C/Bin/GNU/GNU_ARM/arm-elf/include/machine/_types.h new file mode 100644 index 0000000..18f96d5 --- /dev/null +++ b/Demo_C/Bin/GNU/GNU_ARM/arm-elf/include/machine/_types.h @@ -0,0 +1,8 @@ +/* + * $Id: _types.h,v 1.3 2007/09/07 21:16:25 jjohnstn Exp $ + */ + +#ifndef _MACHINE__TYPES_H +#define _MACHINE__TYPES_H +#include +#endif diff --git a/Demo_C/Bin/GNU/GNU_ARM/arm-elf/include/machine/ieeefp.h b/Demo_C/Bin/GNU/GNU_ARM/arm-elf/include/machine/ieeefp.h new file mode 100644 index 0000000..b3c7937 --- /dev/null +++ b/Demo_C/Bin/GNU/GNU_ARM/arm-elf/include/machine/ieeefp.h @@ -0,0 +1,333 @@ +#ifndef __IEEE_BIG_ENDIAN +#ifndef __IEEE_LITTLE_ENDIAN + +/* This file can define macros to choose variations of the IEEE float + format: + + _FLT_LARGEST_EXPONENT_IS_NORMAL + + Defined if the float format uses the largest exponent for finite + numbers rather than NaN and infinity representations. Such a + format cannot represent NaNs or infinities at all, but it's FLT_MAX + is twice the IEEE value. + + _FLT_NO_DENORMALS + + Defined if the float format does not support IEEE denormals. Every + float with a zero exponent is taken to be a zero representation. + + ??? At the moment, there are no equivalent macros above for doubles and + the macros are not fully supported by --enable-newlib-hw-fp. + + __IEEE_BIG_ENDIAN + + Defined if the float format is big endian. This is mutually exclusive + with __IEEE_LITTLE_ENDIAN. + + __IEEE_LITTLE_ENDIAN + + Defined if the float format is little endian. This is mutually exclusive + with __IEEE_BIG_ENDIAN. + + Note that one of __IEEE_BIG_ENDIAN or __IEEE_LITTLE_ENDIAN must be specified for a + platform or error will occur. + + __IEEE_BYTES_LITTLE_ENDIAN + + This flag is used in conjunction with __IEEE_BIG_ENDIAN to describe a situation + whereby multiple words of an IEEE floating point are in big endian order, but the + words themselves are little endian with respect to the bytes. + + _DOUBLE_IS_32BITS + + This is used on platforms that support double by using the 32-bit IEEE + float type. + + _FLOAT_ARG + + This represents what type a float arg is passed as. It is used when the type is + not promoted to double. + +*/ + +#if (defined(__arm__) || defined(__thumb__)) && !defined(__MAVERICK__) +/* ARM traditionally used big-endian words; and within those words the + byte ordering was big or little endian depending upon the target. + Modern floating-point formats are naturally ordered; in this case + __VFP_FP__ will be defined, even if soft-float. */ +#ifdef __VFP_FP__ +# ifdef __ARMEL__ +# define __IEEE_LITTLE_ENDIAN +# else +# define __IEEE_BIG_ENDIAN +# endif +#else +# define __IEEE_BIG_ENDIAN +# ifdef __ARMEL__ +# define __IEEE_BYTES_LITTLE_ENDIAN +# endif +#endif +#endif + +#ifdef __hppa__ +#define __IEEE_BIG_ENDIAN +#endif + +#ifdef __SPU__ +#define __IEEE_BIG_ENDIAN + +#define isfinite(y) \ + (__extension__ ({__typeof__(y) __y = (y); \ + (sizeof (__y) == sizeof (float)) ? (1) : \ + fpclassify(__y) != FP_INFINITE && fpclassify(__y) != FP_NAN;})) +#define isinf(x) \ + (__extension__ ({__typeof__(x) __x = (x); \ + (sizeof (__x) == sizeof (float)) ? (0) : __isinfd(__x);})) +#define isnan(x) \ + (__extension__ ({__typeof__(x) __x = (x); \ + (sizeof (__x) == sizeof (float)) ? (0) : __isnand(__x);})) + +/* + * Macros for use in ieeefp.h. We can't just define the real ones here + * (like those above) as we have name space issues when this is *not* + * included via generic the ieeefp.h. + */ +#define __ieeefp_isnanf(x) 0 +#define __ieeefp_isinff(x) 0 +#define __ieeefp_finitef(x) 1 +#endif + +#ifdef __sparc__ +#ifdef __LITTLE_ENDIAN_DATA__ +#define __IEEE_LITTLE_ENDIAN +#else +#define __IEEE_BIG_ENDIAN +#endif +#endif + +#if defined(__m68k__) || defined(__mc68000__) +#define __IEEE_BIG_ENDIAN +#endif + +#if defined(__mc68hc11__) || defined(__mc68hc12__) || defined(__mc68hc1x__) +#define __IEEE_BIG_ENDIAN +#ifdef __HAVE_SHORT_DOUBLE__ +# define _DOUBLE_IS_32BITS +#endif +#endif + +#if defined (__H8300__) || defined (__H8300H__) || defined (__H8300S__) || defined (__H8500__) || defined (__H8300SX__) +#define __IEEE_BIG_ENDIAN +#define _FLOAT_ARG float +#define _DOUBLE_IS_32BITS +#endif + +#ifdef __sh__ +#ifdef __LITTLE_ENDIAN__ +#define __IEEE_LITTLE_ENDIAN +#else +#define __IEEE_BIG_ENDIAN +#endif +#if defined(__SH2E__) || defined(__SH3E__) || defined(__SH4_SINGLE_ONLY__) || defined(__SH2A_SINGLE_ONLY__) +#define _DOUBLE_IS_32BITS +#endif +#endif + +#ifdef _AM29K +#define __IEEE_BIG_ENDIAN +#endif + +#ifdef _WIN32 +#define __IEEE_LITTLE_ENDIAN +#endif + +#ifdef __i386__ +#define __IEEE_LITTLE_ENDIAN +#endif + +#ifdef __i960__ +#define __IEEE_LITTLE_ENDIAN +#endif + +#ifdef __lm32__ +#define __IEEE_BIG_ENDIAN +#endif + +#ifdef __M32R__ +#define __IEEE_BIG_ENDIAN +#endif + +#if defined(_C4x) || defined(_C3x) +#define __IEEE_BIG_ENDIAN +#define _DOUBLE_IS_32BITS +#endif + +#ifdef __TIC80__ +#define __IEEE_LITTLE_ENDIAN +#endif + +#ifdef __MIPSEL__ +#define __IEEE_LITTLE_ENDIAN +#endif +#ifdef __MIPSEB__ +#define __IEEE_BIG_ENDIAN +#endif + +#ifdef __MMIX__ +#define __IEEE_BIG_ENDIAN +#endif + +#ifdef __D30V__ +#define __IEEE_BIG_ENDIAN +#endif + +/* necv70 was __IEEE_LITTLE_ENDIAN. */ + +#ifdef __W65__ +#define __IEEE_LITTLE_ENDIAN +#define _DOUBLE_IS_32BITS +#endif + +#if defined(__Z8001__) || defined(__Z8002__) +#define __IEEE_BIG_ENDIAN +#endif + +#ifdef __m88k__ +#define __IEEE_BIG_ENDIAN +#endif + +#ifdef __mn10300__ +#define __IEEE_LITTLE_ENDIAN +#endif + +#ifdef __mn10200__ +#define __IEEE_LITTLE_ENDIAN +#define _DOUBLE_IS_32BITS +#endif + +#ifdef __v800 +#define __IEEE_LITTLE_ENDIAN +#endif + +#ifdef __v850 +#define __IEEE_LITTLE_ENDIAN +#endif + +#ifdef __D10V__ +#define __IEEE_BIG_ENDIAN +#if __DOUBLE__ == 32 +#define _DOUBLE_IS_32BITS +#endif +#endif + +#ifdef __PPC__ +#if (defined(_BIG_ENDIAN) && _BIG_ENDIAN) || (defined(_AIX) && _AIX) +#define __IEEE_BIG_ENDIAN +#else +#if (defined(_LITTLE_ENDIAN) && _LITTLE_ENDIAN) || (defined(__sun__) && __sun__) || (defined(_WIN32) && _WIN32) +#define __IEEE_LITTLE_ENDIAN +#endif +#endif +#endif + +#ifdef __xstormy16__ +#define __IEEE_LITTLE_ENDIAN +#endif + +#ifdef __arc__ +#ifdef __big_endian__ +#define __IEEE_BIG_ENDIAN +#else +#define __IEEE_LITTLE_ENDIAN +#endif +#endif + +#ifdef __CRX__ +#define __IEEE_LITTLE_ENDIAN +#endif + +#ifdef __fr30__ +#define __IEEE_BIG_ENDIAN +#endif + +#ifdef __mcore__ +#define __IEEE_BIG_ENDIAN +#endif + +#ifdef __mt__ +#define __IEEE_BIG_ENDIAN +#endif + +#ifdef __frv__ +#define __IEEE_BIG_ENDIAN +#endif + +#ifdef __ia64__ +#ifdef __BIG_ENDIAN__ +#define __IEEE_BIG_ENDIAN +#else +#define __IEEE_LITTLE_ENDIAN +#endif +#endif + +#ifdef __AVR__ +#define __IEEE_LITTLE_ENDIAN +#define _DOUBLE_IS_32BITS +#endif + +#if defined(__or32__) || defined(__or1k__) || defined(__or16__) +#define __IEEE_BIG_ENDIAN +#endif + +#ifdef __IP2K__ +#define __IEEE_BIG_ENDIAN +#define __SMALL_BITFIELDS +#define _DOUBLE_IS_32BITS +#endif + +#ifdef __iq2000__ +#define __IEEE_BIG_ENDIAN +#endif + +#ifdef __MAVERICK__ +#ifdef __ARMEL__ +# define __IEEE_LITTLE_ENDIAN +#else /* must be __ARMEB__ */ +# define __IEEE_BIG_ENDIAN +#endif /* __ARMEL__ */ +#endif /* __MAVERICK__ */ + +#ifdef __m32c__ +#define __IEEE_LITTLE_ENDIAN +#define __SMALL_BITFIELDS +#endif + +#ifdef __CRIS__ +#define __IEEE_LITTLE_ENDIAN +#endif + +#ifdef __BFIN__ +#define __IEEE_LITTLE_ENDIAN +#endif + +#ifdef __x86_64__ +#define __IEEE_LITTLE_ENDIAN +#endif + +#ifdef __mep__ +#ifdef __LITTLE_ENDIAN__ +#define __IEEE_LITTLE_ENDIAN +#else +#define __IEEE_BIG_ENDIAN +#endif +#endif + +#ifndef __IEEE_BIG_ENDIAN +#ifndef __IEEE_LITTLE_ENDIAN +#error Endianess not declared!! +#endif /* not __IEEE_LITTLE_ENDIAN */ +#endif /* not __IEEE_BIG_ENDIAN */ + +#endif /* not __IEEE_LITTLE_ENDIAN */ +#endif /* not __IEEE_BIG_ENDIAN */ + diff --git a/Demo_C/Bin/GNU/GNU_ARM/arm-elf/include/math.h b/Demo_C/Bin/GNU/GNU_ARM/arm-elf/include/math.h new file mode 100644 index 0000000..ce72631 --- /dev/null +++ b/Demo_C/Bin/GNU/GNU_ARM/arm-elf/include/math.h @@ -0,0 +1,483 @@ +#ifndef _MATH_H_ + +#define _MATH_H_ + +#include +#include +#include "_ansi.h" + +_BEGIN_STD_C + +union __dmath +{ + __ULong i[2]; + double d; +}; + +union __fmath +{ + __ULong i[1]; + float f; +}; + +union __ldmath +{ + __ULong i[4]; + _LONG_DOUBLE ld; +}; + +/* Natural log of 2 */ +#define _M_LOG2_E 0.693147180559945309417 + +#if defined(__GNUC__) && \ + ( (__GNUC__ >= 4) || \ + ( (__GNUC__ >= 3) && defined(__GNUC_MINOR__) && (__GNUC_MINOR__ >= 3) ) ) + + /* gcc >= 3.3 implicitly defines builtins for HUGE_VALx values. */ + +# ifndef HUGE_VAL +# define HUGE_VAL (__builtin_huge_val()) +# endif + +# ifndef HUGE_VALF +# define HUGE_VALF (__builtin_huge_valf()) +# endif + +# ifndef HUGE_VALL +# define HUGE_VALL (__builtin_huge_vall()) +# endif + +# ifndef INFINITY +# define INFINITY (__builtin_inff()) +# endif + +# ifndef NAN +# define NAN (__builtin_nanf("")) +# endif + +#else /* !gcc >= 3.3 */ + + /* No builtins. Use floating-point unions instead. Declare as an array + without bounds so no matter what small data support a port and/or + library has, the reference will be via the general method for accessing + globals. */ + + #ifndef HUGE_VAL + extern __IMPORT const union __dmath __infinity[]; + #define HUGE_VAL (__infinity[0].d) + #endif + + #ifndef HUGE_VALF + extern __IMPORT const union __fmath __infinityf[]; + #define HUGE_VALF (__infinityf[0].f) + #endif + + #ifndef HUGE_VALL + extern __IMPORT const union __ldmath __infinityld[]; + #define HUGE_VALL (__infinityld[0].ld) + #endif + +#endif /* !gcc >= 3.3 */ + +/* Reentrant ANSI C functions. */ + +#ifndef __math_68881 +extern double atan _PARAMS((double)); +extern double cos _PARAMS((double)); +extern double sin _PARAMS((double)); +extern double tan _PARAMS((double)); +extern double tanh _PARAMS((double)); +extern double frexp _PARAMS((double, int *)); +extern double modf _PARAMS((double, double *)); +extern double ceil _PARAMS((double)); +extern double fabs _PARAMS((double)); +extern double floor _PARAMS((double)); +#endif /* ! defined (__math_68881) */ + +/* Non reentrant ANSI C functions. */ + +#ifndef _REENT_ONLY +#ifndef __math_6881 +extern double acos _PARAMS((double)); +extern double asin _PARAMS((double)); +extern double atan2 _PARAMS((double, double)); +extern double cosh _PARAMS((double)); +extern double sinh _PARAMS((double)); +extern double exp _PARAMS((double)); +extern double ldexp _PARAMS((double, int)); +extern double log _PARAMS((double)); +extern double log10 _PARAMS((double)); +extern double pow _PARAMS((double, double)); +extern double sqrt _PARAMS((double)); +extern double fmod _PARAMS((double, double)); +#endif /* ! defined (__math_68881) */ +#endif /* ! defined (_REENT_ONLY) */ + +#if !defined(__STRICT_ANSI__) || defined(__cplusplus) || __STDC_VERSION__ >= 199901L + +/* ISO C99 types and macros. */ + +#ifndef FLT_EVAL_METHOD +#define FLT_EVAL_METHOD 0 +typedef float float_t; +typedef double double_t; +#endif /* FLT_EVAL_METHOD */ + +#define FP_NAN 0 +#define FP_INFINITE 1 +#define FP_ZERO 2 +#define FP_SUBNORMAL 3 +#define FP_NORMAL 4 + +#ifndef FP_ILOGB0 +# define FP_ILOGB0 (-INT_MAX) +#endif +#ifndef FP_ILOGBNAN +# define FP_ILOGBNAN INT_MAX +#endif + +#ifndef MATH_ERRNO +# define MATH_ERRNO 1 +#endif +#ifndef MATH_ERREXCEPT +# define MATH_ERREXCEPT 2 +#endif +#ifndef math_errhandling +# define math_errhandling MATH_ERRNO +#endif + +extern int __isinff (float x); +extern int __isinfd (double x); +extern int __isnanf (float x); +extern int __isnand (double x); +extern int __fpclassifyf (float x); +extern int __fpclassifyd (double x); +extern int __signbitf (float x); +extern int __signbitd (double x); + +#define fpclassify(x) \ + (__extension__ ({__typeof__(x) __x = (x); \ + (sizeof (__x) == sizeof (float)) ? __fpclassifyf(__x) : __fpclassifyd(__x);})) + +#ifndef isfinite +#define isfinite(y) \ + (__extension__ ({__typeof__(y) __y = (y); \ + fpclassify(__y) != FP_INFINITE && fpclassify(__y) != FP_NAN;})) +#endif + +/* Note: isinf and isnan were once functions in newlib that took double + * arguments. C99 specifies that these names are reserved for macros + * supporting multiple floating point types. Thus, they are + * now defined as macros. Implementations of the old functions + * taking double arguments still exist for compatibility purposes. */ +#ifndef isinf +#define isinf(x) \ + (__extension__ ({__typeof__(x) __x = (x); \ + (sizeof (__x) == sizeof (float)) ? __isinff(__x) : __isinfd(__x);})) +#endif + +#ifndef isnan +#define isnan(x) \ + (__extension__ ({__typeof__(x) __x = (x); \ + (sizeof (__x) == sizeof (float)) ? __isnanf(__x) : __isnand(__x);})) +#endif + +#define isnormal(y) (fpclassify(y) == FP_NORMAL) +#define signbit(x) \ + (__extension__ ({__typeof__(x) __x = (x); \ + (sizeof(__x) == sizeof(float)) ? __signbitf(__x) : __signbitd(__x);})) + +#define isgreater(x,y) \ + (__extension__ ({__typeof__(x) __x = (x); __typeof__(y) __y = (y); \ + !isunordered(__x,__y) && (__x > __y);})) +#define isgreaterequal(x,y) \ + (__extension__ ({__typeof__(x) __x = (x); __typeof__(y) __y = (y); \ + !isunordered(__x,__y) && (__x >= __y);})) +#define isless(x,y) \ + (__extension__ ({__typeof__(x) __x = (x); __typeof__(y) __y = (y); \ + !isunordered(__x,__y) && (__x < __y);})) +#define islessequal(x,y) \ + (__extension__ ({__typeof__(x) __x = (x); __typeof__(y) __y = (y); \ + !isunordered(__x,__y) && (__x <= __y);})) +#define islessgreater(x,y) \ + (__extension__ ({__typeof__(x) __x = (x); __typeof__(y) __y = (y); \ + !isunordered(__x,__y) && (__x < __y || __x > __y);})) + +#define isunordered(a,b) \ + (__extension__ ({__typeof__(a) __a = (a); __typeof__(b) __b = (b); \ + fpclassify(__a) == FP_NAN || fpclassify(__b) == FP_NAN;})) + +/* Non ANSI double precision functions. */ + +extern double infinity _PARAMS((void)); +extern double nan _PARAMS((const char *)); +extern int finite _PARAMS((double)); +extern double copysign _PARAMS((double, double)); +extern int ilogb _PARAMS((double)); + +extern double asinh _PARAMS((double)); +extern double cbrt _PARAMS((double)); +extern double nextafter _PARAMS((double, double)); +extern double rint _PARAMS((double)); +extern double scalbn _PARAMS((double, int)); + +extern double exp2 _PARAMS((double)); +extern double scalbln _PARAMS((double, long int)); +extern double tgamma _PARAMS((double)); +extern double nearbyint _PARAMS((double)); +extern long int lrint _PARAMS((double)); +extern _LONG_LONG_TYPE int llrint _PARAMS((double)); +extern double round _PARAMS((double)); +extern long int lround _PARAMS((double)); +extern double trunc _PARAMS((double)); +extern double remquo _PARAMS((double, double, int *)); +extern double copysign _PARAMS((double, double)); +extern double fdim _PARAMS((double, double)); +extern double fmax _PARAMS((double, double)); +extern double fmin _PARAMS((double, double)); +extern double fma _PARAMS((double, double, double)); + +#ifndef __math_68881 +extern double log1p _PARAMS((double)); +extern double expm1 _PARAMS((double)); +#endif /* ! defined (__math_68881) */ + +#ifndef _REENT_ONLY +extern double acosh _PARAMS((double)); +extern double atanh _PARAMS((double)); +extern double remainder _PARAMS((double, double)); +extern double gamma _PARAMS((double)); +extern double lgamma _PARAMS((double)); +extern double erf _PARAMS((double)); +extern double erfc _PARAMS((double)); +#define log2(x) (log (x) / _M_LOG2_E) + +#ifndef __math_68881 +extern double hypot _PARAMS((double, double)); +#endif + +#endif /* ! defined (_REENT_ONLY) */ + +/* Single precision versions of ANSI functions. */ + +extern float atanf _PARAMS((float)); +extern float cosf _PARAMS((float)); +extern float sinf _PARAMS((float)); +extern float tanf _PARAMS((float)); +extern float tanhf _PARAMS((float)); +extern float frexpf _PARAMS((float, int *)); +extern float modff _PARAMS((float, float *)); +extern float ceilf _PARAMS((float)); +extern float fabsf _PARAMS((float)); +extern float floorf _PARAMS((float)); + +#ifndef _REENT_ONLY +extern float acosf _PARAMS((float)); +extern float asinf _PARAMS((float)); +extern float atan2f _PARAMS((float, float)); +extern float coshf _PARAMS((float)); +extern float sinhf _PARAMS((float)); +extern float expf _PARAMS((float)); +extern float ldexpf _PARAMS((float, int)); +extern float logf _PARAMS((float)); +extern float log10f _PARAMS((float)); +extern float powf _PARAMS((float, float)); +extern float sqrtf _PARAMS((float)); +extern float fmodf _PARAMS((float, float)); +#endif /* ! defined (_REENT_ONLY) */ + +/* Other single precision functions. */ + +extern float exp2f _PARAMS((float)); +extern float scalblnf _PARAMS((float, long int)); +extern float tgammaf _PARAMS((float)); +extern float nearbyintf _PARAMS((float)); +extern long int lrintf _PARAMS((float)); +extern _LONG_LONG_TYPE llrintf _PARAMS((float)); +extern float roundf _PARAMS((float)); +extern long int lroundf _PARAMS((float)); +extern float truncf _PARAMS((float)); +extern float remquof _PARAMS((float, float, int *)); +extern float copysignf _PARAMS((float, float)); +extern float fdimf _PARAMS((float, float)); +extern float fmaxf _PARAMS((float, float)); +extern float fminf _PARAMS((float, float)); +extern float fmaf _PARAMS((float, float, float)); + +extern float infinityf _PARAMS((void)); +extern float nanf _PARAMS((const char *)); +extern int isnanf _PARAMS((float)); +extern int isinff _PARAMS((float)); +extern int finitef _PARAMS((float)); +extern float copysignf _PARAMS((float, float)); +extern int ilogbf _PARAMS((float)); + +extern float asinhf _PARAMS((float)); +extern float cbrtf _PARAMS((float)); +extern float nextafterf _PARAMS((float, float)); +extern float rintf _PARAMS((float)); +extern float scalbnf _PARAMS((float, int)); +extern float log1pf _PARAMS((float)); +extern float expm1f _PARAMS((float)); + +#ifndef _REENT_ONLY +extern float acoshf _PARAMS((float)); +extern float atanhf _PARAMS((float)); +extern float remainderf _PARAMS((float, float)); +extern float gammaf _PARAMS((float)); +extern float lgammaf _PARAMS((float)); +extern float erff _PARAMS((float)); +extern float erfcf _PARAMS((float)); +#define log2f(x) (logf (x) / (float) _M_LOG2_E) +extern float hypotf _PARAMS((float, float)); +#endif /* ! defined (_REENT_ONLY) */ + +/* Other long double precision functions. */ +extern _LONG_DOUBLE rintl _PARAMS((_LONG_DOUBLE)); +extern long int lrintl _PARAMS((_LONG_DOUBLE)); +extern _LONG_LONG_TYPE llrintl _PARAMS((_LONG_DOUBLE)); + +#endif /* !defined (__STRICT_ANSI__) || defined(__cplusplus) || __STDC_VERSION__ >= 199901L */ + +#if !defined (__STRICT_ANSI__) || defined(__cplusplus) + +extern double cabs(); +extern double drem _PARAMS((double, double)); +extern void sincos _PARAMS((double, double *, double *)); +extern double gamma_r _PARAMS((double, int *)); +extern double lgamma_r _PARAMS((double, int *)); + +extern double y0 _PARAMS((double)); +extern double y1 _PARAMS((double)); +extern double yn _PARAMS((int, double)); +extern double j0 _PARAMS((double)); +extern double j1 _PARAMS((double)); +extern double jn _PARAMS((int, double)); + +extern float cabsf(); +extern float dremf _PARAMS((float, float)); +extern void sincosf _PARAMS((float, float *, float *)); +extern float gammaf_r _PARAMS((float, int *)); +extern float lgammaf_r _PARAMS((float, int *)); + +extern float y0f _PARAMS((float)); +extern float y1f _PARAMS((float)); +extern float ynf _PARAMS((int, float)); +extern float j0f _PARAMS((float)); +extern float j1f _PARAMS((float)); +extern float jnf _PARAMS((int, float)); + +/* GNU extensions */ +# ifndef exp10 +extern double exp10 _PARAMS((double)); +# endif +# ifndef pow10 +extern double pow10 _PARAMS((double)); +# endif +# ifndef exp10f +extern float exp10f _PARAMS((float)); +# endif +# ifndef pow10f +extern float pow10f _PARAMS((float)); +# endif + +#endif /* !defined (__STRICT_ANSI__) || defined(__cplusplus) */ + +#ifndef __STRICT_ANSI__ + +/* The gamma functions use a global variable, signgam. */ +#ifndef _REENT_ONLY +#define signgam (*__signgam()) +extern int *__signgam _PARAMS((void)); +#endif /* ! defined (_REENT_ONLY) */ + +#define __signgam_r(ptr) _REENT_SIGNGAM(ptr) + +/* The exception structure passed to the matherr routine. */ +/* We have a problem when using C++ since `exception' is a reserved + name in C++. */ +#ifdef __cplusplus +struct __exception +#else +struct exception +#endif +{ + int type; + char *name; + double arg1; + double arg2; + double retval; + int err; +}; + +#ifdef __cplusplus +extern int matherr _PARAMS((struct __exception *e)); +#else +extern int matherr _PARAMS((struct exception *e)); +#endif + +/* Values for the type field of struct exception. */ + +#define DOMAIN 1 +#define SING 2 +#define OVERFLOW 3 +#define UNDERFLOW 4 +#define TLOSS 5 +#define PLOSS 6 + +/* Useful constants. */ + +#define MAXFLOAT 3.40282347e+38F + +#define M_E 2.7182818284590452354 +#define M_LOG2E 1.4426950408889634074 +#define M_LOG10E 0.43429448190325182765 +#define M_LN2 0.69314718055994530942 +#define M_LN10 2.30258509299404568402 +#define M_PI 3.14159265358979323846 +#define M_TWOPI (M_PI * 2.0) +#define M_PI_2 1.57079632679489661923 +#define M_PI_4 0.78539816339744830962 +#define M_3PI_4 2.3561944901923448370E0 +#define M_SQRTPI 1.77245385090551602792981 +#define M_1_PI 0.31830988618379067154 +#define M_2_PI 0.63661977236758134308 +#define M_2_SQRTPI 1.12837916709551257390 +#define M_SQRT2 1.41421356237309504880 +#define M_SQRT1_2 0.70710678118654752440 +#define M_LN2LO 1.9082149292705877000E-10 +#define M_LN2HI 6.9314718036912381649E-1 +#define M_SQRT3 1.73205080756887719000 +#define M_IVLN10 0.43429448190325182765 /* 1 / log(10) */ +#define M_LOG2_E _M_LOG2_E +#define M_INVLN2 1.4426950408889633870E0 /* 1 / log(2) */ + +/* Global control over fdlibm error handling. */ + +enum __fdlibm_version +{ + __fdlibm_ieee = -1, + __fdlibm_svid, + __fdlibm_xopen, + __fdlibm_posix +}; + +#define _LIB_VERSION_TYPE enum __fdlibm_version +#define _LIB_VERSION __fdlib_version + +extern __IMPORT _LIB_VERSION_TYPE _LIB_VERSION; + +#define _IEEE_ __fdlibm_ieee +#define _SVID_ __fdlibm_svid +#define _XOPEN_ __fdlibm_xopen +#define _POSIX_ __fdlibm_posix + +#endif /* ! defined (__STRICT_ANSI__) */ + +_END_STD_C + +#ifdef __FAST_MATH__ +#include +#endif + +#endif /* _MATH_H_ */ diff --git a/Demo_C/Bin/GNU/GNU_ARM/arm-elf/include/newlib.h b/Demo_C/Bin/GNU/GNU_ARM/arm-elf/include/newlib.h new file mode 100644 index 0000000..068ebcd --- /dev/null +++ b/Demo_C/Bin/GNU/GNU_ARM/arm-elf/include/newlib.h @@ -0,0 +1,162 @@ +/* newlib.h. Generated by configure. */ +/* newlib.hin. Generated from configure.in by autoheader. */ +#ifndef __NEWLIB_H__ + +#define __NEWLIB_H__ 1 + +/* EL/IX level */ +/* #undef _ELIX_LEVEL */ + +/* Newlib version */ +#define _NEWLIB_VERSION "1.17.0" + +/* C99 formats support (such as %a, %zu, ...) in IO functions like + * printf/scanf enabled */ +/* #undef _WANT_IO_C99_FORMATS */ + +/* long long type support in IO functions like printf/scanf enabled */ +/* #undef _WANT_IO_LONG_LONG */ + +/* long double type support in IO functions like printf/scanf enabled */ +/* #undef _WANT_IO_LONG_DOUBLE */ + +/* Positional argument support in printf functions enabled. */ +/* #undef _WANT_IO_POS_ARGS */ + +/* Optional reentrant struct support. Used mostly on platforms with + very restricted storage. */ +/* #undef _WANT_REENT_SMALL */ + +/* Multibyte supported */ +/* #undef _MB_CAPABLE */ + +/* MB_LEN_MAX */ +#define _MB_LEN_MAX 1 + +/* ICONV enabled */ +/* #undef _ICONV_ENABLED */ + +/* Enable ICONV external CCS files loading capabilities */ +/* #undef _ICONV_ENABLE_EXTERNAL_CCS */ + +/* Define if the linker supports .preinit_array/.init_array/.fini_array + * sections. */ +#define HAVE_INITFINI_ARRAY 1 + +/* True if atexit() may dynamically allocate space for cleanup + functions. */ +#define _ATEXIT_DYNAMIC_ALLOC 1 + +/* Define if the compiler supports aliasing an array to an address. */ +/* #undef _HAVE_ARRAY_ALIASING */ + +/* + * Iconv encodings enabled ("to" direction) + */ +/* #undef _ICONV_TO_ENCODING_BIG5 */ +/* #undef _ICONV_TO_ENCODING_CP775 */ +/* #undef _ICONV_TO_ENCODING_CP850 */ +/* #undef _ICONV_TO_ENCODING_CP852 */ +/* #undef _ICONV_TO_ENCODING_CP855 */ +/* #undef _ICONV_TO_ENCODING_CP866 */ +/* #undef _ICONV_TO_ENCODING_EUC_JP */ +/* #undef _ICONV_TO_ENCODING_EUC_TW */ +/* #undef _ICONV_TO_ENCODING_EUC_KR */ +/* #undef _ICONV_TO_ENCODING_ISO_8859_1 */ +/* #undef _ICONV_TO_ENCODING_ISO_8859_10 */ +/* #undef _ICONV_TO_ENCODING_ISO_8859_11 */ +/* #undef _ICONV_TO_ENCODING_ISO_8859_13 */ +/* #undef _ICONV_TO_ENCODING_ISO_8859_14 */ +/* #undef _ICONV_TO_ENCODING_ISO_8859_15 */ +/* #undef _ICONV_TO_ENCODING_ISO_8859_2 */ +/* #undef _ICONV_TO_ENCODING_ISO_8859_3 */ +/* #undef _ICONV_TO_ENCODING_ISO_8859_4 */ +/* #undef _ICONV_TO_ENCODING_ISO_8859_5 */ +/* #undef _ICONV_TO_ENCODING_ISO_8859_6 */ +/* #undef _ICONV_TO_ENCODING_ISO_8859_7 */ +/* #undef _ICONV_TO_ENCODING_ISO_8859_8 */ +/* #undef _ICONV_TO_ENCODING_ISO_8859_9 */ +/* #undef _ICONV_TO_ENCODING_ISO_IR_111 */ +/* #undef _ICONV_TO_ENCODING_KOI8_R */ +/* #undef _ICONV_TO_ENCODING_KOI8_RU */ +/* #undef _ICONV_TO_ENCODING_KOI8_U */ +/* #undef _ICONV_TO_ENCODING_KOI8_UNI */ +/* #undef _ICONV_TO_ENCODING_UCS_2 */ +/* #undef _ICONV_TO_ENCODING_UCS_2_INTERNAL */ +/* #undef _ICONV_TO_ENCODING_UCS_2BE */ +/* #undef _ICONV_TO_ENCODING_UCS_2LE */ +/* #undef _ICONV_TO_ENCODING_UCS_4 */ +/* #undef _ICONV_TO_ENCODING_UCS_4_INTERNAL */ +/* #undef _ICONV_TO_ENCODING_UCS_4BE */ +/* #undef _ICONV_TO_ENCODING_UCS_4LE */ +/* #undef _ICONV_TO_ENCODING_US_ASCII */ +/* #undef _ICONV_TO_ENCODING_UTF_16 */ +/* #undef _ICONV_TO_ENCODING_UTF_16BE */ +/* #undef _ICONV_TO_ENCODING_UTF_16LE */ +/* #undef _ICONV_TO_ENCODING_UTF_8 */ +/* #undef _ICONV_TO_ENCODING_WIN_1250 */ +/* #undef _ICONV_TO_ENCODING_WIN_1251 */ +/* #undef _ICONV_TO_ENCODING_WIN_1252 */ +/* #undef _ICONV_TO_ENCODING_WIN_1253 */ +/* #undef _ICONV_TO_ENCODING_WIN_1254 */ +/* #undef _ICONV_TO_ENCODING_WIN_1255 */ +/* #undef _ICONV_TO_ENCODING_WIN_1256 */ +/* #undef _ICONV_TO_ENCODING_WIN_1257 */ +/* #undef _ICONV_TO_ENCODING_WIN_1258 */ + +/* + * Iconv encodings enabled ("from" direction) + */ +/* #undef _ICONV_FROM_ENCODING_BIG5 */ +/* #undef _ICONV_FROM_ENCODING_CP775 */ +/* #undef _ICONV_FROM_ENCODING_CP850 */ +/* #undef _ICONV_FROM_ENCODING_CP852 */ +/* #undef _ICONV_FROM_ENCODING_CP855 */ +/* #undef _ICONV_FROM_ENCODING_CP866 */ +/* #undef _ICONV_FROM_ENCODING_EUC_JP */ +/* #undef _ICONV_FROM_ENCODING_EUC_TW */ +/* #undef _ICONV_FROM_ENCODING_EUC_KR */ +/* #undef _ICONV_FROM_ENCODING_ISO_8859_1 */ +/* #undef _ICONV_FROM_ENCODING_ISO_8859_10 */ +/* #undef _ICONV_FROM_ENCODING_ISO_8859_11 */ +/* #undef _ICONV_FROM_ENCODING_ISO_8859_13 */ +/* #undef _ICONV_FROM_ENCODING_ISO_8859_14 */ +/* #undef _ICONV_FROM_ENCODING_ISO_8859_15 */ +/* #undef _ICONV_FROM_ENCODING_ISO_8859_2 */ +/* #undef _ICONV_FROM_ENCODING_ISO_8859_3 */ +/* #undef _ICONV_FROM_ENCODING_ISO_8859_4 */ +/* #undef _ICONV_FROM_ENCODING_ISO_8859_5 */ +/* #undef _ICONV_FROM_ENCODING_ISO_8859_6 */ +/* #undef _ICONV_FROM_ENCODING_ISO_8859_7 */ +/* #undef _ICONV_FROM_ENCODING_ISO_8859_8 */ +/* #undef _ICONV_FROM_ENCODING_ISO_8859_9 */ +/* #undef _ICONV_FROM_ENCODING_ISO_IR_111 */ +/* #undef _ICONV_FROM_ENCODING_KOI8_R */ +/* #undef _ICONV_FROM_ENCODING_KOI8_RU */ +/* #undef _ICONV_FROM_ENCODING_KOI8_U */ +/* #undef _ICONV_FROM_ENCODING_KOI8_UNI */ +/* #undef _ICONV_FROM_ENCODING_UCS_2 */ +/* #undef _ICONV_FROM_ENCODING_UCS_2_INTERNAL */ +/* #undef _ICONV_FROM_ENCODING_UCS_2BE */ +/* #undef _ICONV_FROM_ENCODING_UCS_2LE */ +/* #undef _ICONV_FROM_ENCODING_UCS_4 */ +/* #undef _ICONV_FROM_ENCODING_UCS_4_INTERNAL */ +/* #undef _ICONV_FROM_ENCODING_UCS_4BE */ +/* #undef _ICONV_FROM_ENCODING_UCS_4LE */ +/* #undef _ICONV_FROM_ENCODING_US_ASCII */ +/* #undef _ICONV_FROM_ENCODING_UTF_16 */ +/* #undef _ICONV_FROM_ENCODING_UTF_16BE */ +/* #undef _ICONV_FROM_ENCODING_UTF_16LE */ +/* #undef _ICONV_FROM_ENCODING_UTF_8 */ +/* #undef _ICONV_FROM_ENCODING_WIN_1250 */ +/* #undef _ICONV_FROM_ENCODING_WIN_1251 */ +/* #undef _ICONV_FROM_ENCODING_WIN_1252 */ +/* #undef _ICONV_FROM_ENCODING_WIN_1253 */ +/* #undef _ICONV_FROM_ENCODING_WIN_1254 */ +/* #undef _ICONV_FROM_ENCODING_WIN_1255 */ +/* #undef _ICONV_FROM_ENCODING_WIN_1256 */ +/* #undef _ICONV_FROM_ENCODING_WIN_1257 */ +/* #undef _ICONV_FROM_ENCODING_WIN_1258 */ + +#endif /* !__NEWLIB_H__ */ + diff --git a/Demo_C/Bin/GNU/GNU_ARM/arm-elf/include/sys/_types.h b/Demo_C/Bin/GNU/GNU_ARM/arm-elf/include/sys/_types.h new file mode 100644 index 0000000..25252ed --- /dev/null +++ b/Demo_C/Bin/GNU/GNU_ARM/arm-elf/include/sys/_types.h @@ -0,0 +1,87 @@ +/* ANSI C namespace clean utility typedefs */ + +/* This file defines various typedefs needed by the system calls that support + the C library. Basically, they're just the POSIX versions with an '_' + prepended. This file lives in the `sys' directory so targets can provide + their own if desired (or they can put target dependant conditionals here). +*/ + +#ifndef _SYS__TYPES_H +#define _SYS__TYPES_H + +#include +#include + +#ifndef __off_t_defined +typedef long _off_t; +#endif + +#if defined(__rtems__) +/* device numbers are 32-bit major and and 32-bit minor */ +typedef unsigned long long __dev_t; +#else +#ifndef __dev_t_defined +typedef short __dev_t; +#endif +#endif + +#ifndef __uid_t_defined +typedef unsigned short __uid_t; +#endif +#ifndef __gid_t_defined +typedef unsigned short __gid_t; +#endif + +#ifndef __off64_t_defined +__extension__ typedef long long _off64_t; +#endif + +/* + * We need fpos_t for the following, but it doesn't have a leading "_", + * so we use _fpos_t instead. + */ +#ifndef __fpos_t_defined +typedef long _fpos_t; /* XXX must match off_t in */ + /* (and must be `long' for now) */ +#endif + +#ifdef __LARGE64_FILES +#ifndef __fpos64_t_defined +typedef _off64_t _fpos64_t; +#endif +#endif + +#ifndef __ssize_t_defined +#if defined(__INT_MAX__) && __INT_MAX__ == 2147483647 +typedef int _ssize_t; +#else +typedef long _ssize_t; +#endif +#endif + +#define __need_wint_t +#include + +#ifndef __mbstate_t_defined +/* Conversion state information. */ +typedef struct +{ + int __count; + union + { + wint_t __wch; + unsigned char __wchb[4]; + } __value; /* Value so far. */ +} _mbstate_t; +#endif + +#ifndef __flock_t_defined +typedef _LOCK_RECURSIVE_T _flock_t; +#endif + +#ifndef __iconv_t_defined +/* Iconv descriptor type */ +typedef void *_iconv_t; +#endif + +#endif /* _SYS__TYPES_H */ diff --git a/Demo_C/Bin/GNU/GNU_ARM/arm-elf/include/sys/config.h b/Demo_C/Bin/GNU/GNU_ARM/arm-elf/include/sys/config.h new file mode 100644 index 0000000..3084193 --- /dev/null +++ b/Demo_C/Bin/GNU/GNU_ARM/arm-elf/include/sys/config.h @@ -0,0 +1,213 @@ +#ifndef __SYS_CONFIG_H__ +#define __SYS_CONFIG_H__ + +#include /* floating point macros */ + +/* exceptions first */ +#if defined(__H8500__) || defined(__W65__) +#define __SMALL_BITFIELDS +/* ??? This conditional is true for the h8500 and the w65, defining H8300 + in those cases probably isn't the right thing to do. */ +#define H8300 1 +#endif + +/* 16 bit integer machines */ +#if defined(__Z8001__) || defined(__Z8002__) || defined(__H8500__) || defined(__W65__) || defined (__mn10200__) || defined (__AVR__) + +#undef INT_MAX +#undef UINT_MAX +#define INT_MAX 32767 +#define UINT_MAX 65535 +#endif + +#if defined (__H8300__) || defined (__H8300H__) || defined(__H8300S__) || defined (__H8300SX__) +#define __SMALL_BITFIELDS +#define H8300 1 +#undef INT_MAX +#undef UINT_MAX +#define INT_MAX __INT_MAX__ +#define UINT_MAX (__INT_MAX__ * 2U + 1) +#endif + +#ifdef __W65__ +#define __SMALL_BITFIELDS +#endif + +#if defined(__D10V__) +#define __SMALL_BITFIELDS +#undef INT_MAX +#undef UINT_MAX +#define INT_MAX __INT_MAX__ +#define UINT_MAX (__INT_MAX__ * 2U + 1) +#define _POINTER_INT short +#endif + +#if defined(__mc68hc11__) || defined(__mc68hc12__) || defined(__mc68hc1x__) +#undef INT_MAX +#undef UINT_MAX +#define INT_MAX __INT_MAX__ +#define UINT_MAX (__INT_MAX__ * 2U + 1) +#define _POINTER_INT short +#endif + +#ifdef ___AM29K__ +#define _FLOAT_RET double +#endif + +#ifdef __i386__ +#ifndef __unix__ +/* in other words, go32 */ +#define _FLOAT_RET double +#endif +#if defined(__linux__) || defined(__RDOS__) +/* we want the reentrancy structure to be returned by a function */ +#define __DYNAMIC_REENT__ +#define HAVE_GETDATE +#define _HAVE_SYSTYPES +#define _READ_WRITE_RETURN_TYPE _ssize_t +#define __LARGE64_FILES 1 +/* we use some glibc header files so turn on glibc large file feature */ +#define _LARGEFILE64_SOURCE 1 +#endif +#endif + +#ifdef __mn10200__ +#define __SMALL_BITFIELDS +#endif + +#ifdef __AVR__ +#define __SMALL_BITFIELDS +#define _POINTER_INT short +#endif + +#ifdef __v850 +#define __ATTRIBUTE_IMPURE_PTR__ __attribute__((__sda__)) +#endif + +/* For the PowerPC eabi, force the _impure_ptr to be in .sdata */ +#if defined(__PPC__) +#if defined(_CALL_SYSV) +#define __ATTRIBUTE_IMPURE_PTR__ __attribute__((__section__(".sdata"))) +#endif +#ifdef __SPE__ +#define _LONG_DOUBLE double +#endif +#endif + +#if defined(__mips__) && !defined(__rtems__) +#define __ATTRIBUTE_IMPURE_PTR__ __attribute__((__section__(".sdata"))) +#endif + +#ifdef __xstormy16__ +#define __SMALL_BITFIELDS +#undef INT_MAX +#undef UINT_MAX +#define INT_MAX __INT_MAX__ +#define UINT_MAX (__INT_MAX__ * 2U + 1) +#define MALLOC_ALIGNMENT 8 +#define _POINTER_INT short +#define __BUFSIZ__ 16 +#define _REENT_SMALL +#endif +#ifdef __m32c__ +#define __SMALL_BITFIELDS +#undef INT_MAX +#undef UINT_MAX +#define INT_MAX __INT_MAX__ +#define UINT_MAX (__INT_MAX__ * 2U + 1) +#define MALLOC_ALIGNMENT 8 +#if defined(__r8c_cpu__) || defined(__m16c_cpu__) +#define _POINTER_INT short +#else +#define _POINTER_INT long +#endif +#define __BUFSIZ__ 16 +#define _REENT_SMALL +#endif /* __m32c__ */ + +#ifdef __thumb2__ +/* Thumb-2 based ARMv7M devices are really small. */ +#define _REENT_SMALL +#endif + +#ifdef __SPU__ +#define MALLOC_ALIGNMENT 16 +#define __CUSTOM_FILE_IO__ +#endif + +/* This block should be kept in sync with GCC's limits.h. The point + of having these definitions here is to not include limits.h, which + would pollute the user namespace, while still using types of the + the correct widths when deciding how to define __int32_t and + __int64_t. */ +#ifndef __INT_MAX__ +# ifdef INT_MAX +# define __INT_MAX__ INT_MAX +# else +# define __INT_MAX__ 2147483647 +# endif +#endif + +#ifndef __LONG_MAX__ +# ifdef LONG_MAX +# define __LONG_MAX__ LONG_MAX +# else +# if defined (__alpha__) || (defined (__sparc__) && defined(__arch64__)) \ + || defined (__sparcv9) +# define __LONG_MAX__ 9223372036854775807L +# else +# define __LONG_MAX__ 2147483647L +# endif /* __alpha__ || sparc64 */ +# endif +#endif +/* End of block that should be kept in sync with GCC's limits.h. */ + +#ifndef _POINTER_INT +#define _POINTER_INT long +#endif + +#ifdef __frv__ +#define __ATTRIBUTE_IMPURE_PTR__ __attribute__((__section__(".sdata"))) +#endif +#undef __RAND_MAX +#if __INT_MAX__ == 32767 +#define __RAND_MAX 32767 +#else +#define __RAND_MAX 0x7fffffff +#endif + +#if defined(__CYGWIN__) +#include +#endif + +#if defined(__rtems__) +#define __FILENAME_MAX__ 255 +#define _READ_WRITE_RETURN_TYPE _ssize_t +#endif + +#ifndef __IMPORT +#define __IMPORT +#endif + +/* Define return type of read/write routines. In POSIX, the return type + for read()/write() is "ssize_t" but legacy newlib code has been using + "int" for some time. If not specified, "int" is defaulted. */ +#ifndef _READ_WRITE_RETURN_TYPE +#define _READ_WRITE_RETURN_TYPE int +#endif + +#ifndef __WCHAR_MAX__ +#if __INT_MAX__ == 32767 || defined (_WIN32) +#define __WCHAR_MAX__ 0xffffu +#endif +#endif + +/* See if small reent asked for at configuration time and + is not chosen by the platform by default. */ +#ifdef _WANT_REENT_SMALL +#ifndef _REENT_SMALL +#define _REENT_SMALL +#endif +#endif + +#endif /* __SYS_CONFIG_H__ */ diff --git a/Demo_C/Bin/GNU/GNU_ARM/arm-elf/include/sys/lock.h b/Demo_C/Bin/GNU/GNU_ARM/arm-elf/include/sys/lock.h new file mode 100644 index 0000000..9075e35 --- /dev/null +++ b/Demo_C/Bin/GNU/GNU_ARM/arm-elf/include/sys/lock.h @@ -0,0 +1,24 @@ +#ifndef __SYS_LOCK_H__ +#define __SYS_LOCK_H__ + +/* dummy lock routines for single-threaded aps */ + +typedef int _LOCK_T; +typedef int _LOCK_RECURSIVE_T; + +#include <_ansi.h> + +#define __LOCK_INIT(class,lock) static int lock = 0; +#define __LOCK_INIT_RECURSIVE(class,lock) static int lock = 0; +#define __lock_init(lock) (_CAST_VOID 0) +#define __lock_init_recursive(lock) (_CAST_VOID 0) +#define __lock_close(lock) (_CAST_VOID 0) +#define __lock_close_recursive(lock) (_CAST_VOID 0) +#define __lock_acquire(lock) (_CAST_VOID 0) +#define __lock_acquire_recursive(lock) (_CAST_VOID 0) +#define __lock_try_acquire(lock) (_CAST_VOID 0) +#define __lock_try_acquire_recursive(lock) (_CAST_VOID 0) +#define __lock_release(lock) (_CAST_VOID 0) +#define __lock_release_recursive(lock) (_CAST_VOID 0) + +#endif /* __SYS_LOCK_H__ */ diff --git a/Demo_C/Bin/GNU/GNU_ARM/arm-elf/include/sys/reent.h b/Demo_C/Bin/GNU/GNU_ARM/arm-elf/include/sys/reent.h new file mode 100644 index 0000000..55fb9ff --- /dev/null +++ b/Demo_C/Bin/GNU/GNU_ARM/arm-elf/include/sys/reent.h @@ -0,0 +1,837 @@ +/* This header file provides the reentrancy. */ + +/* WARNING: All identifiers here must begin with an underscore. This file is + included by stdio.h and others and we therefore must only use identifiers + in the namespace allotted to us. */ + +#ifndef _SYS_REENT_H_ +#ifdef __cplusplus +extern "C" { +#endif +#define _SYS_REENT_H_ + +#include <_ansi.h> +#include + +#define _NULL 0 + +#ifndef __Long +#if __LONG_MAX__ == 2147483647L +#define __Long long +typedef unsigned __Long __ULong; +#elif __INT_MAX__ == 2147483647 +#define __Long int +typedef unsigned __Long __ULong; +#endif +#endif + +#if !defined( __Long) +#include +#endif + +#ifndef __Long +#define __Long __int32_t +typedef __uint32_t __ULong; +#endif + +struct _reent; + +/* + * If _REENT_SMALL is defined, we make struct _reent as small as possible, + * by having nearly everything possible allocated at first use. + */ + +struct _Bigint +{ + struct _Bigint *_next; + int _k, _maxwds, _sign, _wds; + __ULong _x[1]; +}; + +/* needed by reentrant structure */ +struct __tm +{ + int __tm_sec; + int __tm_min; + int __tm_hour; + int __tm_mday; + int __tm_mon; + int __tm_year; + int __tm_wday; + int __tm_yday; + int __tm_isdst; +}; + +/* + * atexit() support. + */ + +#define _ATEXIT_SIZE 32 /* must be at least 32 to guarantee ANSI conformance */ + +struct _on_exit_args { + void * _fnargs[_ATEXIT_SIZE]; /* user fn args */ + void * _dso_handle[_ATEXIT_SIZE]; + /* Bitmask is set if user function takes arguments. */ + __ULong _fntypes; /* type of exit routine - + Must have at least _ATEXIT_SIZE bits */ + /* Bitmask is set if function was registered via __cxa_atexit. */ + __ULong _is_cxa; +}; + +#ifdef _REENT_SMALL +struct _atexit { + struct _atexit *_next; /* next in list */ + int _ind; /* next index in this table */ + void (*_fns[_ATEXIT_SIZE])(void); /* the table itself */ + struct _on_exit_args * _on_exit_args_ptr; +}; +#else +struct _atexit { + struct _atexit *_next; /* next in list */ + int _ind; /* next index in this table */ + /* Some entries may already have been called, and will be NULL. */ + void (*_fns[_ATEXIT_SIZE])(void); /* the table itself */ + struct _on_exit_args _on_exit_args; +}; +#endif + +/* + * Stdio buffers. + * + * This and __FILE are defined here because we need them for struct _reent, + * but we don't want stdio.h included when stdlib.h is. + */ + +struct __sbuf { + unsigned char *_base; + int _size; +}; + +/* + * Stdio state variables. + * + * The following always hold: + * + * if (_flags&(__SLBF|__SWR)) == (__SLBF|__SWR), + * _lbfsize is -_bf._size, else _lbfsize is 0 + * if _flags&__SRD, _w is 0 + * if _flags&__SWR, _r is 0 + * + * This ensures that the getc and putc macros (or inline functions) never + * try to write or read from a file that is in `read' or `write' mode. + * (Moreover, they can, and do, automatically switch from read mode to + * write mode, and back, on "r+" and "w+" files.) + * + * _lbfsize is used only to make the inline line-buffered output stream + * code as compact as possible. + * + * _ub, _up, and _ur are used when ungetc() pushes back more characters + * than fit in the current _bf, or when ungetc() pushes back a character + * that does not match the previous one in _bf. When this happens, + * _ub._base becomes non-nil (i.e., a stream has ungetc() data iff + * _ub._base!=NULL) and _up and _ur save the current values of _p and _r. + */ + +#ifdef _REENT_SMALL +/* + * struct __sFILE_fake is the start of a struct __sFILE, with only the + * minimal fields allocated. In __sinit() we really allocate the 3 + * standard streams, etc., and point away from this fake. + */ +struct __sFILE_fake { + unsigned char *_p; /* current position in (some) buffer */ + int _r; /* read space left for getc() */ + int _w; /* write space left for putc() */ + short _flags; /* flags, below; this FILE is free if 0 */ + short _file; /* fileno, if Unix descriptor, else -1 */ + struct __sbuf _bf; /* the buffer (at least 1 byte, if !NULL) */ + int _lbfsize; /* 0 or -_bf._size, for inline putc */ + + struct _reent *_data; +}; + +/* Following is needed both in libc/stdio and libc/stdlib so we put it + * here instead of libc/stdio/local.h where it was previously. */ + +extern _VOID _EXFUN(__sinit,(struct _reent *)); + +# define _REENT_SMALL_CHECK_INIT(ptr) \ + do \ + { \ + if ((ptr) && !(ptr)->__sdidinit) \ + __sinit (ptr); \ + } \ + while (0) +#else +# define _REENT_SMALL_CHECK_INIT(ptr) /* nothing */ +#endif + +struct __sFILE { + unsigned char *_p; /* current position in (some) buffer */ + int _r; /* read space left for getc() */ + int _w; /* write space left for putc() */ + short _flags; /* flags, below; this FILE is free if 0 */ + short _file; /* fileno, if Unix descriptor, else -1 */ + struct __sbuf _bf; /* the buffer (at least 1 byte, if !NULL) */ + int _lbfsize; /* 0 or -_bf._size, for inline putc */ + +#ifdef _REENT_SMALL + struct _reent *_data; +#endif + + /* operations */ + _PTR _cookie; /* cookie passed to io functions */ + + _READ_WRITE_RETURN_TYPE _EXFUN((*_read),(struct _reent *, _PTR, + char *, int)); + _READ_WRITE_RETURN_TYPE _EXFUN((*_write),(struct _reent *, _PTR, + const char *, int)); + _fpos_t _EXFUN((*_seek),(struct _reent *, _PTR, _fpos_t, int)); + int _EXFUN((*_close),(struct _reent *, _PTR)); + + /* separate buffer for long sequences of ungetc() */ + struct __sbuf _ub; /* ungetc buffer */ + unsigned char *_up; /* saved _p when _p is doing ungetc data */ + int _ur; /* saved _r when _r is counting ungetc data */ + + /* tricks to meet minimum requirements even when malloc() fails */ + unsigned char _ubuf[3]; /* guarantee an ungetc() buffer */ + unsigned char _nbuf[1]; /* guarantee a getc() buffer */ + + /* separate buffer for fgetline() when line crosses buffer boundary */ + struct __sbuf _lb; /* buffer for fgetline() */ + + /* Unix stdio files get aligned to block boundaries on fseek() */ + int _blksize; /* stat.st_blksize (may be != _bf._size) */ + int _offset; /* current lseek offset */ + +#ifndef _REENT_SMALL + struct _reent *_data; /* Here for binary compatibility? Remove? */ +#endif + +#ifndef __SINGLE_THREAD__ + _flock_t _lock; /* for thread-safety locking */ +#endif + _mbstate_t _mbstate; /* for wide char stdio functions. */ + int _flags2; /* for future use */ +}; + +#ifdef __CUSTOM_FILE_IO__ + +/* Get custom _FILE definition. */ +#include + +#else /* !__CUSTOM_FILE_IO__ */ +#ifdef __LARGE64_FILES +struct __sFILE64 { + unsigned char *_p; /* current position in (some) buffer */ + int _r; /* read space left for getc() */ + int _w; /* write space left for putc() */ + short _flags; /* flags, below; this FILE is free if 0 */ + short _file; /* fileno, if Unix descriptor, else -1 */ + struct __sbuf _bf; /* the buffer (at least 1 byte, if !NULL) */ + int _lbfsize; /* 0 or -_bf._size, for inline putc */ + + struct _reent *_data; + + /* operations */ + _PTR _cookie; /* cookie passed to io functions */ + + _READ_WRITE_RETURN_TYPE _EXFUN((*_read),(struct _reent *, _PTR, + char *, int)); + _READ_WRITE_RETURN_TYPE _EXFUN((*_write),(struct _reent *, _PTR, + const char *, int)); + _fpos_t _EXFUN((*_seek),(struct _reent *, _PTR, _fpos_t, int)); + int _EXFUN((*_close),(struct _reent *, _PTR)); + + /* separate buffer for long sequences of ungetc() */ + struct __sbuf _ub; /* ungetc buffer */ + unsigned char *_up; /* saved _p when _p is doing ungetc data */ + int _ur; /* saved _r when _r is counting ungetc data */ + + /* tricks to meet minimum requirements even when malloc() fails */ + unsigned char _ubuf[3]; /* guarantee an ungetc() buffer */ + unsigned char _nbuf[1]; /* guarantee a getc() buffer */ + + /* separate buffer for fgetline() when line crosses buffer boundary */ + struct __sbuf _lb; /* buffer for fgetline() */ + + /* Unix stdio files get aligned to block boundaries on fseek() */ + int _blksize; /* stat.st_blksize (may be != _bf._size) */ + int _flags2; /* for future use */ + + _off64_t _offset; /* current lseek offset */ + _fpos64_t _EXFUN((*_seek64),(struct _reent *, _PTR, _fpos64_t, int)); + +#ifndef __SINGLE_THREAD__ + _flock_t _lock; /* for thread-safety locking */ +#endif + _mbstate_t _mbstate; /* for wide char stdio functions. */ +}; +typedef struct __sFILE64 __FILE; +#else +typedef struct __sFILE __FILE; +#endif /* __LARGE64_FILES */ +#endif /* !__CUSTOM_FILE_IO__ */ + +struct _glue +{ + struct _glue *_next; + int _niobs; + __FILE *_iobs; +}; + +/* + * rand48 family support + * + * Copyright (c) 1993 Martin Birgmeier + * All rights reserved. + * + * You may redistribute unmodified or modified versions of this source + * code provided that the above copyright notice and this and the + * following conditions are retained. + * + * This software is provided ``as is'', and comes with no warranties + * of any kind. I shall in no event be liable for anything that happens + * to anyone/anything when using this software. + */ +#define _RAND48_SEED_0 (0x330e) +#define _RAND48_SEED_1 (0xabcd) +#define _RAND48_SEED_2 (0x1234) +#define _RAND48_MULT_0 (0xe66d) +#define _RAND48_MULT_1 (0xdeec) +#define _RAND48_MULT_2 (0x0005) +#define _RAND48_ADD (0x000b) +struct _rand48 { + unsigned short _seed[3]; + unsigned short _mult[3]; + unsigned short _add; +#ifdef _REENT_SMALL + /* Put this in here as well, for good luck. */ + __extension__ unsigned long long _rand_next; +#endif +}; + +/* How big the some arrays are. */ +#define _REENT_EMERGENCY_SIZE 25 +#define _REENT_ASCTIME_SIZE 26 +#define _REENT_SIGNAL_SIZE 24 + +/* + * struct _reent + * + * This structure contains *all* globals needed by the library. + * It's raison d'etre is to facilitate threads by making all library routines + * reentrant. IE: All state information is contained here. + */ + +#ifdef _REENT_SMALL + +struct _mprec +{ + /* used by mprec routines */ + struct _Bigint *_result; + int _result_k; + struct _Bigint *_p5s; + struct _Bigint **_freelist; +}; + + +struct _misc_reent +{ + /* miscellaneous reentrant data */ + char *_strtok_last; + _mbstate_t _mblen_state; + _mbstate_t _wctomb_state; + _mbstate_t _mbtowc_state; + char _l64a_buf[8]; + int _getdate_err; + _mbstate_t _mbrlen_state; + _mbstate_t _mbrtowc_state; + _mbstate_t _mbsrtowcs_state; + _mbstate_t _wcrtomb_state; + _mbstate_t _wcsrtombs_state; +}; + +/* This version of _reent is layed our with "int"s in pairs, to help + * ports with 16-bit int's but 32-bit pointers, align nicely. */ +struct _reent +{ + + /* FILE is a big struct and may change over time. To try to achieve binary + compatibility with future versions, put stdin,stdout,stderr here. + These are pointers into member __sf defined below. */ + __FILE *_stdin, *_stdout, *_stderr; /* XXX */ + + int _errno; /* local copy of errno */ + + int _inc; /* used by tmpnam */ + + char *_emergency; + + int __sdidinit; /* 1 means stdio has been init'd */ + + int _current_category; /* used by setlocale */ + _CONST char *_current_locale; + + struct _mprec *_mp; + + void _EXFUN((*__cleanup),(struct _reent *)); + + int _gamma_signgam; + + /* used by some fp conversion routines */ + int _cvtlen; /* should be size_t */ + char *_cvtbuf; + + struct _rand48 *_r48; + struct __tm *_localtime_buf; + char *_asctime_buf; + + /* signal info */ + void (**(_sig_func))(int); + + /* atexit stuff */ + struct _atexit *_atexit; + struct _atexit _atexit0; + + struct _glue __sglue; /* root of glue chain */ + __FILE *__sf; /* file descriptors */ + struct _misc_reent *_misc; /* strtok, multibyte states */ + char *_signal_buf; /* strsignal */ +}; + +extern const struct __sFILE_fake __sf_fake_stdin; +extern const struct __sFILE_fake __sf_fake_stdout; +extern const struct __sFILE_fake __sf_fake_stderr; + +#define _REENT_INIT(var) \ + { (__FILE *)&__sf_fake_stdin, \ + (__FILE *)&__sf_fake_stdout, \ + (__FILE *)&__sf_fake_stderr, \ + 0, \ + 0, \ + _NULL, \ + 0, \ + 0, \ + "C", \ + _NULL, \ + _NULL, \ + 0, \ + 0, \ + _NULL, \ + _NULL, \ + _NULL, \ + _NULL, \ + _NULL, \ + _NULL, \ + {_NULL, 0, {_NULL}, _NULL}, \ + {_NULL, 0, _NULL}, \ + _NULL, \ + _NULL, \ + _NULL \ + } + +#define _REENT_INIT_PTR(var) \ + { (var)->_stdin = (__FILE *)&__sf_fake_stdin; \ + (var)->_stdout = (__FILE *)&__sf_fake_stdout; \ + (var)->_stderr = (__FILE *)&__sf_fake_stderr; \ + (var)->_errno = 0; \ + (var)->_inc = 0; \ + (var)->_emergency = _NULL; \ + (var)->__sdidinit = 0; \ + (var)->_current_category = 0; \ + (var)->_current_locale = "C"; \ + (var)->_mp = _NULL; \ + (var)->__cleanup = _NULL; \ + (var)->_gamma_signgam = 0; \ + (var)->_cvtlen = 0; \ + (var)->_cvtbuf = _NULL; \ + (var)->_r48 = _NULL; \ + (var)->_localtime_buf = _NULL; \ + (var)->_asctime_buf = _NULL; \ + (var)->_sig_func = _NULL; \ + (var)->_atexit = _NULL; \ + (var)->_atexit0._next = _NULL; \ + (var)->_atexit0._ind = 0; \ + (var)->_atexit0._fns[0] = _NULL; \ + (var)->_atexit0._on_exit_args_ptr = _NULL; \ + (var)->__sglue._next = _NULL; \ + (var)->__sglue._niobs = 0; \ + (var)->__sglue._iobs = _NULL; \ + (var)->__sf = 0; \ + (var)->_misc = _NULL; \ + (var)->_signal_buf = _NULL; \ + } + +/* Only built the assert() calls if we are built with debugging. */ +#if DEBUG +#include +#define __reent_assert(x) assert(x) +#else +#define __reent_assert(x) ((void)0) +#endif + +#ifdef __CUSTOM_FILE_IO__ +#error Custom FILE I/O and _REENT_SMALL not currently supported. +#endif + +/* Generic _REENT check macro. */ +#define _REENT_CHECK(var, what, type, size, init) do { \ + struct _reent *_r = (var); \ + if (_r->what == NULL) { \ + _r->what = (type)malloc(size); \ + __reent_assert(_r->what); \ + init; \ + } \ +} while (0) + +#define _REENT_CHECK_TM(var) \ + _REENT_CHECK(var, _localtime_buf, struct __tm *, sizeof *((var)->_localtime_buf), \ + /* nothing */) + +#define _REENT_CHECK_ASCTIME_BUF(var) \ + _REENT_CHECK(var, _asctime_buf, char *, _REENT_ASCTIME_SIZE, \ + memset((var)->_asctime_buf, 0, _REENT_ASCTIME_SIZE)) + +/* Handle the dynamically allocated rand48 structure. */ +#define _REENT_INIT_RAND48(var) do { \ + struct _reent *_r = (var); \ + _r->_r48->_seed[0] = _RAND48_SEED_0; \ + _r->_r48->_seed[1] = _RAND48_SEED_1; \ + _r->_r48->_seed[2] = _RAND48_SEED_2; \ + _r->_r48->_mult[0] = _RAND48_MULT_0; \ + _r->_r48->_mult[1] = _RAND48_MULT_1; \ + _r->_r48->_mult[2] = _RAND48_MULT_2; \ + _r->_r48->_add = _RAND48_ADD; \ + _r->_r48->_rand_next = 1; \ +} while (0) +#define _REENT_CHECK_RAND48(var) \ + _REENT_CHECK(var, _r48, struct _rand48 *, sizeof *((var)->_r48), _REENT_INIT_RAND48((var))) + +#define _REENT_INIT_MP(var) do { \ + struct _reent *_r = (var); \ + _r->_mp->_result_k = 0; \ + _r->_mp->_result = _r->_mp->_p5s = _NULL; \ + _r->_mp->_freelist = _NULL; \ +} while (0) +#define _REENT_CHECK_MP(var) \ + _REENT_CHECK(var, _mp, struct _mprec *, sizeof *((var)->_mp), _REENT_INIT_MP(var)) + +#define _REENT_CHECK_EMERGENCY(var) \ + _REENT_CHECK(var, _emergency, char *, _REENT_EMERGENCY_SIZE, /* nothing */) + +#define _REENT_INIT_MISC(var) do { \ + struct _reent *_r = (var); \ + _r->_misc->_strtok_last = _NULL; \ + _r->_misc->_mblen_state.__count = 0; \ + _r->_misc->_mblen_state.__value.__wch = 0; \ + _r->_misc->_wctomb_state.__count = 0; \ + _r->_misc->_wctomb_state.__value.__wch = 0; \ + _r->_misc->_mbtowc_state.__count = 0; \ + _r->_misc->_mbtowc_state.__value.__wch = 0; \ + _r->_misc->_mbrlen_state.__count = 0; \ + _r->_misc->_mbrlen_state.__value.__wch = 0; \ + _r->_misc->_mbrtowc_state.__count = 0; \ + _r->_misc->_mbrtowc_state.__value.__wch = 0; \ + _r->_misc->_mbsrtowcs_state.__count = 0; \ + _r->_misc->_mbsrtowcs_state.__value.__wch = 0; \ + _r->_misc->_wcrtomb_state.__count = 0; \ + _r->_misc->_wcrtomb_state.__value.__wch = 0; \ + _r->_misc->_wcsrtombs_state.__count = 0; \ + _r->_misc->_wcsrtombs_state.__value.__wch = 0; \ + _r->_misc->_l64a_buf[0] = '\0'; \ + _r->_misc->_getdate_err = 0; \ +} while (0) +#define _REENT_CHECK_MISC(var) \ + _REENT_CHECK(var, _misc, struct _misc_reent *, sizeof *((var)->_misc), _REENT_INIT_MISC(var)) + +#define _REENT_CHECK_SIGNAL_BUF(var) \ + _REENT_CHECK(var, _signal_buf, char *, _REENT_SIGNAL_SIZE, /* nothing */) + +#define _REENT_SIGNGAM(ptr) ((ptr)->_gamma_signgam) +#define _REENT_RAND_NEXT(ptr) ((ptr)->_r48->_rand_next) +#define _REENT_RAND48_SEED(ptr) ((ptr)->_r48->_seed) +#define _REENT_RAND48_MULT(ptr) ((ptr)->_r48->_mult) +#define _REENT_RAND48_ADD(ptr) ((ptr)->_r48->_add) +#define _REENT_MP_RESULT(ptr) ((ptr)->_mp->_result) +#define _REENT_MP_RESULT_K(ptr) ((ptr)->_mp->_result_k) +#define _REENT_MP_P5S(ptr) ((ptr)->_mp->_p5s) +#define _REENT_MP_FREELIST(ptr) ((ptr)->_mp->_freelist) +#define _REENT_ASCTIME_BUF(ptr) ((ptr)->_asctime_buf) +#define _REENT_TM(ptr) ((ptr)->_localtime_buf) +#define _REENT_EMERGENCY(ptr) ((ptr)->_emergency) +#define _REENT_STRTOK_LAST(ptr) ((ptr)->_misc->_strtok_last) +#define _REENT_MBLEN_STATE(ptr) ((ptr)->_misc->_mblen_state) +#define _REENT_MBTOWC_STATE(ptr)((ptr)->_misc->_mbtowc_state) +#define _REENT_WCTOMB_STATE(ptr)((ptr)->_misc->_wctomb_state) +#define _REENT_MBRLEN_STATE(ptr) ((ptr)->_misc->_mbrlen_state) +#define _REENT_MBRTOWC_STATE(ptr) ((ptr)->_misc->_mbrtowc_state) +#define _REENT_MBSRTOWCS_STATE(ptr) ((ptr)->_misc->_mbsrtowcs_state) +#define _REENT_WCRTOMB_STATE(ptr) ((ptr)->_misc->_wcrtomb_state) +#define _REENT_WCSRTOMBS_STATE(ptr) ((ptr)->_misc->_wcsrtombs_state) +#define _REENT_L64A_BUF(ptr) ((ptr)->_misc->_l64a_buf) +#define _REENT_GETDATE_ERR_P(ptr) (&((ptr)->_misc->_getdate_err)) +#define _REENT_SIGNAL_BUF(ptr) ((ptr)->_signal_buf) + +#else /* !_REENT_SMALL */ + +struct _reent +{ + int _errno; /* local copy of errno */ + + /* FILE is a big struct and may change over time. To try to achieve binary + compatibility with future versions, put stdin,stdout,stderr here. + These are pointers into member __sf defined below. */ + __FILE *_stdin, *_stdout, *_stderr; + + int _inc; /* used by tmpnam */ + char _emergency[_REENT_EMERGENCY_SIZE]; + + int _current_category; /* used by setlocale */ + _CONST char *_current_locale; + + int __sdidinit; /* 1 means stdio has been init'd */ + + void _EXFUN((*__cleanup),(struct _reent *)); + + /* used by mprec routines */ + struct _Bigint *_result; + int _result_k; + struct _Bigint *_p5s; + struct _Bigint **_freelist; + + /* used by some fp conversion routines */ + int _cvtlen; /* should be size_t */ + char *_cvtbuf; + + union + { + struct + { + unsigned int _unused_rand; + char * _strtok_last; + char _asctime_buf[_REENT_ASCTIME_SIZE]; + struct __tm _localtime_buf; + int _gamma_signgam; + __extension__ unsigned long long _rand_next; + struct _rand48 _r48; + _mbstate_t _mblen_state; + _mbstate_t _mbtowc_state; + _mbstate_t _wctomb_state; + char _l64a_buf[8]; + char _signal_buf[_REENT_SIGNAL_SIZE]; + int _getdate_err; + _mbstate_t _mbrlen_state; + _mbstate_t _mbrtowc_state; + _mbstate_t _mbsrtowcs_state; + _mbstate_t _wcrtomb_state; + _mbstate_t _wcsrtombs_state; + int _h_errno; + } _reent; + /* Two next two fields were once used by malloc. They are no longer + used. They are used to preserve the space used before so as to + allow addition of new reent fields and keep binary compatibility. */ + struct + { +#define _N_LISTS 30 + unsigned char * _nextf[_N_LISTS]; + unsigned int _nmalloc[_N_LISTS]; + } _unused; + } _new; + + /* atexit stuff */ + struct _atexit *_atexit; /* points to head of LIFO stack */ + struct _atexit _atexit0; /* one guaranteed table, required by ANSI */ + + /* signal info */ + void (**(_sig_func))(int); + + /* These are here last so that __FILE can grow without changing the offsets + of the above members (on the off chance that future binary compatibility + would be broken otherwise). */ + struct _glue __sglue; /* root of glue chain */ + __FILE __sf[3]; /* first three file descriptors */ +}; + +#define _REENT_INIT(var) \ + { 0, \ + &(var).__sf[0], \ + &(var).__sf[1], \ + &(var).__sf[2], \ + 0, \ + "", \ + 0, \ + "C", \ + 0, \ + _NULL, \ + _NULL, \ + 0, \ + _NULL, \ + _NULL, \ + 0, \ + _NULL, \ + { \ + { \ + 0, \ + _NULL, \ + "", \ + {0, 0, 0, 0, 0, 0, 0, 0, 0}, \ + 0, \ + 1, \ + { \ + {_RAND48_SEED_0, _RAND48_SEED_1, _RAND48_SEED_2}, \ + {_RAND48_MULT_0, _RAND48_MULT_1, _RAND48_MULT_2}, \ + _RAND48_ADD \ + }, \ + {0, {0}}, \ + {0, {0}}, \ + {0, {0}}, \ + "", \ + "", \ + 0, \ + {0, {0}}, \ + {0, {0}}, \ + {0, {0}}, \ + {0, {0}}, \ + {0, {0}} \ + } \ + }, \ + _NULL, \ + {_NULL, 0, {_NULL}, {{_NULL}, {_NULL}, 0, 0}}, \ + _NULL, \ + {_NULL, 0, _NULL} \ + } + +#define _REENT_INIT_PTR(var) \ + { (var)->_errno = 0; \ + (var)->_stdin = &(var)->__sf[0]; \ + (var)->_stdout = &(var)->__sf[1]; \ + (var)->_stderr = &(var)->__sf[2]; \ + (var)->_inc = 0; \ + memset(&(var)->_emergency, 0, sizeof((var)->_emergency)); \ + (var)->_current_category = 0; \ + (var)->_current_locale = "C"; \ + (var)->__sdidinit = 0; \ + (var)->__cleanup = _NULL; \ + (var)->_result = _NULL; \ + (var)->_result_k = 0; \ + (var)->_p5s = _NULL; \ + (var)->_freelist = _NULL; \ + (var)->_cvtlen = 0; \ + (var)->_cvtbuf = _NULL; \ + (var)->_new._reent._unused_rand = 0; \ + (var)->_new._reent._strtok_last = _NULL; \ + (var)->_new._reent._asctime_buf[0] = 0; \ + memset(&(var)->_new._reent._localtime_buf, 0, sizeof((var)->_new._reent._localtime_buf)); \ + (var)->_new._reent._gamma_signgam = 0; \ + (var)->_new._reent._rand_next = 1; \ + (var)->_new._reent._r48._seed[0] = _RAND48_SEED_0; \ + (var)->_new._reent._r48._seed[1] = _RAND48_SEED_1; \ + (var)->_new._reent._r48._seed[2] = _RAND48_SEED_2; \ + (var)->_new._reent._r48._mult[0] = _RAND48_MULT_0; \ + (var)->_new._reent._r48._mult[1] = _RAND48_MULT_1; \ + (var)->_new._reent._r48._mult[2] = _RAND48_MULT_2; \ + (var)->_new._reent._r48._add = _RAND48_ADD; \ + (var)->_new._reent._mblen_state.__count = 0; \ + (var)->_new._reent._mblen_state.__value.__wch = 0; \ + (var)->_new._reent._mbtowc_state.__count = 0; \ + (var)->_new._reent._mbtowc_state.__value.__wch = 0; \ + (var)->_new._reent._wctomb_state.__count = 0; \ + (var)->_new._reent._wctomb_state.__value.__wch = 0; \ + (var)->_new._reent._mbrlen_state.__count = 0; \ + (var)->_new._reent._mbrlen_state.__value.__wch = 0; \ + (var)->_new._reent._mbrtowc_state.__count = 0; \ + (var)->_new._reent._mbrtowc_state.__value.__wch = 0; \ + (var)->_new._reent._mbsrtowcs_state.__count = 0; \ + (var)->_new._reent._mbsrtowcs_state.__value.__wch = 0; \ + (var)->_new._reent._wcrtomb_state.__count = 0; \ + (var)->_new._reent._wcrtomb_state.__value.__wch = 0; \ + (var)->_new._reent._wcsrtombs_state.__count = 0; \ + (var)->_new._reent._wcsrtombs_state.__value.__wch = 0; \ + (var)->_new._reent._l64a_buf[0] = '\0'; \ + (var)->_new._reent._signal_buf[0] = '\0'; \ + (var)->_new._reent._getdate_err = 0; \ + (var)->_atexit = _NULL; \ + (var)->_atexit0._next = _NULL; \ + (var)->_atexit0._ind = 0; \ + (var)->_atexit0._fns[0] = _NULL; \ + (var)->_atexit0._on_exit_args._fntypes = 0; \ + (var)->_atexit0._on_exit_args._fnargs[0] = _NULL; \ + (var)->_sig_func = _NULL; \ + (var)->__sglue._next = _NULL; \ + (var)->__sglue._niobs = 0; \ + (var)->__sglue._iobs = _NULL; \ + memset(&(var)->__sf, 0, sizeof((var)->__sf)); \ + } + +#define _REENT_CHECK_RAND48(ptr) /* nothing */ +#define _REENT_CHECK_MP(ptr) /* nothing */ +#define _REENT_CHECK_TM(ptr) /* nothing */ +#define _REENT_CHECK_ASCTIME_BUF(ptr) /* nothing */ +#define _REENT_CHECK_EMERGENCY(ptr) /* nothing */ +#define _REENT_CHECK_MISC(ptr) /* nothing */ +#define _REENT_CHECK_SIGNAL_BUF(ptr) /* nothing */ + +#define _REENT_SIGNGAM(ptr) ((ptr)->_new._reent._gamma_signgam) +#define _REENT_RAND_NEXT(ptr) ((ptr)->_new._reent._rand_next) +#define _REENT_RAND48_SEED(ptr) ((ptr)->_new._reent._r48._seed) +#define _REENT_RAND48_MULT(ptr) ((ptr)->_new._reent._r48._mult) +#define _REENT_RAND48_ADD(ptr) ((ptr)->_new._reent._r48._add) +#define _REENT_MP_RESULT(ptr) ((ptr)->_result) +#define _REENT_MP_RESULT_K(ptr) ((ptr)->_result_k) +#define _REENT_MP_P5S(ptr) ((ptr)->_p5s) +#define _REENT_MP_FREELIST(ptr) ((ptr)->_freelist) +#define _REENT_ASCTIME_BUF(ptr) ((ptr)->_new._reent._asctime_buf) +#define _REENT_TM(ptr) (&(ptr)->_new._reent._localtime_buf) +#define _REENT_EMERGENCY(ptr) ((ptr)->_emergency) +#define _REENT_STRTOK_LAST(ptr) ((ptr)->_new._reent._strtok_last) +#define _REENT_MBLEN_STATE(ptr) ((ptr)->_new._reent._mblen_state) +#define _REENT_MBTOWC_STATE(ptr)((ptr)->_new._reent._mbtowc_state) +#define _REENT_WCTOMB_STATE(ptr)((ptr)->_new._reent._wctomb_state) +#define _REENT_MBRLEN_STATE(ptr)((ptr)->_new._reent._mbrlen_state) +#define _REENT_MBRTOWC_STATE(ptr)((ptr)->_new._reent._mbrtowc_state) +#define _REENT_MBSRTOWCS_STATE(ptr)((ptr)->_new._reent._mbsrtowcs_state) +#define _REENT_WCRTOMB_STATE(ptr)((ptr)->_new._reent._wcrtomb_state) +#define _REENT_WCSRTOMBS_STATE(ptr)((ptr)->_new._reent._wcsrtombs_state) +#define _REENT_L64A_BUF(ptr) ((ptr)->_new._reent._l64a_buf) +#define _REENT_SIGNAL_BUF(ptr) ((ptr)->_new._reent._signal_buf) +#define _REENT_GETDATE_ERR_P(ptr) (&((ptr)->_new._reent._getdate_err)) + +#endif /* !_REENT_SMALL */ + +/* + * All references to struct _reent are via this pointer. + * Internally, newlib routines that need to reference it should use _REENT. + */ + +#ifndef __ATTRIBUTE_IMPURE_PTR__ +#define __ATTRIBUTE_IMPURE_PTR__ +#endif + +extern struct _reent *_impure_ptr __ATTRIBUTE_IMPURE_PTR__; +extern struct _reent *_CONST _global_impure_ptr __ATTRIBUTE_IMPURE_PTR__; + +void _reclaim_reent _PARAMS ((struct _reent *)); + +/* #define _REENT_ONLY define this to get only reentrant routines */ + +#ifndef _REENT_ONLY + +#if defined(__DYNAMIC_REENT__) && !defined(__SINGLE_THREAD__) +#ifndef __getreent + struct _reent * _EXFUN(__getreent, (void)); +#endif +# define _REENT (__getreent()) +#else /* __SINGLE_THREAD__ || !__DYNAMIC_REENT__ */ +# define _REENT _impure_ptr +#endif /* __SINGLE_THREAD__ || !__DYNAMIC_REENT__ */ + +#endif /* !_REENT_ONLY */ + +#define _GLOBAL_REENT _global_impure_ptr + +#ifdef __cplusplus +} +#endif +#endif /* _SYS_REENT_H_ */ diff --git a/Demo_C/Bin/GNU/GNU_ARM/bin/arm-elf-gccbug b/Demo_C/Bin/GNU/GNU_ARM/bin/arm-elf-gccbug new file mode 100644 index 0000000..54592ca --- /dev/null +++ b/Demo_C/Bin/GNU/GNU_ARM/bin/arm-elf-gccbug @@ -0,0 +1,558 @@ +#!/bin/sh +# Submit a problem report to a GNATS site. +# Copyright (C) 1993, 2000, 2001, 2002, 2003, 2007 Free Software Foundation, Inc. +# Contributed by Brendan Kehoe (brendan@cygnus.com), based on a +# version written by Heinz G. Seidl (hgs@cygnus.com). +# +# This file is part of GNU GNATS. +# +# GNU GNATS is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 3, or (at your option) +# any later version. +# +# GNU GNATS is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with GNU GNATS; see the file COPYING3. If not see +# . + +# The version of this send-pr. +VERSION=3.113 + +# The submitter-id for your site. +SUBMITTER=net + +# The default mail address for PR submissions. +GNATS_ADDR=gcc-gnats@gcc.gnu.org + +# The default release for this host. +# We have to guess at what program_transform_name might have done. +# "sed 1q" because neither "head -1" nor "head -n 1" is universal, argh. + +DEFAULT_GCC="`echo $0 | sed -e 's/bug//'`" +DEFAULT_RELEASE="`$DEFAULT_GCC --version | sed 1q`" + +# The default organization. +DEFAULT_ORGANIZATION= + +# What mailer to use. This must come after the config file, since it is +# host-dependent. +# Copied from cvsbug +if [ -f /usr/sbin/sendmail ]; then + MAIL_AGENT="/usr/sbin/sendmail -oi -t" +else + MAIL_AGENT="/usr/lib/sendmail -oi -t" +fi +MAILER=`echo $MAIL_AGENT | sed -e 's, .*,,'` +if [ ! -f "$MAILER" ] ; then + echo "$COMMAND: Cannot file mail program \"$MAILER\"." + echo "$COMMAND: Please fix the MAIL_AGENT entry in the $COMMAND file." + exit 1 +fi + + +# How to read the passwd database. +PASSWD="cat /etc/passwd" + +ECHON=bsd + +if [ $ECHON = bsd ] ; then + ECHON1="echo -n" + ECHON2= +elif [ $ECHON = sysv ] ; then + ECHON1=echo + ECHON2='\c' +else + ECHON1=echo + ECHON2= +fi + +# + +if [ -z "$TMPDIR" ]; then + TMPDIR=/tmp +else + if [ "`echo $TMPDIR | grep '/$'`" != "" ]; then + TMPDIR="`echo $TMPDIR | sed -e 's,/$,,'`" + fi +fi + +if [ no = yes ]; then + TEMP0=`mktemp $TMPDIR/poXXXXXX` || exit 1 + TEMP=`mktemp $TMPDIR/pXXXXXX` || exit 1 + BAD=`mktemp $TMPDIR/pbadXXXXXX` || exit 1 + REF=`mktemp $TMPDIR/pfXXXXXX` || exit 1 + REMOVE_TEMP="rm -f $TEMP0 $TEMP $BAD $REF" +else + TEMPD=$TMPDIR/pd$$ + TEMP0=$TEMPD/po$$ + TEMP=$TEMPD/p$$ + BAD=$TEMPD/pbad$$ + REF=$TEMPD/pf$$ + mkdir $TEMPD || exit 1 + REMOVE_TEMP="rm -rf $TEMPD" +fi + +# find a user name +if [ "$LOGNAME" = "" ]; then + if [ "$USER" != "" ]; then + LOGNAME="$USER" + else + LOGNAME="UNKNOWN" + fi +fi + +FROM="$LOGNAME" +REPLY_TO="${REPLY_TO:-${REPLYTO:-$LOGNAME}}" + +# Find out the name of the originator of this PR. +if [ -n "$NAME" ]; then + ORIGINATOR="$NAME" +elif [ -f $HOME/.fullname ]; then + ORIGINATOR="`sed -e '1q' $HOME/.fullname`" +else + # Must use temp file due to incompatibilities in quoting behavior + # and to protect shell metacharacters in the expansion of $LOGNAME + $PASSWD | grep "^$LOGNAME:" | awk -F: '{print $5}' | sed -e 's/,.*//' > $TEMP0 + ORIGINATOR="`cat $TEMP0`" + rm -f $TEMP0 +fi + +if [ -n "$ORGANIZATION" ]; then + if [ -f "$ORGANIZATION" ]; then + ORGANIZATION="`cat $ORGANIZATION`" + fi +else + if [ -n "$DEFAULT_ORGANIZATION" ]; then + ORGANIZATION="$DEFAULT_ORGANIZATION" + elif [ -f $HOME/.organization ]; then + ORGANIZATION="`cat $HOME/.organization`" + fi +fi + +# If they don't have a preferred editor set, then use +if [ -z "$VISUAL" ]; then + if [ -z "$EDITOR" ]; then + EDIT=vi + else + EDIT="$EDITOR" + fi +else + EDIT="$VISUAL" +fi + +# Find out some information. +SYSTEM=`( [ -f /bin/uname ] && /bin/uname -a ) || \ + ( [ -f /usr/bin/uname ] && /usr/bin/uname -a ) || echo ""` +ARCH=`[ -f /bin/arch ] && /bin/arch` +MACHINE=`[ -f /bin/machine ] && /bin/machine` + +COMMAND=`echo $0 | sed -e 's,.*/,,'` +USAGE="Usage: $COMMAND [-PVL] [-t address] [-f filename] [-s severity] + [-c address] [--request-id] [--version]" +REMOVE= +BATCH= +CC= +SEVERITY_C= + +while [ $# -gt 0 ]; do + case "$1" in + -r) ;; # Ignore for backward compat. + -t | --to) if [ $# -eq 1 ]; then echo "$USAGE"; $REMOVE_TEMP; exit 1; fi + shift ; GNATS_ADDR="$1" + EXPLICIT_GNATS_ADDR=true + ;; + -f | --file) if [ $# -eq 1 ]; then echo "$USAGE"; $REMOVE_TEMP; exit 1; fi + shift ; IN_FILE="$1" + if [ "$IN_FILE" != "-" -a ! -r "$IN_FILE" ]; then + echo "$COMMAND: cannot read $IN_FILE" + $REMOVE_TEMP + exit 1 + fi + ;; + -b | --batch) BATCH=true ;; + -c | --cc) if [ $# -eq 1 ]; then echo "$USAGE"; $REMOVE_TEMP; exit 1; fi + shift ; CC="$1" + ;; + -s | --severity) if [ $# -eq 1 ]; then echo "$USAGE"; $REMOVE_TEMP; exit 1; fi + shift ; SEVERITY_C="$1" + ;; + -p | -P | --print) PRINT=true ;; + -L | --list) FORMAT=norm ;; + -l | -CL | --lisp) FORMAT=lisp ;; + --request-id) REQUEST_ID=true ;; + -h | --help) echo "$USAGE"; $REMOVE_TEMP; exit 0 ;; + -V | --version) cat < max) { max = length($0); } } + END {print max + 1;}'` + c=`expr 70 / $l` + if [ $c -eq 0 ]; then c=1; fi + echo "$CATEGORIES" | \ + awk 'BEGIN {print "Known categories:"; i = 0 } + { printf ("%-'$l'.'$l's", $0); if ((++i % '$c') == 0) { print "" } } + END { print ""; }' + $REMOVE_TEMP + exit 0 + ;; +esac + +ORIGINATOR_C='' +ORGANIZATION_C='' +SYNOPSIS_C='' +if [ -z "$SEVERITY_C" ]; then + SEVERITY_C='<[ non-critical | serious | critical ] (one line)>' +fi +PRIORITY_C='<[ low | medium ] (one line)>' +CATEGORY_C='' +RELEASE_C='' +ENVIRONMENT_C='' +DESCRIPTION_C='' +HOW_TO_REPEAT_C='' +FIX_C='' + +# Catch some signals. ($xs kludge needed by Sun /bin/sh) +xs=0 +trap '$REMOVE_TEMP; exit $xs' 0 +trap 'echo "$COMMAND: Aborting ..."; $REMOVE_TEMP; xs=1; exit' 1 3 13 15 + +# If they told us to use a specific file, then do so. +if [ -n "$IN_FILE" ]; then + if [ "$IN_FILE" = "-" ]; then + # The PR is coming from the standard input. + if [ -n "$EXPLICIT_GNATS_ADDR" ]; then + sed -e "s;^[Tt][Oo]:.*;To: $GNATS_ADDR;" > $TEMP + else + cat > $TEMP + fi + else + # Use the file they named. + if [ -n "$EXPLICIT_GNATS_ADDR" ]; then + sed -e "s;^[Tt][Oo]:.*;To: $GNATS_ADDR;" $IN_FILE > $TEMP + else + cat $IN_FILE > $TEMP + fi + fi +else + + if [ -n "$PR_FORM" -a -z "$PRINT_INTERN" ]; then + # If their PR_FORM points to a bogus entry, then bail. + if [ ! -f "$PR_FORM" -o ! -r "$PR_FORM" -o ! -s "$PR_FORM" ]; then + echo "$COMMAND: can't seem to read your template file (\`$PR_FORM'), ignoring PR_FORM" + sleep 1 + PRINT_INTERN=bad_prform + fi + fi + + if [ -n "$PR_FORM" -a -z "$PRINT_INTERN" ]; then + cp $PR_FORM $TEMP || + ( echo "$COMMAND: could not copy $PR_FORM" ; xs=1; exit ) + else + for file in $TEMP $REF ; do + cat > $file << '__EOF__' +SEND-PR: -*- send-pr -*- +SEND-PR: Lines starting with `SEND-PR' will be removed automatically, as +SEND-PR: will all comments (text enclosed in `<' and `>'). +SEND-PR: +SEND-PR: Please consult the GCC manual if you are not sure how to +SEND-PR: fill out a problem report. +SEND-PR: Note that the Synopsis field is mandatory. The Subject (for +SEND-PR: the mail) will be made the same as Synopsis unless explicitly +SEND-PR: changed. +SEND-PR: +SEND-PR: Choose from the following categories: +SEND-PR: +__EOF__ + + # Format the categories so they fit onto lines. + l=`echo "$CATEGORIES" | \ + awk 'BEGIN {max = 0; } { if (length($0) > max) { max = length($0); } } + END {print max + 1;}'` + c=`expr 61 / $l` + if [ $c -eq 0 ]; then c=1; fi + echo "$CATEGORIES" | \ + awk 'BEGIN {printf "SEND-PR: "; i = 0 } + { printf ("%-'$l'.'$l's", $0); + if ((++i % '$c') == 0) { printf "\nSEND-PR: " } } + END { printf "\nSEND-PR:\n"; }' >> $file + + cat >> $file << __EOF__ +To: $GNATS_ADDR +Subject: +From: $FROM +Reply-To: $REPLYTO +Cc: $CC +X-send-pr-version: $VERSION +X-GNATS-Notify: + + +>Submitter-Id: $SUBMITTER +>Originator: $ORIGINATOR +>Organization: ${ORGANIZATION-$ORGANIZATION_C} +>Confidential: no +SEND-PR: Leave "Confidential" as "no"; all GCC PRs are public. +>Synopsis: $SYNOPSIS_C +>Severity: $SEVERITY_C +SEND-PR: critical GCC is completely not operational; no work-around known. +SEND-PR: serious GCC is not working properly; a work-around is possible. +SEND-PR: non-critical Report indicates minor problem. +>Priority: $PRIORITY_C +SEND-PR: medium The problem should be solved in the next release. +SEND-PR: low The problem should be solve in a future release. +>Category: $CATEGORY_C +>Class: <[ doc-bug | accepts-illegal | rejects-legal | wrong-code | ice-on-legal-code| ice-on-illegal-code | pessimizes-code | sw-bug | change-request | support ] (one line)> +SEND-PR: doc-bug The documentation is incorrect. +SEND-PR: accepts-illegal GCC fails to reject erroneous code. +SEND-PR: rejects-legal GCC gives an error message for correct code. +SEND-PR: wrong-code The machine code generated by gcc is incorrect. +SEND-PR: ice-on-legal-code GCC gives an Internal Compiler Error (ICE) +SEND-PR: for correct code +SEND-PR: ice-on-illegal-code GCC gives an ICE instead of reporting an error +SEND-PR: pessimizes-code GCC misses an important optimization opportunity +SEND-PR: sw-bug Software bug of some other class than above +SEND-PR: change-request A feature in GCC is missing. +SEND-PR: support I need help with gcc. +>Release: ${DEFAULT_RELEASE-$RELEASE_C} +>Environment: +`[ -n "$SYSTEM" ] && echo System: $SYSTEM` +`[ -n "$ARCH" ] && echo Architecture: $ARCH` +`[ -n "$MACHINE" ] && echo Machine: $MACHINE` + $ENVIRONMENT_C +host: i686-pc-mingw32 +build: i686-pc-mingw32 +target: arm-unknown-elf +__EOF__ + cat >> $file << \__EOF__ +configured with: ../gcc-4.4.1/configure --target=arm-elf --prefix=/home/yagarto/install --disable-nls --disable-shared --disable-threads --with-gcc --with-gnu-ld --with-gnu-as --with-dwarf2 --enable-languages=c,c++ --enable-interwork --enable-multilib --with-newlib --with-headers=../newlib-1.17.0/newlib/libc/include --disable-libssp --disable-libstdcxx-pch --disable-libmudflap --disable-libgomp -v +__EOF__ + cat >> $file << __EOF__ +>Description: + $DESCRIPTION_C +>How-To-Repeat: + $HOW_TO_REPEAT_C +>Fix: + $FIX_C +__EOF__ + done + fi + + if [ "$PRINT" = true -o "$PRINT_INTERN" = true ]; then + cat $TEMP + xs=0; exit + fi + + chmod u+w $TEMP + if [ -z "$REQUEST_ID" ]; then + eval $EDIT $TEMP + else + ed -s $TEMP << '__EOF__' +/^Subject/s/^Subject:.*/Subject: request for a customer id/ +/^>Category/s/^>Category:.*/>Category: send-pr/ +w +q +__EOF__ + fi + + if cmp -s $REF $TEMP ; then + echo "$COMMAND: problem report not filled out, therefore not sent" + xs=1; exit + fi +fi + +# +# Check the enumeration fields + +# This is a "sed-subroutine" with one keyword parameter +# (with workaround for Sun sed bug) +# +SED_CMD=' +/$PATTERN/{ +s||| +s|<.*>|| +s|^[ ]*|| +s|[ ]*$|| +p +q +}' + + +while [ -z "$REQUEST_ID" ]; do + CNT=0 + + # 1) Confidential + # + PATTERN=">Confidential:" + CONFIDENTIAL=`eval sed -n -e "\"$SED_CMD\"" $TEMP` + case "$CONFIDENTIAL" in + no) CNT=`expr $CNT + 1` ;; + *) echo "$COMMAND: \`$CONFIDENTIAL' is not a valid value for \`Confidential'." ;; + esac + # + # 2) Severity + # + PATTERN=">Severity:" + SEVERITY=`eval sed -n -e "\"$SED_CMD\"" $TEMP` + case "$SEVERITY" in + ""|non-critical|serious|critical) CNT=`expr $CNT + 1` ;; + *) echo "$COMMAND: \`$SEVERITY' is not a valid value for \`Severity'." + esac + # + # 3) Priority + # + PATTERN=">Priority:" + PRIORITY=`eval sed -n -e "\"$SED_CMD\"" $TEMP` + case "$PRIORITY" in + ""|low|medium) CNT=`expr $CNT + 1` ;; + high) echo "$COMMAND: \`Priority: high' is reserved for GCC maintainers." ;; + *) echo "$COMMAND: \`$PRIORITY' is not a valid value for \`Priority'." + esac + # + # 4) Category + # + PATTERN=">Category:" + CATEGORY=`eval sed -n -e "\"$SED_CMD\"" $TEMP` + FOUND= + for C in $CATEGORIES + do + if [ "$C" = "$CATEGORY" ]; then FOUND=true ; break ; fi + done + if [ -n "$FOUND" ]; then + CNT=`expr $CNT + 1` + else + if [ -z "$CATEGORY" ]; then + echo "$COMMAND: you must include a Category: field in your report." + else + echo "$COMMAND: \`$CATEGORY' is not a known category." + fi + fi + # + # 5) Class + # + PATTERN=">Class:" + CLASS=`eval sed -n -e "\"$SED_CMD\"" $TEMP` + case "$CLASS" in + ""|doc-bug|accepts-illegal|rejects-legal|wrong-code|ice-on-legal-code|ice-on-illegal-code|pessimizes-code|sw-bug|change-request|support) CNT=`expr $CNT + 1` ;; + *) echo "$COMMAND: \`$CLASS' is not a valid value for \`Class'." + esac + # + # 6) Check that synopsis is not empty + # + if grep "^>Synopsis:[ ]*${SYNOPSIS_C}\$" $TEMP > /dev/null + then + echo "$COMMAND: Synopsis must not be empty." + else + CNT=`expr $CNT + 1` + fi + + [ $CNT -lt 6 -a -z "$BATCH" ] && + echo "Errors were found with the problem report." + + while true; do + if [ -z "$BATCH" ]; then + $ECHON1 "a)bort, e)dit or s)end? $ECHON2" + read input + else + if [ $CNT -eq 6 ]; then + input=s + else + input=a + fi + fi + case "$input" in + a*) + if [ -z "$BATCH" ]; then + echo "$COMMAND: the problem report remains in $BAD and is not sent." + REMOVE_TEMP="rm -f $TEMP0 $TEMP $REF" + mv $TEMP $BAD + else + echo "$COMMAND: the problem report is not sent." + fi + xs=1; exit + ;; + e*) + eval $EDIT $TEMP + continue 2 + ;; + s*) + break 2 + ;; + esac + done +done + +# +# Make sure the mail has got a Subject. If not, use the same as +# in Synopsis. +# + +if grep '^Subject:[ ]*$' $TEMP > /dev/null +then + SYNOPSIS=`grep '^>Synopsis:' $TEMP | sed -e 's/^>Synopsis:[ ]*//'` + ed -s $TEMP << __EOF__ +/^Subject:/s/:.*\$/: $SYNOPSIS/ +w +q +__EOF__ +fi + +# +# Remove comments and send the problem report +# (we have to use patterns, where the comment contains regex chars) +# +# /^>Originator:/s;$ORIGINATOR;; +sed -e " +/^SEND-PR:/d +/^>Organization:/,/^>[A-Za-z-]*:/s;$ORGANIZATION_C;; +/^>Confidential:/s;<.*>;; +/^>Synopsis:/s;$SYNOPSIS_C;; +/^>Severity:/s;<.*>;; +/^>Priority:/s;<.*>;; +/^>Category:/s;$CATEGORY_C;; +/^>Class:/s;<.*>;; +/^>Release:/,/^>[A-Za-z-]*:/s;$RELEASE_C;; +/^>Environment:/,/^>[A-Za-z-]*:/s;$ENVIRONMENT_C;; +/^>Description:/,/^>[A-Za-z-]*:/s;$DESCRIPTION_C;; +/^>How-To-Repeat:/,/^>[A-Za-z-]*:/s;$HOW_TO_REPEAT_C;; +/^>Fix:/,/^>[A-Za-z-]*:/s;$FIX_C;; +" $TEMP > $REF + +if $MAIL_AGENT < $REF; then + echo "$COMMAND: problem report sent" + xs=0; exit +else + echo "$COMMAND: mysterious mail failure." + if [ -z "$BATCH" ]; then + echo "$COMMAND: the problem report remains in $BAD and is not sent." + REMOVE_TEMP="rm -f $TEMP0 $TEMP $REF" + mv $REF $BAD + else + echo "$COMMAND: the problem report is not sent." + fi + xs=1; exit +fi diff --git a/Demo_C/Bin/GNU/GNU_ARM/lib/gcc/arm-elf/4.4.1/include/stddef.h b/Demo_C/Bin/GNU/GNU_ARM/lib/gcc/arm-elf/4.4.1/include/stddef.h new file mode 100644 index 0000000..89e5b2e --- /dev/null +++ b/Demo_C/Bin/GNU/GNU_ARM/lib/gcc/arm-elf/4.4.1/include/stddef.h @@ -0,0 +1,416 @@ +/* Copyright (C) 1989, 1997, 1998, 1999, 2000, 2002, 2004, 2009 + Free Software Foundation, Inc. + +This file is part of GCC. + +GCC is free software; you can redistribute it and/or modify +it under the terms of the GNU General Public License as published by +the Free Software Foundation; either version 3, or (at your option) +any later version. + +GCC is distributed in the hope that it will be useful, +but WITHOUT ANY WARRANTY; without even the implied warranty of +MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +GNU General Public License for more details. + +Under Section 7 of GPL version 3, you are granted additional +permissions described in the GCC Runtime Library Exception, version +3.1, as published by the Free Software Foundation. + +You should have received a copy of the GNU General Public License and +a copy of the GCC Runtime Library Exception along with this program; +see the files COPYING3 and COPYING.RUNTIME respectively. If not, see +. */ + +/* + * ISO C Standard: 7.17 Common definitions + */ +#if (!defined(_STDDEF_H) && !defined(_STDDEF_H_) && !defined(_ANSI_STDDEF_H) \ + && !defined(__STDDEF_H__)) \ + || defined(__need_wchar_t) || defined(__need_size_t) \ + || defined(__need_ptrdiff_t) || defined(__need_NULL) \ + || defined(__need_wint_t) + +/* Any one of these symbols __need_* means that GNU libc + wants us just to define one data type. So don't define + the symbols that indicate this file's entire job has been done. */ +#if (!defined(__need_wchar_t) && !defined(__need_size_t) \ + && !defined(__need_ptrdiff_t) && !defined(__need_NULL) \ + && !defined(__need_wint_t)) +#define _STDDEF_H +#define _STDDEF_H_ +/* snaroff@next.com says the NeXT needs this. */ +#define _ANSI_STDDEF_H +/* Irix 5.1 needs this. */ +#define __STDDEF_H__ +#endif + +#ifndef __sys_stdtypes_h +/* This avoids lossage on SunOS but only if stdtypes.h comes first. + There's no way to win with the other order! Sun lossage. */ + +/* On 4.3bsd-net2, make sure ansi.h is included, so we have + one less case to deal with in the following. */ +#if defined (__BSD_NET2__) || defined (____386BSD____) || (defined (__FreeBSD__) && (__FreeBSD__ < 5)) || defined(__NetBSD__) +#include +#endif +/* On FreeBSD 5, machine/ansi.h does not exist anymore... */ +#if defined (__FreeBSD__) && (__FreeBSD__ >= 5) +#include +#endif + +/* In 4.3bsd-net2, machine/ansi.h defines these symbols, which are + defined if the corresponding type is *not* defined. + FreeBSD-2.1 defines _MACHINE_ANSI_H_ instead of _ANSI_H_ */ +#if defined(_ANSI_H_) || defined(_MACHINE_ANSI_H_) +#if !defined(_SIZE_T_) && !defined(_BSD_SIZE_T_) +#define _SIZE_T +#endif +#if !defined(_PTRDIFF_T_) && !defined(_BSD_PTRDIFF_T_) +#define _PTRDIFF_T +#endif +/* On BSD/386 1.1, at least, machine/ansi.h defines _BSD_WCHAR_T_ + instead of _WCHAR_T_. */ +#if !defined(_WCHAR_T_) && !defined(_BSD_WCHAR_T_) +#ifndef _BSD_WCHAR_T_ +#define _WCHAR_T +#endif +#endif +/* Undef _FOO_T_ if we are supposed to define foo_t. */ +#if defined (__need_ptrdiff_t) || defined (_STDDEF_H_) +#undef _PTRDIFF_T_ +#undef _BSD_PTRDIFF_T_ +#endif +#if defined (__need_size_t) || defined (_STDDEF_H_) +#undef _SIZE_T_ +#undef _BSD_SIZE_T_ +#endif +#if defined (__need_wchar_t) || defined (_STDDEF_H_) +#undef _WCHAR_T_ +#undef _BSD_WCHAR_T_ +#endif +#endif /* defined(_ANSI_H_) || defined(_MACHINE_ANSI_H_) */ + +/* Sequent's header files use _PTRDIFF_T_ in some conflicting way. + Just ignore it. */ +#if defined (__sequent__) && defined (_PTRDIFF_T_) +#undef _PTRDIFF_T_ +#endif + +/* On VxWorks, may have defined macros like + _TYPE_size_t which will typedef size_t. fixincludes patched the + vxTypesBase.h so that this macro is only defined if _GCC_SIZE_T is + not defined, and so that defining this macro defines _GCC_SIZE_T. + If we find that the macros are still defined at this point, we must + invoke them so that the type is defined as expected. */ +#if defined (_TYPE_ptrdiff_t) && (defined (__need_ptrdiff_t) || defined (_STDDEF_H_)) +_TYPE_ptrdiff_t; +#undef _TYPE_ptrdiff_t +#endif +#if defined (_TYPE_size_t) && (defined (__need_size_t) || defined (_STDDEF_H_)) +_TYPE_size_t; +#undef _TYPE_size_t +#endif +#if defined (_TYPE_wchar_t) && (defined (__need_wchar_t) || defined (_STDDEF_H_)) +_TYPE_wchar_t; +#undef _TYPE_wchar_t +#endif + +/* In case nobody has defined these types, but we aren't running under + GCC 2.00, make sure that __PTRDIFF_TYPE__, __SIZE_TYPE__, and + __WCHAR_TYPE__ have reasonable values. This can happen if the + parts of GCC is compiled by an older compiler, that actually + include gstddef.h, such as collect2. */ + +/* Signed type of difference of two pointers. */ + +/* Define this type if we are doing the whole job, + or if we want this type in particular. */ +#if defined (_STDDEF_H) || defined (__need_ptrdiff_t) +#ifndef _PTRDIFF_T /* in case has defined it. */ +#ifndef _T_PTRDIFF_ +#ifndef _T_PTRDIFF +#ifndef __PTRDIFF_T +#ifndef _PTRDIFF_T_ +#ifndef _BSD_PTRDIFF_T_ +#ifndef ___int_ptrdiff_t_h +#ifndef _GCC_PTRDIFF_T +#define _PTRDIFF_T +#define _T_PTRDIFF_ +#define _T_PTRDIFF +#define __PTRDIFF_T +#define _PTRDIFF_T_ +#define _BSD_PTRDIFF_T_ +#define ___int_ptrdiff_t_h +#define _GCC_PTRDIFF_T +#ifndef __PTRDIFF_TYPE__ +#define __PTRDIFF_TYPE__ long int +#endif +typedef __PTRDIFF_TYPE__ ptrdiff_t; +#endif /* _GCC_PTRDIFF_T */ +#endif /* ___int_ptrdiff_t_h */ +#endif /* _BSD_PTRDIFF_T_ */ +#endif /* _PTRDIFF_T_ */ +#endif /* __PTRDIFF_T */ +#endif /* _T_PTRDIFF */ +#endif /* _T_PTRDIFF_ */ +#endif /* _PTRDIFF_T */ + +/* If this symbol has done its job, get rid of it. */ +#undef __need_ptrdiff_t + +#endif /* _STDDEF_H or __need_ptrdiff_t. */ + +/* Unsigned type of `sizeof' something. */ + +/* Define this type if we are doing the whole job, + or if we want this type in particular. */ +#if defined (_STDDEF_H) || defined (__need_size_t) +#ifndef __size_t__ /* BeOS */ +#ifndef __SIZE_T__ /* Cray Unicos/Mk */ +#ifndef _SIZE_T /* in case has defined it. */ +#ifndef _SYS_SIZE_T_H +#ifndef _T_SIZE_ +#ifndef _T_SIZE +#ifndef __SIZE_T +#ifndef _SIZE_T_ +#ifndef _BSD_SIZE_T_ +#ifndef _SIZE_T_DEFINED_ +#ifndef _SIZE_T_DEFINED +#ifndef _BSD_SIZE_T_DEFINED_ /* Darwin */ +#ifndef _SIZE_T_DECLARED /* FreeBSD 5 */ +#ifndef ___int_size_t_h +#ifndef _GCC_SIZE_T +#ifndef _SIZET_ +#ifndef __size_t +#define __size_t__ /* BeOS */ +#define __SIZE_T__ /* Cray Unicos/Mk */ +#define _SIZE_T +#define _SYS_SIZE_T_H +#define _T_SIZE_ +#define _T_SIZE +#define __SIZE_T +#define _SIZE_T_ +#define _BSD_SIZE_T_ +#define _SIZE_T_DEFINED_ +#define _SIZE_T_DEFINED +#define _BSD_SIZE_T_DEFINED_ /* Darwin */ +#define _SIZE_T_DECLARED /* FreeBSD 5 */ +#define ___int_size_t_h +#define _GCC_SIZE_T +#define _SIZET_ +#if defined (__FreeBSD__) && (__FreeBSD__ >= 5) +/* __size_t is a typedef on FreeBSD 5!, must not trash it. */ +#else +#define __size_t +#endif +#ifndef __SIZE_TYPE__ +#define __SIZE_TYPE__ long unsigned int +#endif +#if !(defined (__GNUG__) && defined (size_t)) +typedef __SIZE_TYPE__ size_t; +#ifdef __BEOS__ +typedef long ssize_t; +#endif /* __BEOS__ */ +#endif /* !(defined (__GNUG__) && defined (size_t)) */ +#endif /* __size_t */ +#endif /* _SIZET_ */ +#endif /* _GCC_SIZE_T */ +#endif /* ___int_size_t_h */ +#endif /* _SIZE_T_DECLARED */ +#endif /* _BSD_SIZE_T_DEFINED_ */ +#endif /* _SIZE_T_DEFINED */ +#endif /* _SIZE_T_DEFINED_ */ +#endif /* _BSD_SIZE_T_ */ +#endif /* _SIZE_T_ */ +#endif /* __SIZE_T */ +#endif /* _T_SIZE */ +#endif /* _T_SIZE_ */ +#endif /* _SYS_SIZE_T_H */ +#endif /* _SIZE_T */ +#endif /* __SIZE_T__ */ +#endif /* __size_t__ */ +#undef __need_size_t +#endif /* _STDDEF_H or __need_size_t. */ + + +/* Wide character type. + Locale-writers should change this as necessary to + be big enough to hold unique values not between 0 and 127, + and not (wchar_t) -1, for each defined multibyte character. */ + +/* Define this type if we are doing the whole job, + or if we want this type in particular. */ +#if defined (_STDDEF_H) || defined (__need_wchar_t) +#ifndef __wchar_t__ /* BeOS */ +#ifndef __WCHAR_T__ /* Cray Unicos/Mk */ +#ifndef _WCHAR_T +#ifndef _T_WCHAR_ +#ifndef _T_WCHAR +#ifndef __WCHAR_T +#ifndef _WCHAR_T_ +#ifndef _BSD_WCHAR_T_ +#ifndef _BSD_WCHAR_T_DEFINED_ /* Darwin */ +#ifndef _BSD_RUNE_T_DEFINED_ /* Darwin */ +#ifndef _WCHAR_T_DECLARED /* FreeBSD 5 */ +#ifndef _WCHAR_T_DEFINED_ +#ifndef _WCHAR_T_DEFINED +#ifndef _WCHAR_T_H +#ifndef ___int_wchar_t_h +#ifndef __INT_WCHAR_T_H +#ifndef _GCC_WCHAR_T +#define __wchar_t__ /* BeOS */ +#define __WCHAR_T__ /* Cray Unicos/Mk */ +#define _WCHAR_T +#define _T_WCHAR_ +#define _T_WCHAR +#define __WCHAR_T +#define _WCHAR_T_ +#define _BSD_WCHAR_T_ +#define _WCHAR_T_DEFINED_ +#define _WCHAR_T_DEFINED +#define _WCHAR_T_H +#define ___int_wchar_t_h +#define __INT_WCHAR_T_H +#define _GCC_WCHAR_T +#define _WCHAR_T_DECLARED + +/* On BSD/386 1.1, at least, machine/ansi.h defines _BSD_WCHAR_T_ + instead of _WCHAR_T_, and _BSD_RUNE_T_ (which, unlike the other + symbols in the _FOO_T_ family, stays defined even after its + corresponding type is defined). If we define wchar_t, then we + must undef _WCHAR_T_; for BSD/386 1.1 (and perhaps others), if + we undef _WCHAR_T_, then we must also define rune_t, since + headers like runetype.h assume that if machine/ansi.h is included, + and _BSD_WCHAR_T_ is not defined, then rune_t is available. + machine/ansi.h says, "Note that _WCHAR_T_ and _RUNE_T_ must be of + the same type." */ +#ifdef _BSD_WCHAR_T_ +#undef _BSD_WCHAR_T_ +#ifdef _BSD_RUNE_T_ +#if !defined (_ANSI_SOURCE) && !defined (_POSIX_SOURCE) +typedef _BSD_RUNE_T_ rune_t; +#define _BSD_WCHAR_T_DEFINED_ +#define _BSD_RUNE_T_DEFINED_ /* Darwin */ +#if defined (__FreeBSD__) && (__FreeBSD__ < 5) +/* Why is this file so hard to maintain properly? In contrast to + the comment above regarding BSD/386 1.1, on FreeBSD for as long + as the symbol has existed, _BSD_RUNE_T_ must not stay defined or + redundant typedefs will occur when stdlib.h is included after this file. */ +#undef _BSD_RUNE_T_ +#endif +#endif +#endif +#endif +/* FreeBSD 5 can't be handled well using "traditional" logic above + since it no longer defines _BSD_RUNE_T_ yet still desires to export + rune_t in some cases... */ +#if defined (__FreeBSD__) && (__FreeBSD__ >= 5) +#if !defined (_ANSI_SOURCE) && !defined (_POSIX_SOURCE) +#if __BSD_VISIBLE +#ifndef _RUNE_T_DECLARED +typedef __rune_t rune_t; +#define _RUNE_T_DECLARED +#endif +#endif +#endif +#endif + +#ifndef __WCHAR_TYPE__ +#define __WCHAR_TYPE__ int +#endif +#ifndef __cplusplus +typedef __WCHAR_TYPE__ wchar_t; +#endif +#endif +#endif +#endif +#endif +#endif +#endif +#endif /* _WCHAR_T_DECLARED */ +#endif /* _BSD_RUNE_T_DEFINED_ */ +#endif +#endif +#endif +#endif +#endif +#endif +#endif +#endif /* __WCHAR_T__ */ +#endif /* __wchar_t__ */ +#undef __need_wchar_t +#endif /* _STDDEF_H or __need_wchar_t. */ + +#if defined (__need_wint_t) +#ifndef _WINT_T +#define _WINT_T + +#ifndef __WINT_TYPE__ +#define __WINT_TYPE__ unsigned int +#endif +typedef __WINT_TYPE__ wint_t; +#endif +#undef __need_wint_t +#endif + +/* In 4.3bsd-net2, leave these undefined to indicate that size_t, etc. + are already defined. */ +/* BSD/OS 3.1 and FreeBSD [23].x require the MACHINE_ANSI_H check here. */ +#if defined(_ANSI_H_) || defined(_MACHINE_ANSI_H_) +/* The references to _GCC_PTRDIFF_T_, _GCC_SIZE_T_, and _GCC_WCHAR_T_ + are probably typos and should be removed before 2.8 is released. */ +#ifdef _GCC_PTRDIFF_T_ +#undef _PTRDIFF_T_ +#undef _BSD_PTRDIFF_T_ +#endif +#ifdef _GCC_SIZE_T_ +#undef _SIZE_T_ +#undef _BSD_SIZE_T_ +#endif +#ifdef _GCC_WCHAR_T_ +#undef _WCHAR_T_ +#undef _BSD_WCHAR_T_ +#endif +/* The following ones are the real ones. */ +#ifdef _GCC_PTRDIFF_T +#undef _PTRDIFF_T_ +#undef _BSD_PTRDIFF_T_ +#endif +#ifdef _GCC_SIZE_T +#undef _SIZE_T_ +#undef _BSD_SIZE_T_ +#endif +#ifdef _GCC_WCHAR_T +#undef _WCHAR_T_ +#undef _BSD_WCHAR_T_ +#endif +#endif /* _ANSI_H_ || _MACHINE_ANSI_H_ */ + +#endif /* __sys_stdtypes_h */ + +/* A null pointer constant. */ + +#if defined (_STDDEF_H) || defined (__need_NULL) +#undef NULL /* in case has defined it. */ +#ifdef __GNUG__ +#define NULL __null +#else /* G++ */ +#ifndef __cplusplus +#define NULL ((void *)0) +#else /* C++ */ +#define NULL 0 +#endif /* C++ */ +#endif /* G++ */ +#endif /* NULL not defined and or need NULL. */ +#undef __need_NULL + +#ifdef _STDDEF_H + +/* Offset of member MEMBER in a struct of type TYPE. */ +#define offsetof(TYPE, MEMBER) __builtin_offsetof (TYPE, MEMBER) + +#endif /* _STDDEF_H was defined this time */ + +#endif /* !_STDDEF_H && !_STDDEF_H_ && !_ANSI_STDDEF_H && !__STDDEF_H__ + || __need_XXX was not defined before */ diff --git a/Demo_C/Bin/GNU/Tools/copying.txt b/Demo_C/Bin/GNU/Tools/copying.txt new file mode 100644 index 0000000..5b6e7c6 --- /dev/null +++ b/Demo_C/Bin/GNU/Tools/copying.txt @@ -0,0 +1,340 @@ + GNU GENERAL PUBLIC LICENSE + Version 2, June 1991 + + Copyright (C) 1989, 1991 Free Software Foundation, Inc. + 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + Everyone is permitted to copy and distribute verbatim copies + of this license document, but changing it is not allowed. + + Preamble + + The licenses for most software are designed to take away your +freedom to share and change it. By contrast, the GNU General Public +License is intended to guarantee your freedom to share and change free +software--to make sure the software is free for all its users. This +General Public License applies to most of the Free Software +Foundation's software and to any other program whose authors commit to +using it. (Some other Free Software Foundation software is covered by +the GNU Library General Public License instead.) You can apply it to +your programs, too. + + When we speak of free software, we are referring to freedom, not +price. Our General Public Licenses are designed to make sure that you +have the freedom to distribute copies of free software (and charge for +this service if you wish), that you receive source code or can get it +if you want it, that you can change the software or use pieces of it +in new free programs; and that you know you can do these things. + + To protect your rights, we need to make restrictions that forbid +anyone to deny you these rights or to ask you to surrender the rights. +These restrictions translate to certain responsibilities for you if you +distribute copies of the software, or if you modify it. + + For example, if you distribute copies of such a program, whether +gratis or for a fee, you must give the recipients all the rights that +you have. You must make sure that they, too, receive or can get the +source code. And you must show them these terms so they know their +rights. + + We protect your rights with two steps: (1) copyright the software, and +(2) offer you this license which gives you legal permission to copy, +distribute and/or modify the software. + + Also, for each author's protection and ours, we want to make certain +that everyone understands that there is no warranty for this free +software. If the software is modified by someone else and passed on, we +want its recipients to know that what they have is not the original, so +that any problems introduced by others will not reflect on the original +authors' reputations. + + Finally, any free program is threatened constantly by software +patents. We wish to avoid the danger that redistributors of a free +program will individually obtain patent licenses, in effect making the +program proprietary. To prevent this, we have made it clear that any +patent must be licensed for everyone's free use or not licensed at all. + + The precise terms and conditions for copying, distribution and +modification follow. + + GNU GENERAL PUBLIC LICENSE + TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION + + 0. This License applies to any program or other work which contains +a notice placed by the copyright holder saying it may be distributed +under the terms of this General Public License. The "Program", below, +refers to any such program or work, and a "work based on the Program" +means either the Program or any derivative work under copyright law: +that is to say, a work containing the Program or a portion of it, +either verbatim or with modifications and/or translated into another +language. (Hereinafter, translation is included without limitation in +the term "modification".) Each licensee is addressed as "you". + +Activities other than copying, distribution and modification are not +covered by this License; they are outside its scope. The act of +running the Program is not restricted, and the output from the Program +is covered only if its contents constitute a work based on the +Program (independent of having been made by running the Program). +Whether that is true depends on what the Program does. + + 1. You may copy and distribute verbatim copies of the Program's +source code as you receive it, in any medium, provided that you +conspicuously and appropriately publish on each copy an appropriate +copyright notice and disclaimer of warranty; keep intact all the +notices that refer to this License and to the absence of any warranty; +and give any other recipients of the Program a copy of this License +along with the Program. + +You may charge a fee for the physical act of transferring a copy, and +you may at your option offer warranty protection in exchange for a fee. + + 2. You may modify your copy or copies of the Program or any portion +of it, thus forming a work based on the Program, and copy and +distribute such modifications or work under the terms of Section 1 +above, provided that you also meet all of these conditions: + + a) You must cause the modified files to carry prominent notices + stating that you changed the files and the date of any change. + + b) You must cause any work that you distribute or publish, that in + whole or in part contains or is derived from the Program or any + part thereof, to be licensed as a whole at no charge to all third + parties under the terms of this License. + + c) If the modified program normally reads commands interactively + when run, you must cause it, when started running for such + interactive use in the most ordinary way, to print or display an + announcement including an appropriate copyright notice and a + notice that there is no warranty (or else, saying that you provide + a warranty) and that users may redistribute the program under + these conditions, and telling the user how to view a copy of this + License. (Exception: if the Program itself is interactive but + does not normally print such an announcement, your work based on + the Program is not required to print an announcement.) + +These requirements apply to the modified work as a whole. If +identifiable sections of that work are not derived from the Program, +and can be reasonably considered independent and separate works in +themselves, then this License, and its terms, do not apply to those +sections when you distribute them as separate works. But when you +distribute the same sections as part of a whole which is a work based +on the Program, the distribution of the whole must be on the terms of +this License, whose permissions for other licensees extend to the +entire whole, and thus to each and every part regardless of who wrote it. + +Thus, it is not the intent of this section to claim rights or contest +your rights to work written entirely by you; rather, the intent is to +exercise the right to control the distribution of derivative or +collective works based on the Program. + +In addition, mere aggregation of another work not based on the Program +with the Program (or with a work based on the Program) on a volume of +a storage or distribution medium does not bring the other work under +the scope of this License. + + 3. You may copy and distribute the Program (or a work based on it, +under Section 2) in object code or executable form under the terms of +Sections 1 and 2 above provided that you also do one of the following: + + a) Accompany it with the complete corresponding machine-readable + source code, which must be distributed under the terms of Sections + 1 and 2 above on a medium customarily used for software interchange; or, + + b) Accompany it with a written offer, valid for at least three + years, to give any third party, for a charge no more than your + cost of physically performing source distribution, a complete + machine-readable copy of the corresponding source code, to be + distributed under the terms of Sections 1 and 2 above on a medium + customarily used for software interchange; or, + + c) Accompany it with the information you received as to the offer + to distribute corresponding source code. (This alternative is + allowed only for noncommercial distribution and only if you + received the program in object code or executable form with such + an offer, in accord with Subsection b above.) + +The source code for a work means the preferred form of the work for +making modifications to it. For an executable work, complete source +code means all the source code for all modules it contains, plus any +associated interface definition files, plus the scripts used to +control compilation and installation of the executable. However, as a +special exception, the source code distributed need not include +anything that is normally distributed (in either source or binary +form) with the major components (compiler, kernel, and so on) of the +operating system on which the executable runs, unless that component +itself accompanies the executable. + +If distribution of executable or object code is made by offering +access to copy from a designated place, then offering equivalent +access to copy the source code from the same place counts as +distribution of the source code, even though third parties are not +compelled to copy the source along with the object code. + + 4. You may not copy, modify, sublicense, or distribute the Program +except as expressly provided under this License. Any attempt +otherwise to copy, modify, sublicense or distribute the Program is +void, and will automatically terminate your rights under this License. +However, parties who have received copies, or rights, from you under +this License will not have their licenses terminated so long as such +parties remain in full compliance. + + 5. You are not required to accept this License, since you have not +signed it. However, nothing else grants you permission to modify or +distribute the Program or its derivative works. These actions are +prohibited by law if you do not accept this License. Therefore, by +modifying or distributing the Program (or any work based on the +Program), you indicate your acceptance of this License to do so, and +all its terms and conditions for copying, distributing or modifying +the Program or works based on it. + + 6. Each time you redistribute the Program (or any work based on the +Program), the recipient automatically receives a license from the +original licensor to copy, distribute or modify the Program subject to +these terms and conditions. You may not impose any further +restrictions on the recipients' exercise of the rights granted herein. +You are not responsible for enforcing compliance by third parties to +this License. + + 7. If, as a consequence of a court judgment or allegation of patent +infringement or for any other reason (not limited to patent issues), +conditions are imposed on you (whether by court order, agreement or +otherwise) that contradict the conditions of this License, they do not +excuse you from the conditions of this License. If you cannot +distribute so as to satisfy simultaneously your obligations under this +License and any other pertinent obligations, then as a consequence you +may not distribute the Program at all. For example, if a patent +license would not permit royalty-free redistribution of the Program by +all those who receive copies directly or indirectly through you, then +the only way you could satisfy both it and this License would be to +refrain entirely from distribution of the Program. + +If any portion of this section is held invalid or unenforceable under +any particular circumstance, the balance of the section is intended to +apply and the section as a whole is intended to apply in other +circumstances. + +It is not the purpose of this section to induce you to infringe any +patents or other property right claims or to contest validity of any +such claims; this section has the sole purpose of protecting the +integrity of the free software distribution system, which is +implemented by public license practices. Many people have made +generous contributions to the wide range of software distributed +through that system in reliance on consistent application of that +system; it is up to the author/donor to decide if he or she is willing +to distribute software through any other system and a licensee cannot +impose that choice. + +This section is intended to make thoroughly clear what is believed to +be a consequence of the rest of this License. + + 8. If the distribution and/or use of the Program is restricted in +certain countries either by patents or by copyrighted interfaces, the +original copyright holder who places the Program under this License +may add an explicit geographical distribution limitation excluding +those countries, so that distribution is permitted only in or among +countries not thus excluded. In such case, this License incorporates +the limitation as if written in the body of this License. + + 9. The Free Software Foundation may publish revised and/or new versions +of the General Public License from time to time. Such new versions will +be similar in spirit to the present version, but may differ in detail to +address new problems or concerns. + +Each version is given a distinguishing version number. If the Program +specifies a version number of this License which applies to it and "any +later version", you have the option of following the terms and conditions +either of that version or of any later version published by the Free +Software Foundation. If the Program does not specify a version number of +this License, you may choose any version ever published by the Free Software +Foundation. + + 10. If you wish to incorporate parts of the Program into other free +programs whose distribution conditions are different, write to the author +to ask for permission. For software which is copyrighted by the Free +Software Foundation, write to the Free Software Foundation; we sometimes +make exceptions for this. Our decision will be guided by the two goals +of preserving the free status of all derivatives of our free software and +of promoting the sharing and reuse of software generally. + + NO WARRANTY + + 11. BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY +FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN +OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES +PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED +OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF +MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS +TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE +PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING, +REPAIR OR CORRECTION. + + 12. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING +WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR +REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, +INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING +OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED +TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY +YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER +PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE +POSSIBILITY OF SUCH DAMAGES. + + END OF TERMS AND CONDITIONS + + How to Apply These Terms to Your New Programs + + If you develop a new program, and you want it to be of the greatest +possible use to the public, the best way to achieve this is to make it +free software which everyone can redistribute and change under these terms. + + To do so, attach the following notices to the program. It is safest +to attach them to the start of each source file to most effectively +convey the exclusion of warranty; and each file should have at least +the "copyright" line and a pointer to where the full notice is found. + + + Copyright (C) + + This program is free software; you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation; either version 2 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License + along with this program; if not, write to the Free Software + Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + + +Also add information on how to contact you by electronic and paper mail. + +If the program is interactive, make it output a short notice like this +when it starts in an interactive mode: + + Gnomovision version 69, Copyright (C) year name of author + Gnomovision comes with ABSOLUTELY NO WARRANTY; for details type `show w'. + This is free software, and you are welcome to redistribute it + under certain conditions; type `show c' for details. + +The hypothetical commands `show w' and `show c' should show the appropriate +parts of the General Public License. Of course, the commands you use may +be called something other than `show w' and `show c'; they could even be +mouse-clicks or menu items--whatever suits your program. + +You should also get your employer (if you work as a programmer) or your +school, if any, to sign a "copyright disclaimer" for the program, if +necessary. Here is a sample; alter the names: + + Yoyodyne, Inc., hereby disclaims all copyright interest in the program + `Gnomovision' (which makes passes at compilers) written by James Hacker. + + , 1 April 1989 + Ty Coon, President of Vice + +This General Public License does not permit incorporating your program into +proprietary programs. If your program is a subroutine library, you may +consider it more useful to permit linking proprietary applications with the +library. If this is what you want to do, use the GNU Library General +Public License instead of this License. diff --git a/Demo_C/Bin/GNU/Tools/source.txt b/Demo_C/Bin/GNU/Tools/source.txt new file mode 100644 index 0000000..ad9b86c --- /dev/null +++ b/Demo_C/Bin/GNU/Tools/source.txt @@ -0,0 +1,29 @@ + +make +===== + +The make program is the original version which was taken from +"mingw32-make-3.81-1", you can find the package here: + +http://prdownloads.sourceforge.net/mingw/mingw32-make-3.81-1.tar.gz + +Also the source can be found here: + +http://prdownloads.sourceforge.net/mingw/mingw32-make-3.81-1-src.tar.gz + + +sh, msys-1.0, echo, touch, and some of the fileutils +===================================================== + +The tools are original version which was taken from "msys-1.0.8.exe". +You can find the "msys-1.0.8" package here: + +http://prdownloads.sourceforge.net/mingw/MSYS-1.0.8.exe + + +And the source here: + +http://prdownloads.sourceforge.net/mingw/msys-1.0.8-src.tar.bz2 + + + diff --git a/Demo_C/Bin/GNU/YAGARTO/binutils.url b/Demo_C/Bin/GNU/YAGARTO/binutils.url new file mode 100644 index 0000000..6f9c758 --- /dev/null +++ b/Demo_C/Bin/GNU/YAGARTO/binutils.url @@ -0,0 +1,2 @@ +[InternetShortcut] +URL=http://www.gnu.org/software/binutils/ \ No newline at end of file diff --git a/Demo_C/Bin/GNU/YAGARTO/copying.newlib.txt b/Demo_C/Bin/GNU/YAGARTO/copying.newlib.txt new file mode 100644 index 0000000..24c34cb --- /dev/null +++ b/Demo_C/Bin/GNU/YAGARTO/copying.newlib.txt @@ -0,0 +1,640 @@ +The newlib subdirectory is a collection of software from several sources. + +Each file may have its own copyright/license that is embedded in the source +file. Unless otherwise noted in the body of the source file(s), the following copyright +notices will apply to the contents of the newlib subdirectory: + +(1) Red Hat Incorporated + +Copyright (c) 1994-2007 Red Hat, Inc. All rights reserved. + +This copyrighted material is made available to anyone wishing to use, +modify, copy, or redistribute it subject to the terms and conditions +of the BSD License. This program is distributed in the hope that +it will be useful, but WITHOUT ANY WARRANTY expressed or implied, +including the implied warranties of MERCHANTABILITY or FITNESS FOR +A PARTICULAR PURPOSE. A copy of this license is available at +http://www.opensource.org/licenses. Any Red Hat trademarks that are +incorporated in the source code or documentation are not subject to +the BSD License and may only be used or replicated with the express +permission of Red Hat, Inc. + +(2) University of California, Berkeley + +Copyright (c) 1981-2000 The Regents of the University of California. +All rights reserved. + +Redistribution and use in source and binary forms, with or without modification, +are permitted provided that the following conditions are met: + + * Redistributions of source code must retain the above copyright notice, + this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above copyright notice, + this list of conditions and the following disclaimer in the documentation + and/or other materials provided with the distribution. + * Neither the name of the University nor the names of its contributors + may be used to endorse or promote products derived from this software + without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" +AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED +WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. +IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, +INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT +NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR +PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, +WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) +ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY +OF SUCH DAMAGE. + +(3) David M. Gay (AT&T 1991, Lucent 1998) + +The author of this software is David M. Gay. + +Copyright (c) 1991 by AT&T. + +Permission to use, copy, modify, and distribute this software for any +purpose without fee is hereby granted, provided that this entire notice +is included in all copies of any software which is or includes a copy +or modification of this software and in all copies of the supporting +documentation for such software. + +THIS SOFTWARE IS BEING PROVIDED "AS IS", WITHOUT ANY EXPRESS OR IMPLIED +WARRANTY. IN PARTICULAR, NEITHER THE AUTHOR NOR AT&T MAKES ANY +REPRESENTATION OR WARRANTY OF ANY KIND CONCERNING THE MERCHANTABILITY +OF THIS SOFTWARE OR ITS FITNESS FOR ANY PARTICULAR PURPOSE. + +------------------------------------------------------------------- + +The author of this software is David M. Gay. + +Copyright (C) 1998-2001 by Lucent Technologies +All Rights Reserved + +Permission to use, copy, modify, and distribute this software and +its documentation for any purpose and without fee is hereby +granted, provided that the above copyright notice appear in all +copies and that both that the copyright notice and this +permission notice and warranty disclaimer appear in supporting +documentation, and that the name of Lucent or any of its entities +not be used in advertising or publicity pertaining to +distribution of the software without specific, written prior +permission. + +LUCENT DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE, +INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS. +IN NO EVENT SHALL LUCENT OR ANY OF ITS ENTITIES BE LIABLE FOR ANY +SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES +WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER +IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, +ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF +THIS SOFTWARE. + + +(4) Advanced Micro Devices + +Copyright 1989, 1990 Advanced Micro Devices, Inc. + +This software is the property of Advanced Micro Devices, Inc (AMD) which +specifically grants the user the right to modify, use and distribute this +software provided this notice is not removed or altered. All other rights +are reserved by AMD. + +AMD MAKES NO WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, WITH REGARD TO THIS +SOFTWARE. IN NO EVENT SHALL AMD BE LIABLE FOR INCIDENTAL OR CONSEQUENTIAL +DAMAGES IN CONNECTION WITH OR ARISING FROM THE FURNISHING, PERFORMANCE, OR +USE OF THIS SOFTWARE. + +So that all may benefit from your experience, please report any problems +or suggestions about this software to the 29K Technical Support Center at +800-29-29-AMD (800-292-9263) in the USA, or 0800-89-1131 in the UK, or +0031-11-1129 in Japan, toll free. The direct dial number is 512-462-4118. + +Advanced Micro Devices, Inc. +29K Support Products +Mail Stop 573 +5900 E. Ben White Blvd. +Austin, TX 78741 +800-292-9263 + +(5) C.W. Sandmann + +Copyright (C) 1993 C.W. Sandmann + +This file may be freely distributed as long as the author's name remains. + +(6) Eric Backus + +(C) Copyright 1992 Eric Backus + +This software may be used freely so long as this copyright notice is +left intact. There is no warrantee on this software. + +(7) Sun Microsystems + +Copyright (C) 1993 by Sun Microsystems, Inc. All rights reserved. + +Developed at SunPro, a Sun Microsystems, Inc. business. +Permission to use, copy, modify, and distribute this +software is freely granted, provided that this notice is preserved. + +(8) Hewlett Packard + +(c) Copyright 1986 HEWLETT-PACKARD COMPANY + +To anyone who acknowledges that this file is provided "AS IS" +without any express or implied warranty: + permission to use, copy, modify, and distribute this file +for any purpose is hereby granted without fee, provided that +the above copyright notice and this notice appears in all +copies, and that the name of Hewlett-Packard Company not be +used in advertising or publicity pertaining to distribution +of the software without specific, written prior permission. +Hewlett-Packard Company makes no representations about the +suitability of this software for any purpose. + +(9) Hans-Peter Nilsson + +Copyright (C) 2001 Hans-Peter Nilsson + +Permission to use, copy, modify, and distribute this software is +freely granted, provided that the above copyright notice, this notice +and the following disclaimer are preserved with no changes. + +THIS SOFTWARE IS PROVIDED ``AS IS'' AND WITHOUT ANY EXPRESS OR +IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED +WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR +PURPOSE. + +(10) Stephane Carrez (m68hc11-elf/m68hc12-elf targets only) + +Copyright (C) 1999, 2000, 2001, 2002 Stephane Carrez (stcarrez@nerim.fr) + +The authors hereby grant permission to use, copy, modify, distribute, +and license this software and its documentation for any purpose, provided +that existing copyright notices are retained in all copies and that this +notice is included verbatim in any distributions. No written agreement, +license, or royalty fee is required for any of the authorized uses. +Modifications to this software may be copyrighted by their authors +and need not follow the licensing terms described here, provided that +the new terms are clearly indicated on the first page of each file where +they apply. + +(11) Christopher G. Demetriou + +Copyright (c) 2001 Christopher G. Demetriou +All rights reserved. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions +are met: +1. Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. +2. Redistributions in binary form must reproduce the above copyright + notice, this list of conditions and the following disclaimer in the + documentation and/or other materials provided with the distribution. +3. The name of the author may not be used to endorse or promote products + derived from this software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR +IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES +OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. +IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, +INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT +NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF +THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +(12) SuperH, Inc. + +Copyright 2002 SuperH, Inc. All rights reserved + +This software is the property of SuperH, Inc (SuperH) which specifically +grants the user the right to modify, use and distribute this software +provided this notice is not removed or altered. All other rights are +reserved by SuperH. + +SUPERH MAKES NO WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, WITH REGARD TO +THIS SOFTWARE. IN NO EVENT SHALL SUPERH BE LIABLE FOR INDIRECT, SPECIAL, +INCIDENTAL OR CONSEQUENTIAL DAMAGES IN CONNECTION WITH OR ARISING FROM +THE FURNISHING, PERFORMANCE, OR USE OF THIS SOFTWARE. + +So that all may benefit from your experience, please report any problems +or suggestions about this software to the SuperH Support Center via +e-mail at softwaresupport@superh.com . + +SuperH, Inc. +405 River Oaks Parkway +San Jose +CA 95134 +USA + +(13) Royal Institute of Technology + +Copyright (c) 1999 Kungliga Tekniska Högskolan +(Royal Institute of Technology, Stockholm, Sweden). +All rights reserved. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions +are met: + +1. Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. + +2. Redistributions in binary form must reproduce the above copyright + notice, this list of conditions and the following disclaimer in the + documentation and/or other materials provided with the distribution. + +3. Neither the name of KTH nor the names of its contributors may be + used to endorse or promote products derived from this software without + specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY KTH AND ITS CONTRIBUTORS ``AS IS'' AND ANY +EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE +IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR +PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL KTH OR ITS CONTRIBUTORS BE +LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR +CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF +SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR +BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, +WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR +OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF +ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +(14) Alexey Zelkin + +Copyright (c) 2000, 2001 Alexey Zelkin +All rights reserved. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions +are met: +1. Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. +2. Redistributions in binary form must reproduce the above copyright + notice, this list of conditions and the following disclaimer in the + documentation and/or other materials provided with the distribution. + +THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND +ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE +IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE +ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE +FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL +DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS +OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) +HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT +LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY +OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF +SUCH DAMAGE. + +(15) Andrey A. Chernov + +Copyright (C) 1997 by Andrey A. Chernov, Moscow, Russia. +All rights reserved. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions +are met: +1. Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. +2. Redistributions in binary form must reproduce the above copyright + notice, this list of conditions and the following disclaimer in the + documentation and/or other materials provided with the distribution. + +THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND +ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE +IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE +ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE +FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL +DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS +OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) +HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT +LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY +OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF +SUCH DAMAGE. + +(16) FreeBSD + +Copyright (c) 1997-2002 FreeBSD Project. +All rights reserved. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions +are met: +1. Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. +2. Redistributions in binary form must reproduce the above copyright + notice, this list of conditions and the following disclaimer in the + documentation and/or other materials provided with the distribution. + +THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND +ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE +IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE +ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE +FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL +DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS +OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) +HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT +LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY +OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF +SUCH DAMAGE. + +(17) S. L. Moshier + +Author: S. L. Moshier. + +Copyright (c) 1984,2000 S.L. Moshier + +Permission to use, copy, modify, and distribute this software for any +purpose without fee is hereby granted, provided that this entire notice +is included in all copies of any software which is or includes a copy +or modification of this software and in all copies of the supporting +documentation for such software. + +THIS SOFTWARE IS BEING PROVIDED "AS IS", WITHOUT ANY EXPRESS OR IMPLIED +WARRANTY. IN PARTICULAR, THE AUTHOR MAKES NO REPRESENTATION +OR WARRANTY OF ANY KIND CONCERNING THE MERCHANTABILITY OF THIS +SOFTWARE OR ITS FITNESS FOR ANY PARTICULAR PURPOSE. + +(18) Citrus Project + +Copyright (c)1999 Citrus Project, +All rights reserved. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions +are met: +1. Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. +2. Redistributions in binary form must reproduce the above copyright + notice, this list of conditions and the following disclaimer in the + documentation and/or other materials provided with the distribution. + +THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND +ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE +IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE +ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE +FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL +DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS +OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) +HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT +LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY +OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF +SUCH DAMAGE. + +(19) Todd C. Miller + +Copyright (c) 1998 Todd C. Miller +All rights reserved. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions +are met: +1. Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. +2. Redistributions in binary form must reproduce the above copyright + notice, this list of conditions and the following disclaimer in the + documentation and/or other materials provided with the distribution. +3. The name of the author may not be used to endorse or promote products + derived from this software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, +INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY +AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL +THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, +EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, +PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; +OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, +WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR +OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF +ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + +(20) DJ Delorie (i386) +Copyright (C) 1991 DJ Delorie +All rights reserved. + +Redistribution and use in source and binary forms is permitted +provided that the above copyright notice and following paragraph are +duplicated in all such forms. + +This file is distributed WITHOUT ANY WARRANTY; without even the implied +warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. + +(21) Free Software Foundation LGPL License (*-linux* targets only) + + Copyright (C) 1990-1999, 2000, 2001 Free Software Foundation, Inc. + This file is part of the GNU C Library. + Contributed by Mark Kettenis , 1997. + + The GNU C Library is free software; you can redistribute it and/or + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library; if not, write to the Free + Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA + 02110-1301 USA. + +(22) Xavier Leroy LGPL License (i[3456]86-*-linux* targets only) + +Copyright (C) 1996 Xavier Leroy (Xavier.Leroy@inria.fr) + +This program is free software; you can redistribute it and/or +modify it under the terms of the GNU Library General Public License +as published by the Free Software Foundation; either version 2 +of the License, or (at your option) any later version. + +This program is distributed in the hope that it will be useful, +but WITHOUT ANY WARRANTY; without even the implied warranty of +MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +GNU Library General Public License for more details. + +(23) Intel (i960) + +Copyright (c) 1993 Intel Corporation + +Intel hereby grants you permission to copy, modify, and distribute this +software and its documentation. Intel grants this permission provided +that the above copyright notice appears in all copies and that both the +copyright notice and this permission notice appear in supporting +documentation. In addition, Intel grants this permission provided that +you prominently mark as "not part of the original" any modifications +made to this software or documentation, and that the name of Intel +Corporation not be used in advertising or publicity pertaining to +distribution of the software or the documentation without specific, +written prior permission. + +Intel Corporation provides this AS IS, WITHOUT ANY WARRANTY, EXPRESS OR +IMPLIED, INCLUDING, WITHOUT LIMITATION, ANY WARRANTY OF MERCHANTABILITY +OR FITNESS FOR A PARTICULAR PURPOSE. Intel makes no guarantee or +representations regarding the use of, or the results of the use of, +the software and documentation in terms of correctness, accuracy, +reliability, currentness, or otherwise; and you rely on the software, +documentation and results solely at your own risk. + +IN NO EVENT SHALL INTEL BE LIABLE FOR ANY LOSS OF USE, LOSS OF BUSINESS, +LOSS OF PROFITS, INDIRECT, INCIDENTAL, SPECIAL OR CONSEQUENTIAL DAMAGES +OF ANY KIND. IN NO EVENT SHALL INTEL'S TOTAL LIABILITY EXCEED THE SUM +PAID TO INTEL FOR THE PRODUCT LICENSED HEREUNDER. + +(24) Hewlett-Packard (hppa targets only) + +(c) Copyright 1986 HEWLETT-PACKARD COMPANY + +To anyone who acknowledges that this file is provided "AS IS" +without any express or implied warranty: + permission to use, copy, modify, and distribute this file +for any purpose is hereby granted without fee, provided that +the above copyright notice and this notice appears in all +copies, and that the name of Hewlett-Packard Company not be +used in advertising or publicity pertaining to distribution +of the software without specific, written prior permission. +Hewlett-Packard Company makes no representations about the +suitability of this software for any purpose. + +(25) Henry Spencer (only *-linux targets) + +Copyright 1992, 1993, 1994 Henry Spencer. All rights reserved. +This software is not subject to any license of the American Telephone +and Telegraph Company or of the Regents of the University of California. + +Permission is granted to anyone to use this software for any purpose on +any computer system, and to alter it and redistribute it, subject +to the following restrictions: + +1. The author is not responsible for the consequences of use of this + software, no matter how awful, even if they arise from flaws in it. + +2. The origin of this software must not be misrepresented, either by + explicit claim or by omission. Since few users ever read sources, + credits must appear in the documentation. + +3. Altered versions must be plainly marked as such, and must not be + misrepresented as being the original software. Since few users + ever read sources, credits must appear in the documentation. + +4. This notice may not be removed or altered. + +(26) Mike Barcroft + +Copyright (c) 2001 Mike Barcroft +All rights reserved. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions +are met: +1. Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. +2. Redistributions in binary form must reproduce the above copyright + notice, this list of conditions and the following disclaimer in the + documentation and/or other materials provided with the distribution. + +THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND +ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE +IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE +ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE +FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL +DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS +OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) +HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT +LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY +OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF +SUCH DAMAGE. + +(27) Konstantin Chuguev (--enable-newlib-iconv) + +Copyright (c) 1999, 2000 + Konstantin Chuguev. All rights reserved. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions +are met: +1. Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. +2. Redistributions in binary form must reproduce the above copyright + notice, this list of conditions and the following disclaimer in the + documentation and/or other materials provided with the distribution. + +THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND +ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE +IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE +ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE +FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL +DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS +OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) +HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT +LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY +OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF +SUCH DAMAGE. + + iconv (Charset Conversion Library) v2.0 + +(28) Artem Bityuckiy (--enable-newlib-iconv) + +Copyright (c) 2003, Artem B. Bityuckiy, SoftMine Corporation. +Rights transferred to Franklin Electronic Publishers. + +Redistribution and use in source and binary forms, with or without +modification, are permitted provided that the following conditions +are met: +1. Redistributions of source code must retain the above copyright + notice, this list of conditions and the following disclaimer. +2. Redistributions in binary form must reproduce the above copyright + notice, this list of conditions and the following disclaimer in the + documentation and/or other materials provided with the distribution. + +THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND +ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE +IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE +ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE +FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL +DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS +OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) +HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT +LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY +OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF +SUCH DAMAGE. + +(29) IBM, Sony, Toshiba (only spu-* targets) + + (C) Copyright 2001,2006, + International Business Machines Corporation, + Sony Computer Entertainment, Incorporated, + Toshiba Corporation, + + All rights reserved. + + Redistribution and use in source and binary forms, with or without + modification, are permitted provided that the following conditions are met: + + * Redistributions of source code must retain the above copyright notice, + this list of conditions and the following disclaimer. + * Redistributions in binary form must reproduce the above copyright + notice, this list of conditions and the following disclaimer in the + documentation and/or other materials provided with the distribution. + * Neither the names of the copyright holders nor the names of their + contributors may be used to endorse or promote products derived from this + software without specific prior written permission. + + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" + AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE + LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR + CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF + SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS + INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN + CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) + ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE + POSSIBILITY OF SUCH DAMAGE. + + diff --git a/Demo_C/Bin/GNU/YAGARTO/copying.txt b/Demo_C/Bin/GNU/YAGARTO/copying.txt new file mode 100644 index 0000000..623b625 --- /dev/null +++ b/Demo_C/Bin/GNU/YAGARTO/copying.txt @@ -0,0 +1,340 @@ + GNU GENERAL PUBLIC LICENSE + Version 2, June 1991 + + Copyright (C) 1989, 1991 Free Software Foundation, Inc. + 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + Everyone is permitted to copy and distribute verbatim copies + of this license document, but changing it is not allowed. + + Preamble + + The licenses for most software are designed to take away your +freedom to share and change it. By contrast, the GNU General Public +License is intended to guarantee your freedom to share and change free +software--to make sure the software is free for all its users. This +General Public License applies to most of the Free Software +Foundation's software and to any other program whose authors commit to +using it. (Some other Free Software Foundation software is covered by +the GNU Library General Public License instead.) You can apply it to +your programs, too. + + When we speak of free software, we are referring to freedom, not +price. Our General Public Licenses are designed to make sure that you +have the freedom to distribute copies of free software (and charge for +this service if you wish), that you receive source code or can get it +if you want it, that you can change the software or use pieces of it +in new free programs; and that you know you can do these things. + + To protect your rights, we need to make restrictions that forbid +anyone to deny you these rights or to ask you to surrender the rights. +These restrictions translate to certain responsibilities for you if you +distribute copies of the software, or if you modify it. + + For example, if you distribute copies of such a program, whether +gratis or for a fee, you must give the recipients all the rights that +you have. You must make sure that they, too, receive or can get the +source code. And you must show them these terms so they know their +rights. + + We protect your rights with two steps: (1) copyright the software, and +(2) offer you this license which gives you legal permission to copy, +distribute and/or modify the software. + + Also, for each author's protection and ours, we want to make certain +that everyone understands that there is no warranty for this free +software. If the software is modified by someone else and passed on, we +want its recipients to know that what they have is not the original, so +that any problems introduced by others will not reflect on the original +authors' reputations. + + Finally, any free program is threatened constantly by software +patents. We wish to avoid the danger that redistributors of a free +program will individually obtain patent licenses, in effect making the +program proprietary. To prevent this, we have made it clear that any +patent must be licensed for everyone's free use or not licensed at all. + + The precise terms and conditions for copying, distribution and +modification follow. + + GNU GENERAL PUBLIC LICENSE + TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION + + 0. This License applies to any program or other work which contains +a notice placed by the copyright holder saying it may be distributed +under the terms of this General Public License. The "Program", below, +refers to any such program or work, and a "work based on the Program" +means either the Program or any derivative work under copyright law: +that is to say, a work containing the Program or a portion of it, +either verbatim or with modifications and/or translated into another +language. (Hereinafter, translation is included without limitation in +the term "modification".) Each licensee is addressed as "you". + +Activities other than copying, distribution and modification are not +covered by this License; they are outside its scope. The act of +running the Program is not restricted, and the output from the Program +is covered only if its contents constitute a work based on the +Program (independent of having been made by running the Program). +Whether that is true depends on what the Program does. + + 1. You may copy and distribute verbatim copies of the Program's +source code as you receive it, in any medium, provided that you +conspicuously and appropriately publish on each copy an appropriate +copyright notice and disclaimer of warranty; keep intact all the +notices that refer to this License and to the absence of any warranty; +and give any other recipients of the Program a copy of this License +along with the Program. + +You may charge a fee for the physical act of transferring a copy, and +you may at your option offer warranty protection in exchange for a fee. + + 2. You may modify your copy or copies of the Program or any portion +of it, thus forming a work based on the Program, and copy and +distribute such modifications or work under the terms of Section 1 +above, provided that you also meet all of these conditions: + + a) You must cause the modified files to carry prominent notices + stating that you changed the files and the date of any change. + + b) You must cause any work that you distribute or publish, that in + whole or in part contains or is derived from the Program or any + part thereof, to be licensed as a whole at no charge to all third + parties under the terms of this License. + + c) If the modified program normally reads commands interactively + when run, you must cause it, when started running for such + interactive use in the most ordinary way, to print or display an + announcement including an appropriate copyright notice and a + notice that there is no warranty (or else, saying that you provide + a warranty) and that users may redistribute the program under + these conditions, and telling the user how to view a copy of this + License. (Exception: if the Program itself is interactive but + does not normally print such an announcement, your work based on + the Program is not required to print an announcement.) + +These requirements apply to the modified work as a whole. If +identifiable sections of that work are not derived from the Program, +and can be reasonably considered independent and separate works in +themselves, then this License, and its terms, do not apply to those +sections when you distribute them as separate works. But when you +distribute the same sections as part of a whole which is a work based +on the Program, the distribution of the whole must be on the terms of +this License, whose permissions for other licensees extend to the +entire whole, and thus to each and every part regardless of who wrote it. + +Thus, it is not the intent of this section to claim rights or contest +your rights to work written entirely by you; rather, the intent is to +exercise the right to control the distribution of derivative or +collective works based on the Program. + +In addition, mere aggregation of another work not based on the Program +with the Program (or with a work based on the Program) on a volume of +a storage or distribution medium does not bring the other work under +the scope of this License. + + 3. You may copy and distribute the Program (or a work based on it, +under Section 2) in object code or executable form under the terms of +Sections 1 and 2 above provided that you also do one of the following: + + a) Accompany it with the complete corresponding machine-readable + source code, which must be distributed under the terms of Sections + 1 and 2 above on a medium customarily used for software interchange; or, + + b) Accompany it with a written offer, valid for at least three + years, to give any third party, for a charge no more than your + cost of physically performing source distribution, a complete + machine-readable copy of the corresponding source code, to be + distributed under the terms of Sections 1 and 2 above on a medium + customarily used for software interchange; or, + + c) Accompany it with the information you received as to the offer + to distribute corresponding source code. (This alternative is + allowed only for noncommercial distribution and only if you + received the program in object code or executable form with such + an offer, in accord with Subsection b above.) + +The source code for a work means the preferred form of the work for +making modifications to it. For an executable work, complete source +code means all the source code for all modules it contains, plus any +associated interface definition files, plus the scripts used to +control compilation and installation of the executable. However, as a +special exception, the source code distributed need not include +anything that is normally distributed (in either source or binary +form) with the major components (compiler, kernel, and so on) of the +operating system on which the executable runs, unless that component +itself accompanies the executable. + +If distribution of executable or object code is made by offering +access to copy from a designated place, then offering equivalent +access to copy the source code from the same place counts as +distribution of the source code, even though third parties are not +compelled to copy the source along with the object code. + + 4. You may not copy, modify, sublicense, or distribute the Program +except as expressly provided under this License. Any attempt +otherwise to copy, modify, sublicense or distribute the Program is +void, and will automatically terminate your rights under this License. +However, parties who have received copies, or rights, from you under +this License will not have their licenses terminated so long as such +parties remain in full compliance. + + 5. You are not required to accept this License, since you have not +signed it. However, nothing else grants you permission to modify or +distribute the Program or its derivative works. These actions are +prohibited by law if you do not accept this License. Therefore, by +modifying or distributing the Program (or any work based on the +Program), you indicate your acceptance of this License to do so, and +all its terms and conditions for copying, distributing or modifying +the Program or works based on it. + + 6. Each time you redistribute the Program (or any work based on the +Program), the recipient automatically receives a license from the +original licensor to copy, distribute or modify the Program subject to +these terms and conditions. You may not impose any further +restrictions on the recipients' exercise of the rights granted herein. +You are not responsible for enforcing compliance by third parties to +this License. + + 7. If, as a consequence of a court judgment or allegation of patent +infringement or for any other reason (not limited to patent issues), +conditions are imposed on you (whether by court order, agreement or +otherwise) that contradict the conditions of this License, they do not +excuse you from the conditions of this License. If you cannot +distribute so as to satisfy simultaneously your obligations under this +License and any other pertinent obligations, then as a consequence you +may not distribute the Program at all. For example, if a patent +license would not permit royalty-free redistribution of the Program by +all those who receive copies directly or indirectly through you, then +the only way you could satisfy both it and this License would be to +refrain entirely from distribution of the Program. + +If any portion of this section is held invalid or unenforceable under +any particular circumstance, the balance of the section is intended to +apply and the section as a whole is intended to apply in other +circumstances. + +It is not the purpose of this section to induce you to infringe any +patents or other property right claims or to contest validity of any +such claims; this section has the sole purpose of protecting the +integrity of the free software distribution system, which is +implemented by public license practices. Many people have made +generous contributions to the wide range of software distributed +through that system in reliance on consistent application of that +system; it is up to the author/donor to decide if he or she is willing +to distribute software through any other system and a licensee cannot +impose that choice. + +This section is intended to make thoroughly clear what is believed to +be a consequence of the rest of this License. + + 8. If the distribution and/or use of the Program is restricted in +certain countries either by patents or by copyrighted interfaces, the +original copyright holder who places the Program under this License +may add an explicit geographical distribution limitation excluding +those countries, so that distribution is permitted only in or among +countries not thus excluded. In such case, this License incorporates +the limitation as if written in the body of this License. + + 9. The Free Software Foundation may publish revised and/or new versions +of the General Public License from time to time. Such new versions will +be similar in spirit to the present version, but may differ in detail to +address new problems or concerns. + +Each version is given a distinguishing version number. If the Program +specifies a version number of this License which applies to it and "any +later version", you have the option of following the terms and conditions +either of that version or of any later version published by the Free +Software Foundation. If the Program does not specify a version number of +this License, you may choose any version ever published by the Free Software +Foundation. + + 10. If you wish to incorporate parts of the Program into other free +programs whose distribution conditions are different, write to the author +to ask for permission. For software which is copyrighted by the Free +Software Foundation, write to the Free Software Foundation; we sometimes +make exceptions for this. Our decision will be guided by the two goals +of preserving the free status of all derivatives of our free software and +of promoting the sharing and reuse of software generally. + + NO WARRANTY + + 11. BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY +FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN +OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES +PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED +OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF +MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS +TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE +PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING, +REPAIR OR CORRECTION. + + 12. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING +WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR +REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, +INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING +OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED +TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY +YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER +PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE +POSSIBILITY OF SUCH DAMAGES. + + END OF TERMS AND CONDITIONS + + How to Apply These Terms to Your New Programs + + If you develop a new program, and you want it to be of the greatest +possible use to the public, the best way to achieve this is to make it +free software which everyone can redistribute and change under these terms. + + To do so, attach the following notices to the program. It is safest +to attach them to the start of each source file to most effectively +convey the exclusion of warranty; and each file should have at least +the "copyright" line and a pointer to where the full notice is found. + + + Copyright (C) + + This program is free software; you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation; either version 2 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License + along with this program; if not, write to the Free Software + Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + + +Also add information on how to contact you by electronic and paper mail. + +If the program is interactive, make it output a short notice like this +when it starts in an interactive mode: + + Gnomovision version 69, Copyright (C) year name of author + Gnomovision comes with ABSOLUTELY NO WARRANTY; for details type `show w'. + This is free software, and you are welcome to redistribute it + under certain conditions; type `show c' for details. + +The hypothetical commands `show w' and `show c' should show the appropriate +parts of the General Public License. Of course, the commands you use may +be called something other than `show w' and `show c'; they could even be +mouse-clicks or menu items--whatever suits your program. + +You should also get your employer (if you work as a programmer) or your +school, if any, to sign a "copyright disclaimer" for the program, if +necessary. Here is a sample; alter the names: + + Yoyodyne, Inc., hereby disclaims all copyright interest in the program + `Gnomovision' (which makes passes at compilers) written by James Hacker. + + , 1 April 1989 + Ty Coon, President of Vice + +This General Public License does not permit incorporating your program into +proprietary programs. If your program is a subroutine library, you may +consider it more useful to permit linking proprietary applications with the +library. If this is what you want to do, use the GNU Library General +Public License instead of this License. diff --git a/Demo_C/Bin/GNU/YAGARTO/copying3.txt b/Demo_C/Bin/GNU/YAGARTO/copying3.txt new file mode 100644 index 0000000..94a9ed0 --- /dev/null +++ b/Demo_C/Bin/GNU/YAGARTO/copying3.txt @@ -0,0 +1,674 @@ + GNU GENERAL PUBLIC LICENSE + Version 3, 29 June 2007 + + Copyright (C) 2007 Free Software Foundation, Inc. + Everyone is permitted to copy and distribute verbatim copies + of this license document, but changing it is not allowed. + + Preamble + + The GNU General Public License is a free, copyleft license for +software and other kinds of works. + + The licenses for most software and other practical works are designed +to take away your freedom to share and change the works. By contrast, +the GNU General Public License is intended to guarantee your freedom to +share and change all versions of a program--to make sure it remains free +software for all its users. We, the Free Software Foundation, use the +GNU General Public License for most of our software; it applies also to +any other work released this way by its authors. You can apply it to +your programs, too. + + When we speak of free software, we are referring to freedom, not +price. Our General Public Licenses are designed to make sure that you +have the freedom to distribute copies of free software (and charge for +them if you wish), that you receive source code or can get it if you +want it, that you can change the software or use pieces of it in new +free programs, and that you know you can do these things. + + To protect your rights, we need to prevent others from denying you +these rights or asking you to surrender the rights. Therefore, you have +certain responsibilities if you distribute copies of the software, or if +you modify it: responsibilities to respect the freedom of others. + + For example, if you distribute copies of such a program, whether +gratis or for a fee, you must pass on to the recipients the same +freedoms that you received. You must make sure that they, too, receive +or can get the source code. And you must show them these terms so they +know their rights. + + Developers that use the GNU GPL protect your rights with two steps: +(1) assert copyright on the software, and (2) offer you this License +giving you legal permission to copy, distribute and/or modify it. + + For the developers' and authors' protection, the GPL clearly explains +that there is no warranty for this free software. For both users' and +authors' sake, the GPL requires that modified versions be marked as +changed, so that their problems will not be attributed erroneously to +authors of previous versions. + + Some devices are designed to deny users access to install or run +modified versions of the software inside them, although the manufacturer +can do so. This is fundamentally incompatible with the aim of +protecting users' freedom to change the software. The systematic +pattern of such abuse occurs in the area of products for individuals to +use, which is precisely where it is most unacceptable. Therefore, we +have designed this version of the GPL to prohibit the practice for those +products. If such problems arise substantially in other domains, we +stand ready to extend this provision to those domains in future versions +of the GPL, as needed to protect the freedom of users. + + Finally, every program is threatened constantly by software patents. +States should not allow patents to restrict development and use of +software on general-purpose computers, but in those that do, we wish to +avoid the special danger that patents applied to a free program could +make it effectively proprietary. To prevent this, the GPL assures that +patents cannot be used to render the program non-free. + + The precise terms and conditions for copying, distribution and +modification follow. + + TERMS AND CONDITIONS + + 0. Definitions. + + "This License" refers to version 3 of the GNU General Public License. + + "Copyright" also means copyright-like laws that apply to other kinds of +works, such as semiconductor masks. + + "The Program" refers to any copyrightable work licensed under this +License. Each licensee is addressed as "you". "Licensees" and +"recipients" may be individuals or organizations. + + To "modify" a work means to copy from or adapt all or part of the work +in a fashion requiring copyright permission, other than the making of an +exact copy. The resulting work is called a "modified version" of the +earlier work or a work "based on" the earlier work. + + A "covered work" means either the unmodified Program or a work based +on the Program. + + To "propagate" a work means to do anything with it that, without +permission, would make you directly or secondarily liable for +infringement under applicable copyright law, except executing it on a +computer or modifying a private copy. Propagation includes copying, +distribution (with or without modification), making available to the +public, and in some countries other activities as well. + + To "convey" a work means any kind of propagation that enables other +parties to make or receive copies. Mere interaction with a user through +a computer network, with no transfer of a copy, is not conveying. + + An interactive user interface displays "Appropriate Legal Notices" +to the extent that it includes a convenient and prominently visible +feature that (1) displays an appropriate copyright notice, and (2) +tells the user that there is no warranty for the work (except to the +extent that warranties are provided), that licensees may convey the +work under this License, and how to view a copy of this License. If +the interface presents a list of user commands or options, such as a +menu, a prominent item in the list meets this criterion. + + 1. Source Code. + + The "source code" for a work means the preferred form of the work +for making modifications to it. "Object code" means any non-source +form of a work. + + A "Standard Interface" means an interface that either is an official +standard defined by a recognized standards body, or, in the case of +interfaces specified for a particular programming language, one that +is widely used among developers working in that language. + + The "System Libraries" of an executable work include anything, other +than the work as a whole, that (a) is included in the normal form of +packaging a Major Component, but which is not part of that Major +Component, and (b) serves only to enable use of the work with that +Major Component, or to implement a Standard Interface for which an +implementation is available to the public in source code form. A +"Major Component", in this context, means a major essential component +(kernel, window system, and so on) of the specific operating system +(if any) on which the executable work runs, or a compiler used to +produce the work, or an object code interpreter used to run it. + + The "Corresponding Source" for a work in object code form means all +the source code needed to generate, install, and (for an executable +work) run the object code and to modify the work, including scripts to +control those activities. However, it does not include the work's +System Libraries, or general-purpose tools or generally available free +programs which are used unmodified in performing those activities but +which are not part of the work. For example, Corresponding Source +includes interface definition files associated with source files for +the work, and the source code for shared libraries and dynamically +linked subprograms that the work is specifically designed to require, +such as by intimate data communication or control flow between those +subprograms and other parts of the work. + + The Corresponding Source need not include anything that users +can regenerate automatically from other parts of the Corresponding +Source. + + The Corresponding Source for a work in source code form is that +same work. + + 2. Basic Permissions. + + All rights granted under this License are granted for the term of +copyright on the Program, and are irrevocable provided the stated +conditions are met. This License explicitly affirms your unlimited +permission to run the unmodified Program. The output from running a +covered work is covered by this License only if the output, given its +content, constitutes a covered work. This License acknowledges your +rights of fair use or other equivalent, as provided by copyright law. + + You may make, run and propagate covered works that you do not +convey, without conditions so long as your license otherwise remains +in force. You may convey covered works to others for the sole purpose +of having them make modifications exclusively for you, or provide you +with facilities for running those works, provided that you comply with +the terms of this License in conveying all material for which you do +not control copyright. Those thus making or running the covered works +for you must do so exclusively on your behalf, under your direction +and control, on terms that prohibit them from making any copies of +your copyrighted material outside their relationship with you. + + Conveying under any other circumstances is permitted solely under +the conditions stated below. Sublicensing is not allowed; section 10 +makes it unnecessary. + + 3. Protecting Users' Legal Rights From Anti-Circumvention Law. + + No covered work shall be deemed part of an effective technological +measure under any applicable law fulfilling obligations under article +11 of the WIPO copyright treaty adopted on 20 December 1996, or +similar laws prohibiting or restricting circumvention of such +measures. + + When you convey a covered work, you waive any legal power to forbid +circumvention of technological measures to the extent such circumvention +is effected by exercising rights under this License with respect to +the covered work, and you disclaim any intention to limit operation or +modification of the work as a means of enforcing, against the work's +users, your or third parties' legal rights to forbid circumvention of +technological measures. + + 4. Conveying Verbatim Copies. + + You may convey verbatim copies of the Program's source code as you +receive it, in any medium, provided that you conspicuously and +appropriately publish on each copy an appropriate copyright notice; +keep intact all notices stating that this License and any +non-permissive terms added in accord with section 7 apply to the code; +keep intact all notices of the absence of any warranty; and give all +recipients a copy of this License along with the Program. + + You may charge any price or no price for each copy that you convey, +and you may offer support or warranty protection for a fee. + + 5. Conveying Modified Source Versions. + + You may convey a work based on the Program, or the modifications to +produce it from the Program, in the form of source code under the +terms of section 4, provided that you also meet all of these conditions: + + a) The work must carry prominent notices stating that you modified + it, and giving a relevant date. + + b) The work must carry prominent notices stating that it is + released under this License and any conditions added under section + 7. This requirement modifies the requirement in section 4 to + "keep intact all notices". + + c) You must license the entire work, as a whole, under this + License to anyone who comes into possession of a copy. This + License will therefore apply, along with any applicable section 7 + additional terms, to the whole of the work, and all its parts, + regardless of how they are packaged. This License gives no + permission to license the work in any other way, but it does not + invalidate such permission if you have separately received it. + + d) If the work has interactive user interfaces, each must display + Appropriate Legal Notices; however, if the Program has interactive + interfaces that do not display Appropriate Legal Notices, your + work need not make them do so. + + A compilation of a covered work with other separate and independent +works, which are not by their nature extensions of the covered work, +and which are not combined with it such as to form a larger program, +in or on a volume of a storage or distribution medium, is called an +"aggregate" if the compilation and its resulting copyright are not +used to limit the access or legal rights of the compilation's users +beyond what the individual works permit. Inclusion of a covered work +in an aggregate does not cause this License to apply to the other +parts of the aggregate. + + 6. Conveying Non-Source Forms. + + You may convey a covered work in object code form under the terms +of sections 4 and 5, provided that you also convey the +machine-readable Corresponding Source under the terms of this License, +in one of these ways: + + a) Convey the object code in, or embodied in, a physical product + (including a physical distribution medium), accompanied by the + Corresponding Source fixed on a durable physical medium + customarily used for software interchange. + + b) Convey the object code in, or embodied in, a physical product + (including a physical distribution medium), accompanied by a + written offer, valid for at least three years and valid for as + long as you offer spare parts or customer support for that product + model, to give anyone who possesses the object code either (1) a + copy of the Corresponding Source for all the software in the + product that is covered by this License, on a durable physical + medium customarily used for software interchange, for a price no + more than your reasonable cost of physically performing this + conveying of source, or (2) access to copy the + Corresponding Source from a network server at no charge. + + c) Convey individual copies of the object code with a copy of the + written offer to provide the Corresponding Source. This + alternative is allowed only occasionally and noncommercially, and + only if you received the object code with such an offer, in accord + with subsection 6b. + + d) Convey the object code by offering access from a designated + place (gratis or for a charge), and offer equivalent access to the + Corresponding Source in the same way through the same place at no + further charge. You need not require recipients to copy the + Corresponding Source along with the object code. If the place to + copy the object code is a network server, the Corresponding Source + may be on a different server (operated by you or a third party) + that supports equivalent copying facilities, provided you maintain + clear directions next to the object code saying where to find the + Corresponding Source. Regardless of what server hosts the + Corresponding Source, you remain obligated to ensure that it is + available for as long as needed to satisfy these requirements. + + e) Convey the object code using peer-to-peer transmission, provided + you inform other peers where the object code and Corresponding + Source of the work are being offered to the general public at no + charge under subsection 6d. + + A separable portion of the object code, whose source code is excluded +from the Corresponding Source as a System Library, need not be +included in conveying the object code work. + + A "User Product" is either (1) a "consumer product", which means any +tangible personal property which is normally used for personal, family, +or household purposes, or (2) anything designed or sold for incorporation +into a dwelling. In determining whether a product is a consumer product, +doubtful cases shall be resolved in favor of coverage. For a particular +product received by a particular user, "normally used" refers to a +typical or common use of that class of product, regardless of the status +of the particular user or of the way in which the particular user +actually uses, or expects or is expected to use, the product. A product +is a consumer product regardless of whether the product has substantial +commercial, industrial or non-consumer uses, unless such uses represent +the only significant mode of use of the product. + + "Installation Information" for a User Product means any methods, +procedures, authorization keys, or other information required to install +and execute modified versions of a covered work in that User Product from +a modified version of its Corresponding Source. The information must +suffice to ensure that the continued functioning of the modified object +code is in no case prevented or interfered with solely because +modification has been made. + + If you convey an object code work under this section in, or with, or +specifically for use in, a User Product, and the conveying occurs as +part of a transaction in which the right of possession and use of the +User Product is transferred to the recipient in perpetuity or for a +fixed term (regardless of how the transaction is characterized), the +Corresponding Source conveyed under this section must be accompanied +by the Installation Information. But this requirement does not apply +if neither you nor any third party retains the ability to install +modified object code on the User Product (for example, the work has +been installed in ROM). + + The requirement to provide Installation Information does not include a +requirement to continue to provide support service, warranty, or updates +for a work that has been modified or installed by the recipient, or for +the User Product in which it has been modified or installed. Access to a +network may be denied when the modification itself materially and +adversely affects the operation of the network or violates the rules and +protocols for communication across the network. + + Corresponding Source conveyed, and Installation Information provided, +in accord with this section must be in a format that is publicly +documented (and with an implementation available to the public in +source code form), and must require no special password or key for +unpacking, reading or copying. + + 7. Additional Terms. + + "Additional permissions" are terms that supplement the terms of this +License by making exceptions from one or more of its conditions. +Additional permissions that are applicable to the entire Program shall +be treated as though they were included in this License, to the extent +that they are valid under applicable law. If additional permissions +apply only to part of the Program, that part may be used separately +under those permissions, but the entire Program remains governed by +this License without regard to the additional permissions. + + When you convey a copy of a covered work, you may at your option +remove any additional permissions from that copy, or from any part of +it. (Additional permissions may be written to require their own +removal in certain cases when you modify the work.) You may place +additional permissions on material, added by you to a covered work, +for which you have or can give appropriate copyright permission. + + Notwithstanding any other provision of this License, for material you +add to a covered work, you may (if authorized by the copyright holders of +that material) supplement the terms of this License with terms: + + a) Disclaiming warranty or limiting liability differently from the + terms of sections 15 and 16 of this License; or + + b) Requiring preservation of specified reasonable legal notices or + author attributions in that material or in the Appropriate Legal + Notices displayed by works containing it; or + + c) Prohibiting misrepresentation of the origin of that material, or + requiring that modified versions of such material be marked in + reasonable ways as different from the original version; or + + d) Limiting the use for publicity purposes of names of licensors or + authors of the material; or + + e) Declining to grant rights under trademark law for use of some + trade names, trademarks, or service marks; or + + f) Requiring indemnification of licensors and authors of that + material by anyone who conveys the material (or modified versions of + it) with contractual assumptions of liability to the recipient, for + any liability that these contractual assumptions directly impose on + those licensors and authors. + + All other non-permissive additional terms are considered "further +restrictions" within the meaning of section 10. If the Program as you +received it, or any part of it, contains a notice stating that it is +governed by this License along with a term that is a further +restriction, you may remove that term. If a license document contains +a further restriction but permits relicensing or conveying under this +License, you may add to a covered work material governed by the terms +of that license document, provided that the further restriction does +not survive such relicensing or conveying. + + If you add terms to a covered work in accord with this section, you +must place, in the relevant source files, a statement of the +additional terms that apply to those files, or a notice indicating +where to find the applicable terms. + + Additional terms, permissive or non-permissive, may be stated in the +form of a separately written license, or stated as exceptions; +the above requirements apply either way. + + 8. Termination. + + You may not propagate or modify a covered work except as expressly +provided under this License. Any attempt otherwise to propagate or +modify it is void, and will automatically terminate your rights under +this License (including any patent licenses granted under the third +paragraph of section 11). + + However, if you cease all violation of this License, then your +license from a particular copyright holder is reinstated (a) +provisionally, unless and until the copyright holder explicitly and +finally terminates your license, and (b) permanently, if the copyright +holder fails to notify you of the violation by some reasonable means +prior to 60 days after the cessation. + + Moreover, your license from a particular copyright holder is +reinstated permanently if the copyright holder notifies you of the +violation by some reasonable means, this is the first time you have +received notice of violation of this License (for any work) from that +copyright holder, and you cure the violation prior to 30 days after +your receipt of the notice. + + Termination of your rights under this section does not terminate the +licenses of parties who have received copies or rights from you under +this License. If your rights have been terminated and not permanently +reinstated, you do not qualify to receive new licenses for the same +material under section 10. + + 9. Acceptance Not Required for Having Copies. + + You are not required to accept this License in order to receive or +run a copy of the Program. Ancillary propagation of a covered work +occurring solely as a consequence of using peer-to-peer transmission +to receive a copy likewise does not require acceptance. However, +nothing other than this License grants you permission to propagate or +modify any covered work. These actions infringe copyright if you do +not accept this License. Therefore, by modifying or propagating a +covered work, you indicate your acceptance of this License to do so. + + 10. Automatic Licensing of Downstream Recipients. + + Each time you convey a covered work, the recipient automatically +receives a license from the original licensors, to run, modify and +propagate that work, subject to this License. You are not responsible +for enforcing compliance by third parties with this License. + + An "entity transaction" is a transaction transferring control of an +organization, or substantially all assets of one, or subdividing an +organization, or merging organizations. If propagation of a covered +work results from an entity transaction, each party to that +transaction who receives a copy of the work also receives whatever +licenses to the work the party's predecessor in interest had or could +give under the previous paragraph, plus a right to possession of the +Corresponding Source of the work from the predecessor in interest, if +the predecessor has it or can get it with reasonable efforts. + + You may not impose any further restrictions on the exercise of the +rights granted or affirmed under this License. For example, you may +not impose a license fee, royalty, or other charge for exercise of +rights granted under this License, and you may not initiate litigation +(including a cross-claim or counterclaim in a lawsuit) alleging that +any patent claim is infringed by making, using, selling, offering for +sale, or importing the Program or any portion of it. + + 11. Patents. + + A "contributor" is a copyright holder who authorizes use under this +License of the Program or a work on which the Program is based. The +work thus licensed is called the contributor's "contributor version". + + A contributor's "essential patent claims" are all patent claims +owned or controlled by the contributor, whether already acquired or +hereafter acquired, that would be infringed by some manner, permitted +by this License, of making, using, or selling its contributor version, +but do not include claims that would be infringed only as a +consequence of further modification of the contributor version. For +purposes of this definition, "control" includes the right to grant +patent sublicenses in a manner consistent with the requirements of +this License. + + Each contributor grants you a non-exclusive, worldwide, royalty-free +patent license under the contributor's essential patent claims, to +make, use, sell, offer for sale, import and otherwise run, modify and +propagate the contents of its contributor version. + + In the following three paragraphs, a "patent license" is any express +agreement or commitment, however denominated, not to enforce a patent +(such as an express permission to practice a patent or covenant not to +sue for patent infringement). To "grant" such a patent license to a +party means to make such an agreement or commitment not to enforce a +patent against the party. + + If you convey a covered work, knowingly relying on a patent license, +and the Corresponding Source of the work is not available for anyone +to copy, free of charge and under the terms of this License, through a +publicly available network server or other readily accessible means, +then you must either (1) cause the Corresponding Source to be so +available, or (2) arrange to deprive yourself of the benefit of the +patent license for this particular work, or (3) arrange, in a manner +consistent with the requirements of this License, to extend the patent +license to downstream recipients. "Knowingly relying" means you have +actual knowledge that, but for the patent license, your conveying the +covered work in a country, or your recipient's use of the covered work +in a country, would infringe one or more identifiable patents in that +country that you have reason to believe are valid. + + If, pursuant to or in connection with a single transaction or +arrangement, you convey, or propagate by procuring conveyance of, a +covered work, and grant a patent license to some of the parties +receiving the covered work authorizing them to use, propagate, modify +or convey a specific copy of the covered work, then the patent license +you grant is automatically extended to all recipients of the covered +work and works based on it. + + A patent license is "discriminatory" if it does not include within +the scope of its coverage, prohibits the exercise of, or is +conditioned on the non-exercise of one or more of the rights that are +specifically granted under this License. You may not convey a covered +work if you are a party to an arrangement with a third party that is +in the business of distributing software, under which you make payment +to the third party based on the extent of your activity of conveying +the work, and under which the third party grants, to any of the +parties who would receive the covered work from you, a discriminatory +patent license (a) in connection with copies of the covered work +conveyed by you (or copies made from those copies), or (b) primarily +for and in connection with specific products or compilations that +contain the covered work, unless you entered into that arrangement, +or that patent license was granted, prior to 28 March 2007. + + Nothing in this License shall be construed as excluding or limiting +any implied license or other defenses to infringement that may +otherwise be available to you under applicable patent law. + + 12. No Surrender of Others' Freedom. + + If conditions are imposed on you (whether by court order, agreement or +otherwise) that contradict the conditions of this License, they do not +excuse you from the conditions of this License. If you cannot convey a +covered work so as to satisfy simultaneously your obligations under this +License and any other pertinent obligations, then as a consequence you may +not convey it at all. For example, if you agree to terms that obligate you +to collect a royalty for further conveying from those to whom you convey +the Program, the only way you could satisfy both those terms and this +License would be to refrain entirely from conveying the Program. + + 13. Use with the GNU Affero General Public License. + + Notwithstanding any other provision of this License, you have +permission to link or combine any covered work with a work licensed +under version 3 of the GNU Affero General Public License into a single +combined work, and to convey the resulting work. The terms of this +License will continue to apply to the part which is the covered work, +but the special requirements of the GNU Affero General Public License, +section 13, concerning interaction through a network will apply to the +combination as such. + + 14. Revised Versions of this License. + + The Free Software Foundation may publish revised and/or new versions of +the GNU General Public License from time to time. Such new versions will +be similar in spirit to the present version, but may differ in detail to +address new problems or concerns. + + Each version is given a distinguishing version number. If the +Program specifies that a certain numbered version of the GNU General +Public License "or any later version" applies to it, you have the +option of following the terms and conditions either of that numbered +version or of any later version published by the Free Software +Foundation. If the Program does not specify a version number of the +GNU General Public License, you may choose any version ever published +by the Free Software Foundation. + + If the Program specifies that a proxy can decide which future +versions of the GNU General Public License can be used, that proxy's +public statement of acceptance of a version permanently authorizes you +to choose that version for the Program. + + Later license versions may give you additional or different +permissions. However, no additional obligations are imposed on any +author or copyright holder as a result of your choosing to follow a +later version. + + 15. Disclaimer of Warranty. + + THERE IS NO WARRANTY FOR THE PROGRAM, TO THE EXTENT PERMITTED BY +APPLICABLE LAW. EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT +HOLDERS AND/OR OTHER PARTIES PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY +OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, +THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR +PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE PROGRAM +IS WITH YOU. SHOULD THE PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF +ALL NECESSARY SERVICING, REPAIR OR CORRECTION. + + 16. Limitation of Liability. + + IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING +WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MODIFIES AND/OR CONVEYS +THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, INCLUDING ANY +GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE +USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED TO LOSS OF +DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD +PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER PROGRAMS), +EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF +SUCH DAMAGES. + + 17. Interpretation of Sections 15 and 16. + + If the disclaimer of warranty and limitation of liability provided +above cannot be given local legal effect according to their terms, +reviewing courts shall apply local law that most closely approximates +an absolute waiver of all civil liability in connection with the +Program, unless a warranty or assumption of liability accompanies a +copy of the Program in return for a fee. + + END OF TERMS AND CONDITIONS + + How to Apply These Terms to Your New Programs + + If you develop a new program, and you want it to be of the greatest +possible use to the public, the best way to achieve this is to make it +free software which everyone can redistribute and change under these terms. + + To do so, attach the following notices to the program. It is safest +to attach them to the start of each source file to most effectively +state the exclusion of warranty; and each file should have at least +the "copyright" line and a pointer to where the full notice is found. + + + Copyright (C) + + This program is free software: you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation, either version 3 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License + along with this program. If not, see . + +Also add information on how to contact you by electronic and paper mail. + + If the program does terminal interaction, make it output a short +notice like this when it starts in an interactive mode: + + Copyright (C) + This program comes with ABSOLUTELY NO WARRANTY; for details type `show w'. + This is free software, and you are welcome to redistribute it + under certain conditions; type `show c' for details. + +The hypothetical commands `show w' and `show c' should show the appropriate +parts of the General Public License. Of course, your program's commands +might be different; for a GUI interface, you would use an "about box". + + You should also get your employer (if you work as a programmer) or school, +if any, to sign a "copyright disclaimer" for the program, if necessary. +For more information on this, and how to apply and follow the GNU GPL, see +. + + The GNU General Public License does not permit incorporating your program +into proprietary programs. If your program is a subroutine library, you +may consider it more useful to permit linking proprietary applications with +the library. If this is what you want to do, use the GNU Lesser General +Public License instead of this License. But first, please read +. diff --git a/Demo_C/Bin/GNU/YAGARTO/gcc.url b/Demo_C/Bin/GNU/YAGARTO/gcc.url new file mode 100644 index 0000000..cec7d66 --- /dev/null +++ b/Demo_C/Bin/GNU/YAGARTO/gcc.url @@ -0,0 +1,2 @@ +[InternetShortcut] +URL=http://gcc.gnu.org/ \ No newline at end of file diff --git a/Demo_C/Bin/GNU/YAGARTO/gdb.url b/Demo_C/Bin/GNU/YAGARTO/gdb.url new file mode 100644 index 0000000..d10c08e --- /dev/null +++ b/Demo_C/Bin/GNU/YAGARTO/gdb.url @@ -0,0 +1,2 @@ +[InternetShortcut] +URL=http://www.gnu.org/software/gdb/ \ No newline at end of file diff --git a/Demo_C/Bin/GNU/YAGARTO/gnu.url b/Demo_C/Bin/GNU/YAGARTO/gnu.url new file mode 100644 index 0000000..cdada16 --- /dev/null +++ b/Demo_C/Bin/GNU/YAGARTO/gnu.url @@ -0,0 +1,2 @@ +[InternetShortcut] +URL=http://www.gnu.org/ \ No newline at end of file diff --git a/Demo_C/Bin/GNU/YAGARTO/newlib.url b/Demo_C/Bin/GNU/YAGARTO/newlib.url new file mode 100644 index 0000000..d294c32 --- /dev/null +++ b/Demo_C/Bin/GNU/YAGARTO/newlib.url @@ -0,0 +1,7 @@ +[InternetShortcut] +URL=http://sources.redhat.com/newlib/ +IDList= +IconFile=http://sources.redhat.com/favicon.ico +IconIndex=1 +[{000214A0-0000-0000-C000-000000000046}] +Prop3=19,2 diff --git a/Demo_C/Bin/GNU/YAGARTO/source.txt b/Demo_C/Bin/GNU/YAGARTO/source.txt new file mode 100644 index 0000000..f4456a2 --- /dev/null +++ b/Demo_C/Bin/GNU/YAGARTO/source.txt @@ -0,0 +1,6 @@ + +The source for the YAGARTO toolchain can be found here: + +www.yagarto.de/source + +(17.08.2009, mifi) diff --git a/Demo_C/Bin/GNU/YAGARTO/version.txt b/Demo_C/Bin/GNU/YAGARTO/version.txt new file mode 100644 index 0000000..c45f816 --- /dev/null +++ b/Demo_C/Bin/GNU/YAGARTO/version.txt @@ -0,0 +1,12 @@ + +This build of yagarto use the following versions: + +binutils: 2.19.1 +gcc: 4.4.1 +newlib: 1.17.0 +gdb: 6.8.50-20080308-cvs + +And was built to support newlib with reentrant stubs. +For more information take a look in the yagarto_newlib.txt + +(17.08.2009, mifi) \ No newline at end of file diff --git a/Demo_C/Bin/GNU/YAGARTO/yagarto.url b/Demo_C/Bin/GNU/YAGARTO/yagarto.url new file mode 100644 index 0000000..9a1284c --- /dev/null +++ b/Demo_C/Bin/GNU/YAGARTO/yagarto.url @@ -0,0 +1,7 @@ +[InternetShortcut] +URL=http://www.yagarto.de/ +IDList= +IconFile=http://www.yagarto.de/favicon.ico +IconIndex=1 +[{000214A0-0000-0000-C000-000000000046}] +Prop3=19,2 diff --git a/Demo_C/Bin/GNU/YAGARTO/yagarto_newlib.txt b/Demo_C/Bin/GNU/YAGARTO/yagarto_newlib.txt new file mode 100644 index 0000000..fad291c --- /dev/null +++ b/Demo_C/Bin/GNU/YAGARTO/yagarto_newlib.txt @@ -0,0 +1,37 @@ + +!!! This version of YAGARTO was built to support newlib with reentrant stubs !!! + +Therefore it is possible that you will get some undefined references from the +linker in case you use the printf function for example. + +The undefined references could be: + + _sbrk_r, _fstat_r, _isatty_r, _close_r, _lseek_r, _write_r, _read_r + +To use functions from stdio (like printf) in own projects, the interface functions +for the newlib have to be provided. For more information take a look in chapter 13 +from the "Red Hat newlib C Library" documentation. +(ftp://sources.redhat.com/pub/newlib/index.html) + +You can find a good source about "Porting and Using Newlib in Embedded Systems" +on the page from Bill Gatliff (http://neptune.billgatliff.com/newlib.html). + +The YAGARTO version of newlib was built with the following options: + + -DREENTRANT_SYSCALLS_PROVIDED + --disable-newlib-supplied-syscalls + +To make your life easier, an example "syscalls.c" can be find here: + +http://www.yagarto.de/download/yagarto/syscalls.c + +(29.03.2009, mifi) + + + + + + + + + diff --git a/Demo_C/Bin/_exec_cmd.bat b/Demo_C/Bin/_exec_cmd.bat new file mode 100644 index 0000000..619805b --- /dev/null +++ b/Demo_C/Bin/_exec_cmd.bat @@ -0,0 +1,24 @@ +@echo off +if "%1"/ == ""/ exit +if "%ROOT_BATCH%"/ == ""/ %1\_start go %0 %1 %2 %3 + +set PATH=%1;%PATH% +set COM_PORT=%3 +if "%3"/ == ""/ call set_port + +4cmd_ft %2 %COM_PORT% +if errorlevel 1 goto end +goto exit + +:end +echo. +echo ***** **** **** *** **** +echo * * * * * * * * * +echo *** **** **** * * **** +echo * * * * * * * * * +echo ***** * * * * *** * * +echo. + +:exit +if exist "%1\ftlib.log" del "%1\ftlib.log" +if exist "%1\ftlib.bak" del "%1\ftlib.bak" diff --git a/Demo_C/Bin/_load_flash.bat b/Demo_C/Bin/_load_flash.bat new file mode 100644 index 0000000..86c71de --- /dev/null +++ b/Demo_C/Bin/_load_flash.bat @@ -0,0 +1,25 @@ +@echo off +if "%1"/ == ""/ exit +if "%ROOT_BATCH%"/ == ""/ %1\_start go %0 %1 %2 + +set PATH=%1;%PATH% +set COM_PORT=%2 +if "%2"/ == ""/ call set_port + +echo Loading program file ... +4load_ft *.bin flash %COM_PORT% +if errorlevel 1 goto end +goto exit + +:end +echo. +echo ***** **** **** *** **** +echo * * * * * * * * * +echo *** **** **** * * **** +echo * * * * * * * * * +echo ***** * * * * *** * * +echo. + +:exit +if exist "%1\ftlib.log" del "%1\ftlib.log" +if exist "%1\ftlib.bak" del "%1\ftlib.bak" diff --git a/Demo_C/Bin/_load_ramdisk.bat b/Demo_C/Bin/_load_ramdisk.bat new file mode 100644 index 0000000..5aef5ee --- /dev/null +++ b/Demo_C/Bin/_load_ramdisk.bat @@ -0,0 +1,25 @@ +@echo off +if "%1"/ == ""/ exit +if "%ROOT_BATCH%"/ == ""/ %1\_start go %0 %1 %2 + +set PATH=%1;%PATH% +set COM_PORT=%2 +if "%2"/ == ""/ call set_port + +echo Loading program file ... +4load_ft *.bin %COM_PORT% +if errorlevel 1 goto end +goto exit + +:end +echo. +echo ***** **** **** *** **** +echo * * * * * * * * * +echo *** **** **** * * **** +echo * * * * * * * * * +echo ***** * * * * *** * * +echo. + +:exit +if exist "%1\ftlib.log" del "%1\ftlib.log" +if exist "%1\ftlib.bak" del "%1\ftlib.bak" diff --git a/Demo_C/Bin/_start.bat b/Demo_C/Bin/_start.bat new file mode 100644 index 0000000..ca525dc --- /dev/null +++ b/Demo_C/Bin/_start.bat @@ -0,0 +1,20 @@ +@echo off +if "%1"/ == ""/ exit +if "%1"/ == "begin"/ goto start +if "%OS%"/ == "Windows_NT"/ goto start + +rem start second command shell to avoid problems +rem with environment size, then start batch again +rem with additional first parameter 'begin', goto +rem begin, readjust parameter list and proceed + +command.com /E:4096 /C %0 begin %2 %3 %4 %5 +exit + +:start +set ROOT_BATCH=RUNNING +set START_PATH=%PATH% +call %2 %3 %4 %5 +set ROOT_BATCH= + +if "%OS%"/ == "Windows_NT"/ pause diff --git a/Demo_C/Bin/set_port.bat b/Demo_C/Bin/set_port.bat new file mode 100644 index 0000000..90d4163 --- /dev/null +++ b/Demo_C/Bin/set_port.bat @@ -0,0 +1,6 @@ +rem Default COM port, through which PC communicates with a ROBO TX Controller, +rem for example "set COM_PORT=COM6". +rem If no default port is set, i.e. "set COM_PORT=", then the virtual USB COM port, +rem to which ROBO TX Controller is connected, is used. + +set COM_PORT= diff --git a/Demo_C/Common/Makefile b/Demo_C/Common/Makefile new file mode 100644 index 0000000..d6dfaa1 --- /dev/null +++ b/Demo_C/Common/Makefile @@ -0,0 +1,120 @@ +include param.mk + +COMMON_PATH = ../../Common + +COMMON_OBJS = $(COMMON_PATH)/prg_bt.o $(COMMON_PATH)/prg_bt_addr.o +COMMON_LIB = $(COMMON_PATH)/libcommon.a +STARTUP_OBJS = $(COMMON_PATH)/prg_disp.o +PROJ_OBJS = $(STARTUP_OBJS) $(OBJS) + +BIN_PATH = ../../Bin +GCC_PATH = $(BIN_PATH)/GNU/GNU_ARM +BIN_GCC_PATH = $(GCC_PATH)/bin +LIB_GCC_PATH = $(GCC_PATH)/lib/gcc/arm-elf +LIB_PATH = $(GCC_PATH)/arm-elf/lib + +LD_SCRIPT = $(COMMON_PATH)/ld.lcf + +TARGET_BIN = $(PROJ).bin +PROJ_ELF = $(PROJ).elf +PROJ_MAP = $(PROJ).map + +CROSS_COMPILE = arm-elf +CROSS_COMPILE_PRE = $(CROSS_COMPILE)- +BIN_GCC_PATH_CROSS = $(CROSS_COMPILE_PRE) + +CC = $(BIN_GCC_PATH_CROSS)gcc +AS_CPP = $(BIN_GCC_PATH_CROSS)gcc +AS = $(BIN_GCC_PATH_CROSS)as +AR = $(BIN_GCC_PATH_CROSS)ar +LD = $(BIN_GCC_PATH_CROSS)ld +OC = $(BIN_GCC_PATH_CROSS)objcopy + +RM = $(BIN_PATH)/GNU/Tools/rm + +O_LANG := -x c + +GNU_ARM_M_ARCH := -mcpu=arm9e +GNU_ARM_L_ARCH := --architecture=armv5tej + +O_OPTIM := -O3 + +C_INCL := . $(COMMON_PATH) + +P_DEFS_GLOBAL := -DENDIAN_LITTLE + +O_GDB := -gdwarf-2 -fno-dwarf2-cfi-asm + +M_FLAGS_GLOBAL := $(GNU_ARM_M_ARCH) +__FLAGS_GLOBAL := $(M_FLAGS_GLOBAL) $(P_DEFS_GLOBAL) $(O_OPTIM) $(O_GDB) + +C_FLAGS_GLOBAL := -S $(__FLAGS_GLOBAL) -fno-builtin $(O_LANG) -Wall + +AS_CPP_FLAGS_GLOBAL := -c $(__FLAGS_GLOBAL) -Wa,-EL -x assembler-with-cpp -D __ASSEMBLY__ -Wall -Wa + +A_FLAGS_GLOBAL := -EL + +A_LST := -almns= + +ARFLAGS := -rcuv + +CFLAGS = \ + -c \ + $(addprefix -I,$(C_INCL)) + +LFLAGS = \ + --cref \ + --oformat elf32-littlearm \ + --trace \ + --nmagic \ + $(GNU_ARM_L_ARCH) + +S_INC = $(addprefix -I,$(C_INCL)) + +A_LST = -almns= + +%.o : %.c + $(CC) $(C_FLAGS_GLOBAL) $(CFLAGS) -C -E $< > $(basename $@).p + $(CC) $(C_FLAGS_GLOBAL) $(CFLAGS) -o $(basename $@).asm $< + $(AS) $(A_FLAGS_GLOBAL) $(A_LST)$(basename $@).lst -o $@ $(basename $@).asm + +%.o : %.S + $(AS_CPP) $(AS_CPP_FLAGS_GLOBAL) $(S_INC) -o $(basename $@).o -Wa,$(A_LST)$(basename $@).lst $< + +$(COMMON_LIB): $(COMMON_OBJS) + $(AR) $(ARFLAGS) $(COMMON_LIB) $(COMMON_OBJS) + +$(PROJ_ELF): $(PROJ_OBJS) $(LD_SCRIPT) + $(LD) $(LFLAGS) \ + --library-path=$(COMMON_PATH) \ + --library-path=$(LIB_PATH) \ + --library-path=$(LIB_GCC_PATH) \ + --script=$(LD_SCRIPT) \ + $(PROJ_OBJS) \ + --library=common \ + --library=m \ + --library=c \ + --library=gcc \ + -Map $(PROJ_MAP) \ + -o $(PROJ_ELF) + +$(TARGET_BIN): $(COMMON_LIB) $(PROJ_ELF) + $(OC) --output-target=binary $(PROJ_ELF) $(TARGET_BIN) + +.PHONY: all +all: $(TARGET_BIN) + +clean: + $(RM) -f \ + $(PROJ_OBJS) \ + $(PROJ_OBJS:.o=.lst) \ + $(PROJ_OBJS:.o=.p) \ + $(PROJ_OBJS:.o=.asm) \ + $(COMMON_OBJS) \ + $(COMMON_OBJS:.o=.lst) \ + $(COMMON_OBJS:.o=.p) \ + $(COMMON_OBJS:.o=.asm) \ + $(COMMON_LIB) \ + $(PROJ_MAP) \ + $(PROJ_ELF) \ + $(TARGET_BIN) diff --git a/Demo_C/Common/ROBO_TX_FW.h b/Demo_C/Common/ROBO_TX_FW.h new file mode 100644 index 0000000..1072c43 --- /dev/null +++ b/Demo_C/Common/ROBO_TX_FW.h @@ -0,0 +1,576 @@ +//============================================================================= +// Header file with definition of the software interface to the +// ROBO TX Controller firmware. +// Can be used for building C-programs which can run under control +// of the ROBO TX Controller firmware in download (local) mode or +// for building PC-programs which can communicate with the +// ROBO TX Controller firmware in online mode. +// +// Disclaimer - Exclusion of Liability +// +// This software is distributed in the hope that it will be useful, but WITHOUT +// ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or +// FITNESS FOR A PARTICULAR PURPOSE. It can be used and modified by anyone +// free of any license obligations or authoring rights. +//============================================================================= + +#ifndef __ROBO_TX_FW_H__ +#define __ROBO_TX_FW_H__ + + +#define N_CNT 4 // Number of counters +#define N_PWM_CHAN 8 // Number of PWM channels +#define N_MOTOR 4 // Number of motors +#define N_UNI 8 // Number of universal inputs + +// 5kOhm range +#define R_MIN 10 // [Ohm] +#define R_MAX 4999 // [Ohm] +#define R_OVR 5000 // [Ohm] overload + +// 10V range +#define U_MIN 0 // [mV] +#define U_MAX 9999 // [mV] +#define U_OVR 10000 // [mV] overload + +// Ultrasonic Sensor range +#define ULTRASONIC_MIN 2 // [cm] +#define ULTRASONIC_MAX 1023 // [cm] +#define ULTRASONIC_OVR 1024 // [cm] overload +#define NO_ULTRASONIC 4096 // Not present + +// Motor outputs PWM values range +#define DUTY_MIN 0 +#define DUTY_MAX 512 + +// Length of strings +#define DEV_NAME_LEN_MAX 16 // "ROBO TX-xxxxxxxx" +#define BT_ADDR_STR_LEN 17 // "xx:xx:xx:xx:xx:xx" +#define DISPL_MSG_LEN_MAX 98 // Max. length of a pop-up display message + +// Number of Bluetooth channels +#define BT_CNT_MAX 8 + +// Allowed values for channel index are 1...8 +#define BT_CHAN_IDX_MIN 1 +#define BT_CHAN_IDX_MAX 8 + +#define BT_ADDR_LEN 6 // Bluetooth address length +#define BT_MSG_LEN 16 // Max. Bluetooth message length + + +// Bluetooth connection states +enum BtConnState +{ + BT_STATE_IDLE = 0, // BT channel is disconnected + BT_STATE_CONN_ONGOING, // BT channel is being connected + BT_STATE_CONNECTED, // BT channel is connected + BT_STATE_DISC_ONGOING // BT channel is being disconnected +}; + + +// Status of Bluetooth inquiry scan +enum BtInquiryScanStatus +{ + BT_INQUIRY_SCAN_NOT_POSSIBLE = 0, + BT_INQUIRY_SCAN_START, + BT_INQUIRY_SCAN_RESULT, + BT_INQUIRY_SCAN_BUSY, + BT_INQUIRY_SCAN_TIMEOUT, + BT_INQUIRY_SCAN_END +}; + + +// Status codes for status field in Bluetooth callback functions +enum CB_BtStatus +{ + /* 0 */ BT_SUCCESS = 0, // Successful end of command + /* 1 */ BT_CON_EXIST, // Already connected + /* 2 */ BT_CON_SETUP, // Establishing of connection is ongoing + /* 3 */ BT_SWITCHED_OFF, // Cannot connect/listen, Bluetooth is set to off + /* 4 */ BT_ALL_CHAN_BUSY, // Cannot connect, no more free Bluetooth channels + /* 5 */ BT_NOT_ROBOTX, // Cannot connect/listen, device is not a ROBO TX Controller + /* 6 */ BT_CON_TIMEOUT, // Cannot connect, timeout, no device with such a BT address + /* 7 */ BT_CON_INVALID, // Connection does not exist + /* 8 */ BT_CON_RELEASE, // Disconnecting is ongoing + /* 9 */ BT_LISTEN_ACTIVE, // Listen is already active + /* 10 */ BT_RECEIVE_ACTIVE, // Receive is already active + /* 11 */ BT_CON_INDICATION, // Passive connection establishment (incoming connection) + /* 12 */ BT_DISCON_INDICATION, // Passive disconnection (initiated by remote end) + /* 13 */ BT_MSG_INDICATION, // Received data (incoming message) + /* 14 */ BT_CHANNEL_BUSY, // No connect command is allowed when listen is active or + // no listen command is allowed when connected + /* 15 */ BT_BTADDR_BUSY, // BT address is already used by another channel + /* 16 */ BT_NO_LISTEN_ACTIVE // Cannot connect, no active listen on remote end +}; + + +// Identifiers of the Transfer Area +enum ta_id_e +{ + TA_LOCAL = 0, // Transfer Area for local Controller. Corresponds to the Controller + // on which program is currently running in download (local) mode or + // to the remotely controlled Controller (seen from controlled device, + // not from controlling device) in online mode. + TA_EXT_1, // Transfer Area for Extension 1 Controller + TA_EXT_2, // Transfer Area for Extension 2 Controller + TA_EXT_3, // Transfer Area for Extension 3 Controller + TA_EXT_4, // Transfer Area for Extension 4 Controller + TA_EXT_5, // Transfer Area for Extension 5 Controller + TA_EXT_6, // Transfer Area for Extension 6 Controller + TA_EXT_7, // Transfer Area for Extension 7 Controller + TA_EXT_8, // Transfer Area for Extension 8 Controller + TA_COUNT // Number of Transfer Areas in array = 9 +}; + +#define N_EXT (TA_COUNT - 1) // Number of extension Controllers = 8 + + +// Device (Controller) functioning modes +enum dev_mode_e +{ + DEV_MODE_LOCAL = 0, + DEV_MODE_ONLINE, + DEV_MODE_INVALID +}; + + +// State of connection to an extension device (Controller) +enum ext_dev_connect_state_e +{ + EXT_DEV_OFFLINE = 0, + EXT_DEV_ONLINE, + EXT_DEV_INVALID +}; + + +// Modes of universal inputs +enum input_mode_e +{ + MODE_U = 0, + MODE_R = 1, + MODE_ULTRASONIC = 3, + MODE_INVALID +}; + + +// Program states +enum pgm_state_e +{ + PGM_STATE_INVALID = 0, + PGM_STATE_RUN, + PGM_STATE_STOP +}; + + +// Timer units for GetSystemTime hook function +enum TimerUnit +{ + TIMER_UNIT_INVALID = 0, + TIMER_UNIT_SECONDS = 2, + TIMER_UNIT_MILLISECONDS = 3, + TIMER_UNIT_MICROSECONDS = 4 +}; + + +// Bluetooth inquiry scan status +typedef struct bt_scan_status_s +{ + UINT16 status; // Status code, see enum BtInquiryScanStatus + + // Bluetooth device info, valid only when status == BT_INQUIRY_SCAN_RESULT + UCHAR8 bt_addr[BT_ADDR_LEN]; + char dummy_1[2]; + char bt_name[DEV_NAME_LEN_MAX + 1]; + char dummy_2[3]; +} BT_SCAN_STATUS; + + +// Structure for Bluetooth callback functions (other than receive) +typedef struct bt_cb_s +{ + UINT16 chan_idx; // Channel index + UINT16 status; // Status code, see enum CB_BtStatus +} BT_CB; + + +// Structure for Bluetooth receive callback function +typedef struct bt_receive_cb_s +{ + UINT16 chan_idx; // Channel index + UINT16 status; // Status code, see enum CB_BtStatus + UINT16 msg_len; // Bluetooth message length + UCHAR8 msg[BT_MSG_LEN];// Bluetooth message +} BT_RECV_CB; + + +// Status codes for status field in I2C callback functions +enum CB_I2cStatus +{ + /* 0 */ I2C_SUCCESS = 0, // Successful end of command + /* 1 */ I2C_READ_ERROR, // read error + /* 2 */ I2C_WRITE_ERROR // write error +}; + +// Structure for I2C callback functions +typedef struct i2c_cb_s +{ + UINT16 value; // read/write value + UINT16 status; // status code, see enum CB_I2Status +} I2C_CB; + +struct ta_s; + +// Pointer to the Bluetooth callback function (other than receive) +typedef void (*P_CB_FUNC)(struct ta_s *, BT_CB *); + +// Pointer to the Bluetooth receive callback function +typedef void (*P_RECV_CB_FUNC)(struct ta_s *, BT_RECV_CB *); + +// Pointer to the I2C callback function +typedef void (*P_I2C_CB_FUNC)(struct ta_s *, I2C_CB *); + +//============================================================================= +// Structures for Transfer Area (TA) +//============================================================================= + + +// Bluetooth connection status structure, 8 bytes +typedef struct btstatus_s +{ + UINT16 conn_state; // See enum BtConnState + BOOL16 is_listen; // If TRUE - BT channel is waiting for incoming connection (listening) + BOOL16 is_receive; // If TRUE - BT channel is ready to receive incoming messages + UINT16 link_quality; // 0...31, 0 - the worst, 31 - the best signal quality +} BT_STATUS; + + +// Program information, 8 bytes +typedef struct +{ + char * name; // Name of a program with a full path, for example, "/ramdisk/Program_1" + UINT8 state; // See enum pgm_state_e + char reserved[3]; +} PGM_INFO; + + +// Display message, 128 bytes. Used to show pop-up message box on the boards display +typedef struct +{ + UINT8 id; // Should be increased by 1 each time a new pop-up message is to be shown + char text[DISPL_MSG_LEN_MAX + 1]; +} DISPLAY_MSG; + + +// Display frame, 8 bytes. Used to refresh boards display with a bitmap image frame +typedef struct +{ + UCHAR8 * frame; // Contents of a frame as a 128x64 pixels bitmap + UINT16 id; // Should be increased by 1 each time a new display frame is to be shown + BOOL16 is_pgm_master_of_display; // ++ if program wants to have control over display, + // i.e. image frame is displayed over firmware menus; + // -- if program wants to return control over display + // to the firmware menus +} DISPLAY_FRAME; + + +// Version structure definition, 4 bytes +typedef union +{ + UINT32 abcd; + struct + { + UCHAR8 a; + UCHAR8 b; + UCHAR8 c; + UCHAR8 d; + } part; +} FT_VER; + + +// Versions of hardware and firmware components, 16 bytes +typedef struct +{ + FT_VER hardware; // Version of hardware (hardware.part.a = 'A' or 'B' or 'C') + FT_VER firmware; // Version of firmware ("V %d.%02d, DLL %d", firmware.part.c, + // firmware.part.d, firmware.part.b) + FT_VER ta; // Version of transfer area ("V %d.%02d", ta.part.c, ta.part.d) + char reserved[4]; +} FT_VERSION; + + +// Info structure, 64 bytes +typedef struct +{ + char device_name[DEV_NAME_LEN_MAX + 1]; // Controller name + char bt_addr[BT_ADDR_STR_LEN + 1]; // Bluetooth address as a string + char reserved; + UINT32 ta_array_start_addr; + UINT32 pgm_area_start_addr; + UINT32 pgm_area_size; + FT_VERSION version; +} TA_INFO; + + +// State structure, 100 bytes +typedef struct +{ + // Used by local program + BOOL8 pgm_initialized; + char reserved_1[7]; + + // Public state info + BOOL8 dev_mode; // See enum dev_mode_e + UINT8 id; // Should be increased by 1 each time something (except id fields and btstatus) + // is changed in this state structure + UINT8 info_id; // Should be increased by 1 each time something is changed in info structure + UINT8 config_id; // Should be increased by 1 each time something is changed in config structure + BOOL8 ext_dev_connect_state[N_EXT]; // See enum ext_dev_connect_state_e + BT_STATUS btstatus[BT_CNT_MAX]; // Status of Bluetooth connections + char reserved_2[8]; + PGM_INFO local_pgm; // Corresponds to the program currently being in the program memory +} TA_STATE; + + +// Universal inputs configuration, 4 bytes +typedef struct +{ + UINT8 mode; // See enum input_mode_e + BOOL8 digital; // FALSE = analog input, TRUE = digital input + char reserved[2]; +} UNI_CONFIG; + + +// Counter inputs configuration, 4 bytes +typedef struct +{ + UINT8 mode; // 0 = normal counter mode (change 0 -> 1 is counted) + // 1 = inverse counter mode (change 1 -> 0 is counted) + char reserved[3]; +} CNT_CONFIG; + + +// Config structure, 88 bytes +typedef struct +{ + UINT8 pgm_state_req; // See enum pgm_state_e, program state change request + char reserved_1[3]; + BOOL8 motor[N_MOTOR]; // TRUE = corresponding outputs are used as a pair of motor outputs M1...M4, + // FALSE = corresponding outputs are used as a pair of separate digital + // PWM outputs O1...O8 + UNI_CONFIG uni[N_UNI]; + CNT_CONFIG cnt[N_CNT]; + char reserved_2[32]; +} TA_CONFIG; + + +// Input structure, 68 bytes +typedef struct +{ + INT16 uni[N_UNI]; // Current values of the universal inputs + INT16 cnt_in[N_CNT]; // Current levels (0 or 1) on the counter inputs according + // to their configuration (normal or inverse) + INT16 counter[N_CNT]; // Current values of the counter inputs + INT16 display_button_left; // Number of milliseconds during which the left display button + // is being kept pressed + INT16 display_button_right; // Number of milliseconds during which the right display button + // is being kept pressed + BOOL16 cnt_resetted[N_CNT]; // Set to 1 when last requested counter reset was fulfilled + BOOL16 motor_pos_reached[N_MOTOR]; // Set to 1 by motor control if target position + // (distance from output structure) is reached + char reserved[16]; +} TA_INPUT; + + +// Output structure, 44 bytes +typedef struct +{ + UINT16 cnt_reset_cmd_id[N_CNT]; // Counter reset requests (should be increased by 1 each time + // counter reset is needed) + UINT8 master[N_MOTOR]; // If not 0, synchronize this channel with the given channel + // (1:channel 0, ...) + INT16 duty[N_PWM_CHAN]; // Selected motor outputs PWM values + UINT16 distance[N_MOTOR]; // Selected distance (counter value) at which motor shall stop + UINT16 motor_ex_cmd_id[N_MOTOR]; // Should be increased by 1 each time settings for extended + // motor control mode (duty and/or distance) are changed +} TA_OUTPUT; + + +// Display structure, 108 bytes +typedef struct +{ + DISPLAY_MSG display_msg; + DISPLAY_FRAME display_frame; +} TA_DISPLAY; + + +// Status of Transfer Area (valid only for ftMscLib), 4 bytes +typedef struct +{ + UINT8 status; // Status of transfer area + // TA_STATUS_STOP = 0 - Transfer Area is not running, + // TA_STATUS_RUN = 1 - Transfer Area is running, + // TA_STATUS_SYNC = 2 - Transfer Area is being synchronized + UINT8 iostatus; // Status of I/O communication + // SE_REMIO_REQ = 0 - Remote I/O Request was sent, + // SE_CONFIG_REQ = 1 - Set Configuration Request was sent + UINT16 ComErr; // System error code by COM port connection error +} TA_STATUS; + + +// Change structure (valid only for ftMscLib), 8 bytes +typedef struct +{ + char reserved_1[2]; + UINT8 ChangeStatus; // TRUE = there was a change in any of the following fields + UINT8 ChangeUni; // There was a change of the input value (bit 0 = I1, bit 1 = I2, ...) + UINT8 ChangeCntIn; // There was a change of the counter level (bit 0 = C1, bit 1 = C2, ...) + UINT8 ChangeCounter; // There was a change of the counter value (bit 0 = C1, bit 1 = C2, ...) + char reserved_2[2]; +} TA_CHANGE; + + +// 16-bit timers, 12 bytes +typedef struct +{ + UINT16 Timer1ms; + UINT16 Timer10ms; + UINT16 Timer100ms; + UINT16 Timer1s; + UINT16 Timer10s; + UINT16 Timer1min; +} TA_TIMER; + + +// Hook table with pointers to the firmware functions, +// that can be called by local program, 132 bytes +typedef struct +{ + // Informs the calling program if it can still run (return TRUE) or should + // immediately return to the firmware in order not to destroy the multitasking + // mechanism of the firmware (return FALSE). + BOOL32 (*IsRunAllowed) (void); + + // Returns system time in seconds, milliseconds or microseconds depending on the + // parameter unit. + UINT32 (*GetSystemTime) (enum TimerUnit unit); + + // Display pop-up message on the display of the ROBO TX Controller. If p_msg + // is NULL, then all pop-up messages are removed from the display and its cache, + // and the main frame is displayed. + void (*DisplayMsg) (struct ta_s * p_ta, char * p_msg); + + // Returns TRUE if display is currently being refreshed. A program should in such a + // case wait until the display finishes its refreshing before sending new output to it. + BOOL32 (*IsDisplayBeingRefreshed) (struct ta_s * p_ta); + + // Connect to the Bluetooth device with the given Bluetooth address through the given + // channel (1...8). If p_cb_func (pointer to the callback function) is not NULL, then the + // callback function is called to inform about the result of this command. + void (*BtConnect) (UINT32 channel, UCHAR8 * btaddr, P_CB_FUNC p_cb_func); + + // Disconnect from the Bluetooth device on the given channel (1...8). If p_cb_func + // (pointer to the callback function) is not NULL, then the callback function is called + // to inform about the result of this command. + void (*BtDisconnect) (UINT32 channel, P_CB_FUNC p_cb_func); + + // Send a message (max 255 characters) through the given Bluetooth channel (1...8). + // If p_cb_func (pointer to the callback function) is not NULL, then the callback function is called + // to inform about the result of this command. + void (*BtSend) (UINT32 channel, UINT32 len, UCHAR8 * p_msg, P_CB_FUNC p_cb_func); + + // Start wait for incoming messages on the given Bluetooth channel (1...8). If p_cb_func + // (pointer to the callback function) is not NULL, then the callback function is called + // to inform about the result of this command and about arrival of a Bluetooth message. + void (*BtStartReceive) (UINT32 channel, P_RECV_CB_FUNC p_cb_func); + + // Stop wait for incoming messages on the given Bluetooth channel (1...8). If p_cb_func + // (pointer to the callback function) is not NULL, then the callback function is called + // to inform about the result of this command. + void (*BtStopReceive) (UINT32 channel, P_RECV_CB_FUNC p_cb_func); + + // Start wait for incoming connection (i.e. listen) from the Bluetooth device with the given + // Bluetooth address on the given channel (1...8). If p_cb_func (pointer to the callback function) + // is not NULL, then the callback function is called to inform about the result of this command. + void (*BtStartListen) (UINT32 channel, UCHAR8 * btaddr, P_CB_FUNC p_cb_func); + + // Stop wait for incoming connection (i.e. listen) on the given Bluetooth channel (1...8). + // If p_cb_func (pointer to the callback function) is not NULL, then the callback function is called + // to inform about the result of this command. + void (*BtStopListen) (UINT32 channel, P_CB_FUNC p_cb_func); + + // Convert a Bluetooth address (6 bytes) to the string with the format "xx:xx:xx:xx:xx:xx". + // Returns pointer to the string with converted btaddr (same pointer as str parameter). + char *(*BtAddrToStr) (UCHAR8 * btaddr, char * str); + + // Interface to I2C API functions + UINT32 (*I2cRead) (UCHAR8 devaddr, UINT32 offset, UCHAR8 protocol, P_I2C_CB_FUNC p_cb_func); + UINT32 (*I2cWrite) (UCHAR8 devaddr, UINT32 offset, UINT16 data, UCHAR8 protocol, P_I2C_CB_FUNC p_cb_func); + + // Interface to some runtime library functions. + INT32 (*sprintf) (char * s, const char * format, ...); + INT32 (*memcmp) (const void * s1, const void * s2, UINT32 n); + void *(*memcpy) (void * s1, const void * s2, UINT32 n); + void *(*memmove) (void * s1, const void * s2, UINT32 n); + void *(*memset) (void * s, INT32 c, UINT32 n); + char *(*strcat) (char * s1, const char * s2); + char *(*strncat) (char * s1, const char * s2, UINT32 n); + char *(*strchr) (const char * s, INT32 c); + char *(*strrchr) (const char * s, INT32 c); + INT32 (*strcmp) (const char * s1, const char * s2); + INT32 (*strncmp) (const char * s1, const char * s2, UINT32 n); + INT32 (*stricmp) (const char * s1, const char * s2); + INT32 (*strnicmp) (const char * s1, const char * s2, UINT32 n); + char *(*strcpy) (char * s1, const char * s2); + char *(*strncpy) (char * s1, const char * s2, UINT32 n); + UINT32 (*strlen) (const char * s); + char *(*strstr) (const char * s1, const char * s2); + char *(*strtok) (char * s1, const char * s2); + char *(*strupr) (char * s); + char *(*strlwr) (char * s); + INT32 (*atoi) (const char * nptr); +} TA_HOOK_TABLE; + + + +// ============================================================================ +// Transfer Area (TA) of ROBO TX Controller (one element of TA array) +// ============================================================================ +#define RESERVED_1_SIZE 28 +#define RESERVED_2_SIZE \ + (1024 - ( \ + sizeof(TA_INFO) + \ + sizeof(TA_STATE) + \ + sizeof(TA_CONFIG) + \ + sizeof(TA_INPUT) + \ + sizeof(TA_OUTPUT) + \ + sizeof(TA_DISPLAY) + \ + sizeof(TA_STATUS) + \ + sizeof(TA_CHANGE) + \ + sizeof(TA_TIMER) + \ + RESERVED_1_SIZE + \ + sizeof(TA_HOOK_TABLE) \ + )) + + +typedef struct ta_s +{ + TA_INFO info; // info structure + TA_STATE state; // state structure + TA_CONFIG config; // config structure + TA_INPUT input; // input structure + TA_OUTPUT output; // output structure + TA_DISPLAY display; // display structure + TA_STATUS status; // status structure + TA_CHANGE change; // change structure + TA_TIMER timer; // 16-bit timers + + char reserved_1[RESERVED_1_SIZE]; + + TA_HOOK_TABLE hook_table; // hook table with functions pointers + + char reserved_2[RESERVED_2_SIZE]; +} TA; + + +#endif // __ROBO_TX_FW_H__ diff --git a/Demo_C/Common/ROBO_TX_PRG.h b/Demo_C/Common/ROBO_TX_PRG.h new file mode 100644 index 0000000..a5ae875 --- /dev/null +++ b/Demo_C/Common/ROBO_TX_PRG.h @@ -0,0 +1,126 @@ +//============================================================================= +// Header file with definition of the software interface to the +// ROBO TX Controller program. +// Can be used for building C-programs which can run under control +// of the ROBO TX Controller firmware in download (local) mode. +// +// Disclaimer - Exclusion of Liability +// +// This software is distributed in the hope that it will be useful, but WITHOUT +// ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or +// FITNESS FOR A PARTICULAR PURPOSE. It can be used and modified by anyone +// free of any license obligations or authoring rights. +//============================================================================= + +#ifndef __ROBO_TX_PRG_H__ +#define __ROBO_TX_PRG_H__ + +#include + +#define CALL_CYCLE_MS 1 // firmware calls program each millisecond + +#define MIN(a, b) ((a <= b) ? a : b) +#define MAX(a, b) ((a >= b) ? a : b) + +#define TA_VERSION 0x08010101 // Transfer Area version. Is used by firmware to check if format of the + // Transfer Area used in program is the same as the one used in firmware. + +#define PRG_MEM_START 0x30700000 // start address of the program memory +#define PRG_MEM_SIZE 0x000D0000 // size of the program memory + +#define PRG_MAGIC 0x336699AA + +#define MAX_FRAME_SIZE 1024 // maximum size of displayable frame (display buffer size) + +#if defined(__cplusplus) + #define NULL 0L +#else + #define NULL ((void *)0) +#endif + +#undef TRUE +#define TRUE (1 == 1) + +#undef FALSE +#define FALSE (!TRUE) + +#ifndef __cplusplus +typedef enum +{ + false = FALSE, + true = TRUE +} bool; +#endif // __cplusplus + +typedef signed char CHAR8; +typedef unsigned char UCHAR8; + +typedef unsigned char BOOL8; // boolean variable (should be TRUE or FALSE) +typedef unsigned short BOOL16; // boolean variable (should be TRUE or FALSE) +typedef unsigned long BOOL32; // boolean variable (should be TRUE or FALSE) + +typedef signed char INT8; +typedef signed short INT16; +typedef signed int INT32; + +typedef unsigned char UINT8; +typedef unsigned short UINT16; +typedef unsigned long UINT32; + +#include "ROBO_TX_FW.h" + +enum bt_commands_e +{ + CMD_NO_CMD, + CMD_CONNECT, + CMD_DISCONNECT, + CMD_START_LISTEN, + CMD_STOP_LISTEN, + CMD_START_RECEIVE, + CMD_STOP_RECEIVE, + CMD_SEND +}; + +extern UCHAR8 bt_address_table[BT_CNT_MAX][BT_ADDR_LEN]; + +// At the beginning of the program code should be this structure +struct prg_code_intro_s +{ + unsigned long magic; // PRG_MAGIC + FT_VER ta_version; // TA_VERSION + unsigned long entry; // entry point of the program, usually address of + // the program dispatcher (PrgDisp) function +}; + + +// This function is called only once by the program dispatcher (PrgDisp) at the very first call +// of the program dispatcher by the firmware +void PrgInit +( + TA * p_ta, // pointer to the array of transfer area parts + int n_ta // number of transfer area parts in array (equal to TA_COUNT) +); + + +// This function is called periodically by the program dispatcher (PrgDisp) with the period +// of CALL_CYCLE_MS +int PrgTic +( + TA * p_ta, // pointer to the array of transfer area parts + int n_ta // number of transfer area parts in array (equal to TA_COUNT) +); + + +// This function converts the status of the executed Bluetooth command to a string +// and displays this string on the display of a ROBO TX Controller +BOOL32 BtDisplayCommandStatus +( + TA * p_ta, + UCHAR8 * bt_address, + UINT32 channel, + enum bt_commands_e command, + CHAR8 command_status +); + + +#endif // __ROBO_TX_PRG_H__ diff --git a/Demo_C/Common/ld.lcf b/Demo_C/Common/ld.lcf new file mode 100644 index 0000000..3befb1e --- /dev/null +++ b/Demo_C/Common/ld.lcf @@ -0,0 +1,171 @@ +PLC_APP_SIZE = 0x000D0000; +PLC_APP_PA_START = 0x20700000; +PLC_APP_VA_START = 0x30700000; + +PLC_APP_PA_END = PLC_APP_PA_START + PLC_APP_SIZE; +PLC_APP_VA_END = PLC_APP_VA_START + PLC_APP_SIZE; + + +MEMORY +{ + plc_app_area_pa (RXA) : ORIGIN = 0x20700000, LENGTH = 832K + plc_app_area_va (RXA) : ORIGIN = 0x30700000, LENGTH = 832K +} + + +OUTPUT_FORMAT("elf32-littlearm", "elf32-littlearm", "elf32-littlearm") + + +OUTPUT_ARCH(arm) + + +PHDRS +{ + code PT_LOAD ; /* segment containing all sections to load in program memory */ + debug PT_LOAD ; /* segment containing all sections for gdb debug */ +} + + +SECTIONS +{ + /* ******************** code ******************** */ + /* Code RO */ + + . = ALIGN(4); + + .code : + { + _code_start = .; + + *(.intro) + *(.code) + *(.text*) + *(.glue_7t) + *(.glue_7) + *(.vfp11_veneer) + *(.v4_bx) + + . = ALIGN(4); + + _code_end = .; + + } >plc_app_area_va AT>plc_app_area_pa :code + + + /* ******************** const data ******************** */ + /* Data RO */ + + . = ALIGN(4); + + .data_const : + { + _rodata_start = .; + + *(.rodata*) /* C-compiler output .read only data */ + *(.eh_frame) + + . = ALIGN(4); + + _rodata_end = .; + + } >plc_app_area_va AT>plc_app_area_pa :code + + + /* ******************** initialized data ******************** */ + /* Data RW */ + + . = ALIGN(4); + + .data_initialized : + { + _data_initialized_start = .; + + *(.data) /* C-compiler output .data */ + + _data_initialized_end = .; + + . = ALIGN(4); + + } >plc_app_area_va AT>plc_app_area_pa :code + + + /* ******************** zero data ******************** */ + /* Data RW */ + + . = ALIGN(4); + + .data_zero : + { + . = ALIGN(4); + + _data_zero_start = .; + + *(.data_zero) + *(COMMON) + *(.dynbss) /* bss "Block Started by Symbol" */ + *(.bss .bss.* .gnu.linkonce.b.*) + + _data_zero_end = .; + + /* Align here to ensure that the .bss section occupies space up to + _end. Align after .bss to ensure correct alignment even if the + .bss section disappears because there are no input sections. */ + . = ALIGN(4); + + } >plc_app_area_va :NONE + + . = ALIGN(4); + + + /* ******************** .comment ******************** */ + + /DISCARD/ : + { + *(.comment) + + } :NONE + + + /* ******************** gdb debug ******************** */ + + /* Stabs debugging sections. */ + .stab 0 : { *(.stab) } :debug + .stabstr 0 : { *(.stabstr) } :debug + .stab.excl 0 : { *(.stab.excl) } :debug + .stab.exclstr 0 : { *(.stab.exclstr) } :debug + .stab.index 0 : { *(.stab.index) } :debug + .stab.indexstr 0 : { *(.stab.indexstr) } :debug + .comment 0 : { *(.comment) } :debug + + /* DWARF debug sections. + Symbols in the DWARF debugging sections are relative to the beginning + of the section so we begin them at 0. */ + + /* DWARF 1 */ + .debug 0 : { *(.debug) } :debug + .line 0 : { *(.line) } :debug + + /* GNU DWARF 1 extensions */ + .debug_srcinfo 0 : { *(.debug_srcinfo) } :debug + .debug_sfnames 0 : { *(.debug_sfnames) } :debug + + /* DWARF 1.1 and DWARF 2 */ + .debug_aranges 0 : { *(.debug_aranges) } :debug + .debug_pubnames 0 : { *(.debug_pubnames) } :debug + + /* DWARF 2 */ + .debug_info 0 : { *(.debug_info .gnu.linkonce.wi.*) } :debug + .debug_abbrev 0 : { *(.debug_abbrev) } :debug + .debug_line 0 : { *(.debug_line) } :debug + .debug_frame 0 : { *(.debug_frame) } :debug + .debug_str 0 : { *(.debug_str) } :debug + .debug_loc 0 : { *(.debug_loc) } :debug + .debug_macinfo 0 : { *(.debug_macinfo) } :debug + + /* SGI/MIPS DWARF 2 extensions */ + .debug_weaknames 0 : { *(.debug_weaknames) } :debug + .debug_funcnames 0 : { *(.debug_funcnames) } :debug + .debug_typenames 0 : { *(.debug_typenames) } :debug + .debug_varnames 0 : { *(.debug_varnames) } :debug +} + diff --git a/Demo_C/Common/prg_bt.c b/Demo_C/Common/prg_bt.c new file mode 100644 index 0000000..ef3bfdd --- /dev/null +++ b/Demo_C/Common/prg_bt.c @@ -0,0 +1,142 @@ +//============================================================================= +// Helper functions for the programs which use Bluetooth. +// +// Disclaimer - Exclusion of Liability +// +// This software is distributed in the hope that it will be useful, but WITHOUT +// ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or +// FITNESS FOR A PARTICULAR PURPOSE. It can be used and modified by anyone +// free of any license obligations or authoring rights. +//============================================================================= + +#include "ROBO_TX_PRG.H" + +static char str[128]; + + +/*----------------------------------------------------------------------------- + * Function Name : BtCommandStatusToString + * + * Converts the status of the executed Bluetooth command to a string. + *-----------------------------------------------------------------------------*/ +static char * BtCommandStatusToString +( + enum bt_commands_e command, + CHAR8 command_status +) +{ + char * str = ""; + + switch (command_status) + { + case BT_SUCCESS: // Successful end of command + switch (command) + { + case CMD_CONNECT: + str = "Connected"; + break; + case CMD_DISCONNECT: + str = "Disconnected"; + break; + case CMD_START_LISTEN: + str = "Started listening"; + break; + case CMD_STOP_LISTEN: + str = "Stopped listening"; + break; + case CMD_START_RECEIVE: + str = "Started receiving"; + break; + case CMD_STOP_RECEIVE: + str = "Stopped receiving"; + break; + case CMD_SEND: + str = "Message sent"; + break; + default: + break; + } + break; + case BT_CON_EXIST: + str = "Already connected"; + break; + case BT_CON_SETUP: + str = "Establishing of connection is ongoing"; + break; + case BT_SWITCHED_OFF: + str = "Cannot connect/listen, Bluetooth is set to off"; + break; + case BT_ALL_CHAN_BUSY: + str = "Cannot connect, no more free Bluetooth channels"; + break; + case BT_NOT_ROBOTX: + str = "Cannot connect/listen, device is not a ROBO TX Controller"; + break; + case BT_CON_TIMEOUT: + str = "Cannot connect, timeout, no device with such a BT address"; + break; + case BT_CON_INVALID: + str = "Connection does not exist"; + break; + case BT_CON_RELEASE: + str = "Disconnecting is ongoing"; + break; + case BT_LISTEN_ACTIVE: + str = "Listen is already active"; + break; + case BT_RECEIVE_ACTIVE: + str = "Receive is already active"; + break; + case BT_CON_INDICATION: + str = "Passive connection establishment (incoming connection)"; + break; + case BT_DISCON_INDICATION: + str = "Passive disconnection (initiated by remote end)"; + break; + case BT_MSG_INDICATION: + str = "Received data (incoming message)"; + break; + case BT_CHANNEL_BUSY: + str = "BT channel is busy"; + break; + case BT_BTADDR_BUSY: + str = "BT address is already used by another channel"; + break; + case BT_NO_LISTEN_ACTIVE: + str = "Cannot connect, no active listen on remote end"; + break; + default: + break; + } + return str; +} + + +/*----------------------------------------------------------------------------- + * Function Name : BtDisplayCommandStatus + * + * Converts the status of the executed Bluetooth command to a string + * and displays this string on the display of a ROBO TX Controller. + *-----------------------------------------------------------------------------*/ +BOOL32 BtDisplayCommandStatus +( + TA * p_ta, + UCHAR8 * bt_address, + UINT32 channel, + enum bt_commands_e command, + CHAR8 command_status +) +{ + BOOL32 rc = FALSE; + char bt_addr_str[BT_ADDR_STR_LEN + 1]; + + if (!p_ta->hook_table.IsDisplayBeingRefreshed(p_ta)) // wait until display is refreshed + { + p_ta->hook_table.sprintf(str, "Ch %u, %s\n%s", channel, + p_ta->hook_table.BtAddrToStr(bt_address, bt_addr_str), + BtCommandStatusToString(command, command_status)); + p_ta->hook_table.DisplayMsg(p_ta, str); + rc = TRUE; + } + return rc; +} diff --git a/Demo_C/Common/prg_bt_addr.c b/Demo_C/Common/prg_bt_addr.c new file mode 100644 index 0000000..3aee79b --- /dev/null +++ b/Demo_C/Common/prg_bt_addr.c @@ -0,0 +1,20 @@ +//============================================================================= +// Table of Bluetooth addresses of all ROBO TX Controllers which are used +// for Bluetooth communicating programs. It should be adjusted to the concrete +// set of ROBO TX Controllers, planned to be used for Bluetooth communication. +// +// Disclaimer - Exclusion of Liability +// +// This software is distributed in the hope that it will be useful, but WITHOUT +// ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or +// FITNESS FOR A PARTICULAR PURPOSE. It can be used and modified by anyone +// free of any license obligations or authoring rights. +//============================================================================= + +#include "ROBO_TX_PRG.H" + +UCHAR8 bt_address_table[BT_CNT_MAX][BT_ADDR_LEN] = +{ + {0x00, 0x13, 0x7B, 0x53, 0x10, 0xE7}, // Bluetooth-Adresse von ROBO TX 1 (MASTER) + {0x00, 0x13, 0x7B, 0x52, 0xB2, 0x11} // Bluetooth-Adresse von ROBO TX 2 (SLAVE) +}; diff --git a/Demo_C/Common/prg_disp.c b/Demo_C/Common/prg_disp.c new file mode 100644 index 0000000..1986bb4 --- /dev/null +++ b/Demo_C/Common/prg_disp.c @@ -0,0 +1,51 @@ +//============================================================================= +// Program dispatcher. +// This function is an entry point to any ROBO TX Controller +// program. It is called periodically by the ROBO TX Controller +// firmware in download (local) mode. +// +// Disclaimer - Exclusion of Liability +// +// This software is distributed in the hope that it will be useful, but WITHOUT +// ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or +// FITNESS FOR A PARTICULAR PURPOSE. It can be used and modified by anyone +// free of any license obligations or authoring rights. +//============================================================================= + +#include "ROBO_TX_PRG.H" + + +static int PrgDisp +( + TA * p_ta_array, // pointer to the array of transfer areas + int ta_count // number of transfer areas in array (equal to TA_COUNT) +); + + +const struct prg_code_intro_s prg_code_intro __attribute__ ((section (".intro"))) = +{ + /* magic */ PRG_MAGIC, + /* ta_version */ {TA_VERSION}, + /* entry */ (unsigned long) PrgDisp +}; + + +// This function is called periodically by the ROBO TX Controller firmware with the period +// of CALL_CYCLE_MS +static int PrgDisp +( + TA * p_ta_array, // pointer to the array of transfer areas + int ta_count // number of transfer areas in array (equal to TA_COUNT) +) +{ + TA * p_ta = &p_ta_array[TA_LOCAL]; + + if (!p_ta->state.pgm_initialized) + { + PrgInit(p_ta_array, ta_count); + + p_ta->state.pgm_initialized = TRUE; + } + + return PrgTic(p_ta_array, ta_count); +} diff --git a/Demo_C/Demo/I2cTemp/I2cTemp.c b/Demo_C/Demo/I2cTemp/I2cTemp.c new file mode 100644 index 0000000..f0aea5b --- /dev/null +++ b/Demo_C/Demo/I2cTemp/I2cTemp.c @@ -0,0 +1,199 @@ +//============================================================================= +// Demo program I2cTemp.c +// +// Can be run under control of the ROBO TX Controller +// firmware in download (local) mode. +// This example shows how to sense the temperature with the I2C temperature +// sensor DS1631. After writing some initialisation bytes the program enters +// a loop updating the measured value for the temperature every 1000ms. +// +// Disclaimer - Exclusion of Liability +// +// This software is distributed in the hope that it will be useful, but WITHOUT +// ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or +// FITNESS FOR A PARTICULAR PURPOSE. It can be used and modified by anyone +// free of any license obligations or authoring rights. +//============================================================================= + +#include "ROBO_TX_PRG.h" + +#define LIGHT_ON DUTY_MAX +#define LIGHT_OFF 0 + +static enum +{ + INIT_1, + WAIT_1, + INIT_2, + WAIT_2, + INIT_3, + WAIT_3, + INIT_4, + WAIT_4, + LOOP_WRITE, + LOOP_WRITE_WAIT, + LOOP_READ, + LOOP_READ_WAIT, + LOOP_CLEAR_PREV_SCREEN, + LOOP_DISP_RESULT, + LOOP_WAIT_NEXT_ACTION +} stage; + +unsigned int ticks; +unsigned int next_action=0; +UINT16 status=0; +UINT16 value=0; + +/*----------------------------------------------------------------------------- + * Function Name : I2cCallback + * + * This callback function is called to inform the program about result (status) + * of execution of any I2c command. + *-----------------------------------------------------------------------------*/ +static void I2cCallback +( + TA * p_ta_array, + I2C_CB * p_data +) +{ + //TA * p_ta = &p_ta_array[TA_LOCAL]; + + status = p_data->status; + value = p_data->value; + + stage++; +} + +/*----------------------------------------------------------------------------- + * Function Name : PrgInit + * + * This it the program initialization. + * It is called once. + *-----------------------------------------------------------------------------*/ +void PrgInit +( + TA * p_ta_array, // pointer to the array of transfer areas + int ta_count // number of transfer areas in array (equal to TA_COUNT) +) +{ + //TA * p_ta = &p_ta_array[TA_LOCAL]; + + ticks = 0; + stage = INIT_1; +} + + +/*----------------------------------------------------------------------------- + * Function Name : PrgTic + * + * This is the main function of this program. + * It is called every tic (1 ms) realtime. + *-----------------------------------------------------------------------------*/ +int PrgTic +( + TA * p_ta_array, // pointer to the array of transfer areas + int ta_count // number of transfer areas in array (equal to TA_COUNT) +) +{ + int rc = 0x7FFF; // return code: 0x7FFF - program should be further called by the firmware; + // 0 - program should be normally stopped by the firmware; + // any other value is considered by the firmware as an error code + // and the program is stopped. + TA * p_ta = &p_ta_array[TA_LOCAL]; + + char str[64]; + int fraction=0; + unsigned char temp=0; + char sign = ' '; + + ticks++; + + while(1) + { + switch(stage) + { + case INIT_1: + p_ta->hook_table.I2cWrite (0x4F, 0xAC, 0x02, 0x85, I2cCallback); + stage++; + return rc; + + case WAIT_1: + case WAIT_2: + case WAIT_3: + case WAIT_4: + // waiting for callback + return rc; + + case INIT_2: + p_ta->hook_table.I2cWrite (0x4F, 0xA1, 0x2800, 0x89, I2cCallback); + stage++; + return rc; + + case INIT_3: + p_ta->hook_table.I2cWrite (0x4F, 0xA2, 0x0A00, 0x89, I2cCallback); + stage++; + return rc; + + case INIT_4: + p_ta->hook_table.I2cWrite (0x4F, 0x00, 0x51, 0x84, I2cCallback); + stage++; + return rc; + + case LOOP_WRITE: + p_ta->hook_table.I2cWrite (0x4F, 0x00, 0xAA, 0x84, I2cCallback); + stage++; + return rc; + + case LOOP_WRITE_WAIT: + // waiting for callback + return rc; + + case LOOP_READ: + p_ta->hook_table.I2cRead (0x4F, 0x00, 0x88, I2cCallback); + stage++; + return rc; + + case LOOP_READ_WAIT: + // waiting for callback + return rc; + + case LOOP_CLEAR_PREV_SCREEN: + p_ta->hook_table.DisplayMsg(p_ta, NULL); // clear previous Msg output + next_action = ticks + 20; + stage++; + return rc; + + case LOOP_DISP_RESULT: + if(ticks >= next_action) // wait for previous Msg output to be cleared + { + if(value & 0x0080) fraction = 5; + else fraction = 0; + if(value & 0x8000) + { + sign = '-'; + temp = value >> 8; + temp = ~temp; + } + else + { + sign = '+'; + temp = value >> 8; + } + p_ta->hook_table.sprintf(str, "Temperature: %c%d,%d C", sign, temp, fraction); + p_ta->hook_table.DisplayMsg(p_ta, str); + next_action = ticks + 1000; + stage++; + } + return rc; + + case LOOP_WAIT_NEXT_ACTION: + if(ticks >= next_action) + { + stage = LOOP_WRITE; + } + return rc; + } + } + + return rc; +} diff --git a/Demo_C/Demo/I2cTemp/clean.bat b/Demo_C/Demo/I2cTemp/clean.bat new file mode 100644 index 0000000..84d1361 --- /dev/null +++ b/Demo_C/Demo/I2cTemp/clean.bat @@ -0,0 +1,6 @@ +@echo off +if not "%ROOT_BATCH%"/ == ""/ goto start +if "%ROOT_BATCH%"/ == ""/ ..\..\Bin\_start go %0 + +:start +..\..\Bin\GNU\Tools\make -f ..\..\Common\Makefile clean diff --git a/Demo_C/Demo/I2cTemp/load_flash.bat b/Demo_C/Demo/I2cTemp/load_flash.bat new file mode 100644 index 0000000..4250cd9 --- /dev/null +++ b/Demo_C/Demo/I2cTemp/load_flash.bat @@ -0,0 +1,2 @@ +@echo off +..\..\bin\_load_flash ..\..\bin %1 diff --git a/Demo_C/Demo/I2cTemp/load_ramdisk.bat b/Demo_C/Demo/I2cTemp/load_ramdisk.bat new file mode 100644 index 0000000..777fedb --- /dev/null +++ b/Demo_C/Demo/I2cTemp/load_ramdisk.bat @@ -0,0 +1,2 @@ +@echo off +..\..\bin\_load_ramdisk ..\..\bin %1 diff --git a/Demo_C/Demo/I2cTemp/load_ramdisk_bt.bat b/Demo_C/Demo/I2cTemp/load_ramdisk_bt.bat new file mode 100644 index 0000000..302e3e3 --- /dev/null +++ b/Demo_C/Demo/I2cTemp/load_ramdisk_bt.bat @@ -0,0 +1,2 @@ +@echo off +call load_ramdisk.bat COM14 diff --git a/Demo_C/Demo/I2cTemp/make.bat b/Demo_C/Demo/I2cTemp/make.bat new file mode 100644 index 0000000..0a12e74 --- /dev/null +++ b/Demo_C/Demo/I2cTemp/make.bat @@ -0,0 +1,11 @@ +@echo off +if not "%ROOT_BATCH%"/ == ""/ goto start +if "%ROOT_BATCH%"/ == ""/ ..\..\Bin\_start go %0 + +:start +set BIN_PATH=..\..\Bin +set BIN_GCC_PATH=%BIN_PATH%\GNU\GNU_ARM\bin +set TOOLS_PATH=%BIN_PATH%\GNU\Tools +set PATH=%BIN_GCC_PATH%;%TOOLS_PATH%;%PATH% + +%TOOLS_PATH%\make -f ..\..\Common\Makefile all diff --git a/Demo_C/Demo/I2cTemp/param.mk b/Demo_C/Demo/I2cTemp/param.mk new file mode 100644 index 0000000..ad92ac1 --- /dev/null +++ b/Demo_C/Demo/I2cTemp/param.mk @@ -0,0 +1,2 @@ +PROJ = I2CTEMP +OBJS = I2CTEMP.o diff --git a/Demo_C/Demo/I2cTemp/run.bat b/Demo_C/Demo/I2cTemp/run.bat new file mode 100644 index 0000000..420722a --- /dev/null +++ b/Demo_C/Demo/I2cTemp/run.bat @@ -0,0 +1,2 @@ +@echo off +..\..\bin\_exec_cmd ..\..\bin run %1 diff --git a/Demo_C/Demo/I2cTemp/stop.bat b/Demo_C/Demo/I2cTemp/stop.bat new file mode 100644 index 0000000..4bddcbf --- /dev/null +++ b/Demo_C/Demo/I2cTemp/stop.bat @@ -0,0 +1,2 @@ +@echo off +..\..\bin\_exec_cmd ..\..\bin stop %1 diff --git a/Demo_C/Demo/I2cTpa81/I2cTpa81.c b/Demo_C/Demo/I2cTpa81/I2cTpa81.c new file mode 100644 index 0000000..cdf9b55 --- /dev/null +++ b/Demo_C/Demo/I2cTpa81/I2cTpa81.c @@ -0,0 +1,234 @@ +//============================================================================= +// Demo program "I2cTpa81.c". +// +// Can be run under control of the ROBO TX Controller +// firmware in download (local) mode. +// This example shows how to sense the temperature sensor array (thermopile) of +// the I2C thermopile sensor TPA81. After some initialisation the program enters +// a loop updating the measured values for the sensors every 1000ms. +// +// Disclaimer - Exclusion of Liability +// +// This software is distributed in the hope that it will be useful, but WITHOUT +// ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or +// FITNESS FOR A PARTICULAR PURPOSE. It can be used and modified by anyone +// free of any license obligations or authoring rights. +//============================================================================= + +#include "ROBO_TX_PRG.h" + +#define LIGHT_ON DUTY_MAX +#define LIGHT_OFF 0 + +static enum +{ + INIT_1, + WAIT_1, + LOOP_READ_AMB, + LOOP_READ_AMB_WAIT, + LOOP_READ_P1, + LOOP_READ_P1_WAIT, + LOOP_READ_P2, + LOOP_READ_P2_WAIT, + LOOP_READ_P3, + LOOP_READ_P3_WAIT, + LOOP_READ_P4, + LOOP_READ_P4_WAIT, + LOOP_READ_P5, + LOOP_READ_P5_WAIT, + LOOP_READ_P6, + LOOP_READ_P6_WAIT, + LOOP_READ_P7, + LOOP_READ_P7_WAIT, + LOOP_READ_P8, + LOOP_READ_P8_WAIT, + LOOP_CLEAR_PREV_SCREEN, + LOOP_DISP_RESULT, + LOOP_WAIT_NEXT_ACTION +} stage; + +unsigned int ticks; +unsigned int next_action=0; +UINT16 status=0; +UINT16 value=0; +unsigned char amb=0; +unsigned char p[8]={0,0,0,0,0,0,0,0}; +unsigned char pidx=255; + +/*----------------------------------------------------------------------------- + * Function Name : I2cCallback + * + * This callback function is called to inform the program about result (status) + * of execution of any I2c command. + *-----------------------------------------------------------------------------*/ +static void I2cCallback +( + TA * p_ta_array, + I2C_CB * p_data +) +{ + //TA * p_ta = &p_ta_array[TA_LOCAL]; + + status = p_data->status; + value = p_data->value; + + if(pidx == 128) + { + amb = (unsigned char)value; + } + else if(pidx != 255) + { + p[pidx] = (unsigned char)value; + } + + stage++; +} + +/*----------------------------------------------------------------------------- + * Function Name : PrgInit + * + * This it the program initialization. + * It is called once. + *-----------------------------------------------------------------------------*/ +void PrgInit +( + TA * p_ta_array, // pointer to the array of transfer areas + int ta_count // number of transfer areas in array (equal to TA_COUNT) +) +{ + //TA * p_ta = &p_ta_array[TA_LOCAL]; + + ticks = 0; + stage = INIT_1; +} + + +/*----------------------------------------------------------------------------- + * Function Name : PrgTic + * + * This is the main function of this program. + * It is called every tic (1 ms) realtime. + *-----------------------------------------------------------------------------*/ +int PrgTic +( + TA * p_ta_array, // pointer to the array of transfer areas + int ta_count // number of transfer areas in array (equal to TA_COUNT) +) +{ + int rc = 0x7FFF; // return code: 0x7FFF - program should be further called by the firmware; + // 0 - program should be normally stopped by the firmware; + // any other value is considered by the firmware as an error code + // and the program is stopped. + TA * p_ta = &p_ta_array[TA_LOCAL]; + + char str[64]; + + ticks++; + + while(1) + { + switch(stage) + { + case INIT_1: + p_ta->hook_table.I2cRead (0x68, 0x00, 0xA5, I2cCallback); + stage++; + return rc; + + case WAIT_1: + // waiting for callback + return rc; + + case LOOP_READ_AMB: + p_ta->hook_table.I2cRead (0x68, 0x01, 0xA5, I2cCallback); + pidx = 128; + stage++; + return rc; + + case LOOP_READ_P1: + p_ta->hook_table.I2cRead (0x68, 0x02, 0xA5, I2cCallback); + pidx = 0; + stage++; + return rc; + + case LOOP_READ_P2: + p_ta->hook_table.I2cRead (0x68, 0x03, 0xA5, I2cCallback); + pidx = 1; + stage++; + return rc; + + case LOOP_READ_P3: + p_ta->hook_table.I2cRead (0x68, 0x04, 0xA5, I2cCallback); + pidx = 2; + stage++; + return rc; + + case LOOP_READ_P4: + p_ta->hook_table.I2cRead (0x68, 0x05, 0xA5, I2cCallback); + pidx = 3; + stage++; + return rc; + + case LOOP_READ_P5: + p_ta->hook_table.I2cRead (0x68, 0x06, 0xA5, I2cCallback); + pidx = 4; + stage++; + return rc; + + case LOOP_READ_P6: + p_ta->hook_table.I2cRead (0x68, 0x07, 0xA5, I2cCallback); + pidx = 5; + stage++; + return rc; + + case LOOP_READ_P7: + p_ta->hook_table.I2cRead (0x68, 0x08, 0xA5, I2cCallback); + pidx = 6; + stage++; + return rc; + + case LOOP_READ_P8: + p_ta->hook_table.I2cRead (0x68, 0x09, 0xA5, I2cCallback); + pidx = 7; + stage++; + return rc; + + case LOOP_READ_AMB_WAIT: + case LOOP_READ_P1_WAIT: + case LOOP_READ_P2_WAIT: + case LOOP_READ_P3_WAIT: + case LOOP_READ_P4_WAIT: + case LOOP_READ_P5_WAIT: + case LOOP_READ_P6_WAIT: + case LOOP_READ_P7_WAIT: + case LOOP_READ_P8_WAIT: + // waiting for callback + return rc; + + case LOOP_CLEAR_PREV_SCREEN: + p_ta->hook_table.DisplayMsg(p_ta, NULL); // clear previous Msg output + next_action = ticks + 20; + stage++; + return rc; + + case LOOP_DISP_RESULT: + if(ticks >= next_action) // wait for previous Msg output to be cleared + { + p_ta->hook_table.sprintf(str, "Amb.Temp.: %d C\n%d, %d, %d, %d\n%d, %d, %d, %d", + amb, p[0], p[1], p[2], p[3], p[4], p[5], p[6], p[7]); + p_ta->hook_table.DisplayMsg(p_ta, str); + next_action = ticks + 1000; + stage++; + } + return rc; + + case LOOP_WAIT_NEXT_ACTION: + if(ticks >= next_action) + { + stage = LOOP_READ_AMB; + } + return rc; + } + } + + return rc; +} diff --git a/Demo_C/Demo/I2cTpa81/clean.bat b/Demo_C/Demo/I2cTpa81/clean.bat new file mode 100644 index 0000000..84d1361 --- /dev/null +++ b/Demo_C/Demo/I2cTpa81/clean.bat @@ -0,0 +1,6 @@ +@echo off +if not "%ROOT_BATCH%"/ == ""/ goto start +if "%ROOT_BATCH%"/ == ""/ ..\..\Bin\_start go %0 + +:start +..\..\Bin\GNU\Tools\make -f ..\..\Common\Makefile clean diff --git a/Demo_C/Demo/I2cTpa81/load_flash.bat b/Demo_C/Demo/I2cTpa81/load_flash.bat new file mode 100644 index 0000000..4250cd9 --- /dev/null +++ b/Demo_C/Demo/I2cTpa81/load_flash.bat @@ -0,0 +1,2 @@ +@echo off +..\..\bin\_load_flash ..\..\bin %1 diff --git a/Demo_C/Demo/I2cTpa81/load_ramdisk.bat b/Demo_C/Demo/I2cTpa81/load_ramdisk.bat new file mode 100644 index 0000000..777fedb --- /dev/null +++ b/Demo_C/Demo/I2cTpa81/load_ramdisk.bat @@ -0,0 +1,2 @@ +@echo off +..\..\bin\_load_ramdisk ..\..\bin %1 diff --git a/Demo_C/Demo/I2cTpa81/load_ramdisk_bt.bat b/Demo_C/Demo/I2cTpa81/load_ramdisk_bt.bat new file mode 100644 index 0000000..302e3e3 --- /dev/null +++ b/Demo_C/Demo/I2cTpa81/load_ramdisk_bt.bat @@ -0,0 +1,2 @@ +@echo off +call load_ramdisk.bat COM14 diff --git a/Demo_C/Demo/I2cTpa81/make.bat b/Demo_C/Demo/I2cTpa81/make.bat new file mode 100644 index 0000000..0a12e74 --- /dev/null +++ b/Demo_C/Demo/I2cTpa81/make.bat @@ -0,0 +1,11 @@ +@echo off +if not "%ROOT_BATCH%"/ == ""/ goto start +if "%ROOT_BATCH%"/ == ""/ ..\..\Bin\_start go %0 + +:start +set BIN_PATH=..\..\Bin +set BIN_GCC_PATH=%BIN_PATH%\GNU\GNU_ARM\bin +set TOOLS_PATH=%BIN_PATH%\GNU\Tools +set PATH=%BIN_GCC_PATH%;%TOOLS_PATH%;%PATH% + +%TOOLS_PATH%\make -f ..\..\Common\Makefile all diff --git a/Demo_C/Demo/I2cTpa81/param.mk b/Demo_C/Demo/I2cTpa81/param.mk new file mode 100644 index 0000000..7e48d3e --- /dev/null +++ b/Demo_C/Demo/I2cTpa81/param.mk @@ -0,0 +1,2 @@ +PROJ = I2CTPA81 +OBJS = I2CTPA81.o diff --git a/Demo_C/Demo/I2cTpa81/run.bat b/Demo_C/Demo/I2cTpa81/run.bat new file mode 100644 index 0000000..420722a --- /dev/null +++ b/Demo_C/Demo/I2cTpa81/run.bat @@ -0,0 +1,2 @@ +@echo off +..\..\bin\_exec_cmd ..\..\bin run %1 diff --git a/Demo_C/Demo/I2cTpa81/stop.bat b/Demo_C/Demo/I2cTpa81/stop.bat new file mode 100644 index 0000000..4bddcbf --- /dev/null +++ b/Demo_C/Demo/I2cTpa81/stop.bat @@ -0,0 +1,2 @@ +@echo off +..\..\bin\_exec_cmd ..\..\bin stop %1 diff --git a/Demo_C/Demo/LED/LED.c b/Demo_C/Demo/LED/LED.c new file mode 100644 index 0000000..2b8beea --- /dev/null +++ b/Demo_C/Demo/LED/LED.c @@ -0,0 +1,180 @@ +//============================================================================= +// Demo program "Light run". +// +// Can be run under control of the ROBO TX Controller +// firmware in download (local) mode. +// Switches one after another six lamps connected to the outputs O1...O6. +// +// Disclaimer - Exclusion of Liability +// +// This software is distributed in the hope that it will be useful, but WITHOUT +// ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or +// FITNESS FOR A PARTICULAR PURPOSE. It can be used and modified by anyone +// free of any license obligations or authoring rights. +//============================================================================= + +#include "ROBO_TX_PRG.h" + +#define LIGHT_ON DUTY_MAX +#define LIGHT_OFF 0 + +#define BEG_LAMP_IDX 0 +#define END_LAMP_IDX 0 + +static unsigned long cur_time; +static unsigned long prev_time; +static enum {ON_1, PAUSE_1, ON_2, PAUSE_2} stage; +static int lamp_idx; +static int n_loops; +static int wait; + + +/*----------------------------------------------------------------------------- + * Function Name : PrgInit + * + * This it the program initialization. + * It is called once. + *-----------------------------------------------------------------------------*/ +void PrgInit +( + TA * p_ta_array, // pointer to the array of transfer areas + int ta_count // number of transfer areas in array (equal to TA_COUNT) +) +{ + prev_time = 0; + stage = ON_2; + lamp_idx = BEG_LAMP_IDX; + n_loops = 10; + wait = 1000; +} + + +/*----------------------------------------------------------------------------- + * Function Name : PrgTic + * + * This is the main function of this program. + * It is called every tic (1 ms) realtime. + *-----------------------------------------------------------------------------*/ +int PrgTic +( + TA * p_ta_array, // pointer to the array of transfer areas + int ta_count // number of transfer areas in array (equal to TA_COUNT) +) +{ + int rc = 0x7FFF; // return code: 0x7FFF - program should be further called by the firmware; + // 0 - program should be normally stopped by the firmware; + // any other value is considered by the firmware as an error code + // and the program is stopped. + TA * p_ta = &p_ta_array[TA_LOCAL]; + + // Get the current value of the system time + cur_time = p_ta->hook_table.GetSystemTime(TIMER_UNIT_MILLISECONDS); + + while (1) + { + switch (stage) + { + case ON_1: + if (prev_time == 0) + { + // Switch the current lamp on + p_ta->output.duty[lamp_idx] = LIGHT_ON; + + // Store the current value of the system time + prev_time = cur_time; + } + else + { + // The lamp should be on for the number of milliseconds from the variable "wait" + if (cur_time - prev_time >= wait) + { + // Switch the current lamp off + p_ta->output.duty[lamp_idx] = LIGHT_OFF; + + if (lamp_idx + 1 <= END_LAMP_IDX) + { + prev_time = 0; + lamp_idx++; // switch to the next lamp + continue; + } + else + { + // Store the current value of the system time + prev_time = cur_time; + + stage = PAUSE_1; + } + } + } + return rc; + + case PAUSE_1: + // All lamps should be off for the number of milliseconds from the variable "wait" + if (cur_time - prev_time >= wait) + { + prev_time = 0; + stage = ON_2; + } + else + { + return rc; + } + + case ON_2: + if (prev_time == 0) + { + // Switch the current lamp on + p_ta->output.duty[lamp_idx] = LIGHT_ON; + + // Store the current value of the system time + prev_time = cur_time; + } + else + { + // The lamp should be on for the number of milliseconds from the variable "wait" + if (cur_time - prev_time >= wait) + { + // Switch the current lamp off + p_ta->output.duty[lamp_idx] = LIGHT_OFF; + + if (lamp_idx - 1 >= BEG_LAMP_IDX) + { + prev_time = 0; + lamp_idx--; // switch to the previous lamp + continue; + } + else + { + // Store the current value of the system time + prev_time = cur_time; + + stage = PAUSE_2; + } + } + } + return rc; + + case PAUSE_2: + // All lamps should be off for 1 second + if (cur_time - prev_time >= 1000) + { + if (--n_loops <= 0) + { + rc = 0; // stop program + } + else + { + wait /= 2; + prev_time = 0; + stage = ON_1; + continue; + } + } + return rc; + + default: + return rc; + } + } + return rc; +} diff --git a/Demo_C/Demo/LED/clean.bat b/Demo_C/Demo/LED/clean.bat new file mode 100644 index 0000000..84d1361 --- /dev/null +++ b/Demo_C/Demo/LED/clean.bat @@ -0,0 +1,6 @@ +@echo off +if not "%ROOT_BATCH%"/ == ""/ goto start +if "%ROOT_BATCH%"/ == ""/ ..\..\Bin\_start go %0 + +:start +..\..\Bin\GNU\Tools\make -f ..\..\Common\Makefile clean diff --git a/Demo_C/Demo/LED/load_flash.bat b/Demo_C/Demo/LED/load_flash.bat new file mode 100644 index 0000000..4250cd9 --- /dev/null +++ b/Demo_C/Demo/LED/load_flash.bat @@ -0,0 +1,2 @@ +@echo off +..\..\bin\_load_flash ..\..\bin %1 diff --git a/Demo_C/Demo/LED/load_ramdisk.bat b/Demo_C/Demo/LED/load_ramdisk.bat new file mode 100644 index 0000000..777fedb --- /dev/null +++ b/Demo_C/Demo/LED/load_ramdisk.bat @@ -0,0 +1,2 @@ +@echo off +..\..\bin\_load_ramdisk ..\..\bin %1 diff --git a/Demo_C/Demo/LED/make.bat b/Demo_C/Demo/LED/make.bat new file mode 100644 index 0000000..aa17c1c --- /dev/null +++ b/Demo_C/Demo/LED/make.bat @@ -0,0 +1,12 @@ +@echo off +if not "%ROOT_BATCH%"/ == ""/ goto start +if "%ROOT_BATCH%"/ == ""/ ..\..\Bin\_start go %0 + +:start +set BIN_PATH=..\..\Bin +set BIN_GCC_PATH=%BIN_PATH%\GNU\GNU_ARM\bin +set TOOLS_PATH=%BIN_PATH%\GNU\Tools +::set PATH=%BIN_GCC_PATH%;%TOOLS_PATH%;%PATH% +set PATH=%BIN_GCC_PATH%;%TOOLS_PATH% + +%TOOLS_PATH%\make -f ..\..\Common\Makefile all diff --git a/Demo_C/Demo/LED/param.mk b/Demo_C/Demo/LED/param.mk new file mode 100644 index 0000000..2dbab29 --- /dev/null +++ b/Demo_C/Demo/LED/param.mk @@ -0,0 +1,2 @@ +PROJ = LightRun +OBJS = LightRun.o diff --git a/Demo_C/Demo/LED/run.bat b/Demo_C/Demo/LED/run.bat new file mode 100644 index 0000000..420722a --- /dev/null +++ b/Demo_C/Demo/LED/run.bat @@ -0,0 +1,2 @@ +@echo off +..\..\bin\_exec_cmd ..\..\bin run %1 diff --git a/Demo_C/Demo/LED/stop.bat b/Demo_C/Demo/LED/stop.bat new file mode 100644 index 0000000..4bddcbf --- /dev/null +++ b/Demo_C/Demo/LED/stop.bat @@ -0,0 +1,2 @@ +@echo off +..\..\bin\_exec_cmd ..\..\bin stop %1 diff --git a/Demo_C/Demo/LightRun/LightRun.c b/Demo_C/Demo/LightRun/LightRun.c new file mode 100644 index 0000000..2b8beea --- /dev/null +++ b/Demo_C/Demo/LightRun/LightRun.c @@ -0,0 +1,180 @@ +//============================================================================= +// Demo program "Light run". +// +// Can be run under control of the ROBO TX Controller +// firmware in download (local) mode. +// Switches one after another six lamps connected to the outputs O1...O6. +// +// Disclaimer - Exclusion of Liability +// +// This software is distributed in the hope that it will be useful, but WITHOUT +// ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or +// FITNESS FOR A PARTICULAR PURPOSE. It can be used and modified by anyone +// free of any license obligations or authoring rights. +//============================================================================= + +#include "ROBO_TX_PRG.h" + +#define LIGHT_ON DUTY_MAX +#define LIGHT_OFF 0 + +#define BEG_LAMP_IDX 0 +#define END_LAMP_IDX 0 + +static unsigned long cur_time; +static unsigned long prev_time; +static enum {ON_1, PAUSE_1, ON_2, PAUSE_2} stage; +static int lamp_idx; +static int n_loops; +static int wait; + + +/*----------------------------------------------------------------------------- + * Function Name : PrgInit + * + * This it the program initialization. + * It is called once. + *-----------------------------------------------------------------------------*/ +void PrgInit +( + TA * p_ta_array, // pointer to the array of transfer areas + int ta_count // number of transfer areas in array (equal to TA_COUNT) +) +{ + prev_time = 0; + stage = ON_2; + lamp_idx = BEG_LAMP_IDX; + n_loops = 10; + wait = 1000; +} + + +/*----------------------------------------------------------------------------- + * Function Name : PrgTic + * + * This is the main function of this program. + * It is called every tic (1 ms) realtime. + *-----------------------------------------------------------------------------*/ +int PrgTic +( + TA * p_ta_array, // pointer to the array of transfer areas + int ta_count // number of transfer areas in array (equal to TA_COUNT) +) +{ + int rc = 0x7FFF; // return code: 0x7FFF - program should be further called by the firmware; + // 0 - program should be normally stopped by the firmware; + // any other value is considered by the firmware as an error code + // and the program is stopped. + TA * p_ta = &p_ta_array[TA_LOCAL]; + + // Get the current value of the system time + cur_time = p_ta->hook_table.GetSystemTime(TIMER_UNIT_MILLISECONDS); + + while (1) + { + switch (stage) + { + case ON_1: + if (prev_time == 0) + { + // Switch the current lamp on + p_ta->output.duty[lamp_idx] = LIGHT_ON; + + // Store the current value of the system time + prev_time = cur_time; + } + else + { + // The lamp should be on for the number of milliseconds from the variable "wait" + if (cur_time - prev_time >= wait) + { + // Switch the current lamp off + p_ta->output.duty[lamp_idx] = LIGHT_OFF; + + if (lamp_idx + 1 <= END_LAMP_IDX) + { + prev_time = 0; + lamp_idx++; // switch to the next lamp + continue; + } + else + { + // Store the current value of the system time + prev_time = cur_time; + + stage = PAUSE_1; + } + } + } + return rc; + + case PAUSE_1: + // All lamps should be off for the number of milliseconds from the variable "wait" + if (cur_time - prev_time >= wait) + { + prev_time = 0; + stage = ON_2; + } + else + { + return rc; + } + + case ON_2: + if (prev_time == 0) + { + // Switch the current lamp on + p_ta->output.duty[lamp_idx] = LIGHT_ON; + + // Store the current value of the system time + prev_time = cur_time; + } + else + { + // The lamp should be on for the number of milliseconds from the variable "wait" + if (cur_time - prev_time >= wait) + { + // Switch the current lamp off + p_ta->output.duty[lamp_idx] = LIGHT_OFF; + + if (lamp_idx - 1 >= BEG_LAMP_IDX) + { + prev_time = 0; + lamp_idx--; // switch to the previous lamp + continue; + } + else + { + // Store the current value of the system time + prev_time = cur_time; + + stage = PAUSE_2; + } + } + } + return rc; + + case PAUSE_2: + // All lamps should be off for 1 second + if (cur_time - prev_time >= 1000) + { + if (--n_loops <= 0) + { + rc = 0; // stop program + } + else + { + wait /= 2; + prev_time = 0; + stage = ON_1; + continue; + } + } + return rc; + + default: + return rc; + } + } + return rc; +} diff --git a/Demo_C/Demo/LightRun/clean.bat b/Demo_C/Demo/LightRun/clean.bat new file mode 100644 index 0000000..84d1361 --- /dev/null +++ b/Demo_C/Demo/LightRun/clean.bat @@ -0,0 +1,6 @@ +@echo off +if not "%ROOT_BATCH%"/ == ""/ goto start +if "%ROOT_BATCH%"/ == ""/ ..\..\Bin\_start go %0 + +:start +..\..\Bin\GNU\Tools\make -f ..\..\Common\Makefile clean diff --git a/Demo_C/Demo/LightRun/load_flash.bat b/Demo_C/Demo/LightRun/load_flash.bat new file mode 100644 index 0000000..4250cd9 --- /dev/null +++ b/Demo_C/Demo/LightRun/load_flash.bat @@ -0,0 +1,2 @@ +@echo off +..\..\bin\_load_flash ..\..\bin %1 diff --git a/Demo_C/Demo/LightRun/load_ramdisk.bat b/Demo_C/Demo/LightRun/load_ramdisk.bat new file mode 100644 index 0000000..777fedb --- /dev/null +++ b/Demo_C/Demo/LightRun/load_ramdisk.bat @@ -0,0 +1,2 @@ +@echo off +..\..\bin\_load_ramdisk ..\..\bin %1 diff --git a/Demo_C/Demo/LightRun/make.bat b/Demo_C/Demo/LightRun/make.bat new file mode 100644 index 0000000..aa17c1c --- /dev/null +++ b/Demo_C/Demo/LightRun/make.bat @@ -0,0 +1,12 @@ +@echo off +if not "%ROOT_BATCH%"/ == ""/ goto start +if "%ROOT_BATCH%"/ == ""/ ..\..\Bin\_start go %0 + +:start +set BIN_PATH=..\..\Bin +set BIN_GCC_PATH=%BIN_PATH%\GNU\GNU_ARM\bin +set TOOLS_PATH=%BIN_PATH%\GNU\Tools +::set PATH=%BIN_GCC_PATH%;%TOOLS_PATH%;%PATH% +set PATH=%BIN_GCC_PATH%;%TOOLS_PATH% + +%TOOLS_PATH%\make -f ..\..\Common\Makefile all diff --git a/Demo_C/Demo/LightRun/param.mk b/Demo_C/Demo/LightRun/param.mk new file mode 100644 index 0000000..2dbab29 --- /dev/null +++ b/Demo_C/Demo/LightRun/param.mk @@ -0,0 +1,2 @@ +PROJ = LightRun +OBJS = LightRun.o diff --git a/Demo_C/Demo/LightRun/run.bat b/Demo_C/Demo/LightRun/run.bat new file mode 100644 index 0000000..420722a --- /dev/null +++ b/Demo_C/Demo/LightRun/run.bat @@ -0,0 +1,2 @@ +@echo off +..\..\bin\_exec_cmd ..\..\bin run %1 diff --git a/Demo_C/Demo/LightRun/stop.bat b/Demo_C/Demo/LightRun/stop.bat new file mode 100644 index 0000000..4bddcbf --- /dev/null +++ b/Demo_C/Demo/LightRun/stop.bat @@ -0,0 +1,2 @@ +@echo off +..\..\bin\_exec_cmd ..\..\bin stop %1 diff --git a/Demo_C/Demo/MotorEx_2M_Master/MotorEx_2M_Master.c b/Demo_C/Demo/MotorEx_2M_Master/MotorEx_2M_Master.c new file mode 100644 index 0000000..8d82065 --- /dev/null +++ b/Demo_C/Demo/MotorEx_2M_Master/MotorEx_2M_Master.c @@ -0,0 +1,114 @@ +//============================================================================= +// Demo program "Extended motor control mode with two motors on Master". +// +// Can be run under control of the ROBO TX Controller +// firmware in download (local) mode. +// Continuously starts two synchronized motors with changing rotation directions. +// Motors are connected to outputs M1 and M2. Pulses from the motors are +// calculated by the counters C1 and C2. The motors are stopped and rotation +// direction is changed after both counters reach the value of 200. +// +// Disclaimer - Exclusion of Liability +// +// This software is distributed in the hope that it will be useful, but WITHOUT +// ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or +// FITNESS FOR A PARTICULAR PURPOSE. It can be used and modified by anyone +// free of any license obligations or authoring rights. +//============================================================================= + +#include "ROBO_TX_PRG.h" + +#define TA_IDX TA_LOCAL +#define MASTER_MOTOR_NUMBER 1 +#define MASTER_MOTOR_IDX (MASTER_MOTOR_NUMBER - 1) +#define SLAVE_MOTOR_NUMBER 2 +#define SLAVE_MOTOR_IDX (SLAVE_MOTOR_NUMBER - 1) + +static BOOL32 rotation_direction; +static BOOL32 prev_rotation_direction; + + +/*----------------------------------------------------------------------------- + * Function Name : PrgInit + * + * This it the program initialization. + * It is called once. + *-----------------------------------------------------------------------------*/ +void PrgInit +( + TA * p_ta_array, // pointer to the array of transfer areas + int ta_count // number of transfer areas in array (equal to TA_COUNT) +) +{ + TA * p_ta = &p_ta_array[TA_IDX]; + + // Configure master motor output to be used as a motor output + p_ta->config.motor[MASTER_MOTOR_IDX] = TRUE; + + // Configure slave motor output to be used as a motor output + p_ta->config.motor[SLAVE_MOTOR_IDX] = TRUE; + + // Inform firmware that configuration was changed + p_ta->state.config_id += 1; + + rotation_direction = FALSE; + prev_rotation_direction = !rotation_direction; +} + + +/*----------------------------------------------------------------------------- + * Function Name : PrgTic + * + * This is the main function of this program. + * It is called every tic (1 ms) realtime. + *-----------------------------------------------------------------------------*/ +int PrgTic +( + TA * p_ta_array, // pointer to the array of transfer areas + int ta_count // number of transfer areas in array (equal to TA_COUNT) +) +{ + int rc = 0x7FFF; // return code: 0x7FFF - program should be further called by the firmware; + // 0 - program should be normally stopped by the firmware; + // any other value is considered by the firmware as an error code + // and the program is stopped. + TA * p_ta = &p_ta_array[TA_IDX]; + + if (rotation_direction != prev_rotation_direction) + { + // Set master motor duty depending on rotation_direction + p_ta->output.duty[2 * MASTER_MOTOR_IDX + 0] = (rotation_direction) ? DUTY_MAX : 0; + p_ta->output.duty[2 * MASTER_MOTOR_IDX + 1] = (rotation_direction) ? 0 : DUTY_MAX; + + // Set slave motor duty depending on rotation_direction + p_ta->output.duty[2 * SLAVE_MOTOR_IDX + 0] = (rotation_direction) ? DUTY_MAX : 0; + p_ta->output.duty[2 * SLAVE_MOTOR_IDX + 1] = (rotation_direction) ? 0 : DUTY_MAX; + + // Master motor should run until counter reaches 200 + p_ta->output.distance[MASTER_MOTOR_IDX] = 200; + + // Slave motor should run until counter reaches 200 + p_ta->output.distance[SLAVE_MOTOR_IDX] = 200; + + // Link slave motor to master motor + p_ta->output.master[SLAVE_MOTOR_IDX] = MASTER_MOTOR_IDX + 1; + + p_ta->input.motor_pos_reached[MASTER_MOTOR_IDX] = FALSE; + p_ta->input.motor_pos_reached[SLAVE_MOTOR_IDX] = FALSE; + + // Start extended motor control command for master motor + p_ta->output.motor_ex_cmd_id[MASTER_MOTOR_IDX]++; + + // Start extended motor control command for slave motor + p_ta->output.motor_ex_cmd_id[SLAVE_MOTOR_IDX]++; + + prev_rotation_direction = rotation_direction; + } + + if (p_ta->input.motor_pos_reached[MASTER_MOTOR_IDX] && p_ta->input.motor_pos_reached[SLAVE_MOTOR_IDX]) + { + rotation_direction = !rotation_direction; + } + + return rc; +} diff --git a/Demo_C/Demo/MotorEx_2M_Master/clean.bat b/Demo_C/Demo/MotorEx_2M_Master/clean.bat new file mode 100644 index 0000000..84d1361 --- /dev/null +++ b/Demo_C/Demo/MotorEx_2M_Master/clean.bat @@ -0,0 +1,6 @@ +@echo off +if not "%ROOT_BATCH%"/ == ""/ goto start +if "%ROOT_BATCH%"/ == ""/ ..\..\Bin\_start go %0 + +:start +..\..\Bin\GNU\Tools\make -f ..\..\Common\Makefile clean diff --git a/Demo_C/Demo/MotorEx_2M_Master/load_flash.bat b/Demo_C/Demo/MotorEx_2M_Master/load_flash.bat new file mode 100644 index 0000000..4250cd9 --- /dev/null +++ b/Demo_C/Demo/MotorEx_2M_Master/load_flash.bat @@ -0,0 +1,2 @@ +@echo off +..\..\bin\_load_flash ..\..\bin %1 diff --git a/Demo_C/Demo/MotorEx_2M_Master/load_ramdisk.bat b/Demo_C/Demo/MotorEx_2M_Master/load_ramdisk.bat new file mode 100644 index 0000000..777fedb --- /dev/null +++ b/Demo_C/Demo/MotorEx_2M_Master/load_ramdisk.bat @@ -0,0 +1,2 @@ +@echo off +..\..\bin\_load_ramdisk ..\..\bin %1 diff --git a/Demo_C/Demo/MotorEx_2M_Master/make.bat b/Demo_C/Demo/MotorEx_2M_Master/make.bat new file mode 100644 index 0000000..0a12e74 --- /dev/null +++ b/Demo_C/Demo/MotorEx_2M_Master/make.bat @@ -0,0 +1,11 @@ +@echo off +if not "%ROOT_BATCH%"/ == ""/ goto start +if "%ROOT_BATCH%"/ == ""/ ..\..\Bin\_start go %0 + +:start +set BIN_PATH=..\..\Bin +set BIN_GCC_PATH=%BIN_PATH%\GNU\GNU_ARM\bin +set TOOLS_PATH=%BIN_PATH%\GNU\Tools +set PATH=%BIN_GCC_PATH%;%TOOLS_PATH%;%PATH% + +%TOOLS_PATH%\make -f ..\..\Common\Makefile all diff --git a/Demo_C/Demo/MotorEx_2M_Master/param.mk b/Demo_C/Demo/MotorEx_2M_Master/param.mk new file mode 100644 index 0000000..2457f1c --- /dev/null +++ b/Demo_C/Demo/MotorEx_2M_Master/param.mk @@ -0,0 +1,2 @@ +PROJ = MotorEx_2M_Master +OBJS = MotorEx_2M_Master.o diff --git a/Demo_C/Demo/MotorEx_2M_Master/run.bat b/Demo_C/Demo/MotorEx_2M_Master/run.bat new file mode 100644 index 0000000..420722a --- /dev/null +++ b/Demo_C/Demo/MotorEx_2M_Master/run.bat @@ -0,0 +1,2 @@ +@echo off +..\..\bin\_exec_cmd ..\..\bin run %1 diff --git a/Demo_C/Demo/MotorEx_2M_Master/stop.bat b/Demo_C/Demo/MotorEx_2M_Master/stop.bat new file mode 100644 index 0000000..4bddcbf --- /dev/null +++ b/Demo_C/Demo/MotorEx_2M_Master/stop.bat @@ -0,0 +1,2 @@ +@echo off +..\..\bin\_exec_cmd ..\..\bin stop %1 diff --git a/Demo_C/Demo/MotorEx_Ext1/MotorEx_Ext1.c b/Demo_C/Demo/MotorEx_Ext1/MotorEx_Ext1.c new file mode 100644 index 0000000..176e5e3 --- /dev/null +++ b/Demo_C/Demo/MotorEx_Ext1/MotorEx_Ext1.c @@ -0,0 +1,95 @@ +//============================================================================= +// Demo program "Extended motor control mode on Extension 1". +// +// Can be run under control of the ROBO TX Controller +// firmware in download (local) mode. +// Continuously starts a motor with changing rotation directions. +// Motor is connected to outputs M1. Pulses from the motor are +// calculated by the counter C1. The motor is stopped and rotation +// direction is changed after the counter reaches the value of 200. +// +// Disclaimer - Exclusion of Liability +// +// This software is distributed in the hope that it will be useful, but WITHOUT +// ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or +// FITNESS FOR A PARTICULAR PURPOSE. It can be used and modified by anyone +// free of any license obligations or authoring rights. +//============================================================================= + +#include "ROBO_TX_PRG.h" + +#define TA_IDX TA_EXT_1 +#define MOTOR_NUMBER 1 +#define MOTOR_IDX (MOTOR_NUMBER - 1) + +static BOOL32 rotation_direction; +static BOOL32 prev_rotation_direction; + + +/*----------------------------------------------------------------------------- + * Function Name : PrgInit + * + * This it the program initialization. + * It is called once. + *-----------------------------------------------------------------------------*/ +void PrgInit +( + TA * p_ta_array, // pointer to the array of transfer areas + int ta_count // number of transfer areas in array (equal to TA_COUNT) +) +{ + TA * p_ta = &p_ta_array[TA_IDX]; + + // Configure motor output to be used as a motor output + p_ta->config.motor[MOTOR_IDX] = TRUE; + + // Inform firmware that configuration was changed + p_ta->state.config_id += 1; + + rotation_direction = FALSE; + prev_rotation_direction = !rotation_direction; +} + + +/*----------------------------------------------------------------------------- + * Function Name : PrgTic + * + * This is the main function of this program. + * It is called every tic (1 ms) realtime. + *-----------------------------------------------------------------------------*/ +int PrgTic +( + TA * p_ta_array, // pointer to the array of transfer areas + int ta_count // number of transfer areas in array (equal to TA_COUNT) +) +{ + int rc = 0x7FFF; // return code: 0x7FFF - program should be further called by the firmware; + // 0 - program should be normally stopped by the firmware; + // any other value is considered by the firmware as an error code + // and the program is stopped. + TA * p_ta = &p_ta_array[TA_IDX]; + + if (rotation_direction != prev_rotation_direction) + { + // Set motor duty depending on rotation_direction + p_ta->output.duty[2 * MOTOR_IDX + 0] = (rotation_direction) ? DUTY_MAX : 0; + p_ta->output.duty[2 * MOTOR_IDX + 1] = (rotation_direction) ? 0 : DUTY_MAX; + + // Motor should run until counter reaches 200 + p_ta->output.distance[MOTOR_IDX] = 200; + + p_ta->input.motor_pos_reached[MOTOR_IDX] = FALSE; + + // Start extended motor control command + p_ta->output.motor_ex_cmd_id[MOTOR_IDX]++; + + prev_rotation_direction = rotation_direction; + } + + if (p_ta->input.motor_pos_reached[MOTOR_IDX]) + { + rotation_direction = !rotation_direction; + } + + return rc; +} diff --git a/Demo_C/Demo/MotorEx_Ext1/clean.bat b/Demo_C/Demo/MotorEx_Ext1/clean.bat new file mode 100644 index 0000000..84d1361 --- /dev/null +++ b/Demo_C/Demo/MotorEx_Ext1/clean.bat @@ -0,0 +1,6 @@ +@echo off +if not "%ROOT_BATCH%"/ == ""/ goto start +if "%ROOT_BATCH%"/ == ""/ ..\..\Bin\_start go %0 + +:start +..\..\Bin\GNU\Tools\make -f ..\..\Common\Makefile clean diff --git a/Demo_C/Demo/MotorEx_Ext1/load_flash.bat b/Demo_C/Demo/MotorEx_Ext1/load_flash.bat new file mode 100644 index 0000000..4250cd9 --- /dev/null +++ b/Demo_C/Demo/MotorEx_Ext1/load_flash.bat @@ -0,0 +1,2 @@ +@echo off +..\..\bin\_load_flash ..\..\bin %1 diff --git a/Demo_C/Demo/MotorEx_Ext1/load_ramdisk.bat b/Demo_C/Demo/MotorEx_Ext1/load_ramdisk.bat new file mode 100644 index 0000000..777fedb --- /dev/null +++ b/Demo_C/Demo/MotorEx_Ext1/load_ramdisk.bat @@ -0,0 +1,2 @@ +@echo off +..\..\bin\_load_ramdisk ..\..\bin %1 diff --git a/Demo_C/Demo/MotorEx_Ext1/make.bat b/Demo_C/Demo/MotorEx_Ext1/make.bat new file mode 100644 index 0000000..0a12e74 --- /dev/null +++ b/Demo_C/Demo/MotorEx_Ext1/make.bat @@ -0,0 +1,11 @@ +@echo off +if not "%ROOT_BATCH%"/ == ""/ goto start +if "%ROOT_BATCH%"/ == ""/ ..\..\Bin\_start go %0 + +:start +set BIN_PATH=..\..\Bin +set BIN_GCC_PATH=%BIN_PATH%\GNU\GNU_ARM\bin +set TOOLS_PATH=%BIN_PATH%\GNU\Tools +set PATH=%BIN_GCC_PATH%;%TOOLS_PATH%;%PATH% + +%TOOLS_PATH%\make -f ..\..\Common\Makefile all diff --git a/Demo_C/Demo/MotorEx_Ext1/param.mk b/Demo_C/Demo/MotorEx_Ext1/param.mk new file mode 100644 index 0000000..e3a94fc --- /dev/null +++ b/Demo_C/Demo/MotorEx_Ext1/param.mk @@ -0,0 +1,2 @@ +PROJ = MotorEx_Ext1 +OBJS = MotorEx_Ext1.o diff --git a/Demo_C/Demo/MotorEx_Ext1/run.bat b/Demo_C/Demo/MotorEx_Ext1/run.bat new file mode 100644 index 0000000..420722a --- /dev/null +++ b/Demo_C/Demo/MotorEx_Ext1/run.bat @@ -0,0 +1,2 @@ +@echo off +..\..\bin\_exec_cmd ..\..\bin run %1 diff --git a/Demo_C/Demo/MotorEx_Ext1/stop.bat b/Demo_C/Demo/MotorEx_Ext1/stop.bat new file mode 100644 index 0000000..4bddcbf --- /dev/null +++ b/Demo_C/Demo/MotorEx_Ext1/stop.bat @@ -0,0 +1,2 @@ +@echo off +..\..\bin\_exec_cmd ..\..\bin stop %1 diff --git a/Demo_C/Demo/MotorRun/MotorRun.c b/Demo_C/Demo/MotorRun/MotorRun.c new file mode 100644 index 0000000..8ca75c8 --- /dev/null +++ b/Demo_C/Demo/MotorRun/MotorRun.c @@ -0,0 +1,160 @@ +//============================================================================= +// Demo program "Motor run". +// +// Can be run under control of the ROBO TX Controller +// firmware in download (local) mode. +// Controls motor connected to outputs M1 with different +// speeds and in different rotation directions. +// +// Disclaimer - Exclusion of Liability +// +// This software is distributed in the hope that it will be useful, but WITHOUT +// ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or +// FITNESS FOR A PARTICULAR PURPOSE. It can be used and modified by anyone +// free of any license obligations or authoring rights. +//============================================================================= + +#include "ROBO_TX_PRG.h" + +#define TA_IDX TA_LOCAL +#define MOTOR_NUMBER 1 +#define MOTOR_IDX (MOTOR_NUMBER - 1) + +static unsigned long timer; +static enum {DIRECTION_1, PAUSE, DIRECTION_2, OFF} stage; +static int duty; + + +/*----------------------------------------------------------------------------- + * Function Name : PrgInit + * + * This it the program initialization. + * It is called once. + *-----------------------------------------------------------------------------*/ +void PrgInit +( + TA * p_ta_array, // pointer to the array of transfer areas + int ta_count // number of transfer areas in array (equal to TA_COUNT) +) +{ + TA * p_ta = &p_ta_array[TA_IDX]; + + // Configure motor output to be used as a motor output + p_ta->config.motor[MOTOR_IDX] = TRUE; + + // Inform firmware that configuration was changed + p_ta->state.config_id += 1; + + // Switch motor off + p_ta->output.duty[2 * MOTOR_IDX + 0] = 0; + p_ta->output.duty[2 * MOTOR_IDX + 1] = 0; + + timer = 0; + stage = DIRECTION_1; // motor should start to rotate in the first direction + duty = 0; +} + + +/*----------------------------------------------------------------------------- + * Function Name : PrgTic + * + * This is the main function of this program. + * It is called every tic (1 ms) realtime. + *-----------------------------------------------------------------------------*/ +int PrgTic +( + TA * p_ta_array, // pointer to the array of transfer areas + int ta_count // number of transfer areas in array (equal to TA_COUNT) +) +{ + int rc = 0x7FFF; // return code: 0x7FFF - program should be further called by the firmware; + // 0 - program should be normally stopped by the firmware; + // any other value is considered by the firmware as an error code + // and the program is stopped. + TA * p_ta = &p_ta_array[TA_IDX]; + + while (1) + { + switch (stage) + { + case DIRECTION_1: + if (timer == 0) + { + // Switch motor on in the first direction with the speed from the duty value + duty += DUTY_MAX / 4; + p_ta->output.duty[2 * MOTOR_IDX + 0] = duty; + p_ta->output.duty[2 * MOTOR_IDX + 1] = 0; + } + if (++timer >= 2000) // motor should rotate with such a speed for 2 seconds + { + timer = 0; + if (duty >= DUTY_MAX) + { + stage = PAUSE; + } + else + { + continue; + } + } + else + { + return rc; + } + + case PAUSE: + if (timer == 0) + { + // Switch motor off + p_ta->output.duty[2 * MOTOR_IDX + 0] = 0; + p_ta->output.duty[2 * MOTOR_IDX + 1] = 0; + } + if (++timer >= 2000) // motor should be stopped for 2 seconds + { + stage = DIRECTION_2; + timer = 0; + } + else + { + return rc; + } + + case DIRECTION_2: + if (timer == 0) + { + // Switch motor on in the second direction with the speed from the duty value + p_ta->output.duty[2 * MOTOR_IDX + 0] = 0; + p_ta->output.duty[2 * MOTOR_IDX + 1] = duty; + } + if (++timer >= 2000) // motor should rotate with such a speed for 2 seconds + { + duty -= DUTY_MAX / 4; + if (duty <= 0) + { + stage = OFF; + } + else + { + timer = 0; + continue; + } + } + else + { + return rc; + } + + case OFF: + // Switch motor off + p_ta->output.duty[2 * MOTOR_IDX + 0] = 0; + p_ta->output.duty[2 * MOTOR_IDX + 1] = 0; + + rc = 0; // stop program + return rc; + + default: + return rc; + } + } + return rc; +} diff --git a/Demo_C/Demo/MotorRun/clean.bat b/Demo_C/Demo/MotorRun/clean.bat new file mode 100644 index 0000000..84d1361 --- /dev/null +++ b/Demo_C/Demo/MotorRun/clean.bat @@ -0,0 +1,6 @@ +@echo off +if not "%ROOT_BATCH%"/ == ""/ goto start +if "%ROOT_BATCH%"/ == ""/ ..\..\Bin\_start go %0 + +:start +..\..\Bin\GNU\Tools\make -f ..\..\Common\Makefile clean diff --git a/Demo_C/Demo/MotorRun/load_flash.bat b/Demo_C/Demo/MotorRun/load_flash.bat new file mode 100644 index 0000000..4250cd9 --- /dev/null +++ b/Demo_C/Demo/MotorRun/load_flash.bat @@ -0,0 +1,2 @@ +@echo off +..\..\bin\_load_flash ..\..\bin %1 diff --git a/Demo_C/Demo/MotorRun/load_ramdisk.bat b/Demo_C/Demo/MotorRun/load_ramdisk.bat new file mode 100644 index 0000000..777fedb --- /dev/null +++ b/Demo_C/Demo/MotorRun/load_ramdisk.bat @@ -0,0 +1,2 @@ +@echo off +..\..\bin\_load_ramdisk ..\..\bin %1 diff --git a/Demo_C/Demo/MotorRun/make.bat b/Demo_C/Demo/MotorRun/make.bat new file mode 100644 index 0000000..0a12e74 --- /dev/null +++ b/Demo_C/Demo/MotorRun/make.bat @@ -0,0 +1,11 @@ +@echo off +if not "%ROOT_BATCH%"/ == ""/ goto start +if "%ROOT_BATCH%"/ == ""/ ..\..\Bin\_start go %0 + +:start +set BIN_PATH=..\..\Bin +set BIN_GCC_PATH=%BIN_PATH%\GNU\GNU_ARM\bin +set TOOLS_PATH=%BIN_PATH%\GNU\Tools +set PATH=%BIN_GCC_PATH%;%TOOLS_PATH%;%PATH% + +%TOOLS_PATH%\make -f ..\..\Common\Makefile all diff --git a/Demo_C/Demo/MotorRun/param.mk b/Demo_C/Demo/MotorRun/param.mk new file mode 100644 index 0000000..71d122d --- /dev/null +++ b/Demo_C/Demo/MotorRun/param.mk @@ -0,0 +1,2 @@ +PROJ = MotorRun +OBJS = MotorRun.o diff --git a/Demo_C/Demo/MotorRun/run.bat b/Demo_C/Demo/MotorRun/run.bat new file mode 100644 index 0000000..420722a --- /dev/null +++ b/Demo_C/Demo/MotorRun/run.bat @@ -0,0 +1,2 @@ +@echo off +..\..\bin\_exec_cmd ..\..\bin run %1 diff --git a/Demo_C/Demo/MotorRun/stop.bat b/Demo_C/Demo/MotorRun/stop.bat new file mode 100644 index 0000000..4bddcbf --- /dev/null +++ b/Demo_C/Demo/MotorRun/stop.bat @@ -0,0 +1,2 @@ +@echo off +..\..\bin\_exec_cmd ..\..\bin stop %1 diff --git a/Demo_C/Demo/StopGo/StopGo.c b/Demo_C/Demo/StopGo/StopGo.c new file mode 100644 index 0000000..ce451be --- /dev/null +++ b/Demo_C/Demo/StopGo/StopGo.c @@ -0,0 +1,123 @@ +//============================================================================= +// Demo program "Stop and go". +// +// Can be run under control of the ROBO TX Controller +// firmware in download (local) mode. +// Starts and stops motor connected to outputs M1 by means +// of the button connected to the input I8. Pulses from the +// motor are calculated by the counter C1. The motor is +// stopped after the counter reaches the value of 1000. +// +// Disclaimer - Exclusion of Liability +// +// This software is distributed in the hope that it will be useful, but WITHOUT +// ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or +// FITNESS FOR A PARTICULAR PURPOSE. It can be used and modified by anyone +// free of any license obligations or authoring rights. +//============================================================================= + +#include "ROBO_TX_PRG.h" + +#define TA_IDX TA_LOCAL +//#define TA_IDX TA_EXT_1 +#define MOTOR_NUMBER 1 +#define MOTOR_IDX (MOTOR_NUMBER - 1) +#define BUTTON_NUMBER 8 +#define BUTTON_IDX (BUTTON_NUMBER - 1) + +static INT16 prev_button_state; +static char str[128]; + + +/*----------------------------------------------------------------------------- + * Function Name : PrgInit + * + * This it the program initialization. + * It is called once. + *-----------------------------------------------------------------------------*/ +void PrgInit +( + TA * p_ta_array, // pointer to the array of transfer areas + int ta_count // number of transfer areas in array (equal to TA_COUNT) +) +{ + TA * p_ta = &p_ta_array[TA_IDX]; + + // Configure motor output to be used as a motor output + p_ta->config.motor[MOTOR_IDX] = TRUE; + + // Configure button input to "Digital 5 kOhm" mode + p_ta->config.uni[BUTTON_IDX].mode = MODE_R; + p_ta->config.uni[BUTTON_IDX].digital = TRUE; + + // Inform firmware that configuration was changed + p_ta->state.config_id += 1; + + // Reset counter + p_ta->input.cnt_resetted[MOTOR_IDX] = FALSE; + p_ta->output.cnt_reset_cmd_id[MOTOR_IDX]++; + + // Emulate button press in order to run at program start-up on + // program branch where the button release is noticed + prev_button_state = 1; +} + + +/*----------------------------------------------------------------------------- + * Function Name : PrgTic + * + * This is the main function of this program. + * It is called every tic (1 ms) realtime. + *-----------------------------------------------------------------------------*/ +int PrgTic +( + TA * p_ta_array, // pointer to the array of transfer areas + int ta_count // number of transfer areas in array (equal to TA_COUNT) +) +{ + int rc = 0x7FFF; // return code: 0x7FFF - program should be further called by the firmware; + // 0 - program should be normally stopped by the firmware; + // any other value is considered by the firmware as an error code + // and the program is stopped. + TA * p_ta = &p_ta_array[TA_IDX]; + INT16 cur_button_state; + + if (p_ta->input.cnt_resetted[MOTOR_IDX]) // wait until counter is resetted + { + if (!p_ta->hook_table.IsDisplayBeingRefreshed(p_ta)) // wait until display is refreshed + { + // Read current status of the button input + cur_button_state = p_ta->input.uni[BUTTON_IDX]; + + if (prev_button_state != cur_button_state) + { + if (prev_button_state && !cur_button_state) // if button was released + { + p_ta->hook_table.sprintf(str, "Press button I%d to run motor M%d", + BUTTON_NUMBER, MOTOR_NUMBER); + p_ta->hook_table.DisplayMsg(p_ta, str); + } + else // if button was pressed + { + // Drop all pop-up messages from display and return to the main frame + p_ta->hook_table.DisplayMsg(p_ta, NULL); + } + prev_button_state = cur_button_state; + } + + // Start motor if button is pressed, otherwise stop it + p_ta->output.duty[2 * MOTOR_IDX] = (cur_button_state) ? DUTY_MAX : 0; + } + if (!p_ta->hook_table.IsDisplayBeingRefreshed(p_ta)) // wait until display is refreshed + { + // Program should be executed until counter reaches 1000 + if (p_ta->input.counter[MOTOR_IDX] >= 1000) + { + p_ta->hook_table.sprintf(str, "Motor M%d reached position 1000", MOTOR_NUMBER); + p_ta->hook_table.DisplayMsg(p_ta, str); + rc = 0; // stop program + } + } + } + return rc; +} diff --git a/Demo_C/Demo/StopGo/clean.bat b/Demo_C/Demo/StopGo/clean.bat new file mode 100644 index 0000000..84d1361 --- /dev/null +++ b/Demo_C/Demo/StopGo/clean.bat @@ -0,0 +1,6 @@ +@echo off +if not "%ROOT_BATCH%"/ == ""/ goto start +if "%ROOT_BATCH%"/ == ""/ ..\..\Bin\_start go %0 + +:start +..\..\Bin\GNU\Tools\make -f ..\..\Common\Makefile clean diff --git a/Demo_C/Demo/StopGo/load_flash.bat b/Demo_C/Demo/StopGo/load_flash.bat new file mode 100644 index 0000000..4250cd9 --- /dev/null +++ b/Demo_C/Demo/StopGo/load_flash.bat @@ -0,0 +1,2 @@ +@echo off +..\..\bin\_load_flash ..\..\bin %1 diff --git a/Demo_C/Demo/StopGo/load_ramdisk.bat b/Demo_C/Demo/StopGo/load_ramdisk.bat new file mode 100644 index 0000000..777fedb --- /dev/null +++ b/Demo_C/Demo/StopGo/load_ramdisk.bat @@ -0,0 +1,2 @@ +@echo off +..\..\bin\_load_ramdisk ..\..\bin %1 diff --git a/Demo_C/Demo/StopGo/make.bat b/Demo_C/Demo/StopGo/make.bat new file mode 100644 index 0000000..0a12e74 --- /dev/null +++ b/Demo_C/Demo/StopGo/make.bat @@ -0,0 +1,11 @@ +@echo off +if not "%ROOT_BATCH%"/ == ""/ goto start +if "%ROOT_BATCH%"/ == ""/ ..\..\Bin\_start go %0 + +:start +set BIN_PATH=..\..\Bin +set BIN_GCC_PATH=%BIN_PATH%\GNU\GNU_ARM\bin +set TOOLS_PATH=%BIN_PATH%\GNU\Tools +set PATH=%BIN_GCC_PATH%;%TOOLS_PATH%;%PATH% + +%TOOLS_PATH%\make -f ..\..\Common\Makefile all diff --git a/Demo_C/Demo/StopGo/param.mk b/Demo_C/Demo/StopGo/param.mk new file mode 100644 index 0000000..09c38ae --- /dev/null +++ b/Demo_C/Demo/StopGo/param.mk @@ -0,0 +1,2 @@ +PROJ = StopGo +OBJS = StopGo.o diff --git a/Demo_C/Demo/StopGo/run.bat b/Demo_C/Demo/StopGo/run.bat new file mode 100644 index 0000000..420722a --- /dev/null +++ b/Demo_C/Demo/StopGo/run.bat @@ -0,0 +1,2 @@ +@echo off +..\..\bin\_exec_cmd ..\..\bin run %1 diff --git a/Demo_C/Demo/StopGo/stop.bat b/Demo_C/Demo/StopGo/stop.bat new file mode 100644 index 0000000..4bddcbf --- /dev/null +++ b/Demo_C/Demo/StopGo/stop.bat @@ -0,0 +1,2 @@ +@echo off +..\..\bin\_exec_cmd ..\..\bin stop %1 diff --git a/Demo_C/Demo/StopGoBtButtonPart/StopGoBtButtonPart.c b/Demo_C/Demo/StopGoBtButtonPart/StopGoBtButtonPart.c new file mode 100644 index 0000000..b35bd2a --- /dev/null +++ b/Demo_C/Demo/StopGoBtButtonPart/StopGoBtButtonPart.c @@ -0,0 +1,337 @@ +//============================================================================= +// Demo program "Stop and go via Bluetooth (button part)". +// +// Can be run under control of the ROBO TX Controller +// firmware in download (local) mode. +// Starts and stops motor, connected to outputs M1 on other +// ROBO TX Controller, by means of the button connected to +// the input I8. Pulses from the motor are calculated by the +// counter C1 on other ROBO TX Controller. The motor is +// stopped after the counter reaches the value of 1000. +// +// Disclaimer - Exclusion of Liability +// +// This software is distributed in the hope that it will be useful, but WITHOUT +// ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or +// FITNESS FOR A PARTICULAR PURPOSE. It can be used and modified by anyone +// free of any license obligations or authoring rights. +//============================================================================= + +#include "ROBO_TX_PRG.h" + +#define MOTOR_NUMBER 1 +#define BUTTON_NUMBER 8 +#define BUTTON_IDX (BUTTON_NUMBER - 1) + +#define BT_CHANNEL 1 + +// Bluetooth address of other ROBO TX Controller +static UCHAR8 * bt_address = bt_address_table[1]; + +static enum +{ + CONNECT, + PAUSE_1, + PAUSE_2, + START_RECEIVE, + SEND_REQUEST, + WAIT_REPLY, + PAUSE_3, + EXIT +} stage; + +static INT16 prev_button_state; +static INT16 remote_counter_value; +static unsigned long timer; +static enum bt_commands_e command; +static CHAR8 command_status; +static CHAR8 receive_command_status; +static bool was_receive; +static char str[128]; + + +/*----------------------------------------------------------------------------- + * Function Name : BtCallback + * + * This callback function is called to inform the program about result (status) + * of execution of any Bluetooth command except BtStartReceive command. + *-----------------------------------------------------------------------------*/ +static void BtCallback +( + TA * p_ta_array, + BT_CB * p_data +) +{ + command_status = p_data->status; +} + + +/*----------------------------------------------------------------------------- + * Function Name : BtReceiveCallback + * + * This callback function is called to inform the program about result (status) + * of execution of BtStartReceive command. It is also called when a message + * arrives via Bluetooth. + *-----------------------------------------------------------------------------*/ +static void BtReceiveCallback +( + TA * p_ta_array, + BT_RECV_CB * p_data +) +{ + was_receive = TRUE; + + if (p_data->status == BT_MSG_INDICATION) + { + TA * p_ta = &p_ta_array[TA_LOCAL]; + UCHAR8 counter; + + // Format of a received message should be: + // byte 0 : counter number(1...N_CNT) + // byte 1-2: counter value(0...0xFFFF) + counter = p_data->msg[0]; + if (counter >= 1 && counter <= N_CNT) + { + p_ta->hook_table.memcpy(&remote_counter_value, &p_data->msg[1], + sizeof(remote_counter_value)); + } + } + else + { + receive_command_status = p_data->status; + } +} + + +/*----------------------------------------------------------------------------- + * Function Name : PrgInit + * + * This it the program initialization. + * It is called once. + *-----------------------------------------------------------------------------*/ +void PrgInit +( + TA * p_ta_array, // pointer to the array of transfer areas + int ta_count // number of transfer areas in array (equal to TA_COUNT) +) +{ + TA * p_ta = &p_ta_array[TA_LOCAL]; + + // Configure input I8 to "Digital 5 kOhm" mode + p_ta->config.uni[BUTTON_IDX].mode = MODE_R; + p_ta->config.uni[BUTTON_IDX].digital = TRUE; + + // Inform firmware that configuration was changed + p_ta->state.config_id += 1; + + // Emulate button press in order to run at program start-up on + // program branch where the button release is noticed + prev_button_state = 1; + + remote_counter_value = 0; + + // Connect to the controller with bt_address via Bluetooth channel BT_CHANNEL + stage = CONNECT; + command = CMD_CONNECT; + command_status = -1; + p_ta->hook_table.BtConnect(BT_CHANNEL, bt_address, BtCallback); +} + + +/*----------------------------------------------------------------------------- + * Function Name : PrgTic + * + * This is the main function of this program. + * It is called every tic (1 ms) realtime. + *-----------------------------------------------------------------------------*/ +int PrgTic +( + TA * p_ta_array, // pointer to the array of transfer areas + int ta_count // number of transfer areas in array (equal to TA_COUNT) +) +{ + int rc = 0x7FFF; // return code: 0x7FFF - program should be further called by the firmware; + // 0 - program should be normally stopped by the firmware; + // any other value is considered by the firmware as an error code + // and the program is stopped. + TA * p_ta = &p_ta_array[TA_LOCAL]; + + switch (stage) + { + case CONNECT: + if (command_status >= 0) + { + if (BtDisplayCommandStatus(p_ta, bt_address, BT_CHANNEL, command, command_status)) + { + if (command_status != BT_SUCCESS) + { + stage = PAUSE_3; + } + else + { + stage = PAUSE_1; + + // Start receive from Bluetooth channel BT_CHANNEL + command = CMD_START_RECEIVE; + receive_command_status = -1; + p_ta->hook_table.BtStartReceive(BT_CHANNEL, BtReceiveCallback); + } + timer = 0; + } + } + break; + + case PAUSE_1: // to let a user to notice the "Connected" display output + if (++timer >= 3000) // wait for 3 seconds + { + stage = PAUSE_2; + timer = 0; + } + else + { + break; + } + + case PAUSE_2: // to let a user to notice the "Started receiving" display output + if (receive_command_status >= 0) + { + if (BtDisplayCommandStatus(p_ta, bt_address, BT_CHANNEL, command, receive_command_status)) + { + if (receive_command_status == BT_SUCCESS) + { + // Successful result of BtStartReceive() - restart the timer to let a user to + // notice this display output + receive_command_status = -1; + timer = 0; + } + else + { + // Unsuccessful result of BtStartReceive() - make PAUSE_3 (to let a user to + // notice this display output) and exit the program + stage = PAUSE_3; + timer = 0; + } + } + break; + } + else if (++timer >= 3000) // wait for 3 seconds + { + stage = START_RECEIVE; + } + else + { + break; + } + + case START_RECEIVE: + case WAIT_REPLY: + if (was_receive || command_status >= 0) + { + if (command_status >= 0 && command_status != BT_SUCCESS) + { + // Usually if we have come here, then this means the other controller + // has disconnected from us + if (BtDisplayCommandStatus(p_ta, bt_address, BT_CHANNEL, command, command_status)) + { + stage = PAUSE_3; + timer = 0; + } + } + else + { + UCHAR8 msg[3]; + INT16 duty; + + was_receive = FALSE; + + // Read current status of the button input + INT16 cur_button_state = p_ta->input.uni[BUTTON_IDX]; + + // Start motor if button on input I8 is pressed, otherwise stop it + duty = (cur_button_state) ? DUTY_MAX : 0; + + if (!p_ta->hook_table.IsDisplayBeingRefreshed(p_ta)) // wait until display is refreshed + { + // Program should be executed until counter reaches 1000 + if (remote_counter_value >= 1000) + { + p_ta->hook_table.sprintf(str, "Motor M%d reached position 1000", MOTOR_NUMBER); + p_ta->hook_table.DisplayMsg(p_ta, str); + duty = 0; + stage = PAUSE_3; + timer = 0; + } + else if (prev_button_state != cur_button_state) + { + if (prev_button_state && !cur_button_state) // if button was released + { + p_ta->hook_table.sprintf(str, + "Press button I%d to run motor M%d on other TXC", + BUTTON_NUMBER, MOTOR_NUMBER); + p_ta->hook_table.DisplayMsg(p_ta, str); + } + else // if button was pressed + { + // Drop all pop-up messages from display and return to the main frame + p_ta->hook_table.DisplayMsg(p_ta, NULL); + } + prev_button_state = cur_button_state; + } + } + + // Prepare BT message + msg[0] = MOTOR_NUMBER; // motor number + p_ta->hook_table.memcpy(&msg[1], &duty, sizeof(duty)); // motor duty + + // Send BT message + stage = (stage != PAUSE_3) ? SEND_REQUEST : stage; + command = CMD_SEND; + command_status = -1; + p_ta->hook_table.BtSend(BT_CHANNEL, sizeof(msg), msg, BtCallback); + } + } + break; + + case SEND_REQUEST: + if (command_status >= 0) + { + if (command_status == BT_SUCCESS) + { + // Wait for the reply to the sent BT message + stage = WAIT_REPLY; + command = CMD_NO_CMD; + command_status = -1; + } + else + { + if (BtDisplayCommandStatus(p_ta, bt_address, BT_CHANNEL, command, command_status)) + { + stage = PAUSE_3; + timer = 0; + } + } + } + break; + + case PAUSE_3: // to let a user to notice the last display output + if (++timer >= 3000) // wait for 3 seconds + { + stage = EXIT; + } + else + { + break; + } + + case EXIT: + if (!p_ta->hook_table.IsDisplayBeingRefreshed(p_ta)) // wait until display is refreshed + { + rc = 0; // stop program + } + break; + + default: + break; + } + return rc; +} diff --git a/Demo_C/Demo/StopGoBtButtonPart/clean.bat b/Demo_C/Demo/StopGoBtButtonPart/clean.bat new file mode 100644 index 0000000..84d1361 --- /dev/null +++ b/Demo_C/Demo/StopGoBtButtonPart/clean.bat @@ -0,0 +1,6 @@ +@echo off +if not "%ROOT_BATCH%"/ == ""/ goto start +if "%ROOT_BATCH%"/ == ""/ ..\..\Bin\_start go %0 + +:start +..\..\Bin\GNU\Tools\make -f ..\..\Common\Makefile clean diff --git a/Demo_C/Demo/StopGoBtButtonPart/load_flash.bat b/Demo_C/Demo/StopGoBtButtonPart/load_flash.bat new file mode 100644 index 0000000..4250cd9 --- /dev/null +++ b/Demo_C/Demo/StopGoBtButtonPart/load_flash.bat @@ -0,0 +1,2 @@ +@echo off +..\..\bin\_load_flash ..\..\bin %1 diff --git a/Demo_C/Demo/StopGoBtButtonPart/load_ramdisk.bat b/Demo_C/Demo/StopGoBtButtonPart/load_ramdisk.bat new file mode 100644 index 0000000..777fedb --- /dev/null +++ b/Demo_C/Demo/StopGoBtButtonPart/load_ramdisk.bat @@ -0,0 +1,2 @@ +@echo off +..\..\bin\_load_ramdisk ..\..\bin %1 diff --git a/Demo_C/Demo/StopGoBtButtonPart/load_ramdisk_bt.bat b/Demo_C/Demo/StopGoBtButtonPart/load_ramdisk_bt.bat new file mode 100644 index 0000000..302e3e3 --- /dev/null +++ b/Demo_C/Demo/StopGoBtButtonPart/load_ramdisk_bt.bat @@ -0,0 +1,2 @@ +@echo off +call load_ramdisk.bat COM14 diff --git a/Demo_C/Demo/StopGoBtButtonPart/make.bat b/Demo_C/Demo/StopGoBtButtonPart/make.bat new file mode 100644 index 0000000..0a12e74 --- /dev/null +++ b/Demo_C/Demo/StopGoBtButtonPart/make.bat @@ -0,0 +1,11 @@ +@echo off +if not "%ROOT_BATCH%"/ == ""/ goto start +if "%ROOT_BATCH%"/ == ""/ ..\..\Bin\_start go %0 + +:start +set BIN_PATH=..\..\Bin +set BIN_GCC_PATH=%BIN_PATH%\GNU\GNU_ARM\bin +set TOOLS_PATH=%BIN_PATH%\GNU\Tools +set PATH=%BIN_GCC_PATH%;%TOOLS_PATH%;%PATH% + +%TOOLS_PATH%\make -f ..\..\Common\Makefile all diff --git a/Demo_C/Demo/StopGoBtButtonPart/param.mk b/Demo_C/Demo/StopGoBtButtonPart/param.mk new file mode 100644 index 0000000..d011a87 --- /dev/null +++ b/Demo_C/Demo/StopGoBtButtonPart/param.mk @@ -0,0 +1,2 @@ +PROJ = StopGoBtButtonPart +OBJS = StopGoBtButtonPart.o diff --git a/Demo_C/Demo/StopGoBtButtonPart/run.bat b/Demo_C/Demo/StopGoBtButtonPart/run.bat new file mode 100644 index 0000000..420722a --- /dev/null +++ b/Demo_C/Demo/StopGoBtButtonPart/run.bat @@ -0,0 +1,2 @@ +@echo off +..\..\bin\_exec_cmd ..\..\bin run %1 diff --git a/Demo_C/Demo/StopGoBtButtonPart/stop.bat b/Demo_C/Demo/StopGoBtButtonPart/stop.bat new file mode 100644 index 0000000..4bddcbf --- /dev/null +++ b/Demo_C/Demo/StopGoBtButtonPart/stop.bat @@ -0,0 +1,2 @@ +@echo off +..\..\bin\_exec_cmd ..\..\bin stop %1 diff --git a/Demo_C/Demo/StopGoBtMotorPart/StopGoBtMotorPart.c b/Demo_C/Demo/StopGoBtMotorPart/StopGoBtMotorPart.c new file mode 100644 index 0000000..bb2b23f --- /dev/null +++ b/Demo_C/Demo/StopGoBtMotorPart/StopGoBtMotorPart.c @@ -0,0 +1,323 @@ +//============================================================================= +// Demo program "Stop and go via Bluetooth (motor and counter part)". +// +// Can be run under control of the ROBO TX Controller +// firmware in download (local) mode. +// Starts and stops motor, connected to outputs M1, by means +// of the button, connected to the input I8 on other +// ROBO TX Controller. Pulses from the motor are calculated +// by the counter C1. The motor is stopped after the counter +// reaches the value of 1000. +// +// Disclaimer - Exclusion of Liability +// +// This software is distributed in the hope that it will be useful, but WITHOUT +// ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or +// FITNESS FOR A PARTICULAR PURPOSE. It can be used and modified by anyone +// free of any license obligations or authoring rights. +//============================================================================= + +#include "ROBO_TX_PRG.h" + +#define MOTOR_NUMBER 1 +#define MOTOR_IDX (MOTOR_NUMBER - 1) + +#define BT_CHANNEL 1 + +// Bluetooth address of other ROBO TX Controller +static UCHAR8 * bt_address = bt_address_table[0]; + +static enum +{ + START_LISTEN, + PAUSE_1, + WAIT_CONNECT, + PAUSE_2, + PAUSE_3, + RECEIVE, + PAUSE_4, + EXIT +} stage; + +static unsigned long timer; +static enum bt_commands_e command; +static CHAR8 command_status; +static CHAR8 receive_command_status; + + +/*----------------------------------------------------------------------------- + * Function Name : BtCallback + * + * This callback function is called to inform the program about result (status) + * of execution of any Bluetooth command except BtStartReceive command. + *-----------------------------------------------------------------------------*/ +static void BtCallback +( + TA * p_ta_array, + BT_CB * p_data +) +{ + command_status = p_data->status; +} + + +/*----------------------------------------------------------------------------- + * Function Name : BtReceiveCallback + * + * This callback function is called to inform the program about result (status) + * of execution of BtStartReceive command. It is also called when a message + * arrives via Bluetooth. + *-----------------------------------------------------------------------------*/ +static void BtReceiveCallback +( + TA * p_ta_array, + BT_RECV_CB * p_data +) +{ + if (p_data->status == BT_MSG_INDICATION) + { + TA * p_ta = &p_ta_array[TA_LOCAL]; + UCHAR8 motor; + UCHAR8 pwm_chan; + INT16 duty; + UCHAR8 msg[3]; + INT16 counter; + + // Format of a received message should be: + // byte 0 : motor number(1...N_MOTOR) + // byte 1-2: motor duty(DUTY_MIN...DUTY_MAX) + motor = p_data->msg[0]; + if (motor >= 1 && motor <= N_MOTOR) + { + pwm_chan = (motor - 1) * 2; + p_ta->hook_table.memcpy(&duty, &p_data->msg[1], sizeof(duty)); + if (duty >= DUTY_MIN && duty <= DUTY_MAX) + { + p_ta->output.duty[pwm_chan] = duty; + p_ta->output.duty[pwm_chan + 1] = 0; + } + + // Prepare reply BT message + msg[0] = motor; // counter number + counter = p_ta->input.counter[motor - 1]; + p_ta->hook_table.memcpy(&msg[1], &counter, sizeof(counter)); // counter value + + // Send BT message + command_status = -1; + p_ta->hook_table.BtSend(BT_CHANNEL, sizeof(msg), msg, BtCallback); + } + } + else + { + receive_command_status = p_data->status; + } +} + + +/*----------------------------------------------------------------------------- + * Function Name : PrgInit + * + * This it the program initialization. + * It is called once. + *-----------------------------------------------------------------------------*/ +void PrgInit +( + TA * p_ta_array, // pointer to the array of transfer areas + int ta_count // number of transfer areas in array (equal to TA_COUNT) +) +{ + TA * p_ta = &p_ta_array[TA_LOCAL]; + + // Configure motor output to be used as a motor output + p_ta->config.motor[MOTOR_IDX] = TRUE; + + // Inform firmware that configuration was changed + p_ta->state.config_id += 1; + + // Reset counter + p_ta->input.cnt_resetted[MOTOR_IDX] = FALSE; + p_ta->output.cnt_reset_cmd_id[MOTOR_IDX]++; + + // Start listen to the controller with bt_address via Bluetooth channel BT_CHANNEL + stage = START_LISTEN; + command = CMD_START_LISTEN; + command_status = -1; + p_ta->hook_table.BtStartListen(BT_CHANNEL, bt_address, BtCallback); +} + + +/*----------------------------------------------------------------------------- + * Function Name : PrgTic + * + * This is the main function of this program. + * It is called every tic (1 ms) realtime. + *-----------------------------------------------------------------------------*/ +int PrgTic +( + TA * p_ta_array, // pointer to the array of transfer areas + int ta_count // number of transfer areas in array (equal to TA_COUNT) +) +{ + int rc = 0x7FFF; // return code: 0x7FFF - program should be further called by the firmware; + // 0 - program should be normally stopped by the firmware; + // any other value is considered by the firmware as an error code + // and the program is stopped. + TA * p_ta = &p_ta_array[TA_LOCAL]; + + switch (stage) + { + case START_LISTEN: + if (p_ta->input.cnt_resetted[MOTOR_IDX]) // wait until counter is resetted + { + if (command_status >= 0) + { + if (BtDisplayCommandStatus(p_ta, bt_address, BT_CHANNEL, command, command_status)) + { + if (command_status != BT_SUCCESS) + { + stage = PAUSE_4; + } + else + { + stage = PAUSE_1; + command_status = -1; + } + timer = 0; + } + } + } + break; + + case PAUSE_1: // to let a user to notice the "Started listening" display output + if (++timer >= 3000) // wait for 3 seconds + { + stage = WAIT_CONNECT; + } + else + { + break; + } + + case WAIT_CONNECT: + if (command_status >= 0) + { + if (BtDisplayCommandStatus(p_ta, bt_address, BT_CHANNEL, command, command_status)) + { + if (command_status == BT_CON_INDICATION) + { + stage = PAUSE_2; + + // Start receive from Bluetooth channel BT_CHANNEL + command = CMD_START_RECEIVE; + receive_command_status = -1; + p_ta->hook_table.BtStartReceive(BT_CHANNEL, BtReceiveCallback); + } + command_status = -1; + timer = 0; + } + } + break; + + case PAUSE_2: // to let a user to notice the "Passive connection establishment + // (incoming connection)" display output + if (++timer >= 3000) // wait for 3 seconds + { + stage = PAUSE_3; + timer = 0; + } + else + { + break; + } + + case PAUSE_3: // to let a user to notice the "Started receiving" display output + if (receive_command_status >= 0) + { + if (BtDisplayCommandStatus(p_ta, bt_address, BT_CHANNEL, command, receive_command_status)) + { + if (receive_command_status == BT_SUCCESS) + { + // Successful result of BtStartReceive() - restart the timer to let a user to + // notice this display output + receive_command_status = -1; + timer = 0; + } + else + { + // Unsuccessful result of BtStartReceive() - make PAUSE_4 (to let a user to + // notice this display output) and exit the program + stage = PAUSE_4; + timer = 0; + } + } + break; + } + else if (++timer >= 3000) // wait for 3 seconds + { + if (!p_ta->hook_table.IsDisplayBeingRefreshed(p_ta)) // wait until display is refreshed + { + // Drop all pop-up messages from display and return to the main frame + p_ta->hook_table.DisplayMsg(p_ta, NULL); + + stage = RECEIVE; + } + } + else + { + break; + } + + case RECEIVE: + if (command_status >= 0) + { + if (command_status != BT_SUCCESS) + { + // Usually if we have come here, then this means the other controller + // has disconnected from us + + // Stop the motor + p_ta->output.duty[MOTOR_IDX * 2] = 0; + + // Reset counter to be prepared for the next time when + // other controller connects to us again + p_ta->input.cnt_resetted[MOTOR_IDX] = FALSE; + p_ta->output.cnt_reset_cmd_id[MOTOR_IDX]++; + + command_status = -1; + + /* + // This block of code should be used if we want that the program stops when other + // ROBO TX Controller disconnects from us + if (BtDisplayCommandStatus(p_ta, bt_address, BT_CHANNEL, command, command_status)) + { + stage = PAUSE_4; + timer = 0; + } + */ + } + command = CMD_NO_CMD; + } + break; + + case PAUSE_4: // to let a user to notice the last display output + if (++timer >= 3000) // wait for 3 seconds + { + stage = EXIT; + } + else + { + break; + } + + case EXIT: + if (!p_ta->hook_table.IsDisplayBeingRefreshed(p_ta)) // wait until display is refreshed + { + rc = 0; // stop program + } + break; + + default: + break; + } + return rc; +} diff --git a/Demo_C/Demo/StopGoBtMotorPart/clean.bat b/Demo_C/Demo/StopGoBtMotorPart/clean.bat new file mode 100644 index 0000000..84d1361 --- /dev/null +++ b/Demo_C/Demo/StopGoBtMotorPart/clean.bat @@ -0,0 +1,6 @@ +@echo off +if not "%ROOT_BATCH%"/ == ""/ goto start +if "%ROOT_BATCH%"/ == ""/ ..\..\Bin\_start go %0 + +:start +..\..\Bin\GNU\Tools\make -f ..\..\Common\Makefile clean diff --git a/Demo_C/Demo/StopGoBtMotorPart/load_flash.bat b/Demo_C/Demo/StopGoBtMotorPart/load_flash.bat new file mode 100644 index 0000000..4250cd9 --- /dev/null +++ b/Demo_C/Demo/StopGoBtMotorPart/load_flash.bat @@ -0,0 +1,2 @@ +@echo off +..\..\bin\_load_flash ..\..\bin %1 diff --git a/Demo_C/Demo/StopGoBtMotorPart/load_ramdisk.bat b/Demo_C/Demo/StopGoBtMotorPart/load_ramdisk.bat new file mode 100644 index 0000000..777fedb --- /dev/null +++ b/Demo_C/Demo/StopGoBtMotorPart/load_ramdisk.bat @@ -0,0 +1,2 @@ +@echo off +..\..\bin\_load_ramdisk ..\..\bin %1 diff --git a/Demo_C/Demo/StopGoBtMotorPart/load_ramdisk_bt.bat b/Demo_C/Demo/StopGoBtMotorPart/load_ramdisk_bt.bat new file mode 100644 index 0000000..056f2c1 --- /dev/null +++ b/Demo_C/Demo/StopGoBtMotorPart/load_ramdisk_bt.bat @@ -0,0 +1,2 @@ +@echo off +call load_ramdisk.bat COM111 diff --git a/Demo_C/Demo/StopGoBtMotorPart/make.bat b/Demo_C/Demo/StopGoBtMotorPart/make.bat new file mode 100644 index 0000000..0a12e74 --- /dev/null +++ b/Demo_C/Demo/StopGoBtMotorPart/make.bat @@ -0,0 +1,11 @@ +@echo off +if not "%ROOT_BATCH%"/ == ""/ goto start +if "%ROOT_BATCH%"/ == ""/ ..\..\Bin\_start go %0 + +:start +set BIN_PATH=..\..\Bin +set BIN_GCC_PATH=%BIN_PATH%\GNU\GNU_ARM\bin +set TOOLS_PATH=%BIN_PATH%\GNU\Tools +set PATH=%BIN_GCC_PATH%;%TOOLS_PATH%;%PATH% + +%TOOLS_PATH%\make -f ..\..\Common\Makefile all diff --git a/Demo_C/Demo/StopGoBtMotorPart/param.mk b/Demo_C/Demo/StopGoBtMotorPart/param.mk new file mode 100644 index 0000000..dfd5ebd --- /dev/null +++ b/Demo_C/Demo/StopGoBtMotorPart/param.mk @@ -0,0 +1,2 @@ +PROJ = StopGoBtMotorPart +OBJS = StopGoBtMotorPart.o diff --git a/Demo_C/Demo/StopGoBtMotorPart/run.bat b/Demo_C/Demo/StopGoBtMotorPart/run.bat new file mode 100644 index 0000000..420722a --- /dev/null +++ b/Demo_C/Demo/StopGoBtMotorPart/run.bat @@ -0,0 +1,2 @@ +@echo off +..\..\bin\_exec_cmd ..\..\bin run %1 diff --git a/Demo_C/Demo/StopGoBtMotorPart/stop.bat b/Demo_C/Demo/StopGoBtMotorPart/stop.bat new file mode 100644 index 0000000..4bddcbf --- /dev/null +++ b/Demo_C/Demo/StopGoBtMotorPart/stop.bat @@ -0,0 +1,2 @@ +@echo off +..\..\bin\_exec_cmd ..\..\bin stop %1 diff --git a/Demo_C/Demo/WarningLight/WarningLight.c b/Demo_C/Demo/WarningLight/WarningLight.c new file mode 100644 index 0000000..85363be --- /dev/null +++ b/Demo_C/Demo/WarningLight/WarningLight.c @@ -0,0 +1,132 @@ +//============================================================================= +// Demo program "Warning light". +// +// Can be run under control of the ROBO TX Controller +// firmware in download (local) mode. +// The lamp, connected to the output O8, blinks depending on +// distance to the ultrasonic sensor, connected to the input I1. +// The shorter the distance, the faster blinks the lamp. +// +// Disclaimer - Exclusion of Liability +// +// This software is distributed in the hope that it will be useful, but WITHOUT +// ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or +// FITNESS FOR A PARTICULAR PURPOSE. It can be used and modified by anyone +// free of any license obligations or authoring rights. +//============================================================================= + +#include "ROBO_TX_PRG.h" + +#define LIGHT_ON DUTY_MAX +#define LIGHT_OFF 0 + +#define LAMP_IDX 7 +#define SENSOR_IDX 0 + +static bool is_light_on; +static INT16 cmp_val; + + +/*----------------------------------------------------------------------------- + * Function Name : SetFlashLight + * + * Switches the lamp on/off depending on the difference between the current + * timer value and the value for compare, considering the flash duration time. + *-----------------------------------------------------------------------------*/ +static INT16 SetFlashLight +( + TA * p_ta, + INT16 cmp_val, + INT16 tm_val, + INT16 tm_diff +) +{ + if (tm_diff == 0) + { + // Switch the lamp off + p_ta->output.duty[LAMP_IDX] = LIGHT_OFF; + + is_light_on = FALSE; + return tm_val; + } + + if ((cmp_val + tm_diff) > tm_val) + { + return cmp_val; + } + + // Set new state + is_light_on = !is_light_on; + + // Switch the lamp on/off + p_ta->output.duty[LAMP_IDX] = (is_light_on) ? LIGHT_ON : LIGHT_OFF; + + return tm_val; +} + + +/*----------------------------------------------------------------------------- + * Function Name : PrgInit + * + * This it the program initialization. + * It is called once. + *-----------------------------------------------------------------------------*/ +void PrgInit +( + TA * p_ta_array, // pointer to the array of transfer areas + int ta_count // number of transfer areas in array (equal to TA_COUNT) +) +{ + TA * p_ta = &p_ta_array[TA_LOCAL]; + + // Configure input I1 to "Ultrasonic sensor" mode + p_ta->config.uni[SENSOR_IDX].mode = MODE_ULTRASONIC; + + // Inform firmware that configuration was changed + p_ta->state.config_id += 1; + + is_light_on = FALSE; + + // Get timer value from timer struct in transfer area + cmp_val = p_ta->timer.Timer10ms; +} + + +/*----------------------------------------------------------------------------- + * Function Name : PrgTic + * + * This is the main function of this program. + * It is called every tic (1 ms) realtime. + *-----------------------------------------------------------------------------*/ +int PrgTic +( + TA * p_ta_array, // pointer to the array of transfer areas + int ta_count // number of transfer areas in array (equal to TA_COUNT) +) +{ + int rc = 0x7FFF; // return code: 0x7FFF - program should be further called by the firmware; + // 0 - program should be normally stopped by the firmware; + // any other value is considered by the firmware as an error code + // and the program is stopped. + TA * p_ta = &p_ta_array[TA_LOCAL]; + INT16 tm_val; + INT16 tm_flash; + INT16 distance; + + // Read I1 input value from transfer area + distance = p_ta->input.uni[SENSOR_IDX]; + + // Get timer value from timer struct in transfer area + tm_val = p_ta->timer.Timer10ms; + + // Set flash time dependent on distance + tm_flash = (distance > 20) ? 0 : // no interval, light is always off + (distance > 15) ? 75 : // interval 750 ms + (distance > 10) ? 50 : // interval 500 ms + (distance > 5) ? 25 : 10; // interval 250 ms or 100 ms + + // Setting flash light + cmp_val = SetFlashLight(p_ta, cmp_val, tm_val, tm_flash); + + return rc; +} diff --git a/Demo_C/Demo/WarningLight/clean.bat b/Demo_C/Demo/WarningLight/clean.bat new file mode 100644 index 0000000..84d1361 --- /dev/null +++ b/Demo_C/Demo/WarningLight/clean.bat @@ -0,0 +1,6 @@ +@echo off +if not "%ROOT_BATCH%"/ == ""/ goto start +if "%ROOT_BATCH%"/ == ""/ ..\..\Bin\_start go %0 + +:start +..\..\Bin\GNU\Tools\make -f ..\..\Common\Makefile clean diff --git a/Demo_C/Demo/WarningLight/load_flash.bat b/Demo_C/Demo/WarningLight/load_flash.bat new file mode 100644 index 0000000..4250cd9 --- /dev/null +++ b/Demo_C/Demo/WarningLight/load_flash.bat @@ -0,0 +1,2 @@ +@echo off +..\..\bin\_load_flash ..\..\bin %1 diff --git a/Demo_C/Demo/WarningLight/load_ramdisk.bat b/Demo_C/Demo/WarningLight/load_ramdisk.bat new file mode 100644 index 0000000..777fedb --- /dev/null +++ b/Demo_C/Demo/WarningLight/load_ramdisk.bat @@ -0,0 +1,2 @@ +@echo off +..\..\bin\_load_ramdisk ..\..\bin %1 diff --git a/Demo_C/Demo/WarningLight/make.bat b/Demo_C/Demo/WarningLight/make.bat new file mode 100644 index 0000000..0a12e74 --- /dev/null +++ b/Demo_C/Demo/WarningLight/make.bat @@ -0,0 +1,11 @@ +@echo off +if not "%ROOT_BATCH%"/ == ""/ goto start +if "%ROOT_BATCH%"/ == ""/ ..\..\Bin\_start go %0 + +:start +set BIN_PATH=..\..\Bin +set BIN_GCC_PATH=%BIN_PATH%\GNU\GNU_ARM\bin +set TOOLS_PATH=%BIN_PATH%\GNU\Tools +set PATH=%BIN_GCC_PATH%;%TOOLS_PATH%;%PATH% + +%TOOLS_PATH%\make -f ..\..\Common\Makefile all diff --git a/Demo_C/Demo/WarningLight/param.mk b/Demo_C/Demo/WarningLight/param.mk new file mode 100644 index 0000000..94baebe --- /dev/null +++ b/Demo_C/Demo/WarningLight/param.mk @@ -0,0 +1,2 @@ +PROJ = WarningLight +OBJS = WarningLight.o diff --git a/Demo_C/Demo/WarningLight/run.bat b/Demo_C/Demo/WarningLight/run.bat new file mode 100644 index 0000000..420722a --- /dev/null +++ b/Demo_C/Demo/WarningLight/run.bat @@ -0,0 +1,2 @@ +@echo off +..\..\bin\_exec_cmd ..\..\bin run %1 diff --git a/Demo_C/Demo/WarningLight/stop.bat b/Demo_C/Demo/WarningLight/stop.bat new file mode 100644 index 0000000..4bddcbf --- /dev/null +++ b/Demo_C/Demo/WarningLight/stop.bat @@ -0,0 +1,2 @@ +@echo off +..\..\bin\_exec_cmd ..\..\bin stop %1 diff --git a/Doc/C_Compiler_RoboTXC-deutsch.pdf b/Doc/C_Compiler_RoboTXC-deutsch.pdf new file mode 100644 index 0000000000000000000000000000000000000000..20627bab638185735428e5e678de24a9da7e965e GIT binary patch literal 438869 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 nOG%LrdC;^{lBjo-HS%lIQfCS>=VQCUL1?NA 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

k102_Dug{ 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

$0D}HNUdk>gl$H)jj$#DQ5g; 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 literal 0 HcmV?d00001 diff --git a/Driver/ROBO_TX_Controller.inf b/Driver/ROBO_TX_Controller.inf new file mode 100644 index 0000000..12dffff --- /dev/null +++ b/Driver/ROBO_TX_Controller.inf @@ -0,0 +1,141 @@ +;------------------------------------------------------------------------------ +; fischertechnik GmbH, Robo TX Controller +; Communication Device Class(CDC) INF File +; Copyright (c) 2009 MSC Vertriebs GmbH +;------------------------------------------------------------------------------ + +[Version] +Signature = "$Windows NT$" +Class = Ports +ClassGuid = {4D36E978-E325-11CE-BFC1-08002BE10318} +Provider = %PROVIDER% +DriverVer = 04/29/2010,1.0.0.4 +CatalogFile = %CATALOGFILENAME%.cat + + + +[DestinationDirs] +DefaultDestDir = 12 + + +[Manufacturer] +%MANUFACTURER% = RoboTxController, ntx86, ntia64, ntamd64 + + +[DriverService] +DisplayName = %SERVICE% +ServiceType = 1 +StartType = 3 +ErrorControl = 1 +ServiceBinary = %12%\%DRIVERFILENAME%.sys + + +;------------------------------------------------------------------------------ +; Windows 2000 Support +;------------------------------------------------------------------------------ +[DriverInstall] +include = mdmcpq.inf +CopyFiles = FakeModemCopyFileSection +AddReg = DriverInstall.AddReg + +[DriverInstall.Services] +AddService = usbser, 0x00000002, DriverService + +[DriverInstall.AddReg] +HKR,,DevLoader,,*ntkern +HKR,,NTMPDriver,,%DRIVERFILENAME%.sys +HKR,,EnumPropPages32,,"MsPorts.dll,SerialPortPropPageProvider" + + + +;------------------------------------------------------------------------------ +; Windows XP/Vista32 Support +;------------------------------------------------------------------------------ +[DriverInstall.ntx86] +include = mdmcpq.inf +CopyFiles = FakeModemCopyFileSection +AddReg = DriverInstall.ntx86.AddReg + +[DriverInstall.ntx86.Services] +AddService = usbser, 0x00000002, DriverService + +[DriverInstall.ntx86.AddReg] +HKR,,DevLoader,,*ntkern +HKR,,NTMPDriver,,%DRIVERFILENAME%.sys +HKR,,EnumPropPages32,,"MsPorts.dll,SerialPortPropPageProvider" + + + +;------------------------------------------------------------------------------ +; Windows Vista64 (Intel Itanium) Support +;------------------------------------------------------------------------------ + +[DriverInstall.ntia64] +include = mdmcpq.inf +CopyFiles = FakeModemCopyFileSection +AddReg = DriverInstall.ntia64.AddReg + +[DriverInstall.ntia64.Services] +AddService = usbser, 0x00000002, DriverService + +[DriverInstall.ntia64.AddReg] +HKR,,DevLoader,,*ntkern +HKR,,NTMPDriver,,%DRIVERFILENAME%.sys +HKR,,EnumPropPages32,,"MsPorts.dll,SerialPortPropPageProvider" + + + +;------------------------------------------------------------------------------ +; Windows Vista64 (Amd 64) Support +;------------------------------------------------------------------------------ +[DriverInstall.ntamd64] +include = mdmcpq.inf +CopyFiles = FakeModemCopyFileSection +AddReg = DriverInstall.ntamd64.AddReg + +[DriverInstall.ntamd64.Services] +AddService = usbser, 0x00000002, DriverService + +[DriverInstall.ntamd64.AddReg] +HKR,,DevLoader,,*ntkern +HKR,,NTMPDriver,,%DRIVERFILENAME%.sys +HKR,,EnumPropPages32,,"MsPorts.dll,SerialPortPropPageProvider" + + + +;------------------------------------------------------------------------------ +; VID/PID Settings +;------------------------------------------------------------------------------ +[SourceDisksFiles] +[SourceDisksNames] + +[RoboTxController] +%DESCRIPTION% = DriverInstall, USB\VID_146A&PID_1000 +%DESCRIPTION% = DriverInstall, USB\VID_221D&PID_1000 + +[RoboTxController.ntx86] +%DESCRIPTION% = DriverInstall, USB\VID_146A&PID_1000 +%DESCRIPTION% = DriverInstall, USB\VID_221D&PID_1000 + +[RoboTxController.ntia64] +%DESCRIPTION% = DriverInstall, USB\VID_146A&PID_1000 +%DESCRIPTION% = DriverInstall, USB\VID_221D&PID_1000 + +[RoboTxController.ntamd64] +%DESCRIPTION% = DriverInstall, USB\VID_146A&PID_1000 +%DESCRIPTION% = DriverInstall, USB\VID_221D&PID_1000 + + + + +;------------------------------------------------------------------------------ +; String Definitions +;------------------------------------------------------------------------------ +[Strings] + +CATALOGFILENAME = "ROBO_TX_Controller" +DRIVERFILENAME = "usbser" +PROVIDER = "MSC Vertriebs GmbH" +MANUFACTURER = "fischertechnik GmbH" +DESCRIPTION = "fischertechnik USB ROBO TX Controller" +SERVICE = "Virtual Com Driver" diff --git a/Driver/Readme.txt b/Driver/Readme.txt new file mode 100644 index 0000000..2a42e9e --- /dev/null +++ b/Driver/Readme.txt @@ -0,0 +1,8 @@ +To install the USB driver for a ROBO TX Controller do the following: +1. Connect ROBO TX Controller to a PC by means of the USB cable. +2. Power on ROBO TX Controller. +3. If it is the first time when ROBO TX Controller is powered on being connected to this USB port of a PC, then + Windows will ask for the driver for a new USB device. Automatic installation should be refused. Windows should + be informed instead to use the file "ROBO_TX_Controller.inf" from this directory. This file contains information + for Windows about how to install the driver. After finishing installation of the driver, a new COM port with the + name "fischertechnik USB ROBO TX Controller" should appear in the Windows Device Manager.

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 z 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%0AMrYQyIt4EVtf_HgJ6BWOwrel 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%0A^xY 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