The previous version of GCX , CX was written to control the newly designed cpx3m ccd camera. Once the basic camera control functions were running, it was easy to add some LX200 control functions, so that the telescope could be pointed at various objects without having to switch applications.
Having telescope control and image acquisition integrated into one program makes the following step obvious: after entering goto/get commands over several cold nights, one wants to automate the process--especially if he observes a large number of fields every night (as when doing variable star work).
The fact that the author's telescope doesn't point precisely doesn't help automation. So the ability to check/correct the pointing becomes essential. cx first got the ability to read star information from the GSC and overlay it on the images; that eases visual checks (one doesn't need maps anymore) but still is one step short of full automation.
Finally, when reliable field matching was implemented in GCX , it became possible to make the program fully automatic. In the current version, GCX can run through a list of observations completely unattended, and only stops if clouds roll in.
As it happens, field matching and image processing are also essential steps for CCD photometry. Over the time, the photometry functions of GCX have expanded continuously up to the point where they contribute the largest part of the program. It is currently possible to reduce photometric data frames in a completely automatic fashion, and perform color transformations, transformation coefficient fitting and all-sky reduction with relative ease.
GCX uses floating-point images internally, so other FITS formats are easy to add;
The control proces (cpxcntrl) presently supports the cpx3m camera. It can be easily modified to support other cameras.
The next most important contribution is to extend the hardware support of the program. When interface library are available for cameras (many manufacturers do have such libraries), it is relatively straightforward to add support for a camera, as GCX has cleanly defined camera interface. Likewise, many mount/telescope manufacturers use the LX200 protocol, so essentially what is needed for other telescopes/mounts is testing and maybe a little tweaking. The program only uses a few LX200 functions, so interfacing to even a custom mount should be easy.
Third, there's the bane of free software: documentation. Any help in documenting or checking the documentation of the program is greatly appreciated, and will go a long way towards keeping GCX users happy.
And finally, the fun part: the code itself. There are many clever algorithms that can be added to the program, and which will benefit from the general infrastructure and integration provided by GCX .
This manual is work in progress. It starts with a tutorial introduction, so people can get a taste of what GCX is all about. The focus in that chapter is on operations that don't involve particular hardware (image viewing and data reduction).
The next chapters describe the main data-reduction functions of the program. In general, each chapter stars with a general description of the algorithms and methods used, then proceeds to describing how the respective methods are implemented in practice. The chapters are written roughly in the order in which data reduction procedes.
Finally, the appendices contain either technical details of the program or general aspects that invlove slighlty more complex mathematics.
The manual is maintained in LATEX.