27 #include "simplegfx.h"
31 void drawNumber(
screen_t *dev,
float d,
int r) {
47 while ((
int)temp_d / r != 0) {
48 temp_d = (int)temp_d / r;
55 int theNumber = (temp_d % r);
56 if (theNumber > 9) theNumber = theNumber + 7;
57 bffr[stringLen - 1] = theNumber +
'0';
58 temp_d = (int) temp_d / r;
59 }
while (stringLen--);
64 for (
int p = 0; p < r; p++) t *= 10;
67 int d_part = ((int) (d * t + 0.5)) - (i_part * t);
72 while ((
int)temp_d / r != 0) {
73 temp_d = (int)temp_d / r;
81 int theNumber = (temp_d % r);
82 bffr[stringLen - 1] = theNumber +
'0';
83 temp_d = (int) temp_d / r;
84 }
while (stringLen--);
86 temp_d = (int) d_part;
89 while ((
int)temp_d / r != 0) {
90 temp_d = (int)temp_d / r;
94 bffr[stringLen + d_place] = 0;
97 int theNumber = (temp_d % r);
98 bffr[stringLen - 1 + d_place] = theNumber +
'0';
99 temp_d = (int) temp_d / r;
100 }
while (stringLen--);
101 bffr[d_place - 1] =
'.';
105 int l = strlen(bffr);
107 for(
int m = l; m >= 0; m--) bffr[m+1] = bffr[m];
111 if (r >= 0 && isNegative && !(r == 10)) {
112 drawText(dev,
"Err");