This will bring back a BASIC program after a NEW command has been issued or even if the computer has been reset. Of course, it's important that the BASIC memory hasn't been used by another BASIC program or otherwise been overwritten. A prompt reading "Graphics screen? (Y/N)" will appear, and normally you should answer NO.
However, if you reset the computer while a graphics screen is allocated (using GRAPHIC 1, 2, 3 or 4) there will be a problem. Normally, a BASIC program starts at memory location 7169 ($1c01), but when a graphics screen is opened, the program is moved to start at 16385 ($4001). When the computer is reset, the program stays where it is while the pointer which tells the where the program starts is moved back. To cover that eventuality you will be asked if you want to re-allocate the graphics screen before attempting to recover the program. If in doubt you should try recovering your program without allocating the graphics screen and see if it lists properly. If the program won't list, can be listed only in part or turns to garbage, then you can try to specify graphics screen (answer YES).