Why did you create a new thread on the multiface?
The multiface is not able to restart some programs for various reasons.
When you press the stop button, the rom of the multiface is connected between 0000 and 1FFF, and its ram between 2000 and 3FFF and an NMI interrupt occurs.
In other words, the Z80A saves the address where the PC was when you press the button, and jumps to #0066 (in the rom of the multiface2)
But if the stack is in the area of the ram of the multiface when it is connected (when you press STOP), the return address will not be written in the CPC ram but in the ram of the multiface. I have not checked if the cartridge handles this situation well, but it is a possibility.
Also, the multiface can not read the registers of the circuits like the gate array or the crtc because some of these registers are read only.
In fact, it "copies" the registers when the CPC makes OUTs to modify these registers.
But the filtering is too precise because the multiface uses all the bits of the IO address.
But on the CPC, you can assign multiple circuits at the same time depending on each bit in the IO address
Say otherwise, you can hide to the multiface the modification of the records of the CRTC, but also affect, through the "standard" registers, values able to crash the CRTC, or put all the inks in black for example.
The best way to know what's wrong is to look the data saved in the first file.
Can you post this file here ?