This protection method was discovered on a number of titles from MEgaCyCAL.
The disk was formatted to 40T and had the catalogue hidden by the use of a VDU23 code in the title. In addition there were a large number of dummy filenames which contained control characters. Track 2 was formatted to 5 sectors of 512 bytes each. As a result of these measures the disk would not respond to *BACKUP or *COPY.
A file on the disk, REDAEH, a BASIC program checked for the existence of the abnormal format on Track 2 and the title crashed if it was not found. The procedure PROCENV in this program did the checking though when listing the procedure definition nothing out of the ordinary could be seen. The actual listing is shown below;
790DEFPROCENV:ENVELOPE1,1,-2,-2,-2,100,100,100,127,-1,0,-127,126,0:Y$="[4x CHR$127]ENDPROC ": CALLTOP+50:ENDPROC:REM[24xCHR$127]
The string assignment Y$= ... made it appear that ENDPROC finished the line as the 4xCHR$127 codes deleted the Y$=" from the screen. Similarly the 24xCHR$127 codes removed the CALL to the machine code routine stored at TOP+50. It was the machine code routine which detected if Track 2 were incorrectly formatted and crashed the machine.
The file REDAEH was loaded into the BASIC Editor and line 790 edited to remove the CALL to TOP+50 and all the delete character codes.
The title would now work correctly from the target disk and under any filing system tried.
© 2018 - 2021 flaxcottage.com