Hall of Fame - 3 methods to distinguish pealny ZX Spectrum from emulyatopov.

Deja Vu #09
(C) Kirill Frolov
__________________________________________



                Hello All.


   I do know of 3 methods to distinguish the real hardware of 
emulators - check the operation command ld a, i or ld a, r for 
interrupt enable, inspection time performance of individual 
teams and performance as a whole-time checking of individual

teams in 1818VG93, well, for the most buggy
ancient and emulators you can try to check the correctness of 
emulation register R and Register F. Try to use the 
undocumented commands useless. 


   Many emulators exactly
there are problems with the speed of their work relative to the 
rate of interruptions and all existing with the correct 
emulation commands ld a, i and ld a, r (at a time when it comes 
to interruption). With VGshkoy have other problems

- Not all computers have the opportunity to
easily and quickly produce the main reading
its registers.


   But to provide a simple check is small,
because bad emulyatorschiki can take
debugger and fix it. Requires decoding of the program code with 
all the differences emulators from Spectrum. But this enough - 
a computer that is running the emulator, very often works many 
times faster than the Spectrum, and hence emulyatorschik

can write a program to correct
decryption code. To provide more
protection from the emulator to be duplicated many times all 
the checks in all parts of the program, then if emulyatorschik 
want to run this program, he to be a lot of manual work.



   Now bad emulyatorschiki can write what I zaglyuchil and 
accuse me of that I, too, emulyatorschik. But I do

I know that I did not come up with protection from the 
emulator, then it is of interest not only me. I know that there 
is a computer magazine for Spectrum, which used a range of 
protective equipment on the emulator. But I I do not know what 
it is called and I have it, certainly not :-( 


   A what is it I ... It is high time to systematize all 
knowledge relating to the protection of bad emulator, and apply 
this same protection, wherever possible, and

primarily for new programs.