Favorite Links




OK, I guess, I'll start my hobbies page with the long list of hobbies I am planning on keeping up to date.  OK, so much for that resolution.

Sports -

I figured it was time to update my sports section. I haven't played Hockey in a couple years now. I really want to, but the options open to me are to go play at 10:30 or 11:00 pm on like Thursdays or something like that. Totally bad for my work and other social activities. I'll figure it out eventually. Right now, I'm coaching a kindergarten soccer team. What a blast. The kids are just great and full of lots of energy. Hopefully we can get them to go the whole game without getting really tired.

I like sports, playing them anyway.  I find watching them on TV just doesn't work very well for me. I've always liked skating so I decided I would take up Hockey.  This has the advantage of getting me in some sort of shape and I get to skate on a regular basis.  How could I possibly lose (OK, besides the games).  Anyway, here's a picture of me after the first game. Unfortunately, I haven't played hockey since that first season. I just can't seem to fit it into my schedule. Besides, the games started usually around 9:30 or 10:00pm (or later) during the week. I just couldn't keep it up. I'll keep looking for a solution to that.

My big summer sport is sailing (you may have noticed the many references to the UMSC).  A group from the Sailing Club decided we wanted to try sailing in the winter too, so we obtained an iceboat.  I have some black and white photo's of that outing that I need to scan in at some point.  What a blast.  The fastest recorded time (via GPS) was 50mph.  We're sure we went much faster than that, maybe up to 60 or 70mph.

And I have some pictures of the Sailing  Club that I need to put up too. 

Trains -

I love playing around with toy trains.  I have American Flyer trains that I concentrate on.  It gives me a great deal of satisfaction to repair old ones and that sort of thing.  I have many current projects with my AF collection.  I would like to put up a table in my basement at some point.  Perhaps this summer.  When I get that going I'll get some more pictures up . 

Computers -

I always have a bunch of computer projects going on.  My firewall is due for another upgrade.  I'm planning on restarting wifi setup going again, this time behind a firewalled subnet.  I've got a tablet running.  I got it running XP Tablet Edition, but it's so slow I'm considering abandoning it.  I'm increasingly finding that I'm giving up on MS software as it tends to be far too restrictive.  Unfortunately, there are still far too many hardware vendors that don't write drivers for alternate operating systems.  I'll still go out and buy the odd web camera, but only if it will work in Linux or has a rebate that makes it essentially free after taxes.  

In any case, I'm moving over to use Linux exclusively for the most part.  As soon as I can scrape those last few Windows dependancies off, then it will be Linux all the way.  I may actually have to invest in one of the commercial Wine implimentations though for those few Windows apps that I might want to run (games mostly).  Anyway I have written whole huge rants on this topic before and many others have done a much better job than I.

Having just said that, though, I must say that I live with a foot in both the Windows and Linux worlds.  But one of my passions with anything is getting stuff to work.  Especially if it isn't supposed to .  I guess that's why I've always had a great fondness for the WINE project.  Interoperability has always been important. 

One bone of contention about interoperability are backups.  After all what's the point of doing a back-up of your data if you can't take it with you.  I've used a variety of programs over the years to perform backups on my systems and it has always annoyed me to no end that I cannot read my Windows backup tapes in Linux or even in later versions of Windows.  You can read about my project with antique back-up tapes and trying to read them here.  I've mostly given up on that project though.  It's impossible to get any specs on the files and you first have to convert the files from the streaming tape format to a regular block file before you can really work on them.

That doesn't mean that I don't have any irons in the fire.  I'm something of a gadget freak and I've gotten a few neat USB gadgets including a couple different kinds of USB locks, a FM Tuner Mouse (the mouse is pretty crappy, but the FM Tuner works pretty well) and a stuffed animal with switches in the paws and feet and a two color LED in the tummy. It's also got a speaker and microphone installed that may be controllable by USB (only on or off, it attaches to the sound card through an audio cable).

UPDATE: I've gotten the ePuppy (stuffed animal) to do everything I think it's capable of. I can read from all five of the switches and turn the red and green LED's on and off and flash and the internal speaker on and off. I've done an analysis of the URBs produced by it and it's really a pretty simple device. I've also done an analysis of the FM Radio mouse. The primary reason the mouse response is so crappy is that mouse and the radio share an endpoint (look it up if you're interested). Also, someone has written his work on getting the USB proximity lock running. I used his hacked testlibusb.c program as a jumping off point for getting the ePuppy working. Someone's also written some kernel drivers working with this and has modified xscreensaver to work with it as well.

I have a couple security devices, a fingerprint scanner and a hard disk "virtual key", but those are pretty low on my list at the moment due to the complexity of analyzing the URBs.  I'll be posting some of the perl scripts I found to make output from the Windows USB sniffers easier to read.  The scripts I found were all pretty out of date.  I'm also planning on writing up some of my experiences of reverse engineering a USB device for writing a Linux driver.  Most of the documents I found on the subject are woefully short on detail.

Another reverse engineering project that's more pie-in-the-sky is figuring out how to write an open source driver for the Samsung Printer Language family. I recently bought a Samsung CPL-500 and it uses the SPL-C language. Of course there are no specs on this language at all. There's a driver for Linux from Samsung, but it's quite buggy. It has problems printing bitmaps in large memory files. I'm going to try finding a memory upgrade. I got one from Kahlon, but it doesn't work right and they never responded to my e-mail about it. I need to call them again since it does claim to have a compatability guarantee.
HA: I found something interesting. I did a hexdump of the ppmtosplc filter they provide in the driver package. I saw a reference to JBIG and started digging around on the net for splc and jbig and qpdl (the q page description language?). Splc and jbig turns up a reference for Sharp printers that describes the format as "SPLC (JBIG GDI)" which would match very closely with what Samsung has done in the past (look for spl and gdi). My next step was to look the ISO definition for jbig and see if any of my analysis matches, but it costs money just to look at the document. So, I'll be looking at the jbigkit programming and see what I can find out.

As promised, my miniature howto on printing to a HP-7475A serial pen plotter (and possibly other antique serial plotters) from Linux.