Some developers collect $COMMAND, $MENU, and $SCREEN blocks in a single file and use CodeLock to produce a single application file. This process decreases the number of files to maintain and introduces code security to the application. Using CodeLock to encode an application prevents unauthorized access to the source code. The Trace Debugger can process applications developed in this manner only if the ASCII version (.APP) of the command file is present. Otherwise, it runs that portion of the application (.APX), rather than displaying the source code.
Unlike $COMMAND blocks, the Trace Debugger ignores $MENU and $SCREEN blocks. They are parsed internally by the CHOOSE and DISPLAY commands. When using the Trace Debugger on applications that use either of these commands, an ASCII version of $MENU or $SCREEN blocks is not required. R:BASE reads the CodeLocked files as needed.