#include #include #include extern int errno; #define LONG 10 main() { int fd; int mode; int inC; char tmp[10]; char *sbBuffer; fd = open("/dev/parport0", O_RDWR); if (ioctl(fd, PPCLAIM) < 0) { perror("PPCLAIM"); close (fd); return 1; } mode = IEEE1284_MODE_BYTE; if (ioctl(fd, PPSETMODE, &mode) < 0) { perror("PPSETMODE"); close (fd); return 1; } inC = write (fd, "\x1B\x70\x0", 3); // open cash-drawer printf ("write %s", strerror(errno)); inC = write (fd, "\x1D\x72\x02", 3); // Transmit status GSr printf ("write GSr2%s", strerror(errno)); inC = read (fd, sbBuffer, 10); printf ("lei = %d %s", inC, sbBuffer); close (fd); } Limpia (char *sbBuffer) { int i; for (i=0; i <= LONG; i++) sbBuffer[i] = '\0'; }