summaryrefslogtreecommitdiff
path: root/Sprinter/SdFile.cpp
diff options
context:
space:
mode:
authorChangwoo Ryu <cwryu@debian.org>2012-02-27 00:26:37 +0900
committerChangwoo Ryu <cwryu@debian.org>2012-03-05 00:10:16 +0900
commitb4911b203af268005f82dd1dd3eee19fd01cb35d (patch)
treebed514295643083ce0b8e6e359d101e6a1fdf697 /Sprinter/SdFile.cpp
parent0ed514e153a7fe6fa6d9810e7373798ac4088dff (diff)
Correct SD for Arduino 1.0 compatibility
With Arduino 1.0 Print class: - write() should return, and - print() with a uint_8 or int_8 character argument does not call print(char) anymore. So character argument should be casted to 'char' explicitly.
Diffstat (limited to 'Sprinter/SdFile.cpp')
-rw-r--r--Sprinter/SdFile.cpp33
1 files changed, 21 insertions, 12 deletions
diff --git a/Sprinter/SdFile.cpp b/Sprinter/SdFile.cpp
index 0a27159..13f4c6a 100644
--- a/Sprinter/SdFile.cpp
+++ b/Sprinter/SdFile.cpp
@@ -213,7 +213,7 @@ void SdFile::ls(uint8_t flags, uint8_t indent) {
if (!DIR_IS_FILE_OR_SUBDIR(p)) continue;
// print any indent spaces
- for (int8_t i = 0; i < indent; i++) Serial.print(' ');
+ for (int8_t i = 0; i < indent; i++) Serial.print(char(' '));
// print file name with possible blank fill
printDirName(*p, flags & (LS_DATE | LS_SIZE) ? 14 : 0);
@@ -221,12 +221,12 @@ void SdFile::ls(uint8_t flags, uint8_t indent) {
// print modify date/time if requested
if (flags & LS_DATE) {
printFatDate(p->lastWriteDate);
- Serial.print(' ');
+ Serial.print(char(' '));
printFatTime(p->lastWriteTime);
}
// print size if requested
if (!DIR_IS_SUBDIR(p) && (flags & LS_SIZE)) {
- Serial.print(' ');
+ Serial.print(char(' '));
Serial.print(p->fileSize);
}
Serial.println();
@@ -587,18 +587,18 @@ void SdFile::printDirName(const dir_t& dir, uint8_t width) {
for (uint8_t i = 0; i < 11; i++) {
if (dir.name[i] == ' ')continue;
if (i == 8) {
- Serial.print('.');
+ Serial.print(char('.'));
w++;
}
- Serial.print(dir.name[i]);
+ Serial.print(char(dir.name[i]));
w++;
}
if (DIR_IS_SUBDIR(&dir)) {
- Serial.print('/');
+ Serial.print(char('/'));
w++;
}
while (w < width) {
- Serial.print(' ');
+ Serial.print(char(' '));
w++;
}
}
@@ -611,9 +611,9 @@ void SdFile::printDirName(const dir_t& dir, uint8_t width) {
*/
void SdFile::printFatDate(uint16_t fatDate) {
Serial.print(FAT_YEAR(fatDate));
- Serial.print('-');
+ Serial.print(char('-'));
printTwoDigits(FAT_MONTH(fatDate));
- Serial.print('-');
+ Serial.print(char('-'));
printTwoDigits(FAT_DAY(fatDate));
}
//------------------------------------------------------------------------------
@@ -625,9 +625,9 @@ void SdFile::printFatDate(uint16_t fatDate) {
*/
void SdFile::printFatTime(uint16_t fatTime) {
printTwoDigits(FAT_HOUR(fatTime));
- Serial.print(':');
+ Serial.print(char(':'));
printTwoDigits(FAT_MINUTE(fatTime));
- Serial.print(':');
+ Serial.print(char(':'));
printTwoDigits(FAT_SECOND(fatTime));
}
//------------------------------------------------------------------------------
@@ -1219,8 +1219,17 @@ int16_t SdFile::write(const void* buf, uint16_t nbyte) {
*
* Use SdFile::writeError to check for errors.
*/
-void SdFile::write(uint8_t b) {
+#if ARDUINO >= 100
+size_t SdFile::write(uint8_t b)
+#else
+void SdFile::write(uint8_t b)
+#endif
+{
+#if ARDUINO >= 100
+ return (size_t) write(&b, 1);
+#else
write(&b, 1);
+#endif
}
//------------------------------------------------------------------------------
/**