As many of you know, Smiley (in collaboration with Jesper) has produced what I've been calling the USB Thingie based on the FTDI FT232R chip. Smiley has written a book on its use, and the book, Thingie, and parts kit are available on his website. Currently the Thingie is $20 IIRC.
The Thingie is fundamentally a USB virtual com port, but to me that's a pretty boring use for it. Unless you need a com port, of course.
What I find more interesting is that it has 12 general purpose I/O bits available in "bit banging" mode. 8 of those are (very) high speed, and 4 are byte by byte. The Thingie also puts out 3.3 and 5 volts, and clock signals of 6, 12, 24, and 48 MHz. It lives on a DIP header and seems an ideal way to make quick self powered breadboard apps with a PC interface. The drivers are free and can be redistributed (as I understand it). Plus, to borrow a phrase, it's "cute as a puppy."
Smiley's book extensively covers using it in C# and VB.net, but since I'm an old, old dog I'm still a VB6 kind of guy. Consequently I've put together a VB6 program and API declarations (mostly plagiarized from FTDI) for playing with the bit banging modes. It's simple but works.
The code is free to use in any way you see fit, but of course with no guarantees. It should be easy to modify and/or extend the ideas shown. Included in the zip file is the complete VB6 project, a short writeup on the program, and some musings in general about what I found out about the FT232R chip. You'll need the D2XX.dll file and the driver from the FTDI website.