Microsoft GW-BASIC on IBM compatibles allowed flags to the SAVE command, to indicate the manner in which a file should be written out.
As I recall, it allowed for no flag to write a standard tokenized format, ,A to write a plain-text ASCII BASIC listing, and ,P to write a "protected" file.
"Protected" files looked like gibberish on disk even compared to the tokenized files, and the interpreter would at least refuse to LIST the source code. As I recall the file size also wasn't the same. They did however run just fine when given to the interpreter.
How were such "protected" files encoded? What about them was different compared to an ordinary tokenized save (no flag)?
UNPBAS11.ZIPmentions other decryption schemes, and says “Still other schemes employ aPOKEorBLOADafter loading the protected program into the interpreter, which may or may not be allowed, depending on the interpreter.” – Stephen Kitt Jul 26 '18 at 13:30poketo disable protection, but later versions severely restrict the set of actions that can be done in immediate mode--probably because MS realized that people were usingpoketo bypass protected mode. – supercat Jul 26 '18 at 23:01