Advertisement
Guest User

Untitled

a guest
Dec 27th, 2016
121
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C 10.96 KB | None | 0 0
  1. william@beaglebone:~/dev$ diff msp430-print.cpp cc3200-print.cpp > output.txt
  2.  
  3. 1c1
  4. <
  5. ---
  6. > /*
  7. 4,5c4,5
  8. <  
  9. <  This library is free software; you can redistribute it andor
  10. ---
  11. >
  12. >  This library is free software; you can redistribute it and/or
  13. 9c9
  14. <  
  15. ---
  16. >
  17. 14c14
  18. <  
  19. ---
  20. >
  21. 18c18
  22. <  
  23. ---
  24. >
  25. 21,27c21
  26. <  
  27. <
  28. < #include stdlib.h
  29. < #include stdio.h
  30. < #include string.h
  31. < #include math.h
  32. < #include Energia.h
  33. ---
  34. >  */
  35. 29c23,28
  36. < #include Print.h
  37. ---
  38. > #include <stdlib.h>
  39. > #include <stdio.h>
  40. > #include <string.h>
  41. > #include <math.h>
  42. > #include "Energia.h"
  43. > #include "Print.h"
  44. 31c30
  45. <  Public Methods
  46. ---
  47. > // Public Methods //////////////////////////////////////////////////////////////
  48. 33,34c32,33
  49. <  default implementation may be overridden
  50. < size_t Printwrite(const uint8_t buffer, size_t size)
  51. ---
  52. > /* default implementation: may be overridden */
  53. > size_t Print::write(const uint8_t *buffer, size_t size)
  54. 38c37
  55. <     n += write(buffer++);
  56. ---
  57. >     n += write(*buffer++);
  58. 43c42,43
  59. < size_t Printprint(const String &s)
  60. ---
  61. >
  62. > size_t Print::print(const String &s)
  63. 45,49c45,49
  64. <   size_t n = 0;
  65. <   for (uint16_t i = 0; i  s.length(); i++) {
  66. <     n += write(s[i]);
  67. <   }
  68. <   return n;
  69. ---
  70. >     size_t n = 0;
  71. >     for (uint16_t i = 0; i < s.length(); i++) {
  72. >         n += write(s[i]);
  73. >     }
  74. >     return n;
  75. 52c52
  76. < size_t Printprint(const char str[])
  77. ---
  78. > size_t Print::print(const char str[])
  79. 54c54
  80. <   return write(str);
  81. ---
  82. >     return write(str);
  83. 57c57
  84. < size_t Printprint(char c)
  85. ---
  86. > size_t Print::print(char c)
  87. 59c59
  88. <   return write(c);
  89. ---
  90. >     return write(c);
  91. 62c62
  92. < size_t Printprint(unsigned char b, int base)
  93. ---
  94. > size_t Print::print(unsigned char b, int base)
  95. 64c64
  96. <   return print((unsigned long) b, base);
  97. ---
  98. >     return print((unsigned long) b, base);
  99. 67c67
  100. < size_t Printprint(int n, int base)
  101. ---
  102. > size_t Print::print(int n, int base)
  103. 69c69
  104. <   return print((long) n, base);
  105. ---
  106. >     return print((long) n, base);
  107. 72c72
  108. < size_t Printprint(unsigned int n, int base)
  109. ---
  110. > size_t Print::print(unsigned int n, int base)
  111. 74c74
  112. <   return print((unsigned long) n, base);
  113. ---
  114. >     return print((unsigned long) n, base);
  115. 77c77
  116. < size_t Printprint(long n, int base)
  117. ---
  118. > size_t Print::print(long n, int base)
  119. 79,85c79,89
  120. <   if (base == 0) {
  121. <     return write(n);
  122. <   } else if (base == 10) {
  123. <     if (n  0) {
  124. <       int t = print('-');
  125. <       n = -n;
  126. <       return printNumber(n, 10) + t;
  127. ---
  128. >     if (base == 0) {
  129. >         return write(n);
  130. >     } else if (base == 10) {
  131. >         if (n < 0) {
  132. >             int t = print('-');
  133. >             n = -n;
  134. >             return printNumber(n, 10) + t;
  135. >         }
  136. >         return printNumber(n, 10);
  137. >     } else {
  138. >         return printNumber(n, base);
  139. 87,90d90
  140. <     return printNumber(n, 10);
  141. <   } else {
  142. <     return printNumber(n, base);
  143. <   }
  144. 93c93
  145. < size_t Printprint(unsigned long n, int base)
  146. ---
  147. > size_t Print::print(unsigned long n, int base)
  148. 95,96c95,96
  149. <   if (base == 0) return write(n);
  150. <   else return printNumber(n, base);
  151. ---
  152. >     if (base == 0) return write(n);
  153. >     else return printNumber(n, base);
  154. 99c99
  155. < size_t Printprint(double n, int digits)
  156. ---
  157. > size_t Print::print(double n, int digits)
  158. 101c101
  159. <   return printFloat(n, digits);
  160. ---
  161. >     return printFloat(n, digits);
  162. 104c104
  163. < size_t Printprintln(const __FlashStringHelper ifsh)
  164. ---
  165. > size_t Print::print(float n, int digits)
  166. 106,108c106
  167. <   size_t n = print(ifsh);
  168. <   n += println();
  169. <   return n;
  170. ---
  171. >     return printFloat(n, digits);
  172. 111c109,116
  173. < size_t Printprint(const Printable& x)
  174. ---
  175. > //size_t Print::println(const __FlashStringHelper *ifsh)
  176. > //{
  177. > //  size_t n = print(ifsh);
  178. > //  n += println();
  179. > //  return n;
  180. > //}
  181. >
  182. > size_t Print::print(const Printable& x)
  183. 113c118
  184. <   return x.printTo(this);
  185. ---
  186. >     return x.printTo(*this);
  187. 116c121
  188. < size_t Printprintln(void)
  189. ---
  190. > size_t Print::println(void)
  191. 118,120c123,125
  192. <   size_t n = print('r');
  193. <   n += print('n');
  194. <   return n;
  195. ---
  196. >     size_t n = print('\r');
  197. >     n += print('\n');
  198. >     return n;
  199. 123c128
  200. < size_t Printprintln(const String &s)
  201. ---
  202. > size_t Print::println(const String &s)
  203. 125,127c130,132
  204. <   size_t n = print(s);
  205. <   n += println();
  206. <   return n;
  207. ---
  208. >     size_t n = print(s);
  209. >     n += println();
  210. >     return n;
  211. 130c135
  212. < size_t Printprintln(const char c[])
  213. ---
  214. > size_t Print::println(const char c[])
  215. 132,134c137,139
  216. <   size_t n = print(c);
  217. <   n += println();
  218. <   return n;
  219. ---
  220. >     size_t n = print(c);
  221. >     n += println();
  222. >     return n;
  223. 137c142
  224. < size_t Printprintln(char c)
  225. ---
  226. > size_t Print::println(char c)
  227. 139,141c144,146
  228. <   size_t n = print(c);
  229. <   n += println();
  230. <   return n;
  231. ---
  232. >     size_t n = print(c);
  233. >     n += println();
  234. >     return n;
  235. 144c149
  236. < size_t Printprintln(unsigned char b, int base)
  237. ---
  238. > size_t Print::println(unsigned char b, int base)
  239. 146,148c151,153
  240. <   size_t n = print(b, base);
  241. <   n += println();
  242. <   return n;
  243. ---
  244. >     size_t n = print(b, base);
  245. >     n += println();
  246. >     return n;
  247. 151c156
  248. < size_t Printprintln(int num, int base)
  249. ---
  250. > size_t Print::println(int num, int base)
  251. 153,155c158,160
  252. <   size_t n = print(num, base);
  253. <   n += println();
  254. <   return n;
  255. ---
  256. >     size_t n = print(num, base);
  257. >     n += println();
  258. >     return n;
  259. 158c163
  260. < size_t Printprintln(unsigned int num, int base)
  261. ---
  262. > size_t Print::println(unsigned int num, int base)
  263. 160,162c165,167
  264. <   size_t n = print(num, base);
  265. <   n += println();
  266. <   return n;
  267. ---
  268. >     size_t n = print(num, base);
  269. >     n += println();
  270. >     return n;
  271. 165c170
  272. < size_t Printprintln(long num, int base)
  273. ---
  274. > size_t Print::println(long num, int base)
  275. 167,169c172,174
  276. <   size_t n = print(num, base);
  277. <   n += println();
  278. <   return n;
  279. ---
  280. >     size_t n = print(num, base);
  281. >     n += println();
  282. >     return n;
  283. 172c177
  284. < size_t Printprintln(unsigned long num, int base)
  285. ---
  286. > size_t Print::println(unsigned long num, int base)
  287. 174,176c179,181
  288. <   size_t n = print(num, base);
  289. <   n += println();
  290. <   return n;
  291. ---
  292. >     size_t n = print(num, base);
  293. >     n += println();
  294. >     return n;
  295. 179c184
  296. < size_t Printprintln(double num, int digits)
  297. ---
  298. > size_t Print::println(double num, int digits)
  299. 181,183c186,188
  300. <   size_t n = print(num, digits);
  301. <   n += println();
  302. <   return n;
  303. ---
  304. >     size_t n = print(num, digits);
  305. >     n += println();
  306. >     return n;
  307. 186c191
  308. < size_t Printprintln(const Printable& x)
  309. ---
  310. > size_t Print::println(float num, int digits)
  311. 188,190c193,202
  312. <   size_t n = print(x);
  313. <   n += println();
  314. <   return n;
  315. ---
  316. >     size_t n = print(num, digits);
  317. >     n += println();
  318. >     return n;
  319. > }
  320. >
  321. > size_t Print::println(const Printable& x)
  322. > {
  323. >     size_t n = print(x);
  324. >     n += println();
  325. >     return n;
  326. 193c205
  327. <  Private Methods
  328. ---
  329. > // Private Methods /////////////////////////////////////////////////////////////
  330. 195,197c207,209
  331. < size_t PrintprintNumber(unsigned long n, uint8_t base) {
  332. <   char buf[8  sizeof(long) + 1];  Assumes 8-bit chars plus zero byte.
  333. <   char str = &buf[sizeof(buf) - 1];
  334. ---
  335. > size_t Print::printNumber(unsigned long n, uint8_t base) {
  336. >     char buf[8 * sizeof(long) + 1]; // Assumes 8-bit chars plus zero byte.
  337. >     char *str = &buf[sizeof(buf) - 1];
  338. 199c211
  339. <   str = '0';
  340. ---
  341. >     *str = '\0';
  342. 201,202c213,214
  343. <    prevent crash if called with base == 1
  344. <   if (base  2) base = 10;
  345. ---
  346. >     // prevent crash if called with base == 1
  347. >     if (base < 2) base = 10;
  348. 204,209c216,221
  349. <   do {
  350. <     unsigned long m = n;
  351. <     n = base;
  352. <     char c = m - base  n;
  353. <     --str = c  10  c + '0'  c + 'A' - 10;
  354. <   } while(n);
  355. ---
  356. >     do {
  357. >         unsigned long m = n;
  358. >         n /= base;
  359. >         char c = m - base * n;
  360. >         *--str = c < 10 ? c + '0' : c + 'A' - 10;
  361. >     } while(n);
  362. 211c223
  363. <   return write(str);
  364. ---
  365. >     return write(str);
  366. 214c226
  367. < size_t PrintprintFloat(double number, uint8_t digits)
  368. ---
  369. > size_t Print::printFloat(double number, uint8_t digits)
  370. 216,223c228
  371. <   size_t n = 0;
  372. <  
  373. <    Handle negative numbers
  374. <   if (number  0.0)
  375. <   {
  376. <      n += print('-');
  377. <      number = -number;
  378. <   }
  379. ---
  380. >     size_t n = 0;
  381. 225,240c230,235
  382. <    Round correctly so that print(1.999, 2) prints as 2.00
  383. <   double rounding = 0.5;
  384. <   for (uint8_t i=0; idigits; ++i)
  385. <     rounding = 10.0;
  386. <  
  387. <   number += rounding;
  388. <
  389. <    Extract the integer part of the number and print it
  390. <   unsigned long int_part = (unsigned long)number;
  391. <   double remainder = number - (double)int_part;
  392. <   n += print(int_part);
  393. <
  394. <    Print the decimal point, but only if there are digits beyond
  395. <   if (digits  0) {
  396. <     n += print(.);
  397. <   }
  398. ---
  399. >     // Handle negative numbers
  400. >     if (number < 0.0)
  401. >     {
  402. >         n += print('-');
  403. >         number = -number;
  404. >     }
  405. 242,251c237,303
  406. <    Extract digits from the remainder one at a time
  407. <   while (digits--  0)
  408. <   {
  409. <     remainder = 10.0;
  410. <     int toPrint = int(remainder);
  411. <     n += print(toPrint);
  412. <     remainder -= toPrint;
  413. <   }
  414. <  
  415. <   return n;
  416. ---
  417. >     // Round correctly so that print(1.999, 2) prints as "2.00"
  418. >     double rounding = 0.5;
  419. >     for (uint8_t i=0; i<digits; ++i)
  420. >         rounding /= 10.0;
  421. >
  422. >     number += rounding;
  423. >
  424. >     // Extract the integer part of the number and print it
  425. >     unsigned long int_part = (unsigned long)number;
  426. >     double remainder = number - (double)int_part;
  427. >     n += print(int_part);
  428. >
  429. >     // Print the decimal point, but only if there are digits beyond
  430. >     if (digits > 0) {
  431. >         n += print(".");
  432. >     }
  433. >
  434. >     // Extract digits from the remainder one at a time
  435. >     while (digits-- > 0)
  436. >     {
  437. >         remainder *= 10.0;
  438. >         int toPrint = int(remainder);
  439. >         n += print(toPrint);
  440. >         remainder -= toPrint;
  441. >     }
  442. >
  443. >     return n;
  444. > }
  445. >
  446. > size_t Print::printFloat(float number, uint8_t digits)
  447. > {
  448. >     size_t n = 0;
  449. >
  450. >     // Handle negative numbers
  451. >     if (number < 0.0)
  452. >     {
  453. >         n += print('-');
  454. >         number = -number;
  455. >     }
  456. >
  457. >     // Round correctly so that print(1.999, 2) prints as "2.00"
  458. >     float rounding = 0.5;
  459. >     for (uint8_t i=0; i<digits; ++i)
  460. >         rounding /= 10.0;
  461. >
  462. >     number += rounding;
  463. >
  464. >     // Extract the integer part of the number and print it
  465. >     unsigned long int_part = (unsigned long)number;
  466. >     float remainder = number - (float)int_part;
  467. >     n += print(int_part);
  468. >
  469. >     // Print the decimal point, but only if there are digits beyond
  470. >     if (digits > 0) {
  471. >         n += print(".");
  472. >     }
  473. >
  474. >     // Extract digits from the remainder one at a time
  475. >     while (digits-- > 0)
  476. >     {
  477. >         remainder *= 10.0;
  478. >         int toPrint = int(remainder);
  479. >         n += print(toPrint);
  480. >         remainder -= toPrint;
  481. >     }
  482. >
  483. >     return n;
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement