The test checks the flags of the Z80 CPU after executing block instructions, which David Banks (aka Hoglet) found to behave differently to what was previously documented by Sean Young, when the condition is met and those instructions are repeated.
Click on the links to go to the original sources of the research and the resulting documentation.
This test has been run on real hardware confirming the results of David Banks' research:
Machine: ZX Spectrum 48K (Issue 4S)
CPU model: Zilog Z8400A PS (NMOS)
Test version: 2.0
Machine: ZX Spectrum +
CPU model: SGS Z8400AB1 (NMOS)
Test version: 4.0
In order to pass the test, the ZX Spectrum emulator must return 0 when the CPU reads the port of the Kempston joystick:
Code: Select all
if (0x001F == (port & 0x00FF)) return 0;
Many thanks to arjun and evolutional for for validating the results on real hardware.
Happy hacking!