diff --git a/README.md b/README.md index 582e9ff..c53d13f 100644 --- a/README.md +++ b/README.md @@ -684,82 +684,83 @@ Many thanks to the following individuals (in alphabetical order): * **Akimov, Vadim (lvd)** * For testing the library on many different platforms and CPU architectures. * **azesmbog** :trophy: - 1. For validating tests on real hardware. [1](#r1) + 1. For validating tests on real hardware. [1.1](#r_1) 2. For discovering the unstable behavior of the `ccf/scf` instructions. - 3. For his invaluable help. + 3. For testing the `ccf/scf` instructions on real hardware. [2](#r_2), [3](#r_3) + 4. For his invaluable help. * **Banks, David (hoglet)** :trophy: - 1. For deciphering the additional flag changes of the block instructions. [2](#r2), [3](#r3) - 2. For his research on the behavior of the `ccf/scf` instructions. [3](#r3), [4](#r4) + 1. For deciphering the additional flag changes of the block instructions. [4.1](#r_4_1), [4.2](#r_4_2), [5](#r_5) + 2. For his research on the behavior of the `ccf/scf` instructions. [5](#r_5), [6](#r_6) * **Beliansky, Anatoly (Tolik_Trek)** - * For validating tests on real hardware. [5](#r5) + * For validating tests on real hardware. [1.2](#r_1_2) * **Bobrowski, Jan** - * For fixing the _"Z80 Full Instruction Set Exerciser for Spectrum"_. [6](#r6) + * For fixing the _"Z80 Full Instruction Set Exerciser for Spectrum"_. [7](#r_7) * **boo_boo** :trophy: - * For deciphering the behavior of MEMPTR. [7](#r7), [8](#r8), [9](#r9), [10](#r10) + * For deciphering the behavior of MEMPTR. [8](#r_8), [9](#r_9), [10](#r_10), [11](#r_11) * **Brady, Stuart** - * For his research on the behavior of the `ccf/scf` instructions. [11](#r11) + * For his research on the behavior of the `ccf/scf` instructions. [12](#r_12) * **Brewer, Tony** :trophy: - 1. For his research on the special RESET. [12](#r12), [13](#r13) - 2. For helping to decipher the additional flag changes of the block instructions. [2](#r2) - 3. For conducting low-level tests on real hardware. [2](#r2) + 1. For his research on the special RESET. [4.3](#r_4_3), [13](#r_13) + 2. For helping to decipher the additional flag changes of the block instructions. [4](#r_4) + 3. For conducting low-level tests on real hardware. [4](#r_4) 4. For helping me to test different undocumented behaviors of the Zilog Z80. * **Bystrov, Dmitry (Alone Coder)** - * For validating tests on real hardware. [5](#r5) + * For validating tests on real hardware. [1.2](#r_1_2) * **Chandler, Richard** 1. For his corrections to the documentation. - 2. For validating tests on real hardware. [14](#r14) + 2. For validating tests on real hardware. [14](#r_14) * **Chunin, Roman (CHRV)** - * For testing the behavior of MEMPTR on real hardware. [7](#r7), [8](#r8), [9](#r9), [10](#r10) + * For testing the behavior of MEMPTR on real hardware. [8](#r_8), [9](#r_9), [10](#r_10), [11](#r_11) * **Conway, Simon (BadBeard)** - * For validating the _"Z80 Test Suite"_ on several Z80 clones. [15](#r15) + * For validating the _"Z80 Test Suite"_ on several Z80 clones. [15](#r_15) * **Cooke, Simon** :trophy: - * For discovering how the out (c),0 instruction behaves on the Zilog Z80 CMOS. [16](#r16) + * For discovering how the out (c),0 instruction behaves on the Zilog Z80 CMOS. [16](#r_16) * **Cringle, Frank D.** - * For writing the _"Z80 Instruction Set Exerciser"_. [17](#r17) + * For writing the _"Z80 Instruction Set Exerciser"_. [17](#r_17) * **Devic, Goran** - * For his research on undocumented behaviors of the Z80 CPU. [18](#r18) + * For his research on undocumented behaviors of the Z80 CPU. [18](#r_18) * **Dunn, Paul (ZXDunny)** * For his corrections to the documentation. * **Equinox** * For his corrections to the documentation. * **Flammenkamp, Achim** - * For his article on Z80 interrupts. [19](#r19) + * For his article on Z80 interrupts. [19](#r_19) * **Gimeno Fortea, Pedro** :trophy: - 1. For his research work. [20](#r20) - 2. For writing the first-ever ZX Spectrum emulator. [21](#r21), [22](#r22) + 1. For his research work. [20](#r_20) + 2. For writing the first-ever ZX Spectrum emulator. [21](#r_21), [22](#r_22) * **goodboy** - * For testing the behavior of MEMPTR on real hardware. [7](#r7), [8](#r8), [9](#r9), [10](#r10) + * For testing the behavior of MEMPTR on real hardware. [8](#r_8), [9](#r_9), [10](#r_10), [11](#r_11) * **Greenway, Ian** - * For testing the behavior of the `ccf/scf` instructions on real hardware. [11](#r11), [23](#r23) + * For testing the `ccf/scf` instructions on real hardware. [12](#r_12), [23](#r_23) * **Harston, Jonathan Graham** 1. For his research work. - 2. For his technical documents about the Zilog Z80. [24](#r24), [25](#r25), [26](#r26) - 3. For porting the _"Z80 Instruction Set Exerciser"_ to the ZX Spectrum. [27](#r27) + 2. For his technical documents about the Zilog Z80. [24](#r_24), [25](#r_25), [26](#r_26) + 3. For porting the _"Z80 Instruction Set Exerciser"_ to the ZX Spectrum. [27](#r_27) * **Helcmanovsky, Peter (Ped7g)** :medal_military: 1. For helping me to write the _"IN-MEMPTR"_ test. - 2. For writing the _"Z80 Block Flags Test"_. [28](#r28), [29](#r29) - 3. For writing the _"Z80 CCF SCF Outcome Stability"_ test. [29](#r29) - 4. For writing the _"Z80 INT Skip"_ test. [29](#r29) + 2. For writing the _"Z80 Block Flags Test"_. [1](#r_1), [28](#r_28) + 3. For writing the _"Z80 CCF SCF Outcome Stability"_ test. [28](#r_28) + 4. For writing the _"Z80 INT Skip"_ test. [28](#r_28) 5. For his research on the unstable behavior of the `ccf/scf` instructions. 6. For his invaluable help. * **Iborra Debón, Víctor (Eremus)** * For validating tests on real hardware. * **icebear** - * For testing the behavior of MEMPTR on real hardware. [7](#r7), [8](#r8), [9](#r9), [10](#r10) + * For testing the behavior of MEMPTR on real hardware. [8](#r_8), [9](#r_9), [10](#r_10), [11](#r_11) * **ICEknight** * For validating tests on real hardware. * **Kladov, Vladimir** :trophy: - * For deciphering the behavior of MEMPTR. [7](#r7), [8](#r8), [9](#r9), [10](#r10) + * For deciphering the behavior of MEMPTR. [8](#r_8), [9](#r_9), [10](#r_10), [11](#r_11) * **Krook, Magnus** - * For validating tests on real hardware. [30](#r30) + * For validating tests on real hardware. [1.3](#r_1_3) * **London, Matthew (mattinx)** * For validating tests on real hardware. * **Martínez Cantero, Ricardo (Kyp)** * For validating tests on real hardware. * **Molodtsov, Aleksandr** - * For testing the behavior of MEMPTR on real hardware. [7](#r7), [8](#r8), [9](#r9), [10](#r10) + * For testing the behavior of MEMPTR on real hardware. [8](#r_8), [9](#r_9), [10](#r_10), [11](#r_11) * **Nair, Arjun** - * For validating tests on real hardware. [28](#r28) + * For validating tests on real hardware. [1](#r_1) * **Nicolás-González, César** * For helping me to investigate the unstable behavior of the `ccf/scf` instructions. * **Ortega Sosa, Sofía** @@ -768,110 +769,113 @@ Many thanks to the following individuals (in alphabetical order): * **Owen, Simon** * For the idea of the hooking method used in this emulator. * **Ownby, Matthew P.** - * For his research on the state of the registers after POWER-ON. [31](#r31) + * For his research on the state of the registers after POWER-ON. [29](#r_29) * **Rak, Patrik** :trophy: - 1. For improving the _"Z80 Instruction Set Exerciser for Spectrum"_. [32](#r32) - 2. For deciphering the behavior of the `ccf/scf` instructions. [15](#r15), [32](#r32) - 3. For writing the _"Zilog Z80 CPU Test Suite"_. [32](#r32), [33](#r33) + 1. For improving the _"Z80 Instruction Set Exerciser for Spectrum"_. [30](#r_30) + 2. For deciphering the behavior of the `ccf/scf` instructions. [15](#r_15), [30](#r_30) + 3. For writing the _"Zilog Z80 CPU Test Suite"_. [30](#r_30), [31](#r_31) 4. For his research on the unstable behavior of the `ccf/scf` instructions. * **Rodríguez Jódar, Miguel Ángel (mcleod_ideafix)** - * For his research on the state of the registers after POWER-ON/RESET. [34](#r34) + * For his research on the state of the registers after POWER-ON/RESET. [32](#r_32) * **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. [35](#r35), [36](#r36) + * For validating tests on real hardware. [31.1](#r_31_1), [33](#r_33) * **Sevillano Mancilla, Marta (TheMartian)** - * For validating tests on real hardware. [14](#r14) + * For validating tests on real hardware. [14.1](#r_14_1) * **Stevenson, Dave** - 1. For testing the special RESET on real hardware. [12](#r12) - 2. For conducting low-level tests on real hardware. [37](#r37) + 1. For testing the special RESET on real hardware. [13](#r_13) + 2. For conducting low-level tests on real hardware. [4.4](#r_4_4) * **Vučenović, Zoran** * For writing the [Pascal binding](sources/Z80.pas). * **Weissflog, Andre (Floh)** :trophy: - 1. For discovering that the `reti/retn` instructions defer the acceptance of the maskable interrupt. [38](#r38) - 2. For writing the _"Visual Z80 Remix"_ simulator. [39](#r39) + 1. For discovering that the `reti/retn` instructions defer the acceptance of the maskable interrupt. [34](#r_34) + 2. For writing the _"Visual Z80 Remix"_ simulator. [35](#r_35) * **Wilkinson, Oli (evolutional)** - * For validating tests on real hardware. [28](#r28) + * For validating tests on real hardware. [1](#r_1) * **Wlodek** - * For testing the behavior of MEMPTR on real hardware. [7](#r7), [8](#r8), [9](#r9), [10](#r10) + * For testing the behavior of MEMPTR on real hardware. [8](#r_8), [9](#r_9), [10](#r_10), [11](#r_11) * **Woodmass, Mark (Woody)** :medal_military: 1. For his invaluable contributions to the emuscene. - 2. For writing the _"Z80 Test Suite"_. [15](#r15) - 3. For his research on the behavior of the `ccf/scf` instructions. [40](#r40) + 2. For writing the _"Z80 Test Suite"_. [15](#r_15) + 3. For his research on the behavior of the `ccf/scf` instructions. [36](#r_36) 4. For writing the _"HALT2INT"_ test. 5. For writing the _"EIHALT"_ test. * **Young, Sean** :trophy: 1. For his research work. - 2. For his technical documents about the Zilog Z80. [20](#r20), [31](#r31), [41](#r41) + 2. For his technical documents about the Zilog Z80. [20](#r_20), [29](#r_29), [37](#r_37) * **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"_ rev. 1.0. +1. https://spectrumcomputing.co.uk/forums/viewtopic.php?t=6102 + 1. https://spectrumcomputing.co.uk/forums/viewtopic.php?p=83384#p83384 + 2. https://spectrumcomputing.co.uk/forums/viewtopic.php?p=83041#p83041 + 3. https://spectrumcomputing.co.uk/forums/viewtopic.php?p=83157#p83157 +2. https://zx-pk.ru/threads/34173-revers-inzhiniring-z80.html +3. https://zx-pk.ru/threads/35936-zagadka-plavayushchikh-flagov-scf-ccf-raskryta!.html +4. https://stardot.org.uk/forums/viewtopic.php?t=15464 + 1. https://stardot.org.uk/forums/viewtopic.php?p=211042#p211042 + 2. https://stardot.org.uk/forums/viewtopic.php?p=212021#p212021 + 3. https://stardot.org.uk/forums/viewtopic.php?p=357136#p357136 + 4. https://stardot.org.uk/forums/viewtopic.php?p=212360#p212360 +5. Banks, David (2018-08-21). _"Undocumented Z80 Flags"_ rev. 1.0. * https://stardot.org.uk/forums/download/file.php?id=39831 * https://github.com/hoglet67/Z80Decoder/wiki/Undocumented-Flags -4. https://github.com/hoglet67/Z80Decoder/wiki/Unstable-CCF-SCF-Behaviour -5. https://spectrumcomputing.co.uk/forums/viewtopic.php?p=83041#p83041 -6. http://wizard.ae.krakow.pl/~jb/qaop/tests.html -7. https://zxpress.ru/zxnet/zxnet.pc/5909 -8. https://zx-pk.ru/threads/2506-komanda-bit-n-(hl).html -9. https://zx-pk.ru/threads/2586-prosba-realshchikam-ot-emulyatorshchikov.html -10. boo_boo; Kladov, Vladimir (2006-03-29). _"MEMPTR, Esoteric Register of the Zilog Z80 CPU"_. +6. https://github.com/hoglet67/Z80Decoder/wiki/Unstable-CCF-SCF-Behaviour +7. http://wizard.ae.krakow.pl/~jb/qaop/tests.html +8. https://zxpress.ru/zxnet/zxnet.pc/5909 +9. https://zx-pk.ru/threads/2506-komanda-bit-n-(hl).html +10. https://zx-pk.ru/threads/2586-prosba-realshchikam-ot-emulyatorshchikov.html +11. boo_boo; Kladov, Vladimir (2006-03-29). _"MEMPTR, Esoteric Register of the Zilog Z80 CPU"_. * https://zx-pk.ru/showpost.php?p=43688 * https://zx-pk.ru/attachment.php?attachmentid=2984 * https://zx-pk.ru/showpost.php?p=43800 * https://zx-pk.ru/attachment.php?attachmentid=2989 -11. https://sourceforge.net/p/fuse-emulator/mailman/message/6929573 -12. Brewer, Tony (2014-12). _"Z80 Special Reset"_. +12. https://sourceforge.net/p/fuse-emulator/mailman/message/6929573 +13. Brewer, Tony (2014-12). _"Z80 Special Reset"_. * http://primrosebank.net/computers/z80/z80_special_reset.htm -13. https://stardot.org.uk/forums/viewtopic.php?p=357136#p357136 -14. https://spectrumcomputing.co.uk/forums/viewtopic.php?t=10555 -15. https://worldofspectrum.org/forums/discussion/20345 -16. https://groups.google.com/g/comp.os.cpm/c/HfSTFpaIkuU/m/KotvMWu3bZoJ -17. Cringle, Frank D. (1998-01-28). _"Yaze - Yet Another Z80 Emulator"_ v1.10. +14. https://spectrumcomputing.co.uk/forums/viewtopic.php?t=10555 + 1. https://spectrumcomputing.co.uk/forums/viewtopic.php?p=132144#p132144 +15. https://worldofspectrum.org/forums/discussion/20345 +16. https://groups.google.com/g/comp.os.cpm/c/HfSTFpaIkuU/m/KotvMWu3bZoJ +17. 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 -18. https://baltazarstudios.com/zilog-z80-undocumented-behavior -19. Flammenkamp, Achim. _"Interrupt Behaviour of the Z80 CPU"_. +18. https://baltazarstudios.com/zilog-z80-undocumented-behavior +19. Flammenkamp, Achim. _"Interrupt Behaviour of the Z80 CPU"_. * http://z80.info/interrup.htm -20. Young, Sean (1998-10). _"Z80 Undocumented Features (in Software Behaviour)"_ v0.3. +20. Young, Sean (1998-10). _"Z80 Undocumented Features (in Software Behaviour)"_ v0.3. * http://www.msxnet.org/tech/Z80/z80undoc.txt -21. https://elmundodelspectrum.com/desenterrando-el-primer-emulador-de-spectrum -22. https://elmundodelspectrum.com/con-vosotros-el-emulador-de-pedro-gimeno-1989 -23. https://sourceforge.net/p/fuse-emulator/mailman/message/4502844 -24. Harston, Jonathan Graham (2008). _"Full Z80 Opcode List Including Undocumented Opcodes"_ v0.11 (revised). +21. https://elmundodelspectrum.com/desenterrando-el-primer-emulador-de-spectrum +22. https://elmundodelspectrum.com/con-vosotros-el-emulador-de-pedro-gimeno-1989 +23. https://sourceforge.net/p/fuse-emulator/mailman/message/4502844 +24. Harston, Jonathan Graham (2008). _"Full Z80 Opcode List Including Undocumented Opcodes"_ v0.11 (revised). * https://mdfs.net/Docs/Comp/Z80/OpList -25. Harston, Jonathan Graham (2012). _"Z80 Microprocessor Undocumented Instructions"_ v0.15. +25. Harston, Jonathan Graham (2012). _"Z80 Microprocessor Undocumented Instructions"_ v0.15. * https://mdfs.net/Docs/Comp/Z80/UnDocOps -26. Harston, Jonathan Graham (2014). _"Z80 Opcode Map"_ v0.10 (revised). +26. Harston, Jonathan Graham (2014). _"Z80 Opcode Map"_ v0.10 (revised). * https://mdfs.net/Docs/Comp/Z80/OpCodeMap -27. https://mdfs.net/Software/Z80/Exerciser/Spectrum -28. https://spectrumcomputing.co.uk/forums/viewtopic.php?t=6102 -29. https://github.com/MrKWatkins/ZXSpectrumNextTests -30. https://spectrumcomputing.co.uk/forums/viewtopic.php?p=83157#p83157 -31. Young, Sean (2005-09-18). _"Undocumented Z80 Documented, The"_ v0.91. +27. https://mdfs.net/Software/Z80/Exerciser/Spectrum +28. https://github.com/MrKWatkins/ZXSpectrumNextTests +29. Young, Sean (2005-09-18). _"Undocumented Z80 Documented, The"_ v0.91. * http://www.myquest.nl/z80undocumented * http://www.myquest.nl/z80undocumented/z80-documented-v0.91.pdf -32. https://worldofspectrum.org/forums/discussion/41704 +30. https://worldofspectrum.org/forums/discussion/41704 * http://zxds.raxoft.cz/taps/misc/zexall2.zip -33. https://worldofspectrum.org/forums/discussion/41834 +31. https://worldofspectrum.org/forums/discussion/41834 * http://zxds.raxoft.cz/taps/misc/z80test-1.0.zip * https://github.com/raxoft/z80test -34. https://worldofspectrum.org/forums/discussion/34574 -35. https://worldofspectrum.org/forums/discussion/comment/668760/#Comment_668760 -36. https://jisanchez.com/test-a-dos-placas-de-zx-spectrum -37. https://stardot.org.uk/forums/viewtopic.php?p=212360#p212360 -38. Weissflog, Andre (2021-12-17). _"New Cycle-Stepped Z80 Emulator, A"_. + 1. https://worldofspectrum.org/forums/discussion/comment/668760/#Comment_668760 +32. https://worldofspectrum.org/forums/discussion/34574 +33. https://jisanchez.com/test-a-dos-placas-de-zx-spectrum +34. Weissflog, Andre (2021-12-17). _"New Cycle-Stepped Z80 Emulator, A"_. * https://floooh.github.io/2021/12/17/cycle-stepped-z80.html -39. https://github.com/floooh/v6502r -40. https://groups.google.com/g/comp.sys.sinclair/c/WPsPr6j6w5k/m/O_u1zNQf3VYJ -41. Young, Sean (1997-09-21). _"Zilog Z80 CPU Specifications"_. +35. https://github.com/floooh/v6502r +36. https://groups.google.com/g/comp.sys.sinclair/c/WPsPr6j6w5k/m/O_u1zNQf3VYJ +37. Young, Sean (1997-09-21). _"Zilog Z80 CPU Specifications"_. * http://www.msxnet.org/tech/Z80/z80.zip ## License diff --git a/THANKS b/THANKS index acc7cdc..c77e474 100644 --- a/THANKS +++ b/THANKS @@ -3,34 +3,35 @@ Many thanks to the following individuals (in alphabetical order): * Akimov, Vadim (lvd) For testing the library on many different platforms and CPU architectures. * azesmbog - 1. For validating tests on real hardware [1]. + 1. For validating tests on real hardware [1.1]. 2. For discovering the unstable behavior of the `ccf/scf` instructions. - 3. For his invaluable help. + 3. For testing the `ccf/scf` instructions on real hardware [2,3]. + 4. For his invaluable help. * Banks, David (hoglet) 1. For deciphering the additional flag changes of the block instructions - [2,3]. - 2. For his research on the behavior of the `ccf/scf` instructions [3,4]. + [4.1,4.2,5]. + 2. For his research on the behavior of the `ccf/scf` instructions [5,6]. * Beliansky, Anatoly (Tolik_Trek) - For validating tests on real hardware [5]. + For validating tests on real hardware [1.2]. * Bobrowski, Jan - For fixing the "Z80 Full Instruction Set Exerciser for Spectrum" [6]. + For fixing the "Z80 Full Instruction Set Exerciser for Spectrum" [7]. * boo_boo - For deciphering the behavior of MEMPTR [7,8,9,10]. + For deciphering the behavior of MEMPTR [8,9,10,11]. * Brady, Stuart - For his research on the behavior of the `ccf/scf` instructions [11]. + For his research on the behavior of the `ccf/scf` instructions [12]. * Brewer, Tony - 1. For his research on the special RESET [12,13]. + 1. For his research on the special RESET [4.3,13]. 2. For helping to decipher the additional flag changes of the block - instructions [2]. - 3. For conducting low-level tests on real hardware [2]. + instructions [4]. + 3. For conducting low-level tests on real hardware [4]. 4. For helping me to test different undocumented behaviors of the Zilog Z80. * Bystrov, Dmitry (Alone Coder) - For validating tests on real hardware [5]. + For validating tests on real hardware [1.2]. * Chandler, Richard 1. For his corrections to the documentation. 2. For validating tests on real hardware [14]. * Chunin, Roman (CHRV) - For testing the behavior of MEMPTR on real hardware [7,8,9,10]. + For testing the behavior of MEMPTR on real hardware [8,9,10,11]. * Conway, Simon (BadBeard) For validating the "Z80 Test Suite" on several Z80 clones [15]. * Cooke, Simon @@ -50,39 +51,38 @@ Many thanks to the following individuals (in alphabetical order): 1. For his research work [20]. 2. For writing the first-ever ZX Spectrum emulator [21,22]. * goodboy - For testing the behavior of MEMPTR on real hardware [7,8,9,10]. + For testing the behavior of MEMPTR on real hardware [8,9,10,11]. * Greenway, Ian - For testing the behavior of the `ccf/scf` instructions on real hardware [11, - 23]. + For testing the `ccf/scf` instructions on real hardware [12,23]. * Harston, Jonathan Graham 1. For his research work. 2. For his technical documents about the Zilog Z80 [24,25,26]. 3. For porting the "Z80 Instruction Set Exerciser" to the ZX Spectrum [27]. * Helcmanovsky, Peter (Ped7g) 1. For helping me to write the "IN-MEMPTR" test. - 2. For writing the "Z80 Block Flags Test" [28,29]. - 3. For writing the "Z80 CCF SCF Outcome Stability" test [29]. - 4. For writing the "Z80 INT Skip" test [29]. + 2. For writing the "Z80 Block Flags Test" [1,28]. + 3. For writing the "Z80 CCF SCF Outcome Stability" test [28]. + 4. For writing the "Z80 INT Skip" test [28]. 5. For his research on the unstable behavior of the `ccf/scf` instructions. 6. For his invaluable help. * Iborra Debón, Víctor (Eremus) For validating tests on real hardware. * icebear - For testing the behavior of MEMPTR on real hardware [7,8,9,10]. + For testing the behavior of MEMPTR on real hardware [8,9,10,11]. * ICEknight For validating tests on real hardware. * Kladov, Vladimir - For deciphering the behavior of MEMPTR [7,8,9,10]. + For deciphering the behavior of MEMPTR [8,9,10,11]. * Krook, Magnus - For validating tests on real hardware [30]. + For validating tests on real hardware [1.3]. * London, Matthew (mattinx) For validating tests on real hardware. * Martínez Cantero, Ricardo (Kyp) For validating tests on real hardware. * Molodtsov, Aleksandr - For testing the behavior of MEMPTR on real hardware [7,8,9,10]. + For testing the behavior of MEMPTR on real hardware [8,9,10,11]. * Nair, Arjun - For validating tests on real hardware [28]. + For validating tests on real hardware [1]. * Nicolás-González, César For helping me to investigate the unstable behavior of the `ccf/scf` instructions. @@ -92,44 +92,44 @@ Many thanks to the following individuals (in alphabetical order): * Owen, Simon For the idea of the hooking method used in this emulator. * Ownby, Matthew P. - For his research on the state of the registers after POWER-ON [31]. + For his research on the state of the registers after POWER-ON [29]. * Rak, Patrik - 1. For improving the "Z80 Instruction Set Exerciser for Spectrum" [32]. - 2. For deciphering the behavior of the `ccf/scf` instructions [15,32]. - 3. For writing the "Zilog Z80 CPU Test Suite" [32,33]. + 1. For improving the "Z80 Instruction Set Exerciser for Spectrum" [30]. + 2. For deciphering the behavior of the `ccf/scf` instructions [15,30]. + 3. For writing the "Zilog Z80 CPU Test Suite" [30,31]. 4. For his research on the unstable behavior of the `ccf/scf` instructions. * Rodríguez Jódar, Miguel Ángel (mcleod_ideafix) - For his research on the state of the registers after POWER-ON/RESET [34]. + For his research on the state of the registers after POWER-ON/RESET [32]. * 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 [35,36]. + For validating tests on real hardware [31.1,33]. * Sevillano Mancilla, Marta (TheMartian) - For validating tests on real hardware [14]. + For validating tests on real hardware [14.1]. * Stevenson, Dave - 1. For testing the special RESET on real hardware [12]. - 2. For conducting low-level tests on real hardware [37]. + 1. For testing the special RESET on real hardware [13]. + 2. For conducting low-level tests on real hardware [4.4]. * Vučenović, Zoran For writing the Pascal binding. * Weissflog, Andre (Floh) 1. For discovering that the `reti/retn` instructions defer the acceptance of - the maskable interrupt [38]. - 2. For writing the "Visual Z80 Remix" simulator [39]. + the maskable interrupt [34]. + 2. For writing the "Visual Z80 Remix" simulator [35]. * Wilkinson, Oli (evolutional) - For validating tests on real hardware [28]. + For validating tests on real hardware [1]. * Wlodek - For testing the behavior of MEMPTR on real hardware [7,8,9,10]. + For testing the behavior of MEMPTR on real hardware [8,9,10,11]. * Woodmass, Mark (Woody) 1. For his invaluable contributions to the emuscene. 2. For writing the "Z80 Test Suite" [15]. - 3. For his research on the behavior of the `ccf/scf` instructions [40]. + 3. For his research on the behavior of the `ccf/scf` instructions [36]. 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 [20,31,41]. + 2. For his technical documents about the Zilog Z80 [20,29,37]. * ZXGuesser For validating tests on real hardware. @@ -137,30 +137,37 @@ Many thanks to the following individuals (in alphabetical order): 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" rev. 1.0. + 1. https://spectrumcomputing.co.uk/forums/viewtopic.php?t=6102 + 1. https://spectrumcomputing.co.uk/forums/viewtopic.php?p=83384#p83384 + 2. https://spectrumcomputing.co.uk/forums/viewtopic.php?p=83041#p83041 + 3. https://spectrumcomputing.co.uk/forums/viewtopic.php?p=83157#p83157 + 2. https://zx-pk.ru/threads/34173-revers-inzhiniring-z80.html + 3. https://zx-pk.ru/threads/35936-zagadka-plavayushchikh-flagov-scf-ccf-raskryt + a!.html + 4. https://stardot.org.uk/forums/viewtopic.php?t=15464 + 1. https://stardot.org.uk/forums/viewtopic.php?p=211042#p211042 + 2. https://stardot.org.uk/forums/viewtopic.php?p=212021#p212021 + 3. https://stardot.org.uk/forums/viewtopic.php?p=357136#p357136 + 4. https://stardot.org.uk/forums/viewtopic.php?p=212360#p212360 + 5. Banks, David (2018-08-21). "Undocumented Z80 Flags" rev. 1.0. * https://stardot.org.uk/forums/download/file.php?id=39831 * https://github.com/hoglet67/Z80Decoder/wiki/Undocumented-Flags - 4. https://github.com/hoglet67/Z80Decoder/wiki/Unstable-CCF-SCF-Behaviour - 5. https://spectrumcomputing.co.uk/forums/viewtopic.php?p=83041#p83041 - 6. http://wizard.ae.krakow.pl/~jb/qaop/tests.html - 7. https://zxpress.ru/zxnet/zxnet.pc/5909 - 8. https://zx-pk.ru/threads/2506-komanda-bit-n-(hl).html - 9. https://zx-pk.ru/threads/2586-prosba-realshchikam-ot-emulyatorshchikov.html -10. boo_boo; Kladov, Vladimir (2006-03-29). "MEMPTR, Esoteric Register of the + 6. https://github.com/hoglet67/Z80Decoder/wiki/Unstable-CCF-SCF-Behaviour + 7. http://wizard.ae.krakow.pl/~jb/qaop/tests.html + 8. https://zxpress.ru/zxnet/zxnet.pc/5909 + 9. https://zx-pk.ru/threads/2506-komanda-bit-n-(hl).html +10. https://zx-pk.ru/threads/2586-prosba-realshchikam-ot-emulyatorshchikov.html +11. boo_boo; Kladov, Vladimir (2006-03-29). "MEMPTR, Esoteric Register of the Zilog Z80 CPU". * https://zx-pk.ru/showpost.php?p=43688 * https://zx-pk.ru/attachment.php?attachmentid=2984 * https://zx-pk.ru/showpost.php?p=43800 * https://zx-pk.ru/attachment.php?attachmentid=2989 -11. https://sourceforge.net/p/fuse-emulator/mailman/message/6929573 -12. Brewer, Tony (2014-12). "Z80 Special Reset". +12. https://sourceforge.net/p/fuse-emulator/mailman/message/6929573 +13. Brewer, Tony (2014-12). "Z80 Special Reset". * http://primrosebank.net/computers/z80/z80_special_reset.htm -13. https://stardot.org.uk/forums/viewtopic.php?p=357136#p357136 14. https://spectrumcomputing.co.uk/forums/viewtopic.php?t=10555 + 1. https://spectrumcomputing.co.uk/forums/viewtopic.php?p=132144#p132144 15. https://worldofspectrum.org/forums/discussion/20345 16. https://groups.google.com/g/comp.os.cpm/c/HfSTFpaIkuU/m/KotvMWu3bZoJ 17. Cringle, Frank D. (1998-01-28). "Yaze - Yet Another Z80 Emulator" v1.10. @@ -183,24 +190,22 @@ References 26. Harston, Jonathan Graham (2014). "Z80 Opcode Map" v0.10 (revised). * https://mdfs.net/Docs/Comp/Z80/OpCodeMap 27. https://mdfs.net/Software/Z80/Exerciser/Spectrum -28. https://spectrumcomputing.co.uk/forums/viewtopic.php?t=6102 -29. https://github.com/MrKWatkins/ZXSpectrumNextTests -30. https://spectrumcomputing.co.uk/forums/viewtopic.php?p=83157#p83157 -31. Young, Sean (2005-09-18). "Undocumented Z80 Documented, The" v0.91. +28. https://github.com/MrKWatkins/ZXSpectrumNextTests +29. Young, Sean (2005-09-18). "Undocumented Z80 Documented, The" v0.91. * http://www.myquest.nl/z80undocumented * http://www.myquest.nl/z80undocumented/z80-documented-v0.91.pdf -32. https://worldofspectrum.org/forums/discussion/41704 +30. https://worldofspectrum.org/forums/discussion/41704 * http://zxds.raxoft.cz/taps/misc/zexall2.zip -33. https://worldofspectrum.org/forums/discussion/41834 +31. https://worldofspectrum.org/forums/discussion/41834 * http://zxds.raxoft.cz/taps/misc/z80test-1.0.zip * https://github.com/raxoft/z80test -34. https://worldofspectrum.org/forums/discussion/34574 -35. https://worldofspectrum.org/forums/discussion/comment/668760/#Comment_668760 -36. https://jisanchez.com/test-a-dos-placas-de-zx-spectrum -37. https://stardot.org.uk/forums/viewtopic.php?p=212360#p212360 -38. Weissflog, Andre (2021-12-17). "New Cycle-Stepped Z80 Emulator, A". + 1. https://worldofspectrum.org/forums/discussion/comment/668760/#Comment_668 + 760 +32. https://worldofspectrum.org/forums/discussion/34574 +33. https://jisanchez.com/test-a-dos-placas-de-zx-spectrum +34. Weissflog, Andre (2021-12-17). "New Cycle-Stepped Z80 Emulator, A". * https://floooh.github.io/2021/12/17/cycle-stepped-z80.html -39. https://github.com/floooh/v6502r -40. https://groups.google.com/g/comp.sys.sinclair/c/WPsPr6j6w5k/m/O_u1zNQf3VYJ -41. Young, Sean (1997-09-21). "Zilog Z80 CPU Specifications". +35. https://github.com/floooh/v6502r +36. https://groups.google.com/g/comp.sys.sinclair/c/WPsPr6j6w5k/m/O_u1zNQf3VYJ +37. Young, Sean (1997-09-21). "Zilog Z80 CPU Specifications". * http://www.msxnet.org/tech/Z80/z80.zip diff --git a/documentation/Thanks.rst b/documentation/Thanks.rst index a451f79..a0f106f 100644 --- a/documentation/Thanks.rst +++ b/documentation/Thanks.rst @@ -30,66 +30,67 @@ Many thanks to the following individuals (in alphabetical order): * **azesmbog** - 1. For validating tests on real hardware. |re| |fe| :ref:`1` |ren| |ces| + 1. For validating tests on real hardware. |re| |fe| :ref:`1.1` |ren| |ces| 2. For discovering the unstable behavior of the ``ccf/scf`` instructions. - 3. For his invaluable help. + 3. For testing the ``ccf/scf`` instructions on real hardware. |re| |fe| :ref:`2`, :ref:`3` |ren| |ces| + 4. For his invaluable help. * **Banks, David (hoglet)** - 1. For deciphering the additional flag changes of the block instructions. |re| |fe| :ref:`2`, :ref:`3` |ren| |ces| - 2. For his research on the behavior of the ``ccf/scf`` instructions. |re| |fe| :ref:`3`, :ref:`4` |ren| |ces| + 1. For deciphering the additional flag changes of the block instructions. |re| |fe| :ref:`4.1`, :ref:`4.2`, :ref:`5` |ren| |ces| + 2. For his research on the behavior of the ``ccf/scf`` instructions. |re| |fe| :ref:`5`, :ref:`6` |ren| |ces| * **Beliansky, Anatoly (Tolik_Trek)** - * For validating tests on real hardware. |re| |fe| :ref:`5` |ren| |ces| + * For validating tests on real hardware. |re| |fe| :ref:`1.2` |ren| |ces| * **Bobrowski, Jan** - * For fixing the *"Z80 Full Instruction Set Exerciser for Spectrum"*. |re| |fe| :ref:`6` |ren| |ces| + * For fixing the *"Z80 Full Instruction Set Exerciser for Spectrum"*. |re| |fe| :ref:`7` |ren| |ces| * **boo_boo** - * For deciphering the behavior of MEMPTR. |re| |fe| :ref:`7`, :ref:`8`, :ref:`9`, :ref:`10` |ren| |ces| + * For deciphering the behavior of MEMPTR. |re| |fe| :ref:`8`, :ref:`9`, :ref:`10`, :ref:`11` |ren| |ces| * **Brady, Stuart** - * For his research on the behavior of the ``ccf/scf`` instructions. |re| |fe| :ref:`11` |ren| |ces| + * For his research on the behavior of the ``ccf/scf`` instructions. |re| |fe| :ref:`12` |ren| |ces| * **Brewer, Tony** - 1. For his research on the special RESET. |re| |fe| :ref:`12`, :ref:`13` |ren| |ces| - 2. For helping to decipher the additional flag changes of the block instructions. |re| |fe| :ref:`2` |ren| |ces| - 3. For conducting low-level tests on real hardware. |re| |fe| :ref:`2` |ren| |ces| + 1. For his research on the special RESET. |re| |fe| :ref:`4.3`, :ref:`13` |ren| |ces| + 2. For helping to decipher the additional flag changes of the block instructions. |re| |fe| :ref:`4` |ren| |ces| + 3. For conducting low-level tests on real hardware. |re| |fe| :ref:`4` |ren| |ces| 4. For helping me to test different undocumented behaviors of the Zilog Z80. * **Bystrov, Dmitry (Alone Coder)** - * For validating tests on real hardware. |re| |fe| :ref:`5` |ren| |ces| + * For validating tests on real hardware. |re| |fe| :ref:`1.2` |ren| |ces| * **Chandler, Richard** 1. For his corrections to the documentation. - 2. For validating tests on real hardware. |re| |fe| :ref:`14` |ren| |ces| + 2. For validating tests on real hardware. |re| |fe| :ref:`14` |ren| |ces| * **Chunin, Roman (CHRV)** - * For testing the behavior of MEMPTR on real hardware. |re| |fe| :ref:`7`, :ref:`8`, :ref:`9`, :ref:`10` |ren| |ces| + * For testing the behavior of MEMPTR on real hardware. |re| |fe| :ref:`8`, :ref:`9`, :ref:`10`, :ref:`11` |ren| |ces| * **Conway, Simon (BadBeard)** - * For validating the *"Z80 Test Suite"* on several Z80 clones. |re| |fe| :ref:`15` |ren| |ces| + * For validating the *"Z80 Test Suite"* on several Z80 clones. |re| |fe| :ref:`15` |ren| |ces| * **Cooke, Simon** - * For discovering how the ``out (c),0`` instruction behaves on the Zilog Z80 CMOS. |re| |fe| :ref:`16` |ren| |ces| + * For discovering how the ``out (c),0`` instruction behaves on the Zilog Z80 CMOS. |re| |fe| :ref:`16` |ren| |ces| * **Cringle, Frank D.** - * For writing the *"Z80 Instruction Set Exerciser"*. |re| |fe| :ref:`17` |ren| |ces| + * For writing the *"Z80 Instruction Set Exerciser"*. |re| |fe| :ref:`17` |ren| |ces| * **Devic, Goran** - * For his research on undocumented behaviors of the Z80 CPU. |re| |fe| :ref:`18` |ren| |ces| + * For his research on undocumented behaviors of the Z80 CPU. |re| |fe| :ref:`18` |ren| |ces| * **Dunn, Paul (ZXDunny)** @@ -101,33 +102,33 @@ Many thanks to the following individuals (in alphabetical order): * **Flammenkamp, Achim** - * For his article on Z80 interrupts. |re| |fe| :ref:`19` |ren| |ces| + * For his article on Z80 interrupts. |re| |fe| :ref:`19` |ren| |ces| * **Gimeno Fortea, Pedro** - 1. For his research work. |re| |fe| :ref:`20` |ren| |ces| - 2. For writing the first-ever ZX Spectrum emulator. |re| |fe| :ref:`21`, :ref:`22` |ren| |ces| + 1. For his research work. |re| |fe| :ref:`20` |ren| |ces| + 2. For writing the first-ever ZX Spectrum emulator. |re| |fe| :ref:`21`, :ref:`22` |ren| |ces| * **goodboy** - * For testing the behavior of MEMPTR on real hardware. |re| |fe| :ref:`7`, :ref:`8`, :ref:`9`, :ref:`10` |ren| |ces| + * For testing the behavior of MEMPTR on real hardware. |re| |fe| :ref:`8`, :ref:`9`, :ref:`10`, :ref:`11` |ren| |ces| * **Greenway, Ian** - * For testing the behavior of the ``ccf/scf`` instructions on real hardware. |re| |fe| :ref:`11`, :ref:`23` |ren| |ces| + * For testing the ``ccf/scf`` instructions on real hardware. |re| |fe| :ref:`12`, :ref:`23` |ren| |ces| * **Harston, Jonathan Graham** 1. For his research work. - 2. For his technical documents about the Zilog Z80. |re| |fe| :ref:`24`, :ref:`25`, :ref:`26` |ren| |ces| - 3. For porting the *"Z80 Instruction Set Exerciser"* to the ZX Spectrum. |re| |fe| :ref:`27` |ren| |ces| + 2. For his technical documents about the Zilog Z80. |re| |fe| :ref:`24`, :ref:`25`, :ref:`26` |ren| |ces| + 3. For porting the *"Z80 Instruction Set Exerciser"* to the ZX Spectrum. |re| |fe| :ref:`27` |ren| |ces| * **Helcmanovsky, Peter (Ped7g)** 1. For helping me to write the *"IN-MEMPTR"* test. - 2. For writing the *"Z80 Block Flags Test"*. |re| |fe| :ref:`28`, :ref:`29` |ren| |ces| - 3. For writing the *"Z80 CCF SCF Outcome Stability"* test. |re| |fe| :ref:`29` |ren| |ces| - 4. For writing the *"Z80 INT Skip"* test. |re| |fe| :ref:`29` |ren| |ces| + 2. For writing the *"Z80 Block Flags Test"*. |re| |fe| :ref:`1`, :ref:`28` |ren| |ces| + 3. For writing the *"Z80 CCF SCF Outcome Stability"* test. |re| |fe| :ref:`28` |ren| |ces| + 4. For writing the *"Z80 INT Skip"* test. |re| |fe| :ref:`28` |ren| |ces| 5. For his research on the unstable behavior of the ``ccf/scf`` instructions. 6. For his invaluable help. @@ -137,7 +138,7 @@ Many thanks to the following individuals (in alphabetical order): * **icebear** - * For testing the behavior of MEMPTR on real hardware. |re| |fe| :ref:`7`, :ref:`8`, :ref:`9`, :ref:`10` |ren| |ces| + * For testing the behavior of MEMPTR on real hardware. |re| |fe| :ref:`8`, :ref:`9`, :ref:`10`, :ref:`11` |ren| |ces| * **ICEknight** @@ -145,11 +146,11 @@ Many thanks to the following individuals (in alphabetical order): * **Kladov, Vladimir** - * For deciphering the behavior of MEMPTR. |re| |fe| :ref:`7`, :ref:`8`, :ref:`9`, :ref:`10` |ren| |ces| + * For deciphering the behavior of MEMPTR. |re| |fe| :ref:`8`, :ref:`9`, :ref:`10`, :ref:`11` |ren| |ces| * **Krook, Magnus** - * For validating tests on real hardware. |re| |fe| :ref:`30` |ren| |ces| + * For validating tests on real hardware. |re| |fe| :ref:`1.3` |ren| |ces| * **London, Matthew (mattinx)** @@ -161,11 +162,11 @@ Many thanks to the following individuals (in alphabetical order): * **Molodtsov, Aleksandr** - * For testing the behavior of MEMPTR on real hardware. |re| |fe| :ref:`7`, :ref:`8`, :ref:`9`, :ref:`10` |ren| |ces| + * For testing the behavior of MEMPTR on real hardware. |re| |fe| :ref:`8`, :ref:`9`, :ref:`10`, :ref:`11` |ren| |ces| * **Nair, Arjun** - * For validating tests on real hardware. |re| |fe| :ref:`28` |ren| |ces| + * For validating tests on real hardware. |re| |fe| :ref:`1` |ren| |ces| * **Nicolás-González, César** @@ -182,18 +183,18 @@ Many thanks to the following individuals (in alphabetical order): * **Ownby, Matthew P.** - * For his research on the state of the registers after POWER-ON. |re| |fe| :ref:`31` |ren| |ces| + * For his research on the state of the registers after POWER-ON. |re| |fe| :ref:`29` |ren| |ces| * **Rak, Patrik** - 1. For improving the *"Z80 Instruction Set Exerciser for Spectrum"*. |re| |fe| :ref:`32` |ren| |ces| - 2. For deciphering the behavior of the ``ccf/scf`` instructions. |re| |fe| :ref:`15`, :ref:`32` |ren| |ces| - 3. For writing the *"Zilog Z80 CPU Test Suite"*. |re| |fe| :ref:`32`, :ref:`33` |ren| |ces| + 1. For improving the *"Z80 Instruction Set Exerciser for Spectrum"*. |re| |fe| :ref:`30` |ren| |ces| + 2. For deciphering the behavior of the ``ccf/scf`` instructions. |re| |fe| :ref:`15`, :ref:`30` |ren| |ces| + 3. For writing the *"Zilog Z80 CPU Test Suite"*. |re| |fe| :ref:`30`, :ref:`31` |ren| |ces| 4. For his research on the unstable behavior of the ``ccf/scf`` instructions. * **Rodríguez Jódar, Miguel Ángel (mcleod_ideafix)** - * For his research on the state of the registers after POWER-ON/RESET. |re| |fe| :ref:`34` |ren| |ces| + * For his research on the state of the registers after POWER-ON/RESET. |re| |fe| :ref:`32` |ren| |ces| * **Rodríguez Palomino, Mario (r-lyeh)** @@ -205,16 +206,16 @@ Many thanks to the following individuals (in alphabetical order): * **Sánchez Ordiñana, José Ismael (Vaporatorius)** - * For validating tests on real hardware. |re| |fe| :ref:`35`, :ref:`36` |ren| |ces| + * For validating tests on real hardware. |re| |fe| :ref:`31.1`, :ref:`33` |ren| |ces| * **Sevillano Mancilla, Marta (TheMartian)** - * For validating tests on real hardware. |re| |fe| :ref:`14` |ren| |ces| + * For validating tests on real hardware. |re| |fe| :ref:`14.1` |ren| |ces| * **Stevenson, Dave** - 1. For testing the special RESET on real hardware. |re| |fe| :ref:`12` |ren| |ces| - 2. For conducting low-level tests on real hardware. |re| |fe| :ref:`37` |ren| |ces| + 1. For testing the special RESET on real hardware. |re| |fe| :ref:`13` |ren| |ces| + 2. For conducting low-level tests on real hardware. |re| |fe| :ref:`4.4` |ren| |ces| * **Vučenović, Zoran** @@ -222,29 +223,29 @@ Many thanks to the following individuals (in alphabetical order): * **Weissflog, Andre (Floh)** - 1. For discovering that the ``reti/retn`` instructions defer the acceptance of the maskable interrupt. |re| |fe| :ref:`38` |ren| |ces| - 2. For writing the *"Visual Z80 Remix"* simulator. |re| |fe| :ref:`39` |ren| |ces| + 1. For discovering that the ``reti/retn`` instructions defer the acceptance of the maskable interrupt. |re| |fe| :ref:`34` |ren| |ces| + 2. For writing the *"Visual Z80 Remix"* simulator. |re| |fe| :ref:`35` |ren| |ces| * **Wilkinson, Oli (evolutional)** - * For validating tests on real hardware. |re| |fe| :ref:`28` |ren| |ces| + * For validating tests on real hardware. |re| |fe| :ref:`1` |ren| |ces| * **Wlodek** - * For testing the behavior of MEMPTR on real hardware. |re| |fe| :ref:`7`, :ref:`8`, :ref:`9`, :ref:`10` |ren| |ces| + * For testing the behavior of MEMPTR on real hardware. |re| |fe| :ref:`8`, :ref:`9`, :ref:`10`, :ref:`11` |ren| |ces| * **Woodmass, Mark (Woody)** 1. For his invaluable contributions to the emuscene. - 2. For writing the *"Z80 Test Suite"*. |re| |fe| :ref:`15` |ren| |ces| - 3. For his research on the behavior of the `ccf/scf` instructions. |re| |fe| :ref:`40` |ren| |ces| + 2. For writing the *"Z80 Test Suite"*. |re| |fe| :ref:`15` |ren| |ces| + 3. For his research on the behavior of the `ccf/scf` instructions. |re| |fe| :ref:`36` |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:`20`, :ref:`31`, :ref:`41` |ren| |ces| + 2. For his technical documents about the Zilog Z80. |re| |fe| :ref:`20`, :ref:`29`, :ref:`37` |ren| |ces| * **ZXGuesser** @@ -256,67 +257,112 @@ References 1. - .. _r1: + .. _r_1: - https://spectrumcomputing.co.uk/forums/viewtopic.php?p=83384#p83384 + https://spectrumcomputing.co.uk/forums/viewtopic.php?t=6102 + + 1. + + .. _r_1_1: + + https://spectrumcomputing.co.uk/forums/viewtopic.php?p=83384#p83384 + + 2. + + .. _r_1_2: + + https://spectrumcomputing.co.uk/forums/viewtopic.php?p=83041#p83041 + + 3. + + .. _r_1_3: + + https://spectrumcomputing.co.uk/forums/viewtopic.php?p=83157#p83157 2. - .. _r2: + .. _r_2: + + https://zx-pk.ru/threads/34173-revers-inzhiniring-z80.html + +3. + + .. _r_3: + + https://zx-pk.ru/threads/35936-zagadka-plavayushchikh-flagov-scf-ccf-raskryta!.html + +4. + + .. _r_4: 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 + 1. -3. + .. _r_4_1: - .. _r3: + https://stardot.org.uk/forums/viewtopic.php?p=211042#p211042 - Banks, David (2018-08-21). *"Undocumented Z80 Flags"* rev. 1.0. + 2. - * https://stardot.org.uk/forums/download/file.php?id=39831 - * https://github.com/hoglet67/Z80Decoder/wiki/Undocumented-Flags + .. _r_4_2: -4. + https://stardot.org.uk/forums/viewtopic.php?p=212021#p212021 - .. _r4: + 3. - https://github.com/hoglet67/Z80Decoder/wiki/Unstable-CCF-SCF-Behaviour + .. _r_4_3: + + https://stardot.org.uk/forums/viewtopic.php?p=357136#p357136 + + 4. + + .. _r_4_4: + + https://stardot.org.uk/forums/viewtopic.php?p=212360#p212360 5. - .. _r5: + .. _r_5: - https://spectrumcomputing.co.uk/forums/viewtopic.php?p=83041#p83041 + Banks, David (2018-08-21). *"Undocumented Z80 Flags"* rev. 1.0. + + * https://stardot.org.uk/forums/download/file.php?id=39831 + * https://github.com/hoglet67/Z80Decoder/wiki/Undocumented-Flags 6. - .. _r6: + .. _r_6: - http://wizard.ae.krakow.pl/~jb/qaop/tests.html + https://github.com/hoglet67/Z80Decoder/wiki/Unstable-CCF-SCF-Behaviour 7. - .. _r7: + .. _r_7: - https://zxpress.ru/zxnet/zxnet.pc/5909 + http://wizard.ae.krakow.pl/~jb/qaop/tests.html 8. - .. _r8: + .. _r_8: - https://zx-pk.ru/threads/2506-komanda-bit-n-(hl).html + https://zxpress.ru/zxnet/zxnet.pc/5909 9. - .. _r9: + .. _r_9: - https://zx-pk.ru/threads/2586-prosba-realshchikam-ot-emulyatorshchikov.html + https://zx-pk.ru/threads/2506-komanda-bit-n-(hl).html 10. - .. _r10: + .. _r_10: + + https://zx-pk.ru/threads/2586-prosba-realshchikam-ot-emulyatorshchikov.html + +11. + + .. _r_11: boo_boo; Kladov, Vladimir (2006-03-29). *"MEMPTR, Esoteric Register of the Zilog Z80 CPU"*. @@ -325,214 +371,196 @@ References * https://zx-pk.ru/showpost.php?p=43800 * https://zx-pk.ru/attachment.php?attachmentid=2989 -11. +12. - .. _r11: + .. _r_12: - https://sourceforge.net/p/fuse-emulator/mailman/message/6929573 + https://sourceforge.net/p/fuse-emulator/mailman/message/6929573 -12. +13. - .. _r12: + .. _r_13: - Brewer, Tony (2014-12). *"Z80 Special Reset"*. + Brewer, Tony (2014-12). *"Z80 Special Reset"*. - * http://primrosebank.net/computers/z80/z80_special_reset.htm + * http://primrosebank.net/computers/z80/z80_special_reset.htm -13. +14. - .. _r13: + .. _r_14: - https://stardot.org.uk/forums/viewtopic.php?p=357136#p357136 + https://spectrumcomputing.co.uk/forums/viewtopic.php?t=10555 -14. + 1. - .. _r14: + .. _r_14_1: - https://spectrumcomputing.co.uk/forums/viewtopic.php?t=10555 + https://spectrumcomputing.co.uk/forums/viewtopic.php?p=132144#p132144 15. - .. _r15: + .. _r_15: - https://worldofspectrum.org/forums/discussion/20345 + https://worldofspectrum.org/forums/discussion/20345 16. - .. _r16: + .. _r_16: - https://groups.google.com/g/comp.os.cpm/c/HfSTFpaIkuU/m/KotvMWu3bZoJ + https://groups.google.com/g/comp.os.cpm/c/HfSTFpaIkuU/m/KotvMWu3bZoJ 17. - .. _r17: + .. _r_17: - Cringle, Frank D. (1998-01-28). *"Yaze - Yet Another Z80 Emulator"* v1.10. + 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 + * ftp://ftp.ping.de/pub/misc/emulators/yaze-1.10.tar.gz 18. - .. _r18: + .. _r_18: - https://baltazarstudios.com/zilog-z80-undocumented-behavior + https://baltazarstudios.com/zilog-z80-undocumented-behavior 19. - .. _r19: + .. _r_19: - Flammenkamp, Achim. *"Interrupt Behaviour of the Z80 CPU"*. + Flammenkamp, Achim. *"Interrupt Behaviour of the Z80 CPU"*. - * http://z80.info/interrup.htm + * http://z80.info/interrup.htm 20. - .. _r20: + .. _r_20: - Young, Sean (1998-10). *"Z80 Undocumented Features (in Software Behaviour)"* v0.3. + Young, Sean (1998-10). *"Z80 Undocumented Features (in Software Behaviour)"* v0.3. - * http://www.msxnet.org/tech/Z80/z80undoc.txt + * http://www.msxnet.org/tech/Z80/z80undoc.txt 21. - .. _r21: + .. _r_21: - https://elmundodelspectrum.com/desenterrando-el-primer-emulador-de-spectrum + https://elmundodelspectrum.com/desenterrando-el-primer-emulador-de-spectrum 22. - .. _r22: + .. _r_22: - https://elmundodelspectrum.com/con-vosotros-el-emulador-de-pedro-gimeno-1989 + https://elmundodelspectrum.com/con-vosotros-el-emulador-de-pedro-gimeno-1989 23. - .. _r23: + .. _r_23: - https://sourceforge.net/p/fuse-emulator/mailman/message/4502844 + https://sourceforge.net/p/fuse-emulator/mailman/message/4502844 24. - .. _r24: + .. _r_24: - Harston, Jonathan Graham (2008). *"Full Z80 Opcode List Including Undocumented Opcodes"* v0.11 (revised). + Harston, Jonathan Graham (2008). *"Full Z80 Opcode List Including Undocumented Opcodes"* v0.11 (revised). - * https://mdfs.net/Docs/Comp/Z80/OpList + * https://mdfs.net/Docs/Comp/Z80/OpList 25. - .. _r25: + .. _r_25: - Harston, Jonathan Graham (2012). *"Z80 Microprocessor Undocumented Instructions"* v0.15. + Harston, Jonathan Graham (2012). *"Z80 Microprocessor Undocumented Instructions"* v0.15. - * https://mdfs.net/Docs/Comp/Z80/UnDocOps + * https://mdfs.net/Docs/Comp/Z80/UnDocOps 26. - .. _r26: + .. _r_26: - Harston, Jonathan Graham (2014). *"Z80 Opcode Map"* v0.10 (revised). + Harston, Jonathan Graham (2014). *"Z80 Opcode Map"* v0.10 (revised). - * https://mdfs.net/Docs/Comp/Z80/OpCodeMap + * https://mdfs.net/Docs/Comp/Z80/OpCodeMap 27. - .. _r27: + .. _r_27: - https://mdfs.net/Software/Z80/Exerciser/Spectrum + https://mdfs.net/Software/Z80/Exerciser/Spectrum 28. - .. _r28: + .. _r_28: - https://spectrumcomputing.co.uk/forums/viewtopic.php?t=6102 + https://github.com/MrKWatkins/ZXSpectrumNextTests 29. - .. _r29: + .. _r_29: + + Young, Sean (2005-09-18). *"Undocumented Z80 Documented, The"* v0.91. - https://github.com/MrKWatkins/ZXSpectrumNextTests + * http://www.myquest.nl/z80undocumented + * http://www.myquest.nl/z80undocumented/z80-documented-v0.91.pdf 30. - .. _r30: + .. _r_30: - https://spectrumcomputing.co.uk/forums/viewtopic.php?p=83157#p83157 + https://worldofspectrum.org/forums/discussion/41704 + + * http://zxds.raxoft.cz/taps/misc/zexall2.zip 31. - .. _r31: + .. _r_31: - Young, Sean (2005-09-18). *"Undocumented Z80 Documented, The"* v0.91. + https://worldofspectrum.org/forums/discussion/41834 - * http://www.myquest.nl/z80undocumented - * http://www.myquest.nl/z80undocumented/z80-documented-v0.91.pdf + * http://zxds.raxoft.cz/taps/misc/z80test-1.0.zip + * https://github.com/raxoft/z80test -32. + 1. - .. _r32: + .. _r_31_1: - https://worldofspectrum.org/forums/discussion/41704 + https://worldofspectrum.org/forums/discussion/comment/668760/#Comment_668760 - * http://zxds.raxoft.cz/taps/misc/zexall2.zip +32. -33. + .. _r_32: - .. _r33: + https://worldofspectrum.org/forums/discussion/34574 - https://worldofspectrum.org/forums/discussion/41834 +33. - * http://zxds.raxoft.cz/taps/misc/z80test-1.0.zip - * https://github.com/raxoft/z80test + .. _r_33: + + https://jisanchez.com/test-a-dos-placas-de-zx-spectrum 34. - .. _r34: + .. _r_34: + + Weissflog, Andre (2021-12-17). *"New Cycle-Stepped Z80 Emulator, A"*. - https://worldofspectrum.org/forums/discussion/34574 + * https://floooh.github.io/2021/12/17/cycle-stepped-z80.html 35. - .. _r35: + .. _r_35: - https://worldofspectrum.org/forums/discussion/comment/668760/#Comment_668760 + https://github.com/floooh/v6502r 36. - .. _r36: + .. _r_36: - https://jisanchez.com/test-a-dos-placas-de-zx-spectrum + https://groups.google.com/g/comp.sys.sinclair/c/WPsPr6j6w5k/m/O_u1zNQf3VYJ 37. - .. _r37: - - https://stardot.org.uk/forums/viewtopic.php?p=212360#p212360 - -38. - - .. _r38: - - Weissflog, Andre (2021-12-17). *"New Cycle-Stepped Z80 Emulator, A"*. - - * https://floooh.github.io/2021/12/17/cycle-stepped-z80.html - -39. - - .. _r39: - - https://github.com/floooh/v6502r - -40. - - .. _r40: - - https://groups.google.com/g/comp.sys.sinclair/c/WPsPr6j6w5k/m/O_u1zNQf3VYJ - -41. - - .. _r41: + .. _r_37: - Young, Sean (1997-09-21). *"Zilog Z80 CPU Specifications"*. + Young, Sean (1997-09-21). *"Zilog Z80 CPU Specifications"*. - * http://www.msxnet.org/tech/Z80/z80.zip + * http://www.msxnet.org/tech/Z80/z80.zip