Toggle menu
Toggle preferences menu
Toggle personal menu
Not logged in
Your IP address will be publicly visible if you make any edits.
Revision as of 02:28, 15 November 2025 by HydeWing (talk | contribs)
SpeccySE
General
AuthorDave Bernazzani (wavemotion-dave)
TypeComputer
Version1.8
LicenseMixed
Last Updated2025/11/14
Links
Download
Website
Source

SpeccySE is a ZX Spectrum 48K / 128K emulator for the DS/DSi.

Features

  • Loads .TAP files up to 512K total length (can swap tapes mid-game).
  • Loads .TZX files up to 512K total length (can swap tapes mid-game).
  • Loads .Z80 snapshots (V1, V2 and V3 formats, 48K or 128K).
  • Loads .SNA snapshots (48K only).
  • Loads .P files for ZX81 emulation (see below).
  • Loads .ROM files up to 16K in place of standard BIOS (diagnostics, etc).
  • Supports .POK files (same name as base game and stored in POK subdir).
  • Kempston, Sinclair and Protek joystick support.
  • Fully configurable keys for the 12 NDS keys to any combination of joystick/keyboard.
  • Save and Restore states so you can pick up where you left off.
  • Slide-n-Glide style Joystick configuration to make climbing ladders in games like Chuckie-Egg more forgiving (try it - you'll like it!).
  • High Score saving for 10 scores with initials, date/time.
  • Favorites list so you can mark games as 'like' or 'love' - a yellow or red heart icon will mark your favorite games.
  • Solid Z80 core that passes the ZEXDOC test suite (covering everything but not undocumented flags).
  • Minimal design aesthetic - pick game, play game. Runs unpached from your SD card via TWL++ or similar.

Installation

Requires one or both of the original ZX Spectrum BIOS ROMs.

Place them into the same directory as the emulator or /roms/bios/:

* 48.ROM    with CRC32 of ddee531f
* 128.ROM   with CRC32 of 2cbe8995

The emulator will try to start in the /roms/speccy/ directory (can be changed in the 'Global Configuration').

You can store a maximum of 1024 game files within each folder. Names should be no longer than 160 characters.

User guide

From the main menu, you select a game file (.TAP, .TZX or .Z80), after which you can either play it or change the game settings (define keys or set specific game options).

You can use the SELECT button when picking a game to toggle a favourites icon (3 levels): No icon (not a favorite), Yellow Heart (like) and Red Heart (love).

During gameplay, you can use the cassette icon to reset the game or swap tapes. The other menu allows you to quit the current game, save/load the game state and set some high scores for the game being played.

For more details on usage please see the project readme.

Screenshots

speecyse2.png speecyse3.png

speecyse4.png speecyse5.png

Known issues

  • Not all Dandanator compilation games run properly - support is preliminary (but good enough for the few games that really need it).
  • Gandalf DLX does not run correctly. Timing is tight on that game and the accuracy of Speccy-SE is not up to the task.
  • Genesis has graphical glitching (screen jitter) during gameplay. Likely timing issue.
  • Ghosts-n-Goblins doesn't run - graphics go wonky right after the main gameplay is started. Cause unknown.
  • Disk files are not supported yet. Most games have TAP or Dandanator alternatives - but not all.

Changelog

Version 1.8 2025/11/14

  • Added ability to disable ULA contention.
  • Key map cleanup - improved QAOP and Protek support.
  • Better defaults for 48K games.
  • Minor cleanup on tape edge handling.
  • Fixed POK applied symbol.
  • Corrected tape loader timeouts - was causing problems in loading some games (e.g. R-Type).

Version 1.7b 2025/11/08

  • Implemented Favorites system - use SELECT in game selection screen to toggle Like/Love.
  • Massive overhaul to provide smoother double-buffered frame rendering on all hardware (DS-Lite/Phat users rejoice!).
  • Improved beeper audio handling to smooth out sound in some games - especially improved on DSi hardware with the faster CPU.
  • New Frameskip option added for DS-Lite/Phat. Default is to render 3/4 frames to get enough speed for all games but many games can run without frameskip. DSi always renders all frames.
  • Synchronized the DS/DSi vSYNC to 50Hz to match the PAL emulation for smoother tear-free experience (any tearing remaining would be present in the game itself).
  • Properly cap at max volume for the games that utilize both the 128K AY chip and the beeper (was causing crackling sounds).
  • Fixed Arcadia input so the ship doesn't jitter across the bottom of the screen.
  • Added more undocumented Z80 opcodes to fix Nothing (that's the name of a game!).
  • Illegal ED opcodes now act like nop-nop and consume 8 CPU cycles as they should.
  • Improved Tape Position menu now shows current tape block to aid in positioning the tape for some multi-load games.
  • Added Z80 7MHz Turbo Mode for the few games that take advantage of it (e.g Nothing). Note the DS-Lite/Phat don't have enough CPU processing power to render at this turbo rate.
  • About 15% improvement in performance - mostly to help out on the DS-Lite/Phat render even the most complex games smoothly.
  • Version 1.7a hotfix to correct a CPU optimization bug that was causing a few games to crash (e.g. Rainbow Islands)
  • Version 1.7b hotfix to correct tape loader timeouts - was causing problems in loading some games (e.g. R-Type)

Version 1.7 2025/11/08

  • Implemented Favorites system - use SELECT in game selection screen to toggle Like/Love.
  • Massive overhaul to provide smoother double-buffered frame rendering on all hardware (DS-Lite/Phat users rejoice!).
  • Improved beeper audio handling to smooth out sound in some games - especially improved on DSi hardware with the faster CPU.
  • New Frameskip option added for DS-Lite/Phat. Default is to render 3/4 frames to get enough speed for all games but many games can run without frameskip. DSi always renders all frames.
  • Synchronized the DS/DSi vSYNC to 50Hz to match the PAL emulation for smoother tear-free experience (any tearing remaining would be present in the game itself).
  • Properly cap at max volume for the games that utilize both the 128K AY chip and the beeper (was causing crackling sounds).
  • Fixed Arcadia input so the ship doesn't jitter across the bottom of the screen.
  • Added more undocumented Z80 opcodes to fix Nothing (that's the name of a game!).
  • Illegal ED opcodes now act like nop-nop and consume 8 CPU cycles as they should.
  • Improved Tape Position menu now shows current tape block to aid in positioning the tape for some multi-load games.
  • Added Z80 7MHz Turbo Mode for the few games that take advantage of it (e.g Nothing). Note the DS-Lite/Phat don't have enough CPU processing power to render at this turbo rate.
  • About 15% improvement in performance - mostly to help out on the DS-Lite/Phat render even the most complex games smoothly.

Version 1.6 2025/10/27

  • Revamped Z80 CPU core to provide more accurate timing and memory contention/floating bus. Multi-color games (aka Nirvana+, BiFrost, etc) now play and look reasonably correct and CPU speed is generally correct.
  • Fix for AY music not restoring properly on some Load States.
  • Smoother beeper sound for improved fidelity.
  • Added Kempston 2nd Fire button which can be mapped in.
  • Default machine is now the ZX Spectrum 128K but it will revert to 48K for common games with compatibility issues.
  • Other minor cleanups and improvements as time permitted.
  • Version 1.7a hotfix to correct a CPU optimization bug that was causing a few games to crash (e.g. Rainbow Islands)

Version 1.5 2025/10/20

  • Added ULAplus support for games that support the extended color palette.
  • Improved beeper sound accuracy.
  • Fixed potential Z80 core memory stack issue - fixes a couple of games that were crashing.
  • Other minor cleanups and improvements under the hood.

Version 1.4 2025/10/15

  • Fixed Shift and Symbol so they are truly temporary.
  • Improved memory contention timing.
  • Improved .POK support to handle much larger POK memory lists.
  • Added more resolution to the CPU speed options.
  • Added Dandanator .ROM support up to 512K banked.
  • Added diagonal D-Pad handling as a configurable option.
  • CPU Core speedup for 10% speed gain (helps with DS-Lite).
  • Fixed WSAD key mapping defaults (S and A were swapped).
  • Other minor improvements and fixes under the hood.
  • 1.4a Hotfix! Fixes crash in some 128K games. Sorry!

Version 1.3 2025/09/10

  • Increased number of configuration game slots to 4096.
  • Increased number of high-score slots to 1500.
  • Fix and improvements for auto-tape handling so games load more reliably.
  • Fix for Save/Load states for 128K games (some games would not load back properly).
  • Added ability to dim the keyboard screen in-game (set in Global Options).
  • Keyboard graphic replaced the word 'MENU' with a graphical menu icon.
  • Fix when redefining keys so that it more cleanly remembers previous settings.
  • Minor tweak to main menu and cassette menu handling to avoid screen garbage character.
  • Refactored memory for tape loading to free up additional resources for future expansion of the emulator.

Version 1.2 2025/09/07

  • Improved ZX81 support for direct loading of .P files.
  • New global option for machine type (48K vs 128K).
  • New main icon to better reflect the design aesthetics.

Version 1.1 2025/04/30

  • Double buffer video on DSi/XL/LL for reduced tearing.
  • Rebranded 'Chuckie Egg-Style' joystick handling to 'Slide-n-Glide'.
  • Minor cleanups as time permitted.

Version 1.0 2025/04/14

  • First official release of Speccy-SE!

External links

Advertising: