Demo protection are no "copy" protection of course coz the main goal of a demo is to be spreaded.
Protection means "debugger" protection. Protections use various programmin tricks to crash a debugger, so a guy can't see the code used by a demo.
All these nasty programming tricks (I write a lot in my own demos !
) are very hard to emulate, so that's the main reason we often have to remove protection before running demos on emulators.