Ay_Emul tries to automatically recognize files type while opening it.
If the file extension is standard (STC, VTX, and so on), then Ay_Emul performs a minimum of additional checks and considers that it is a file of the appropriate type. This approach has a significant drawback: if there is a different format or just a damaged structure inside a file with a standard extension, a failure is likely to occur when trying to open or play it.
If the file extension is non-standard (including $m, $c, TRD, BIN, SNA, etc.), then Ay_Emul tries to determine the file type by its header.
If this does not give a positive result, the "Search for tunes in files" tool is automatically launched (see the "Tools" window), and Ay_Emul tries to find all the modules that are in this file. Since this process can take a long time, a window with progress and two cancel buttons appears: by clicking on the first one, you can interrupt the process of analyzing the current file, and on the second, you can interrupt opening further files in queue. The found modules are compared with the information in the TRD, SCL and Hobeta formats header, while additionally extracting information about the original file name and author's string from the AS0, ASC, ST3, STC or STP native players (see the description of the Program and Comment fields of the "List's Item Adjusting" dialog). If Ay_Emul incorrectly recognizes any module in the file, this can lead to the same problems as when opening a damaged file with a standard extension (described above).
During finding, all "Search for tunes in files" tool module types are searched, except for FLS.
The modules opened by Ay_Emul are added to the playlist after extracting the minimum necessary (as well as other quickly extracted) information. The missing information is loaded as needed: either before the start of playback, or when the user clicks on the corresponding area of the playlist window to calculate its duration, or when it is necessary to the first display the item in the playlist window.
Most modules can be saved from the playback list window (the Save as... command of the pop-up menu), while modifications or transformations can be performed (for example, unlinking from the compilation address; inserting the author's line if found in the body of the native player; substituting the native file name; for ST1/ST3 formats compilation/conversion to STC, for AS0 – to ASC, for STF – to STP). If there is a need to save the found modules without most of these modifications, you can use the "Search for tunes in files" tool.