History of Probe for EPMA
The origins of Probe for EPMA lie in the distant past of computer history when 64K was a large amount of memory and a hard disk was a luxury (8 inch floppies were the norm at the time). In 1979, Mark Rivers (now at Argonne National Laboratory running the synchrotron microprobe beam line) bought a PDP-11 clone computer kit, a DEC RT-11 operating system and a FORTRAN IV DEC compiler and connected it to the UC Berkeley ARL SEMQ microprobe that had been using an IBM card puncher to record intensity data. Prior to the PDP-11 computer interfacing by Mark, these punch cards had to be carried by hand over to the central computer center and submitted (along with the program punch cards) as an overnight job for processing using Bence-Albee matrix corrections. One had to wait 12 hours or so to find out if one had analyzed epoxy.
After Mark's pioneering programming efforts (called PRMAIN), UCB had one of the first microcomputers ever interfaced to an electron microprobe. But more importantly from the programmers point of view was that Mark implemented many novel methods for acquisition and analysis that were far ahead of his time, including direct access binary file I/O, automatic standard drift corrections, automatic beam drift corrections, linear Bence-Albee corrections (using two coefficients that provided a significant improvement over the single coefficient factors used by other laboratories at that time) and a hierarchical sample and data structure that allowed for easy access to large data sets each with its own dynamically calculated average and standard deviation.
A later version called PRSUPR was modified by John Donovan and provided for automation of the stage and spectrometers (previously the spectrometers were turned using hand cranks). This was all integrated in a single vertical application that overcame the 64K RAM limit of the PDP-11 by using the dreaded “disk overlay” feature which was essentially a primitive virtual memory function. This was not for the faint hearted because on RT-11 the disk overlays were not interrupt driven and so one could destroy one's return path (code-wise) by calling the wrong function at the wrong time. Up to 8 levels of disk overlay were utilized in this early version of Probe.
This PDP-11 FORTRAN code was eventually ported by John Donovan in 1986 to an IBM PC using Microsoft FORTRAN which also included a translation and modification of John Armstrong's CITZAF (ZAF and Phi-Rho-Z) code into FORTRAN and called Probe or Probe for DOS. After the 64K RAM limits of the PDP-11, even 640K seemed like an enormous amount of memory space.
Subsequently the program was converted to Visual Basic 3 by John Donovan in his spare time (weekends and a lot of burned midnight oil) as a 16 bit Windows application and finally into a 32 bit Windows application using Visual Basic 5 and called Probe for Windows. Subsequently it was modified to include larger element arrays (up to element 100), EDS and integrated imaging support and called Probe for Windows Enterprise Edition. The latest iteration, now called Probe for EPMA Xtreme Edition, is available from Probe Software for modern TCP/IP based EPMA instruments. The software incorporates a simply enormous feature set as this manual demonstrates.