The java archive for JPSGCS was downloaded from http://balance.med.utah.edu/wiki/index.php/JPSGCS in March of 2011. It was necessary to make the following changes to these java programs in order to interface with R: 1) GeneDrops.java - write output to a single file instead of multiple files. Added option -z to GeneDrops to have output file compressed. Overloaded functions writeTo and writePedigree to accept a GZIPOutputStream object. Modified the following files: GeneDrops.java jpsgcs/alun/genio/GeneticDataSource.java jpsgcs/alun/linkage/LinkageInterface.java jpsgcs/alun/linkage/LinkagePedigreeData.java jpsgcs/alun/linkage/LinkageIndividual.java 2) Removed extra spaces from GeneDrops output file, jpsgcs/alun/linkage/LinkagePedigreeData.java jpsgcs/alun/linkage/LinkageIndividual.java added functions writeToNoSpace(PrintStream p) and shortStringNoSpace() 3) TransposeLinkage.java can take output file name as argument, when given. ped.writeTranspose write to file instead of to screen. 4) FitGMLD.java, GeneDrop.java - take output file name as an additional argument. writes output to a file instead of to screen. 5) Avoid crashing R when calling function CheckFormat. jpsgcs/alun/linkage/LinkageFormatter.java function crash(String s) throws RuntimeException instead of calling System.exit(1). jpsgcs/alun/linkage/LinkageParameterData.java LinkageParameterData(LinkageFormatter b, boolean forceConversion) throws a RuntimeException (because it calls 'LinkageFormatter.crash'). CheckFormat.java - catch RuntimeException, that may be thrown in the line case 2: x = new LinkageDataSet(args[0],args[1],premake) since this function calls LinkageParameterData(LinkageFormatter b) which calls LinkageParameterData(LinkageFormatter b, boolean forceConversion).