-
-
Notifications
You must be signed in to change notification settings - Fork 55
Expand file tree
/
Copy pathTHANKS
More file actions
237 lines (233 loc) · 11.1 KB
/
THANKS
File metadata and controls
237 lines (233 loc) · 11.1 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
Many thanks to the following individuals (in alphabetical order):
* Akimov, Vadim (lvd)
For testing the library on many different platforms and CPU architectures.
* Anisimov, Alexey (SoftLight)
For testing the `ccf/scf` instructions on real hardware [1].
* azesmbog
1. For validating tests on real hardware [2.1].
2. For discovering the unstable behavior of the `ccf/scf` instructions.
3. For testing the `ccf/scf` instructions on real hardware [1, 3].
4. For his invaluable help.
* Banks, David (hoglet)
1. For deciphering the additional flag changes of the block instructions
[4.1, 4.2, 5].
2. For his research on the `ccf/scf` instructions [5, 6].
* Beliansky, Anatoly (Tolik_Trek)
For validating tests on real hardware [2.2].
* Bobrowski, Jan
For fixing "Z80 Full Instruction Set Exerciser for Spectrum" [7].
* boo_boo
For deciphering the behavior of MEMPTR [8, 9, 10, 11].
* Brady, Stuart
For his research on the `ccf/scf` instructions [12].
* Brewer, Tony
1. For his research on the special RESET [4.3, 13].
2. For helping to decipher the additional flag changes of the block
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 [2.2].
* Chaikin, Mikhail (P321)
For testing the `ccf/scf` instructions on real hardware [1].
* 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 [8, 9, 10, 11].
* Conway, Simon (BadBeard)
For validating "Z80 Test Suite" on several Z80 clones [15].
* Cooke, Simon
For discovering how the `out (c),0` instruction behaves on the Zilog Z80
CMOS [16].
* Cringle, Frank D.
For writing "Z80 Instruction Set Exerciser" [17].
* Devic, Goran
For his research on undocumented behaviors of the Z80 CPU [18].
* Dmitriev, Dmitry (DDp)
For testing the `ccf/scf` instructions on real hardware [3].
* 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].
* Gimeno Fortea, Pedro
1. For his research work [20].
2. For writing the first-ever ZX Spectrum emulator [21, 22].
* Greenway, Ian
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 "Z80 Instruction Set Exerciser" to the ZX Spectrum [27].
* Helcmanovsky, Peter (Ped7g)
1. For helping me to write "IN-MEMPTR".
2. For writing "Z80 Block Flags Test" [2, 28].
3. For writing "Z80 CCF SCF Outcome Stability" [28].
4. For writing "Z80 INT Skip" [28].
5. For writing "FDDD2", "Z80 DDFD3", "Z80 IM1 vs JR" and many other tests.
6. For his research on the unstable behavior of the `ccf/scf` instructions.
7. 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 [8, 9, 10, 11].
* ICEknight
For validating tests on real hardware.
* Ilyichev, Ivan (ivang78)
For testing the behavior of MEMPTR on real hardware [29].
* Kladov, Vladimir
For deciphering the behavior of MEMPTR [8, 9, 10, 11].
* Kovrigin, Alexey (creator)
For testing the `ccf/scf` instructions on real hardware [1, 3].
* Krook, Magnus
For validating tests on real hardware [2.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 [8, 9, 10, 11].
* Nair, Arjun
For validating tests on real hardware [2].
* Nicolás-González, César
For helping me to investigate the unstable behavior of the `ccf/scf`
instructions.
* Ortega Sosa, Sofía
1. For optimizing the emulator.
2. For her help and support.
* 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 [30].
* Rak, Patrik
1. For improving "Z80 Instruction Set Exerciser for Spectrum" [31].
2. For deciphering the behavior of the `ccf/scf` instructions [15, 31].
3. For writing "Zilog Z80 CPU Test Suite" [31, 32].
4. For his research on the unstable behavior of the `ccf/scf` instructions.
* Rodríguez Jódar, Miguel Ángel (mcleod_ideafix)
1. For his research on the state of the registers after POWER-ON/RESET [33].
2. For writing "Z80 Initial Condition Retriever" [33.1].
* 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.
* Sanarin, Dmitry (haywire)
For testing the `ccf/scf` instructions on real hardware [3].
* Sánchez Ordiñana, José Ismael (Vaporatorius)
For validating tests on real hardware [32.1, 34].
* Sapach, Michael (cafedead)
For writing "CPD-Test" [29].
* Sevillano Mancilla, Marta (TheMartian)
For validating tests on real hardware [14.1].
* Stevenson, Dave
1. For testing the special RESET on real hardware [13].
2. For conducting low-level tests on real hardware [4.4].
* Titov, Andrey (Titus)
For his research on the `ccf/scf` instructions [1, 3].
* Vasin, Yuriy (goodboy)
1. For testing the behavior of MEMPTR on real hardware [8, 9, 10, 11, 29].
2. For testing the `ccf/scf` instructions on real hardware [1, 29].
* 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 [35].
2. For writing the "Visual Z80 Remix" simulator [36].
* Wilkinson, Oli (evolutional)
For validating tests on real hardware [2].
* Wlodek
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 "Z80 Test Suite" [15].
3. For writing "ED777F", "FDDD", "EI48K", "EIHALT", "HALT2INT", "IFF2 Bug",
"Super HALT Invaders Test" and many other tests.
4. For his research on the `ccf/scf` instructions [37].
* Young, Sean
1. For his research work.
2. For his technical documents about the Zilog Z80 [20, 30, 38].
* Zarubin, Stanislav (JeRrS)
For testing the `ccf/scf` instructions on real hardware [3, 29].
* ZXGuesser
For validating tests on real hardware.
References
==========
1. https://zx-pk.ru/threads/34173-revers-inzhiniring-z80.html
2. 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
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
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
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
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".
* http://z80.info/interrup.htm
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).
* http://www.mdfsnet.f9.co.uk/Docs/Comp/Z80/OpList
25. Harston, Jonathan Graham (2012). "Z80 Microprocessor Undocumented
Instructions" v0.15.
* http://mdfs.net/Docs/Comp/Z80/UnDocOps
26. Harston, Jonathan Graham (2014). "Z80 Opcode Map" v0.10 (revised).
* http://mdfs.net/Docs/Comp/Z80/OpCodeMap
27. http://mdfs.net/Software/Z80/Exerciser/Spectrum
28. https://github.com/MrKWatkins/ZXSpectrumNextTests
29. https://zx-pk.ru/threads/36139-cpd-test-dlya-proverki-izmeneniya-registra-me
mptr-instruktsiyami-proverte-na-reale-plz.html
30. 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
31. https://worldofspectrum.org/forums/discussion/41704
* http://zxds.raxoft.cz/taps/misc/zexall2.zip
32. https://worldofspectrum.org/forums/discussion/41834
* http://zxds.raxoft.cz/taps/misc/z80test-1.0.zip
* https://github.com/raxoft/z80test
1. https://worldofspectrum.org/forums/discussion/comment/668760/#Comment_668
760
33. https://worldofspectrum.org/forums/discussion/34574
1. https://worldofspectrum.org/forums/discussion/comment/539714/#Comment_539
714
* http://zxprojects.com/images/stories/z80_startup/reg_start_value.zip
34. https://jisanchez.com/test-a-dos-placas-de-zx-spectrum
35. Weissflog, Andre (2021-12-17). "New Cycle-Stepped Z80 Emulator, A".
* https://floooh.github.io/2021/12/17/cycle-stepped-z80.html
36. https://github.com/floooh/v6502r
37. https://groups.google.com/g/comp.sys.sinclair/c/WPsPr6j6w5k/m/O_u1zNQf3VYJ
38. Young, Sean (1997-09-21). "Zilog Z80 CPU Specifications".
* http://www.msxnet.org/tech/Z80/z80.zip