FILE COMPARE – INSTRUCTION ON ITS FEATURES:
 
END OF FILE ISSUE -----------------
The original program when it reached and EOF on either file terminated without processing the remaining records. That was carried over into releases 1.5 and 2.0. These lines are still part of the compare process, and should show up as either additions to one file, or deletions on other. This was the minor bug that may have been left like that on purpose since the original code was to detect files that were corrupted. But based on the changes planned for the future, these lines must be displayed as 'NO MATCH' and will now appear on the report.

Here are all the run options and what they do, and in certain cases, how they interact with each other. Currently the default is set to "IGNORE ALL SPACES" which runs all the options, providing the most accurate compare of two source code files. If running a compare against two data files, some or none of the switches may be needed, depending on the data.
 
SHOW/HIDE MATCHES (Default is HIDE or “H”) ------------------------------------------
A switch has been added to allow you to either show or hide the lines that ‘MATCH’. (S=Show, H=Hide). This allows you to see the whole program, including the lines that are common in each program. Regardless of the other switches, this works independently from all the others.The default value is H, which hides the lines that MATCH. IGNORE ALL SPACES (Default is IGNORE or “Y”) --------------------------------------------
This is a special switch. IGNORE ALL SPACES (Y=Ignore, N=leave line as it) has an effect on all BLANK/NULL LINES and INDENTATION switches. Selecting this switch not only compresses the line to remove all spaces, but it also executes the BLANK/NULL and INDENTATION, regardless of their setting. Spaces, whether it is in the line, intending or putting in a space or null line are preferences used by programmers to either make the code readable, or used to separate functions/routines, align items in a statement to match multiple lines, or to show high-level code from low-level, or code that executes under commands such as IF/THEN, DO/UNTIL, WHILE/WEND, or within Functions and Subroutines. Each programmer has their own preferences, where some do not add anything extra to the other extreme by adding 2, 3, 4 or more spaces. (The line “A=A+1” is the same as “A = A+1” or “A = A + 1”). When spaces removed, they are a match. Without the ability to remove extra spaces, this line will be flagged as 'NO MATCH'. No matter how many spaces used to format lines of code, this switch will reduce the line in both files to just the code, which if it is the same, then it is considered a MATCH. 
 
BLANK/NULL LINES (Default is IGNORE or “N”) -------------------------------------------
This switch allows the user to ignore BLANK or NULL lines in the compare process. (Y=Bypass BLANK/NULLS, N=Include BLANK/NULL lines in compare). Especially in program source code, programmers will insert blank or null lines based on their coding preference. This creates a problem when doing a line by line compare. Now you have the ability to tell the compare to not consider blank and null lines in the compare and the program will just bypass these in both files. With these lines considered, if another programmer likes 2 lines between, say, functions and sub-routines, and the other likes 1 or none, the new program will be out of sync and all lines after the second blank/null will be considered a 'NO MATCH'.
 
IGNORE/ALLOW INDENTATION (Default is IGNORE or “N”) ---------------------------------------------------
Indentation is another programmer preference when writing source code. (Y=Ignore INDENTATION, N=Allow INDENTATION to be considered). Some programmers use indentation to show code that runs subordinate to, say, an IF statement or DO/WHILE loop. So you will see indentations of 2, 3, 4 or more spaces, others none. There may be a mixture or inconsistent indentation. This option allows you to ignore all indented spaces before comparing the two lines. Without this, the compared lines with different indentations will be flagged as 'NO MATCH' even though they may be the same.
 
HELP BUTTON -----------
The HELP button has been deactivated and code removed as all my test cases were failing in some way or another, or the panel didn’t display correctly, or it executed the compare after closing out. If even froze the program, displayed the GUI missing all the input boxes, or leaving artifacts behind. This will be put in in Version 3.5 along with other suggestions made that are minor enough to implement. The reason is in the next section.