Subject: Cuecat decoder
To: None <port-i386@netbsd.org>
From: John Franklin <franklin@interlan.net>
List: port-i386
Date: 08/23/2000 23:24:54
--aVD9QWMuhilNxW9f
Content-Type: text/plain; charset=iso-8859-1
Content-Disposition: inline
Content-Transfer-Encoding: 8bit

I'm not sure if this is the best place for it, but it makes as much
sense as any.  Attached is the source to decode the key stream coming
from one of the :CueCat lightpens that Radio Shack is giving away[1].

It appears to be an amazingly stupid device that spits back the barcodes
as the bit pattern the bars and spaces make in the barcode.  (Did that
make sense?  It's late here.)

Anyway, in theory it should be able to read a wide range of barcodes.
The program supports the EAN family and UPC family, which is enough
to scan your shelves of books and your kitchen pantry.  It doesn't
convert the EAN-13 on the back of a book to an ISBN, but that's
not too difficult.

Enjoy.

jf
[1] There's a Slashdot article on it.  I don't have the ref handy, sorry.
-- 
John Franklin
Interlan Communications
franklin@interlan.net
ICBM: 35°45'17"N 78°44'11"W

--aVD9QWMuhilNxW9f
Content-Type: application/x-tar-gz
Content-Disposition: attachment; filename="pen.tgz"
Content-Transfer-Encoding: base64

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

--aVD9QWMuhilNxW9f--