[FAQ]
[Frequently Asked Questions]
[Resources]
[Emulators]
[Where Is...?]
[File Formats]
[Technical Information]
[Pinouts]
[Acknowledgements]
SPECCY EMULATOR BENCHMARKS |
---|
This page last updated on 6 January 2000
[DOS]
[Windows]
[UNIX/Linux]
[OS/2]
[Mac]
[Archie]
[Amiga]
[Psion]
[Windows CE]
[ST/TT]
[Java]
[Playstation]
[QL]
[Other Platforms]
[Benchmarks]
In order to gauge the speed of various emulators, the following tests have been carried out:
10 FOR I=16384 TO 23295 20 POKE I,255 30 NEXT I
This is test of video access and the BASIC interpreter: note the remarkable influence of page swapping in 128K modes, especially if there is no EMS (eg Z80 and UKV).
SimCoupe failed the test due to different video memory, and Sinbas gave 'B Integer out of range' because POKE is not implemented.
10 FOR I=16384 TO 23295 30 NEXT I
Removing the writes to video memory from the first test will give the speed of BASIC interpretation. As expected, Sinbas is the fastest here.
SpectrEm-Dr failed due to a bug (it does not finish the FOR loop), whilst ZX Spectrum Simulator does not respond to the keyboard in BASIC.
BEEP 10,0
This is test of the intensive I/O operations required by BEEP. Nuclear ZX has an option to remap BEEP to PC timing. The sound is clean if the emulator is fast enough and nothing disturbs the tone. The emulators which produced a clean sound were ASp, Nuclear ZX, Roman ZX, SP, Spec32, Spectrum, Warajevo, WinZ80, ZX (Orro), ZX (Rindt & Brukner) and ZX32. ZX32 and ZX (Orro) have a significant delay before the start of the sound.
Once again, ZX Spectrum Simulator does not respond to the keyboard in BASIC.
PAUSE 500
This is test of interrupt system. If the result is close to 10 seconds, even if other results are not correct, then emulator is using hardware interrupts.
ZX Spectrum Simulator agains fails because of a lack of keyboard input. Spectrum fails when in 'no screen' mode because it is impossible to determine when the test is over. SpectrEm-Dr quits too fast in overclock mode to be measured.
This is the only non-BASIC test. Note the influence of fast LDIR on Z80 and Sinclair. There is no difference between 128 and 128/48 modes here.
Various emulators failed this test as they do not provide sufficient facilities for loading games, whilst Sinbas does not do Z80 emulation, and Spectrum in 'no screen' mode again provides no clue that the test is over.
The various modes used are:
Many emulators have options that may impact on perfomance, of which some combinations have been tested.
RESULTS |
---|
Note: All tests are done with a hand watch, so the results could be shorter by up to 0.3s.
Emulator | Test machine |
| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
  | ZX Spectrum |
| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
ASp v0.69 | 68060 64MHz not scaled |
| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
E++ v1.03 | 486SX 33MHz |
| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Finspe 1.10 | 486SX 33MHz |
| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
JASPE 990918 | 486SX 33MHz |
| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
JPP | 486SX 33MHz |
| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
MAZE 0.23 | 486SX 33MHz |
| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
MultiMachine v1.3b | 486SX 33MHz |
| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Nuclear ZX v3.69 | 486SX 33MHz |
| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
PASMulator 0.22 | 486SX 33MHz |
| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
R80 v0.21 | 486SX 33MHz |
| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Roman ZX | 486SX 33MHz |
| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
SimCoupe 0.78 | 486SX 33MHz |
| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Sinbas 1.1 | 486SX 33MHz |
| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Sinclair v3.00 | 486SX 33MHz |
| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
SP | 486SX 33MHz |
| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
SP48 | 486SX 33MHz |
| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
SPEC v1.4 | 486SX 33MHz |
| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Spec256 v1.2 | 486SX 33MHz |
| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Spec32 | 486SX 33MHz |
| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Speccy v0.21 | 486SX 33MHz |
| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Speccyal v0.67 | Scaled from Pentium 100 |
| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Spectre v0.4 | 486SX 33MHz |
| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
SpecX v1.12 | 486SX 33MHz |
| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
SpectrEm v0.9 | 486SX 33MHz |
| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
SpectrEm Dr-v0.7 | 486SX 33MHz |
| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
SPECTRUM | 486SX 33MHz |
| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Spectrum v1.7 | 68030 50MHz |
| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Spectrum128 | Scaled from 68030 40MHz |
| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
The Spectrum Emulator | 486SX 33MHz |
| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Speculator | 68030 50MHz |
| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
SPM v1.03 | 486SX 33MHz |
| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Suzanne's Emulator v0.01 | 486SX 33MHz |
| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
UKV v1.2 fix 2 | 486SX 33MHz |
| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Warajevo v2.51 | 486SX 33MHz |
| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
WinXZX v2.1.3 beta | 486SX 33MHz |
| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
WinZ80 v4.00 | 486SX 33MHz |
| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
WSpecEm v1.31/v1.4b | 486SX 33MHz |
| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
x128 v0.92 | 486SX 33MHz |
| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
xz80 | Sparc 2 |
| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
YaSE v0.6 | 486SX 33MHz |
| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Z80 v4.00 | 486SX 33MHz |
| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Z80Stealth v0.079 | 486SX 33MHz |
| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Z80 TR DOS 2.02 | 486SX 33MHz |
| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
ZX v0.51 Beta | 486SX 33MHz |
| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
ZX | 486SX 33MHz |
| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
ZXAM | 68030 50MHz |
| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
ZX32 v1.03.98.0622 | 486SX 33MHz |
| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
ZX Emulator v0.33 | 486SX 33MHz |
| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
ZX Jam v1.12 | 486SX 33MHz |
| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
ZXSpectr 2.0 | 486SX 33MHz |
| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
ZX Spectrum 128K v3.05 | 486SX 33MHz |
| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
ZX Spectrum Emulator v1.0s | 486SX 33MHz |
| |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
ZX Spectrum Simulator v1.02 | 486SX 33MHz |
|
HARDWARE USED |
---|
All DOS/Windows emulators were tested on a 33MHz U5 486SX with 16Mb RAM and a Trident TVGA 8900 video card running Windows 95 OSR 2 with Direct X 6.1 and WinG. All DOS and DOS/32 emulators were tested by rebooting into DOS mode without drivers (except if they required EMS) and then started from the command prompt. The only exception to this is Speccyal, which required a more powerful video card. This was tested on a Pentium 100, and the results scaled to the 486 speed. R80 and Spectre both required a coprocessor emulator.
Most of the Amiga emulators were tested on an A1200 with a 50MHz 68030 and 10Mb of RAM. The exceptions are Spectrum128 which was tested on a 40MHz 68030 with 10Mb of RAM, and then scaled (simply by a factor of 0.8), and ASp which was run on a 64MHz 68060 and has not been scaled.
xz80 was tested on a Sparc 2.
No attempt has been made to scale results between the three architectures tested.
The 486 is obsolete, but was chosen for the following reasons:
MACHINE SPEEDS |
---|
To see influence of the target machine on speed, Z80 v4.00 and Warajevo 2.51 were tested on a variety of machines. These emulators were chosen as they are two of the best emulators for clean DOS and executable on all machines. The results for other emulators can be extrapolated, and you can see if your computer can reach true Spectrum speed. Z80 is tested using the -xt -z8000 options (make it as fast as possible and reduce RAM requirement); Warajevo is tested with SPEC48 /%MAX option. The estimated speed reported by Z80 is given in brackets.
Test machine | Emulator | Video | FOR | BEEP | PAUSE | Manic Miner |
---|---|---|---|---|---|---|
286-16 TSENG VGA | Z80 (82%) Warajevo | 01:07.4 01:42.2 | 00:38.8 00:54.3 | 00:16.4 00:22.1 | 00:17.0 00:29.1 | 03:28.8 04:56.9 |
386SX-25 Chicony laptop NB 5625 | Z80 (117%) Warajevo | 00:47.1 01:18.0 | 00:27.5 00:40.6 | 00:11.4 00:16.0 | 00:11.3 00:20.7 | 02:30.0 03:59.8 |
486SX-33 Trident VGA 8900 | Z80 (387%) Warajevo | 00:18.6 00:22.7 | 00:11.2 00:11.2 | 00:03.0 00:04.2 | 00:02.7 00:05.0 | 00:47.6 00:56.0 |
486DX4-100 | Z80 (1059%) Warajevo | 00:06.0 00:08.4 | 00:03.6 00:04.2 | 00:01.4 00:01.9 | N/A N/A | 00:22.1 00:28.1 |
Pentium-100 Cirrus VGA 5446 | Z80 (1891%) Warajevo | 00:05.8 00:06.2 | 00:03.6 00:03.3 | 00:00.8 00:01.2 | N/A N/A | 00:11.1 00:15.8 |
PentiumPro-233 Compaq Deskpro 6000 | Z80 (3301%) Warajevo | 00:02.6 00:02.9 | 00:01.6 00:01.7 | 00:00.6 00:00.7 | N/A N/A | 00:05.8 00:06.6 |
Pentium MMX 200 Micron Millenia LXE | Z80 (3737%) Warajevo | 00:02.8 00:03.0 | 00:01.8 00:01.6 | 00:00.4 00:00.6 | N/A N/A | 00:05.6 00:08.1 |
Pentium II 266 Micron Netframe LV 2000 | Z80 (3670%) Warajevo | 00:02.5 00:02.7 | 00:01.6 00:01.4 | 00:00.5 00:00.6 | N/A N/A | 00:05.7 00:05.9 |
Pentium Celeron 400 Compaq Deskpro | Z80 (5825%) Warajevo | 00:01.4 00:01.8 | 00:01.0 00:01.0 | 00:00.3 00:00.4 | N/A N/A | 00:03.9 00:04.4 |
Pentium III 500 Viper AGP 770 Micron Millenia | Z80 (6914%) Warajevo | 00:01.3 00:01.5 | 00:00.8 00:00.8 | 00:00.2 00:00.3 | N/A N/A | 00:03.4 00:03.5 |
Results for an XT, a 386DX and a 486DX would be appreciated.
INFLUENCES ON EMULATOR SPEED |
---|
Thanks for this page should be sent to Samir Ribic, who tested all the DOS/Windows emulators, all the PCs and wrote most of the text. Credit is also due to Ian Collier, Rob Darke, Joe Mackay and Chris Young.
This FAQ is maintained by Philip Kendall;
distribution is permitted only under the conditions specified in the
copyright notice.
Primary site
for this FAQ: http://www.ast.cam.ac.uk/~pak/cssfaq/index.html.