Documentation / Thanks

This commit is contained in:
redcode
2022-05-18 07:25:49 +02:00
parent b232c752b3
commit f64af39c23

View File

@@ -2,213 +2,476 @@
Thanks
======
.. only:: html
.. |re| raw:: html
<sup>
.. |ren| raw:: html
</sup>
.. only:: latex
.. |fe| raw:: latex
\textsuperscript{
.. |ces| raw:: latex
}
Many thanks to the following individuals (in alphabetical order):
Akimov, Vadim (lvd)
For testing the library on many different platforms and CPU architectures.
* **Akimov, Vadim (lvd)**
azesmbog
1. For validating tests on real hardware [1].
2. For his research on the unstable flag behavior of the "ccf/scf" instructions.
3. For his invaluable help.
* For testing the library on many different platforms and CPU architectures.
Banks, David (hoglet)
1. For cracking the flag behavior of the block instructions [2,3].
2. For his research on the flag behavior of the "ccf/scf" instructions [3].
* **azesmbog**
Beliansky, Anatoly (Tolik_Trek)
For validating tests on real hardware [4].
1. For validating tests on real hardware. |re| |fe| :ref:`1<r1>` |ren| |ces|
2. For his research on the unstable flag behavior of the ``ccf/scf`` instructions.
3. For his invaluable help.
Bobrowski, Jan
For fixing the "Z80 Full Instruction Set Exerciser for Spectrum" [5].
* **Banks, David (hoglet)**
boo_boo
For cracking the behavior of the MEMPTR register [6,7,8,9].
1. For cracking the flag behavior of the block instructions. |re| |fe| :ref:`2<r2>`, :ref:`3<r3>` |ren| |ces|
2. For his research on the flag behavior of the ``ccf/scf`` instructions. |re| |fe| :ref:`3<r3>` |ren| |ces|
Brady, Stuart
For his research on the flag behavior of the "ccf/scf" instructions [10].
* **Beliansky, Anatoly (Tolik_Trek)**
Brewer, Tony
1. For his research on the special RESET [11].
2. For sharing information about the RESET signal [12].
3. For helping to crack the flag behavior of the block instructions [2].
4. For performing low-level tests on real hardware [2].
5. For helping me to test different undocumented behaviors of the Zilog Z80.
* For validating tests on real hardware. |re| |fe| :ref:`4<r4>` |ren| |ces|
Bystrov, Dmitry (Alone Coder)
For validating tests on real hardware [4].
* **Bobrowski, Jan**
Chunin, Roman (CHRV)
For testing the behavior of the MEMPTR register on real Z80 chips [6,7,8,9].
* For fixing the *"Z80 Full Instruction Set Exerciser for Spectrum"*. |re| |fe| :ref:`5<r5>` |ren| |ces|
Conway, Simon (BadBeard)
For validating the "Z80 Test Suite" on several Z80 clones [13].
* **boo_boo**
Cooke, Simon
For finding out how the "out (c),0" instruction behaves on the Zilog Z80 CMOS [14].
* For cracking the behavior of the MEMPTR register. |re| |fe| :ref:`6<r6>`, :ref:`7<r7>`, :ref:`8<r8>`, :ref:`9<r9>` |ren| |ces|
Cringle, Frank D.
For writing the "Z80 Instruction Set Exerciser" [15].
* **Brady, Stuart**
Devic, Goran
For his research on undocumented behaviors of the Z80 CPU [16].
* For his research on the flag behavior of the ``ccf/scf`` instructions. |re| |fe| :ref:`10<r10>` |ren| |ces|
Flammenkamp, Achim
For his article on Z80 interrupts [17].
* **Brewer, Tony**
Gimeno Fortea, Pedro
1. For his research work [18].
2. For writing the first-ever ZX Spectrum emulator [19,20].
1. For his research on the special RESET. |re| |fe| :ref:`11<r11>` |ren| |ces|
2. For sharing information about the RESET signal. |re| |fe| :ref:`12<r12>` |ren| |ces|
3. For helping to crack the flag behavior of the block instructions. |re| |fe| :ref:`2<r2>` |ren| |ces|
4. For performing low-level tests on real hardware. |re| |fe| :ref:`2<r2>` |ren| |ces|
5. For helping me to test different undocumented behaviors of the Zilog Z80.
goodboy
For testing the behavior of the MEMPTR register on real Z80 chips [6,7,8,9].
* **Bystrov, Dmitry (Alone Coder)**
Greenway, Ian
For testing the flag behavior of the "ccf/scf" instructions on real hardware [10,21].
* For validating tests on real hardware. |re| |fe| :ref:`4<r4>` |ren| |ces|
Harston, Jonathan Graham
1. For his technical documents about the Zilog Z80 [22,23,24].
2. For porting the "Z80 Instruction Set Exerciser" to the ZX Spectrum [25].
* **Chunin, Roman (CHRV)**
Helcmanovsky, Peter (Ped7g)
1. For helping me to write the "IN-MEMPTR" test.
2. For writing the "Z80 Block Flags Test" [26,27].
3. For writing the "Z80 CCF SCF Outcome Stability" test [27].
4. For writing the "Z80 INT Skip" test [27].
5. For his research on the unstable flag behavior of the "ccf/scf" instructions.
6. For his invaluable help.
* For testing the behavior of the MEMPTR register on real Z80 chips. |re| |fe| :ref:`6<r6>`, :ref:`7<r7>`, :ref:`8<r8>`, :ref:`9<r9>` |ren| |ces|
icebear
For testing the behavior of the MEMPTR register on real Z80 chips [6,7,8,9].
* **Conway, Simon (BadBeard)**
Kladov, Vladimir
For cracking the behavior of the MEMPTR register [6,7,8,9].
* For validating the *"Z80 Test Suite"* on several Z80 clones. |re| |fe| :ref:`13<r13>` |ren| |ces|
Krook, Magnus
For validating tests on real hardware [28].
* **Cooke, Simon**
London, Matthew
For validating tests on real hardware.
* For finding out how the ``out (c),0`` instruction behaves on the Zilog Z80 CMOS. |re| |fe| :ref:`14<r14>` |ren| |ces|
Molodtsov, Aleksandr
For testing the behavior of the MEMPTR register on real Z80 chips [6,7,8,9].
* **Cringle, Frank D.**
Nair, Arjun
For validating tests on real hardware [26].
* For writing the *"Z80 Instruction Set Exerciser"*. |re| |fe| :ref:`15<r15>` |ren| |ces|
Nicolás-González, César
For helping me to research the unstable flag behavior of the "ccf/scf" instructions.
* **Devic, Goran**
Ortega Sosa, Sofía
For her support.
* For his research on undocumented behaviors of the Z80 CPU. |re| |fe| :ref:`16<r16>` |ren| |ces|
Owen, Simon
For the idea of the hooking method used in this emulator.
* **Flammenkamp, Achim**
Rak, Patrik
1. For improving the "Z80 Instruction Set Exerciser for Spectrum" [29].
2. For cracking the flag behavior of the "ccf/scf" instructions [13,29].
3. For writing the "Zilog Z80 CPU Test Suite" [29,30].
4. For his research on the unstable flag behavior of the "ccf/scf" instructions.
* For his article on Z80 interrupts. |re| |fe| :ref:`17<r17>` |ren| |ces|
Rodríguez Jódar, Miguel Ángel (mcleod_ideafix)
For his reseach on the state of the registers after POWER/RESET [31].
* **Gimeno Fortea, Pedro**
Rodríguez Palomino, Mario (r-lyeh)
For teaching me how emulators work.
1. For his research work. |re| |fe| :ref:`18<r18>` |ren| |ces|
2. For writing the first-ever ZX Spectrum emulator. |re| |fe| :ref:`19<r19>`, :ref:`20<r20>` |ren| |ces|
Sainz de Baranda y Romero, Manuel
For teaching me programming and giving me my first computer.
* **goodboy**
Sánchez Ordiñana, José Ismael (Vaporatorius)
For validating tests on real hardware [32,33].
* For testing the behavior of the MEMPTR register on real Z80 chips. |re| |fe| :ref:`6<r6>`, :ref:`7<r7>`, :ref:`8<r8>`, :ref:`9<r9>` |ren| |ces|
Stevenson, Dave
1. For testing the special RESET on real hardware [11].
2. For performing low-level tests on real hardware [34].
* **Greenway, Ian**
Weissflog, Andre (Floh)
1. For finding out that the "reti/retn" instructions defer the acceptance of the maskable interrupt [35].
2. For writing the "Visual Z80 Remix" simulator [36].
* For testing the flag behavior of the ``ccf/scf`` instructions on real hardware. |re| |fe| :ref:`10<r10>`, :ref:`21<r21>` |ren| |ces|
Wilkinson, Oli (evolutional)
For validating tests on real hardware [26].
* **Harston, Jonathan Graham**
Wlodek
For testing the behavior of the MEMPTR register on real Z80 chips [6,7,8,9].
1. For his technical documents about the Zilog Z80. |re| |fe| :ref:`22<r22>`, :ref:`23<r23>`, :ref:`24<r24>` |ren| |ces|
2. For porting the *"Z80 Instruction Set Exerciser"* to the ZX Spectrum. |re| |fe| :ref:`25<r25>` |ren| |ces|
Woodmass, Mark (Woody)
1. For his invaluable contributions to the emuscene.
2. For writing the "Z80 Test Suite" [13].
3. For his research on the flag behavior of the "ccf/scf" instructions [37].
4. For writing the "HALT2INT" test.
5. For writing the "EIHALT" test.
* **Helcmanovsky, Peter (Ped7g)**
Young, Sean
1. For his research work.
2. For his technical documents about the Zilog Z80 [18,38].
1. For helping me to write the *"IN-MEMPTR"* test.
2. For writing the *"Z80 Block Flags Test"*. |re| |fe| :ref:`26<r26>`, :ref:`27<r27>` |ren| |ces|
3. For writing the *"Z80 CCF SCF Outcome Stability"* test. |re| |fe| :ref:`27<r27>` |ren| |ces|
4. For writing the *"Z80 INT Skip"* test. |re| |fe| :ref:`27<r27>` |ren| |ces|
5. For his research on the unstable flag behavior of the ``ccf/scf`` instructions.
6. For his invaluable help.
ZXGuesser
For validating tests on real hardware.
* **icebear**
* For testing the behavior of the MEMPTR register on real Z80 chips. |re| |fe| :ref:`6<r6>`, :ref:`7<r7>`, :ref:`8<r8>`, :ref:`9<r9>` |ren| |ces|
* **Kladov, Vladimir**
* For cracking the behavior of the MEMPTR register. |re| |fe| :ref:`6<r6>`, :ref:`7<r7>`, :ref:`8<r8>`, :ref:`9<r9>` |ren| |ces|
* **Krook, Magnus**
* For validating tests on real hardware. |re| |fe| :ref:`28<r28>` |ren| |ces|
* **London, Matthew**
* For validating tests on real hardware.
* **Molodtsov, Aleksandr**
* For testing the behavior of the MEMPTR register on real Z80 chips. |re| |fe| :ref:`6<r6>`, :ref:`7<r7>`, :ref:`8<r8>`, :ref:`9<r9>` |ren| |ces|
* **Nair, Arjun**
* For validating tests on real hardware. |re| |fe| :ref:`26<r26>` |ren| |ces|
* **Nicolás-González, César**
* For helping me to research the unstable flag behavior of the ``ccf/scf`` instructions.
* **Ortega Sosa, Sofía**
* For her support.
* **Owen, Simon**
* For the idea of the hooking method used in this emulator.
* **Rak, Patrik**
1. For improving the *"Z80 Instruction Set Exerciser for Spectrum"*. |re| |fe| :ref:`29<r29>` |ren| |ces|
2. For cracking the flag behavior of the ``ccf/scf`` instructions. |re| |fe| :ref:`13<r13>`, :ref:`29<r29>` |ren| |ces|
3. For writing the *"Zilog Z80 CPU Test Suite"*. |re| |fe| :ref:`29<r29>`, :ref:`30<r30>` |ren| |ces|
4. For his research on the unstable flag behavior of the ``ccf/scf`` instructions.
* **Rodríguez Jódar, Miguel Ángel (mcleod_ideafix)**
* For his reseach on the state of the registers after POWER/RESET. |re| |fe| :ref:`31<r31>` |ren| |ces|
* **Rodríguez Palomino, Mario (r-lyeh)**
* For teaching me how emulators work.
* **Sainz de Baranda y Romero, Manuel**
* For teaching me programming and giving me my first computer.
* **Sánchez Ordiñana, José Ismael (Vaporatorius)**
* For validating tests on real hardware. |re| |fe| :ref:`32<r32>`, :ref:`33<r33>` |ren| |ces|
* **Stevenson, Dave**
1. For testing the special RESET on real hardware. |re| |fe| :ref:`11<r11>` |ren| |ces|
2. For performing low-level tests on real hardware. |re| |fe| :ref:`34<r34>` |ren| |ces|
* **Weissflog, Andre (Floh)**
1. For finding out that the ``reti/retn`` instructions defer the acceptance of the maskable interrupt. |re| |fe| :ref:`35<r35>` |ren| |ces|
2. For writing the *"Visual Z80 Remix"* simulator. |re| |fe| :ref:`36<r36>` |ren| |ces|
* **Wilkinson, Oli (evolutional)**
* For validating tests on real hardware. |re| |fe| :ref:`26<r26>` |ren| |ces|
* **Wlodek**
* For testing the behavior of the MEMPTR register on real Z80 chips. |re| |fe| :ref:`6<r6>`, :ref:`7<r7>`, :ref:`8<r8>`, :ref:`9<r9>` |ren| |ces|
* **Woodmass, Mark (Woody)**
1. For his invaluable contributions to the emuscene.
2. For writing the *"Z80 Test Suite"*. |re| |fe| :ref:`13<r13>` |ren| |ces|
3. For his research on the flag behavior of the ``ccf/scf`` instructions. |re| |fe| :ref:`37<r37>` |ren| |ces|
4. For writing the *"HALT2INT"* test.
5. For writing the *"EIHALT"* test.
* **Young, Sean**
1. For his research work.
2. For his technical documents about the Zilog Z80. |re| |fe| :ref:`18<r18>`, :ref:`38<r38>` |ren| |ces|
* **ZXGuesser**
* For validating tests on real hardware.
References
==========
1. https://spectrumcomputing.co.uk/forums/viewtopic.php?p=83384#p83384
2. https://stardot.org.uk/forums/viewtopic.php?t=15464
* https://stardot.org.uk/forums/viewtopic.php?p=211042#p211042
* https://stardot.org.uk/forums/viewtopic.php?p=212021#p212021
3. Banks, David (2018-08-21). "Undocumented Z80 Flags".
* https://github.com/hoglet67/Z80Decoder/wiki/Undocumented-Flags
* https://stardot.org.uk/forums/download/file.php?id=39831
4. https://spectrumcomputing.co.uk/forums/viewtopic.php?p=83041#p83041
5. http://wizard.ae.krakow.pl/~jb/qaop/tests.html
6. https://zxpress.ru/zxnet/zxnet.pc/5909
7. https://zx-pk.ru/threads/2506-komanda-bit-n-(hl).html
8. https://zx-pk.ru/threads/2586-prosba-realshchikam-ot-emulyatorshchikov.html
9. boo_boo; Kladov, Vladimir (2006-03-29). "MEMPTR: esoteric register of the Zilog Z80 CPU".
* http://zx.pk.ru/showpost.php?p=43688
* http://zx.pk.ru/attachment.php?attachmentid=2984
* http://zx.pk.ru/showpost.php?p=43800
* http://zx.pk.ru/attachment.php?attachmentid=2989
10. https://sourceforge.net/p/fuse-emulator/mailman/message/6929573
11. Brewer, Tony (2014-12). "Z80 Special Reset".
* http://primrosebank.net/computers/z80/z80_special_reset.htm
12. https://mtxworld.dk/memorum/viewtopic.php?p=1352#p1352
13. https://worldofspectrum.org/forums/discussion/20345
14. https://groups.google.com/g/comp.os.cpm/c/HfSTFpaIkuU/m/KotvMWu3bZoJ
15. Cringle, Frank D. (1998-01-28). "Yaze - Yet Another Z80 Emulator" v1.10.
* ftp://ftp.ping.de/pub/misc/emulators/yaze-1.10.tar.gz
16. https://baltazarstudios.com/zilog-z80-undocumented-behavior
17. Flammenkamp, Achim. "Interrupt Behaviour of the Z80 CPU".
* http://z80.info/interrup.htm
18. Young, Sean (1998-10). "Z80 Undocumented Features (in Software Behaviour)".
19. https://elmundodelspectrum.com/desenterrando-el-primer-emulador-de-spectrum
20. https://elmundodelspectrum.com/con-vosotros-el-emulador-de-pedro-gimeno-1989
21. https://sourceforge.net/p/fuse-emulator/mailman/message/4502844
22. Harston, Jonathan Graham (1997-09-09). "Z80 Opcode Map".
* https://mdfs.net/Docs/Comp/Z80/OpCodeMap
23. Harston, Jonathan Graham (1997-12-18). "Z80 Microprocessor Undocumented Instructions".
* https://mdfs.net/Docs/Comp/Z80/UnDocOps
24. Harston, Jonathan Graham (1998-04-15). "Full Z80 Opcode List Including Undocumented Opcodes".
* https://mdfs.net/Docs/Comp/Z80/OpList
25. https://mdfs.net/Software/Z80/Exerciser/Spectrum
26. https://spectrumcomputing.co.uk/forums/viewtopic.php?t=6102
27. https://github.com/MrKWatkins/ZXSpectrumNextTests
28. https://spectrumcomputing.co.uk/forums/viewtopic.php?p=83157#p83157
29. https://worldofspectrum.org/forums/discussion/41704
* http://zxds.raxoft.cz/taps/misc/zexall2.zip
30. https://worldofspectrum.org/forums/discussion/41834
* http://zxds.raxoft.cz/taps/misc/z80test-1.0.zip
* https://github.com/raxoft/z80test
31. https://worldofspectrum.org/forums/discussion/34574
32. https://worldofspectrum.org/forums/discussion/comment/668760/#Comment_668760
33. https://jisanchez.com/test-a-dos-placas-de-zx-spectrum
34. https://stardot.org.uk/forums/viewtopic.php?p=212360#p212360
35. https://floooh.github.io/2021/12/17/cycle-stepped-z80.html
36. https://github.com/floooh/v6502r
37. http://groups.google.co.uk/group/comp.sys.sinclair/msg/56dd1fd4ccb5fb3b
38. Young, Sean (2005-09-18). "Undocumented Z80 Documented, The".
* http://www.myquest.nl/z80undocumented
* http://www.myquest.nl/z80undocumented/z80-documented-v0.91.pdf
1.
.. _r1:
https://spectrumcomputing.co.uk/forums/viewtopic.php?p=83384#p83384
2.
.. _r2:
https://stardot.org.uk/forums/viewtopic.php?t=15464
* https://stardot.org.uk/forums/viewtopic.php?p=211042#p211042
* https://stardot.org.uk/forums/viewtopic.php?p=212021#p212021
3.
.. _r3:
Banks, David (2018-08-21). *"Undocumented Z80 Flags"*.
* https://github.com/hoglet67/Z80Decoder/wiki/Undocumented-Flags
* https://stardot.org.uk/forums/download/file.php?id=39831
4.
.. _r4:
https://spectrumcomputing.co.uk/forums/viewtopic.php?p=83041#p83041
5.
.. _r5:
http://wizard.ae.krakow.pl/~jb/qaop/tests.html
6.
.. _r6:
https://zxpress.ru/zxnet/zxnet.pc/5909
7.
.. _r7:
https://zx-pk.ru/threads/2506-komanda-bit-n-(hl).html
8.
.. _r8:
https://zx-pk.ru/threads/2586-prosba-realshchikam-ot-emulyatorshchikov.html
9.
.. _r9:
boo_boo; Kladov, Vladimir (2006-03-29). *"MEMPTR: esoteric register of the Zilog Z80 CPU"*.
* http://zx.pk.ru/showpost.php?p=43688
* http://zx.pk.ru/attachment.php?attachmentid=2984
* http://zx.pk.ru/showpost.php?p=43800
* http://zx.pk.ru/attachment.php?attachmentid=2989
10.
.. _r10:
https://sourceforge.net/p/fuse-emulator/mailman/message/6929573
11.
.. _r11:
Brewer, Tony (2014-12). *"Z80 Special Reset"*.
* http://primrosebank.net/computers/z80/z80_special_reset.htm
12.
.. _r12:
https://mtxworld.dk/memorum/viewtopic.php?p=1352#p1352
13.
.. _r13:
https://worldofspectrum.org/forums/discussion/20345
14.
.. _r14:
https://groups.google.com/g/comp.os.cpm/c/HfSTFpaIkuU/m/KotvMWu3bZoJ
15.
.. _r15:
Cringle, Frank D. (1998-01-28). *"Yaze - Yet Another Z80 Emulator"* v1.10.
* ftp://ftp.ping.de/pub/misc/emulators/yaze-1.10.tar.gz
16.
.. _r16:
https://baltazarstudios.com/zilog-z80-undocumented-behavior
17.
.. _r17:
Flammenkamp, Achim. *"Interrupt Behaviour of the Z80 CPU"*.
* http://z80.info/interrup.htm
18.
.. _r18:
Young, Sean (1998-10). *"Z80 Undocumented Features (in Software Behaviour)"*.
19.
.. _r19:
https://elmundodelspectrum.com/desenterrando-el-primer-emulador-de-spectrum
20.
.. _r20:
https://elmundodelspectrum.com/con-vosotros-el-emulador-de-pedro-gimeno-1989
21.
.. _r21:
https://sourceforge.net/p/fuse-emulator/mailman/message/4502844
22.
.. _r22:
Harston, Jonathan Graham (1997-09-09). *"Z80 Opcode Map"*.
* https://mdfs.net/Docs/Comp/Z80/OpCodeMap
23.
.. _r23:
Harston, Jonathan Graham (1997-12-18). *"Z80 Microprocessor Undocumented Instructions"*.
* https://mdfs.net/Docs/Comp/Z80/UnDocOps
24.
.. _r24:
Harston, Jonathan Graham (1998-04-15). *"Full Z80 Opcode List Including Undocumented Opcodes"*.
* https://mdfs.net/Docs/Comp/Z80/OpList
25.
.. _r25:
https://mdfs.net/Software/Z80/Exerciser/Spectrum
26.
.. _r26:
https://spectrumcomputing.co.uk/forums/viewtopic.php?t=6102
27.
.. _r27:
https://github.com/MrKWatkins/ZXSpectrumNextTests
28.
.. _r28:
https://spectrumcomputing.co.uk/forums/viewtopic.php?p=83157#p83157
29.
.. _r29:
https://worldofspectrum.org/forums/discussion/41704
* http://zxds.raxoft.cz/taps/misc/zexall2.zip
30.
.. _r30:
https://worldofspectrum.org/forums/discussion/41834
* http://zxds.raxoft.cz/taps/misc/z80test-1.0.zip
* https://github.com/raxoft/z80test
31.
.. _r31:
https://worldofspectrum.org/forums/discussion/34574
32.
.. _r32:
https://worldofspectrum.org/forums/discussion/comment/668760/#Comment_668760
33.
.. _r33:
https://jisanchez.com/test-a-dos-placas-de-zx-spectrum
34.
.. _r34:
https://stardot.org.uk/forums/viewtopic.php?p=212360#p212360
35.
.. _r35:
https://floooh.github.io/2021/12/17/cycle-stepped-z80.html
36.
.. _r36:
https://github.com/floooh/v6502r
37.
.. _r37:
http://groups.google.co.uk/group/comp.sys.sinclair/msg/56dd1fd4ccb5fb3b
38.
.. _r38:
Young, Sean (2005-09-18). *"Undocumented Z80 Documented, The"*.
* http://www.myquest.nl/z80undocumented
* http://www.myquest.nl/z80undocumented/z80-documented-v0.91.pdf