Program output for help is

Code:

$ ./mfactor.exe -h
INFO: testing qfloat routines...
CPU Family = x86_64, OS = Linux, 64-bit Version, compiled with Gnu C [or other compatible], Version 8.2.0.
INFO: CPU supports SSE2 instruction set, but using scalar floating-point build.
INFO: Using inline-macro form of MUL_LOHI64.
INFO: MLUCAS_PATH is set to ""
Setting DAT_BITS = 10, PAD_BITS = 2
INFO: testing IMUL routines...
Mfactor command line options ...
<CR> Default mode: prompts for manual keyboard entry
-h Prints this help file and exits
-m {num} Trial-factor the Mersenne number M(num) = 2^num - 1.
-mm {num} Trial-factor the double-Mersenne number M(M(num)) = 2^(2^num) - 1.
-f {num} Trial-factor the Fermat number F(num) = 2^(2^num) + 1.
-file {string} Name of checkpoint file (needed for restart-from-interrupt)
-bmin {num} Log2(minimum factor to try), in floating double form.
If > 10^9 its whole-number part is taken as the kmin value instead.
-bmax {num} Log2(maximum factor to try), in floating double form.
If > 10^9 its whole-number part is taken as the kmax value instead.
-kmin {num} Lowest factor K value to be tried in each pass ( > 0).
-kmax {num} Highest factor K value to be tried in each pass ( < 2^64).
-passmin {num} Current factoring pass (0-15).
-passmax {num} Maximum pass for the run (0-15).
INFO: using 64-bit-significand form of floating-double rounding constant for scalar-mode DNINT emulation.

In the source code of factor.c, there's somewhat more:

Code:

Mfactor command line options:
REQUIRED:
* One (and ONLY one) of -m|mm|f, followed by a valid numerical exponent;
* One (and ONLY one) of -bmax|kmax, unless it's a restart, i.e. a valid checkpoint file
for the number in question exists. Iff -bmax|kmax specified, an optional lower-bound
argument -bmin|kmin may also be specified, which must not exceed the upper bound.
* If neither -bmax|kmax specified, it is assumed that a valid checkpoint file
for the number in question exists. The data in this file will indicate either
an as-yet-uncompleted factoring run for the number in question (in which case
the run is resumed at the point at which it left off), or a completed run. In
the latter instance, if a -kplus argument was specified on the command line,
the k-bounds of the previous completed run are incremented and a new run with
k-bounds [kmax_previous, kmax_previous + kplus] is begun. If -kplus is specified
but the restart-file data indicate an as-yet-uncompleted run, a warning is issued,
the -kplus argument ignored, and the incomplete run is resumed.
Others are optional and in some cases mutually exclusive:
-h Prints this help menu and exits
-m [int] Trial-factor the Mersenne number M(int) = 2^int - 1, with int < 2^MAX_BITS_P.
-mm [int] Trial-factor the double-Mersenne number M(M(int)) = 2^(2^int) - 1, with M(int) < 2^MAX_BITS_P.
-f [int] Trial-factor the Fermat number F(int) = 2^(2^int) + 1, with int <= %u.\n",MAX_BITS_P.
NOTE:
* Fermat number Trial-factoring not currently supported (future release.)
-bmin [float] Log2(min factor to try), in floating form (>= 0, default = 0).
-bmax [float] Log2(max factor to try), in floating form ( < 64*NWORDS).
NOTES:
* If -bmin/bmax used to set lower/upper bounds for factoring, -kmin/kmax disallowed.
* bmin/bmax form of bounds-setting only allowed for single-word-p case, since
multiword p may cause float approximations to p, 2*p etc to overflow.
-kmin [int] Lowest factor K value to be tried in each pass ( > 0, default = 1).
-kmax [int] Highest factor K value to be tried in each pass ( < 2^64).
NOTE:
* If -kmin/kmax used to set lower/upper bounds for factoring, -bmin/bmax disallowed.
-kplus [int] Added factor K value to be tried in each pass ( < 2^64), for an exponent
for which one or more previous shallower factoring runs have already been done
(specifically, a checkpoint file for a previous run exists.)
NOTES:
* If -bmin/bmax or -kmin/kmax used to set bounds for factoring, -kplus disallowed (and v.v.)
* If -kmin|kmax from a previous run of the number in question found
in a checkpoint file, that old kmax serves as kmin for the new run
and (old kmax) + (kplus) serves as kmax for the new run.
-passmin [int] Maximum factoring pass for the run (0-TF_PASSES-1, default = 0).
-passmax [int] Maximum factoring pass for the run (0-TF_PASSES-1, default = 15).
NOTE:
* If passmin|max from a previous run of the number in question found
in a checkpoint file and those pass bounds conflict with the ones
given via the command line, an error message is printed and the
run aborted. This is done as a precaution against inadvertently
skipping a range of trial-factoring bounds in a multipart series
of partial factoring runs. In this event the user shhould carefully
compare the checkpoint file(s) for the number in question they have
saved from previous runs with their current command line and modify
one or the other so as to remove any pass-range conflicts.
-q [int] A known factor for the number (only used if FAC_DEBUG def'd).