- p = tmpBuf;
- switch (c) {
- case 'd':
- case 'i':
- if( (isLongLong && arg >> 63) || (!isLongLong && arg >> 31) ) {
- Debug_Putchar('-');
- arg = -arg;
- }
- itoa(p, arg, 10, minSize, pad);
- goto printString;
- case 'u':
- itoa(p, arg, 10, minSize, pad);
- goto printString;
- case 'x':
- itoa(p, arg, 16, minSize, pad);
- goto printString;
- case 'o':
- itoa(p, arg, 8, minSize, pad);
- goto printString;
- case 'b':
- itoa(p, arg, 2, minSize, pad);
- goto printString;
-
- case 'B': //Boolean
- if(arg) Debug_Puts("True");
- else Debug_Puts("False");
- break;
-
- case 's':
- p = (char*)(Uint)arg;
- if(!p) p = "(null)";
- len = strlen(p);
- while(len++ < minSize) Debug_Putchar(pad);
- printString:
- if(!p) p = "(null)";
- while(*p) Debug_Putchar(*p++);
- break;
-
- // Single Character / Array
- case 'c':
- if(minSize == 1) {
- Debug_Putchar(arg);
- break;
- }
- p = (char*)(Uint)arg;
- if(!p) goto printString;
- while(minSize--) Debug_Putchar(*p++);
- break;
-
- default:
- Debug_Putchar(arg);
- break;
- }
- }