/*
* RGB2R-C128-Kassenprogramm
- * (c) 2007 phil_fry, sECuRE, sur5r
+ * © 2007-2009 phil_fry, sECuRE, sur5r
* See LICENSE for license information
*
*/
#include "general.h"
/*
- * Liest (maximal 31) Zeichen ein, bis Enter gedr�ckt wird.
+ * Liest (maximal 31) Zeichen ein, bis Enter gedrückt wird.
* Vorsicht: Es wird ein statischer Buffer benutzt, sodass man
* das Ergebnis via strdup() retten muss, bevor man get_input()
* erneut aufruft
while (1) {
if (i == 31)
break;
- c = getchar();
+ c = cgetc();
if (c == 13)
break;
- else output[i++] = c;
+ cputc(c);
+ output[i++] = c;
}
return output;
}
+char retry_or_quit() {
+ char *c;
+ do {
+ cprintf("\r\nr)etry or q)uit?\r\n");
+ c = get_input();
+ } while ((*c != 'r') && (*c != 'q'));
+ return *c;
+}
+
char *format_euro(char *s, int maxlen, int cent){
int tmp = cent;
int len = strlen(",EUR");
if (len >= maxlen)
return NULL;
// workaround to produce a leading zero for cents.. %0.2d won't work
- sprintf(s, "%d,%s%dEUR", cent / 100, (cent<10?"0":""), cent % 100);
+ sprintf(s, "%3d,%s%dEUR", cent / 100, ((cent%100)<10?"0":""), cent % 100);
return s;
}