- #include <stdio.h>
- #include <stdarg.h>
- #include <string.h>
- void cygPut(char ch)
- {
- __asm
- {
- lis r4, 0x7fea
- slwi r3, r3, 24
- stw r3, 0x1014(r4)
- 1:
- lwz r3, 0x1018(r4)
- rlwinm. r3, r3, 0, 6, 6
- beq 1b
- }
- }
- void cprintf(const char* s, ...)
- {
- va_list argp;
- int i, j;
- char temp[512];
- va_start(argp, s);
- vsnprintf(temp, 512, s, argp);
- va_end(argp);
- j = strlen(temp);
- for(i=0; i<j; i++)
- {
- cygPut(temp[i]);
- }
- }
