Documentation - FSS Status Code
Author: Kevin Day
Description: FSS Status Code program documentation.
Keywords: Kevin Day, Kevux, FLL, Featureless, Linux, Library, FSS, FSS Status Code, Open-Source

# FSS Status Code Documentation

The fss_status_code program is a tool for interpretting and changing the status codes received from programs into code words or vice-versa.
This is intended to be easily scriptable. The code words are still machine-friendly and scriptable.

This program handles standard FLL status codes as well as FSS status codes.
The max status code supported is represented by the code words `F_fss_status_code_last`.

## Standard Parameters

Short | Long | Description
--- | --- | ---
`-h` | `--help` | Print the help message.
`+C` | `++copyright` | Print the copyright.
`+d` | `++dark` | Output using colors that show up better on dark backgrounds.
`+l` | `++light` | Output using colors that show up better on light backgrounds.
`+n` | `++no_color` | Do not print using color.
`+Q` | `++quiet` | Decrease verbosity, silencing most output.
`+E` | `++error` | Decrease verbosity, using only error output.
`+N` | `++normal` | Set verbosity to normal.
`+V` | `++verbose` | Increase verbosity beyond normal output.
`+D` | `++debug` | Enable debugging, significantly increasing verbosity beyond normal output.
`+v` | `++version` | Print only the version number.

The `+Q/++quiet` parameter silences all output that is not the intent and purpose of the program.
For example, the purpose of the utf8 program is to print the Unicode code point or the UTF-8 byte code.
The `+Q/++quiet` will not suppress this output.
The new line printed at the end of the program, is however, not printed.
The `+Q/++quiet` is ideal for using in scripting to help guarantee more consistent and controlled output.

The `+N/++no_color` simplifies the output to avoid the special color character codes.
The special color character codes tend to take up a lot of extra space and may slow down printing performance.

## Program Parameters

Short | Long | Description
--- | --- | ---
`-f` | `--fine` | Print `F_true` or `F_false` if status code is neither an error nor a warning or print number with neither the error code nor the warning code bits set.
`-w` | `--warning` | Print `F_true` or `F_false` if status code is a warning or print number with warning code bit set.
`-e` | `--error` | Print `F_true` or `F_false` if status code is an error or print number with error code bit set.
`-n` | `--number` | Convert status code name to number.

The FLL programs use a 16-bit unsigned integer to represent the return status of programs and functions.

Programs may print a generic error with one of these codes.
This is a tool for converting to or converting from these codes.

The 16-bit unsigned integer also has the first two high-order bits used to represent flags.
These flags are the error bit and the warning bit.
When neither of these flags are set, then the status is considered fine.

This operates identical to the status_codes program except that this program handles additional codes regarding FSS.
These special codes numericaly appear after the `F_status_code_last` code.
These codes stop at the `F_fss_status_code_last` code.

Each code will be printed on its own line.
Errors regarding each code may be printed on its own line.