aboutsummaryrefslogtreecommitdiff
path: root/cores
diff options
context:
space:
mode:
Diffstat (limited to 'cores')
-rwxr-xr-xcores/arduino/Print.cpp7
-rw-r--r--cores/arduino/WString.cpp4
-rw-r--r--cores/arduino/WString.h1
-rw-r--r--cores/arduino/wiring_analog.c2
4 files changed, 7 insertions, 7 deletions
diff --git a/cores/arduino/Print.cpp b/cores/arduino/Print.cpp
index e087313..53961ec 100755
--- a/cores/arduino/Print.cpp
+++ b/cores/arduino/Print.cpp
@@ -53,8 +53,11 @@ size_t Print::print(const __FlashStringHelper *ifsh)
size_t Print::print(const String &s)
{
- write((const uint8_t*)s.c_str(), s.length());
- return s.length();
+ size_t n = 0;
+ for (uint16_t i = 0; i < s.length(); i++) {
+ n += write(s[i]);
+ }
+ return n;
}
size_t Print::print(const char str[])
diff --git a/cores/arduino/WString.cpp b/cores/arduino/WString.cpp
index d05037b..c6839fc 100644
--- a/cores/arduino/WString.cpp
+++ b/cores/arduino/WString.cpp
@@ -642,8 +642,4 @@ long String::toInt(void) const
return 0;
}
-char* String::c_str() const
-{
- return buffer;
-}
diff --git a/cores/arduino/WString.h b/cores/arduino/WString.h
index ec6cead..947325e 100644
--- a/cores/arduino/WString.h
+++ b/cores/arduino/WString.h
@@ -169,7 +169,6 @@ public:
// parsing/conversion
long toInt(void) const;
- char* c_str() const;
protected:
char *buffer; // the actual char array
diff --git a/cores/arduino/wiring_analog.c b/cores/arduino/wiring_analog.c
index 23b01c6..3f19c7f 100644
--- a/cores/arduino/wiring_analog.c
+++ b/cores/arduino/wiring_analog.c
@@ -47,6 +47,8 @@ int analogRead(uint8_t pin)
if (pin >= 18) pin -= 18; // allow for channel or pin numbers
#elif defined(__AVR_ATmega1284P__) || defined(__AVR_ATmega644P__)
if (pin >= 24) pin -= 24; // allow for channel or pin numbers
+#elif defined(analogPinToChannel) && (defined(__AVR_ATtiny25__) || defined(__AVR_ATtiny45__) || defined(__AVR_ATtiny85__))
+ pin = analogPinToChannel(pin);
#else
if (pin >= 14) pin -= 14; // allow for channel or pin numbers
#endif