CCD data acquisition & Squeak

Kevin Fisher kgf at
Tue Sep 12 18:17:49 UTC 2000

Hi All:

I've been kicking around a larger-scale project in my head for some time
now and I'm beginning to set some ideas to paper.

I'm an amateur astronomer and one of my favourite sports is CCD 
astrophotography.  I use SBIG ( CCD cameras, which is
controlled by their windows-only CCD control's a decent
package that does the acquisition, tracking and some rudimentary 
image processing.

I've also been a long-time user and fan of XEphem, the faithful X11
sky mapper (

Sadly, my two key apps are seperated by OS. :(  (And no, WINE won't 
cut the mustard for intensive parallel port access)

So, what I've been thinking is, "Gee, it sure would be nice to have
the functionality of both rolled into one...even better, doing it all
in Smalltalk!"  I've been thinking of creating a nice Squeak-based app
to control both data acquisition and to give me some nice sky maps.  I'm
only kicking around the idea right now, trying to find out how feasable
it is. :)  

At any rate, there are two questions that I've got, all squeak-related:

1) Is there any way to access the parallel port in Squeak?  I notice that
there is a nice class for Serial access, but I couldn't find one for 
parallel access.  Most SBIG cameras (mine included) are controlled via
parallel port.  For the more elaborate cameras the Serial port is used
as well to control automatic guiding hardware.

2) Lamentably, the SBIG library is closed-source.  However, it is available
for free and you can link whatever you want against it.  What is the best
way to access a native library from Squeak...FFI or by a custom pluggable
primitive?  It is a static library, FWIW.  I understand from the SWiki
that the FFI has it's "risks" associated with it. :)

Actually now that I think about it, the SBIG library functions all access
the parallel port directly...hmm.  Still, I'd be interested in knowing how
to drive the parallel port from Squeak. 

Thanks for any advice...

More information about the Squeak-dev mailing list