Main config scripts create ".com" and ".cmds" MAIN macros invoked at startup of a MAIN session and during the sesssion, when configurable menu items are being clicked.
All Perl scripts start with "create_". The only exception in terminology is the "use_mtz.pl" script, which manipulates diffraction information of an "mtz" file.
Each modification of parameters (unless the help is used) saves the changes into the local "main_config.data" file, however the "--doit" keyword is mandatory for creation of MAIN macros.
All scripts should be self explanatory - meaning when invoked without parameters they will print out the list of all possible keywords, their paarmeters and their current status.
They will run when the MAIN_CONF: directory is in your path.
Master create perl script: create_main_config.pl
How to use the "create_main_config.pl" is best described in the elemntary cases of the MAIN_DOC:users_guide.HTML.
create_main_config.pl -h|-help|--help) prints this message with available options and current status -m|--molec) defines the the list of molecular segments 1 : MOLA -f|--file) as --molec option, however, the list is taken from a file [/stef/dus/main/config/segm_names] and must be preceeded by the number of SEGIDs -g|--group ) defines NCS groups: specify the number of groups followed by each group of segments embraced in "" 1 EACH | MOLA -s|--strategy) defines averaging scripts strategy - specify parameters for each group separately [1 EACH] EACH: average each molecule separately (default) ONE: average one and distribute the averaged density to others LINK: do not generate independent operators, but take them from another group -u|--usemtz) extract information from mtz file [pnifs.mtz] -r|--rfree) turns ON or OFF use of R-free flag [OFF] -a|--auto) turns ON or OFF generation of auto start file ".main" [ON] --doit) create all reasonable macros using current defintions
Tk based front end
All create scripts but the master script ("create_main_config.pl") can also be run through a Tk GUI.
tk_config.pl -h|-help|--help) prints this message with available options and current status -m|--macro) file name of the created macro 
You only need to provide a macro name:
tk_config.pl -m create_refine.pl
Create perl scripts: create_auto_start.pl
Creates ".main" file to automatically invoke "read.com" and bring you in the dialog mode (mouse and dials driven interface).
Create perl scripts: create_create_all_others.pl
Create perl scripts: create_dm_loop.pl
Create perl scripts: create_dm_next.pl
Create perl scripts: create_dm_prep.pl
Create perl scripts: create_gen_solv.pl
Create perl scripts: create_load_nmol.pl
Create perl scripts: create_make_masks.pl
Create perl scripts: create_multi_deriv_maps.pl
Create perl scripts: create_phase_comb.pl
Create perl scripts: create_re_fft.pl
Create perl scripts: create_re_image.pl
Create perl scripts: create_read.pl
Create perl scripts: create_refine.pl
For use of it see MAIN_DOC:refine/refine.html.
Create perl scripts: create_refine_b.pl
For use of it see MAIN_DOC:refine/refine.html.
Create perl scripts: create_restore_file.pl
Create perl scripts: create_rms_fit.pl
Create perl scripts: create_roh_jobs.pl
Create perl scripts: create_rotate_maps.pl
Create perl scripts: create_save_file.pl
Create perl scripts: create_score_map.pl
Create perl scripts: create_symmetry.pl
Create perl scripts: create_symmetry_ca.pl
Create perl scripts: create_work_model.pl
Auxiliary perl scripts: use_mtz.pl
The "use_mtz.pl" enables you to extract information from an "mtz" diffraction data file and create files necessary for MAIN operation: "cell.dat", space group macro, one from "mtz_phase_2_main.com" or "mtz_2_main.com" depending on whether phase information is present in the file or not, Hendrickson-Latman coefficient labels and maximum resolution. the resulting files are used as input for "read.com" and phase combination, parameters such as "mzt" labels, resolution etc. enter the local "main_config.data" file.
The extracted resolution range is maximum and should in almost any case be adjusted with the "menu_read.sh" or "create_read.pl" tools.
corresponding to FOBS, SIGMA_FOBS, PHASE, WEIGHT (figure of merrit), maximal range of resolution, TEST flag (FREE)
> use_mtz.pl -h|--help) prints this message with available options and current status if MTZ labels were not defined before the first found F, Q, P and W records are taken as FOBS, SIGMA, PHASE and WEIGHT A are matched for HLA, HLB, HLC and HLD keywords -m|--mtz) mtz input file [pnifs.mtz] -f|--fobs) FOBS label in mtz file  -s|--sigma) SIGMA of FOBS label in mtz file  -p|--phase) PHASE label in mtz file  -w|--weight) WEIGHT of PHASE label in mtz file  -a|--hla) HLA Hendrickson-Latman coeff label in mtz file  -b|--hlb) HLB Hendrickson-Latman coeff label in mtz file  -c|--hlc) HLC Hendrickson-Latman coeff label in mtz file  -d|--hld) HLD Hendrickson-Latman coeff label in mtz file  --doit) save extracted data in "main_config.data" write cell constants and symmetry operators file create MTZ 2 MAIN macro and run it if "mtz2various" is found
Providing appropriate "mtz" file is essentially equivalent to "mtzdmp" utility. You can check the deafult parameters and also modify them. Since the labels of unused columns are printed at the end, you can use this information to enable MAIN scripts to deal with the desired parameters.
> use_mtz.pl -m pnifs.mtz reading mtz file "pnifs.mtz" CELL 114.0996 114.0996 156.9127 90.0000 90.0000 120.0000 CELL_DATA: 114.0996 114.0996 156.9127 90.0000 90.0000 120.0000 INIT_MAP: FOBS MTZ_FOBS: pnifs.mtz MTZ_HLA: HLA MTZ_HLB: HLB MTZ_HLC: HLC MTZ_HLD: HLD MTZ_PHASE: PHIB MTZ_SIGMA: SIGF2 MTZ_WEIGHT: FOM RESOLUTION: 35.81 2.40 SPACE_GROUP: p31_2_1
UNUSED MTZ FILE COLUMNS: D: DANO1 D: DANO2 D: DANO3 D: DRHS1 D: DRHS2 F: F1 F: F2 F: F3 W: FOM0 F: FRHS1 F: FRHS2 P: PHI0 Q: SDRHS1 Q: SDRHS2 Q: SFRHS1 Q: SFRHS2 Q: SIGDANO1 Q: SIGDANO2 Q: SIGDANO3 Q: SIGF1 Q: SIGF3
A "doit" command will print the "mtz" header information and create input files and the conversion macro.
> use_mtz.pl --doit
creating "cell.dat" creating "p31_2_1.symm" creating "mtz_phase_2_main.com" executing "mtz_phase_2_main.com" > mtz_phase_2_main.com.log