1. A standalone executable file named `nms` (shown above). This file accepts data from a shell pipe and displays it in a manner that is nearly identical to the effect we see in the movie.
2. A module and header file, written in C, that can be included in programs and used to recreate this effect in a custonized way. In fact, the standalone executable `nms` is really just an example that shows how to use this module on piped data.
First, declare the structure like so (substitute 'args' with whatever name you desire):
```
NmsArgs args = INIT_NMSARGS;
```
The defined name INIT_NMSARGS represents a default set of values for all 5 members. This way, you can
ignore the members you don't want to use and only program for those that you do. Below is the
definition for the NmsArgs structure:
```
typedef struct {
char *src;
char *return_opts;
int input_cursor_x;
int input_cursor_y;
bool show_cursor;
} NmsArgs;
```
*`char *src` should contain a pointer to the string of character you wish to perform the effect on. This is the only member that you need to set prior to calling `nms_exec()`.
*`char *return_opts` shuold contain a string of characters, of which one is required by the user to press before nms_exec will return execution back to the calling function. Only use this if the user must choose an option from a menu that is presented after the text "decrypts". See the included program 'sneakers' as an example.
*`int input_cursor_x` and `int input_cursor_y` - These should contain the x/y coordinates for the cursor if you wish it to be placed at a specific location on screen after the text "decrypts".
*`bool show_cursor` - Set to `true` if you want the cursor to be visible during the text decryption effect.