the ZX Spectrum emulator
Why build an emulator ?
The obvious reason is to emulate...
Our reason of why we built this emulator is pretty much twofold...
Firstly: the nostalgia we all remember the classic ZX Spectrum (if not your going to love it, now that's a guarantee !) warts-n-all the Spectrum was for many very entertaining and for many the first home computer - being homebred here in the UK it was hugely successful, Clive Sinclair was a British hero, rightly so.
The games where amazing (in the 80's - remember) and although the graphics were less colourful than its closest competitors namely the C64 (which allowed more than 2 colours to be displayed in a 8x8 pixel square) it didn't stop it from being very popular...
Secondly: and completely off subject we wanted to learn the latest Microsoft .net frame work and accompanying languages and in order to see what it could do we needed a project...
Viola... here we are
ZX Spectrum emulator for .net (you get it yet, hmm sad huh...)
What can it do
Emulate all the original Sinclair Spectrum models16k, 48k, 128k, +2, and +3 (including floppy disk drive), Screen (wouldn't be much good without it) inc. correct timing and borders -( Vectron, Arkanoid, The Sentinel ), Sound, Memory delays, load tape files and snap shot files inc. tzx tap z80 sna wav - original analogue tape via external cassette deck and sound card, or even mp3 player, plus Joystick interfaces Kempston, Sinclair. Its pretty much a complete ZX Spectrum.
For more up to date info check the History column on this page or just download the emulator and see for yourself.
We've played lots of games, loaded programs, written machine code and basic ... removed bugs, all is well, but there are so many programs (countless over10,000s known tapes) all with possibilities for error so without spending months on testing we wont find them all.. that's where you feed back any bugs you may have found.
What can't it do
Run Commodore 64 games!?, But then who in their right mind wants too ..? (ouch)
OK so we don't have the room on the net to answer this one...
We are still adding functionality and other spectrum related software projects... work, work, work...
Installation ( NO install, NO registry garbage, NO DirectX, NO Mess )
1) Download the ZXSpectrum4.zip Latest Version 1.0.5384 Build:13117
2) Unzip the contents to a folder of your choice and run the 'ZXSpectrum4.exe'
and away you go!
NO uninstall required, Just delete the files and its gone.
How to use the emulator ?
For more detailed help please see the Online Help Section
|A- Main Spectrum TV Screen|
|B - Minimise Emulator|
|C - Change TV Size|
|D - Close Emulator|
|E - Show Pop-up Menu|
|F - Show Tape Deck Window|
|G - Show Spectrum Keyboard|
|H - Mute Spectrum Sound|
|I - Spectrum Emulation Turbo Mode on/off|
|J - Pause Spectrum|
|K - Minimise Tape Spectrum Tape Deck|
|L - Loaded Cassette Tape Information|
|M - Progress of Current Tape Block|
|N - Bytes/time Remaining on Tape|
|O - Record (for future use)|
|P - Play Tape|
|Q - Pause|
|R - Previous Block (Rewind)|
|S - Next Block (Fast Forward)|
|T - Rewind Tape To Start|
|U - Eject Tape / Load New Tape|
Loading a Game or Program
The simple Way
Although you can still follow the path below there's a much quicker way to load games, drag and drop your games on to the TV screen and the emulator will do the rest!!!
The traditional method
To get started first press button at F on the TV screen and the tape deck window will appear.
On here press the button at U and the browse window will open to allow you to select your tape or snapshot file you want to open.
If you select a .tzx or .tap file go to the TV Screen and type: Load "" ( to do this on your keyboard first press the keys j then holding down CTRL press p twice, now press Enter) and the inserted tape will now begin to play.
We've now included a couple of games in different formats to help those non technical get started.
Microsoft Windows XP, Vista, Windows 7 Possibly others
(let us know)
Microsoft .net framework (Vista and Windows 7 has this built in)
Added new online Help Documentation
Added Capstone Mouse,
Select under Menu | Controller.
Fixed border timing, now in sync with the CRT beam.
Fixed controller menu bug
Record .wav for details please see Saving in online help
Added Sinclair ZX Spectrum +3 Model,
Select under Menu | Hardware.
Loads .DSK Disk Images (including Extended format)
Let us know if you have one which doesn't load.
We've fixed a few reported bugs.. Debugger, Mute, Threading. +3 on the Way!
Added new model: ZX Spectrum +2
To change models choose 'Hardware' in the Menu.
Added new model: ZX Spectrum 128
To change models choose 'Hardware' in the Menu.
Resolution bug fix for screen size Windows 7, Vista, etc.
Added undocumented port behaviour now the only emulator with port #FE & bit 6 delay, never seen this emulated so may come in handy one day!
Added port emulation for old 16/48 Issue 2 and later 48 Issue 3 keyboards, Change under: Menu | Controllers
ALL core timings checked and tested against real hardware (more info soon)
Undocumented flags tested against real hardware.
Poke facility can be found under the 'Tools' Menu.
Dual Joystick Support! - Kempston & Sinclair (USB/MIDI).
New Keyboard with some help added.
Menu system updated.
Drag & Drop Loading.
Windows 64bit fixed loading issue.
New version few adjustments on the file loading routines, more to do, keep watching.
Work has been on tzx tape image scanner
check Spectrum cassette tapes page
Optional "fast load .tzx" for standard block tzx files, manic miner loads in 1 second! opposed to 3 minutes.
Added auto save emulator configuration
Emulate tape from a wav file.
Loading live tape from external cassette or mp3 player via a sound card input.. not yet enabled - (WIP)
Upgraded sound to 44100hz.
Screen draw routines and timing rebuilt.
Memory delays added and tuned.
Extra menus added.
Screen shot added.
Basic sound, No support for .net windows API's were used to avoid any MS Direct(mess)!!!
Borders drawn at full speed.
Saving file support, sna.
Loading file support, tap, .tzx.
Tape deck screen added for file information and progress.
Screen graphics added and buttons.
Start the ZXSpectrum4.net project!
Working model of z80 and spectrum 48k rom.
Memory and screen memory to windows.
Loading file support, sna, z80.
How Does it work
Want more info ? Information
we need your help!
ZX Spectrum Cassette Database
In order to maximise the database we need to find as many cassettes as possible, from unknown ones to ones known but we are unable to locate.
If you can help us with any old cassettes you may have in the loft you no longer want or know someone that has then please contact us and give them to a good home, If we can't get there in person we can get them collected by courier - please don't throw them!
Don't worry if you have no old cassettes please register your copy of the emulator by doing so helps us obtain further hardware and software for the project, and plus gives you full functionality of the emulator.
Help by donating or registering
A big "THANK YOU!" to everyone the has donated, time, money, knowledge, tapes and hardware we are truly grateful - ZXSpectrum4.net Team.
ZX Spectrum Emulator for Microsoft Windows, developed under Microsoft .net framework.
It emulates all known ZX Spectrum behaviours, timing and models 16k, 48k, 128k, +2, +3 (including 3 inch floppy disk drive and tape deck emulation), Sound, Border, Basic, Snapshot saving and more... supported file formats include .wav .tzx .sna .z80 .tap .dsk
We've now included a couple of games in different formats to help those non technical get started, for more help please visit the help section
Microsoft Windows 7 , Vista, XP
( XP requires microsoft .net framework )
Latest Version 1.0.5384 Build: 13117 (411)