diff options
author | wiz <wiz> | 2001-02-13 13:55:42 +0000 |
---|---|---|
committer | wiz <wiz> | 2001-02-13 13:55:42 +0000 |
commit | fa1141c5719ff4f55219871db7dc3abf0d871614 (patch) | |
tree | 2cc42a813a4f3298c483c8140bf77772b7ed5aa3 /misc/cuecat/patches | |
parent | a33f6d49ac475724e90c73362bfe668cc4bd09e3 (diff) | |
download | pkgsrc-fa1141c5719ff4f55219871db7dc3abf0d871614.tar.gz |
Initial import of cuecat, a package to support reading and parsing
the output of the CueCat barcode reader under NetBSD.
Diffstat (limited to 'misc/cuecat/patches')
-rw-r--r-- | misc/cuecat/patches/patch-aa | 16 | ||||
-rw-r--r-- | misc/cuecat/patches/patch-ab | 161 |
2 files changed, 177 insertions, 0 deletions
diff --git a/misc/cuecat/patches/patch-aa b/misc/cuecat/patches/patch-aa new file mode 100644 index 00000000000..b32e53c4baf --- /dev/null +++ b/misc/cuecat/patches/patch-aa @@ -0,0 +1,16 @@ +$NetBSD: patch-aa,v 1.1.1.1 2001/02/13 13:55:42 wiz Exp $ + +--- Makefile.orig Mon Sep 18 19:26:03 2000 ++++ Makefile +@@ -1,8 +1,9 @@ + RM=/bin/rm +-CC=gcc ++#CC=gcc + AR=ar +-CFLAGS=-Wall -Wstrict-prototypes -O2 ++CFLAGS+=-Wall -Wstrict-prototypes + ++all: read_cuecat + + + read_cuecat: read_cuecat.o \ diff --git a/misc/cuecat/patches/patch-ab b/misc/cuecat/patches/patch-ab new file mode 100644 index 00000000000..7fd7bc6c13b --- /dev/null +++ b/misc/cuecat/patches/patch-ab @@ -0,0 +1,161 @@ +$NetBSD: patch-ab,v 1.1.1.1 2001/02/13 13:55:42 wiz Exp $ + +--- read_cuecat.c.orig Wed Sep 20 22:13:46 2000 ++++ read_cuecat.c +@@ -4,8 +4,8 @@ + #include <unistd.h> + #include <fcntl.h> + #include <errno.h> +-#include <linux/kd.h> +-#include <linux/serial.h> ++#include <sys/time.h> ++#include <dev/wscons/wsconsio.h> + #include <sys/ioctl.h> + #include "cuecat_lib.h" + #include "cuecat_at2xt.h" +@@ -24,8 +24,6 @@ + int previous_kbd_mode; + struct termios old_term_settings; + struct termios new_term_settings; +-struct serial_struct old_serinfo; +-struct serial_struct new_serinfo; + char serial_dev_filename[FILENAME_MAX]=DEFAULT_SERIAL_DEV_FILE; + char serial; + char help; +@@ -55,6 +53,7 @@ + char barcode_type[CUECAT_BARCODE_TYPE_LEN+1]; + char barcode[256]; + int user_abort=0; ++ int ioctl_arg; + + /* Parse the command line parameters */ + if((invalid_parameter=parse_cmdline(argc,argv))) +@@ -83,7 +82,7 @@ + } + + /* Get a console or serial port descriptor */ +- fd=getfd(); ++ fd=0; + + /* Did the user want to use a serial pod ? */ + if(!serial) +@@ -92,9 +91,9 @@ + printf("Press ESC to end the program ...\n\n"); + + /* Get the current state of the keyboard */ +- if (ioctl(fd, KDGKBMODE, &previous_kbd_mode)) ++ if (ioctl(fd, WSKBDIO_GETMODE, &previous_kbd_mode)) + { +- perror("KDGKBMODE"); ++ perror("WSKBDIO_GETMODE"); + close(fd); + exit(1); + } +@@ -103,11 +102,9 @@ + printf("The keyboard was in "); + switch(previous_kbd_mode) + { +- case K_RAW: printf("raw") ;break; +- case K_XLATE: printf("xlate") ;break; +- case K_MEDIUMRAW: printf("mediumraw");break; +- case K_UNICODE: printf("unicode") ;break; +- default: printf("unknown") ;break; ++ case WSKBD_TRANSLATED: printf("translated"); break; ++ case WSKBD_RAW: printf("raw"); break; ++ default: printf("unknown(%d)",previous_kbd_mode); break; + } + printf(" state.\n\n"); + +@@ -139,9 +136,10 @@ + close(fd); + exit(1); + } +- if (ioctl(fd,KDSKBMODE,K_RAW)) ++ ioctl_arg = WSKBD_RAW; ++ if (ioctl(fd,WSKBDIO_SETMODE,&ioctl_arg)) + { +- perror("KDSKBMODE"); ++ perror("WSKBDIO_SETMODE"); + close(fd); + exit(1); + } +@@ -151,13 +149,6 @@ + /* Give a quick word of advise */ + printf("Press CTRL-C to end the program ...\n\n"); + +- /* Get the current state of the serial port */ +- if(ioctl(fd,TIOCGSERIAL,&old_serinfo)) +- { +- perror("TIOCGSERIAL"); +- close(fd); +- exit(1); +- } + if(tcgetattr(fd,&old_term_settings)==-1) + { + perror("tcgetattr"); +@@ -165,28 +156,12 @@ + exit(1); + } + +- new_serinfo=old_serinfo; + new_term_settings=old_term_settings; + + /* Setup the signal handler to trap any signal that might kill us before + we can restore the serial port as it was before */ + setup_signal_handlers(); + +- /* set SPD_CUST and divisor */ +- new_serinfo.flags&=~ASYNC_SPD_MASK; +- new_serinfo.flags|=ASYNC_SPD_CUST; +- +- /* we measured the cuecat's baudrate to be about 8000 the closest we can +- get to this with a basebaud of 115200 is to use a divisor of 14 */ +- new_serinfo.custom_divisor=14; +- +- if (ioctl(fd,TIOCSSERIAL,&new_serinfo)) +- { +- perror("TIOCSSERIAL"); +- close(fd); +- exit(1); +- } +- + cfmakeraw(&new_term_settings); + cfsetospeed(&new_term_settings, B38400); + +@@ -268,9 +243,9 @@ + /* Restore the keyboard and console as they where when we started */ + void restore_console() + { +- if(ioctl(fd,KDSKBMODE,previous_kbd_mode)) ++ if(ioctl(fd,WSKBDIO_SETMODE,&previous_kbd_mode)) + { +- perror("KDSKBMODE"); ++ perror("WSKBDIO_SETMODE"); + close(fd); + exit(1); + } +@@ -288,12 +263,6 @@ + /* Restore the keyboard and console as they where when we started */ + void restore_serial_port() + { +- if(ioctl(fd,TIOCSSERIAL,&old_serinfo)==-1) +- { +- perror("TIOCSSERIAL"); +- close(fd); +- exit(1); +- } + close(fd); + } + +@@ -361,8 +330,11 @@ + char arg; + + arg=0; ++ return 1; ++#if 0 + return(ioctl(fd,KDGKBTYPE,&arg)==0 + && ((arg==KB_101) || (arg==KB_84))); ++#endif + } + + |