Testing emulators using z80test-1.0. Quick results
Re: Testing emulators using z80test-1.0. Quck results
Which instruction are these ?
ALO A, A
ALO something
SLIA A
SRO (xy)
ALO A, A
ALO something
SLIA A
SRO (xy)
Last edited by RMartins on Tue May 22, 2018 4:04 pm, edited 1 time in total.
Re: Testing emulators using z80test-1.0. Quck results
There are some inconsistent results too
Running `Z80Full.tap`
Gives 002 errors, for example.
and I see that instruction INC RR an INC XY (apparently they are different things (could it be second is for iX and iY ?) are returned as OK.
But these return as errors, when running `Z80ccf.tap`
It's not running a subset of the full test, or something fishy is going on.
NOTE: I was using FUSE, for test.
Running `Z80Full.tap`
Gives 002 errors, for example.
and I see that instruction INC RR an INC XY (apparently they are different things (could it be second is for iX and iY ?) are returned as OK.
But these return as errors, when running `Z80ccf.tap`
It's not running a subset of the full test, or something fishy is going on.
NOTE: I was using FUSE, for test.
Re: Testing emulators using z80test-1.0. Quck results
That's true. I have Fuse 1.5.3 compiled from sources by myself running Fedora 28 (GCC 8.1.1). z80full fails two tests. But z80ccf fails 65 tests, first the 000 SELF TEST and then from INC RR fails many tests, JMP instructions included.RMartins wrote: ↑Tue May 22, 2018 3:43 pm There are some inconsistent results too
Running `Z80Full.tap`
Gives 002 errors, for example.
and I see that instruction INC RR an INC XY (apparently they are different things (could it be second is for iX and iY ?) are returned as OK.
But these return as errors, when running `Z80ccf.tap`
It's not running a subset of the full test, or something fishy is going on.
NOTE: I was using FUSE, for test.
JSpeccy pass all tests OK from z80ccf. I'm very confident with Patrik's tests. I suspect from some problem with Fuse.
Re: Testing emulators using z80test-1.0. Quck results
Independently of the quality of the test tool, it might have some specific dependency on a specific instruction, that if it fails, it might trigger a lot of other fails.
What I mean, is a simple fail, might trigger a lot more fails, because the test tool relies on that specific bad instruction, to make other tests.
What I mean, is a simple fail, might trigger a lot more fails, because the test tool relies on that specific bad instruction, to make other tests.
Re: Testing emulators using z80test-1.0. Quck results
Source: https://faqwiki.zxnet.co.uk/wiki/Z80Patrik Rak however later discovered that the way how the flags 5 and 3 are affected after SCF/CCF actually depends on the previous instruction completed. In case of genuine Zilog CPU, if an instruction modifies the flags, the immediately following SCF/CCF does move of bits 5 and 3 from A to F, whereas if an instruction doesn't modify the flags (and after interrupt), the SCF/CCF does OR of bits 5 and 3 from A to F. In case of NEC and other clones, it is similar, except that instead of OR it does AND with some unknown value, making the result unreliable.
The z80ccf.tap is perhaps related to that?
Re: Testing emulators using z80test-1.0. Quck results
Yes, it's related.druellan wrote: ↑Tue May 22, 2018 5:57 pmSource: https://faqwiki.zxnet.co.uk/wiki/Z80Patrik Rak however later discovered that the way how the flags 5 and 3 are affected after SCF/CCF actually depends on the previous instruction completed. In case of genuine Zilog CPU, if an instruction modifies the flags, the immediately following SCF/CCF does move of bits 5 and 3 from A to F, whereas if an instruction doesn't modify the flags (and after interrupt), the SCF/CCF does OR of bits 5 and 3 from A to F. In case of NEC and other clones, it is similar, except that instead of OR it does AND with some unknown value, making the result unreliable.
The z80ccf.tap is perhaps related to that?
Re: Testing emulators using z80test-1.0. Quck results
OK, then a great test to do, is save the app into a snapshot after break, and then run it on a real Spectrum, using DIVIde, DivMMC or similar.
I'm curious to run this on the ZX Next too
I'm curious to run this on the ZX Next too
Re: Testing emulators using z80test-1.0. Quck results
Last edited by MonkZy on Tue May 22, 2018 6:51 pm, edited 1 time in total.
Re: Testing emulators using z80test-1.0. Quck results
[mention]MonkZy[/mention]
Thanks by the test. JSpeccy shares the Z80 core with ZX Baremulator, simply translated from Java to C++.
Are you using a mini-LCD monitor or a Raspberry's LCD touch screen?. Your system is really cool...
Thanks by the test. JSpeccy shares the Z80 core with ZX Baremulator, simply translated from Java to C++.
Are you using a mini-LCD monitor or a Raspberry's LCD touch screen?. Your system is really cool...
Re: Testing emulators using z80test-1.0. Quck results
The screen is a cheap Chinese clone from eBay, it is a copy of the Waveshare 5" display. It does have a touch screen but I don't use it as the driver support is not good. The case is designed and printed by me I will open a thread about it, one day. I am a huge ZXBaremulator fan.
Re: Testing emulators using z80test-1.0. Quck results
My ZX Spectrum emulator project: https://softspectrum48.weebly.com.
Re: Testing emulators using z80test-1.0. Quck results
Re: Testing emulators using z80test-1.0. Quck results
Thanks . Gyroscope is tough - Fuse plays it better (as does Spectramine and probably many others).
My ZX Spectrum emulator project: https://softspectrum48.weebly.com.
Re: Testing emulators using z80test-1.0. Quck results
I can't hear any specially hard to emulate on Gyroscope music. It's a simple tune, really. From my POV emulate Fairlight, Sidewize, Cobra, Mad Mix Game musics or the digitized voice in Cobra's Arc is hardest than Gyroscope tune.
Re: Testing emulators using z80test-1.0. Quck results
Well, maybe not, but my emulator stutters a bit when playing the Gyroscope music, though it seems to be doing fine with most other games. I gave Cobra's Arc a try and it sounded terrible, but I'm not quite sure how it should sound (I have no hardware to check against).
Edit: Sorry about taking this off topic.
My ZX Spectrum emulator project: https://softspectrum48.weebly.com.
Re: Testing emulators using z80test-1.0. Quck results
Well, in my experience there is always something off on Melbourne's music system, and specially on Gyroscope, mainly because it's a tune a remember well. The melody pops on some emulators, and sometimes there is a distinctive hi-pitch sound on the background. Even FUSE used to have problems with this (now, much better), and I use SpecEmu as reference.
Re: Testing emulators using z80test-1.0. Quck results
Oh, and I agree about Odin's music system: Robin of the Woods, for example, it's a nightmare, that pops even on real hardware.
Re: Testing emulators using z80test-1.0. Quck results
SpecEmu is a good reference.Magnus wrote: ↑Sun May 27, 2018 1:24 pm Well, maybe not, but my emulator stutters a bit when playing the Gyroscope music, though it seems to be doing fine with most other games. I gave Cobra's Arc a try and it sounded terrible, but I'm not quite sure how it should sound (I have no hardware to check against).
I don't think it is offtopic at all, and even better if this helps to improve the emulation quality of any project!
- Ast A. Moore
- Rick Dangerous
- Posts: 2641
- Joined: Mon Nov 13, 2017 3:16 pm
Re: Testing emulators using z80test-1.0. Quck results
Cobra’s Arc and Gryroscope seem to be using the Wham! engine for their music.
Every man should plant a tree, build a house, and write a ZX Spectrum game.
Author of A Yankee in Iraq, a 50 fps shoot-’em-up—the first game to utilize the floating bus on the +2A/+3,
and zasm Z80 Assembler syntax highlighter.
Author of A Yankee in Iraq, a 50 fps shoot-’em-up—the first game to utilize the floating bus on the +2A/+3,
and zasm Z80 Assembler syntax highlighter.
Re: Testing emulators using z80test-1.0. Quck results
Not technically an emulator, but I've run the tests on my ZX-Uno (v4.1 crowdfund, latest EXP26 core) and my Next board (Issue 2A, latest v.1.10.31 core).
ZX-Uno:
23/152 failed
ZX Spectrum Next:
24/152 failed
To be fair, I epected much better results...
ZX-Uno:
23/152 failed
ZX Spectrum Next:
24/152 failed
To be fair, I epected much better results...
- Ast A. Moore
- Rick Dangerous
- Posts: 2641
- Joined: Mon Nov 13, 2017 3:16 pm
Re: Testing emulators using z80test-1.0. Quck results
Yes, both the ZX-Uno and the Spectrum Next are technically emulators. Hardware emulators (well, hardware+firmware). Neither perfectly emulates the Z80 CPU nor the Spectrum itself.
Every man should plant a tree, build a house, and write a ZX Spectrum game.
Author of A Yankee in Iraq, a 50 fps shoot-’em-up—the first game to utilize the floating bus on the +2A/+3,
and zasm Z80 Assembler syntax highlighter.
Author of A Yankee in Iraq, a 50 fps shoot-’em-up—the first game to utilize the floating bus on the +2A/+3,
and zasm Z80 Assembler syntax highlighter.
Re: Testing emulators using z80test-1.0. Quck results
Wow, I'm definitely surprised that the Next failed so many tests! Are there any major revisions expected in the future?