Monday, July 15, 2019

#CSpect V2.9.2

Minor update and fixes. I have also added the parallax scrolling demo I've written as a little demo...

#CSpect V2.9.2 changes
  • Added sprite clipping in over border mode (1 = enabled) (bit 5 of reg $15)
  • Composite/Unified mode visibility flag fixed
  • Parallax scrolling demo (and .BAT file to run it) added to CSpect distro.

Sunday, July 14, 2019

#CSpect V2.9.1

Improvements to the CPU timing, and finally added the sprite composite and Unified modes to let you attach sprites together. This is "largely" untested, so I expect fixes to this over time....

#CSpect V2.9.1 changes
  • Fixed a sprite window clipping bug
  • Fixed the esxDOS streaming API emulation

#CSpect V2.9.0 changes
  • Improved the timing of the CPU so it should be much closer to the NEXT
  • 48k timing - along with memory contention should also be much closer to the real thing
  • Fixed the sprite over border clip window - no longer resets the user clip window
  • Sprite "composite" mode added
  • Sprite "Unified" mode added
  • Fixed a screen render issue, where the screen was being stretched 1 pixel too much

Saturday, June 29, 2019

#CSpect V2.8.3

Minor update to fix some issues to 2.8.2

#CSpect V2.8.3 changes
  • Fixed Left control in BASIC key mode.
  • Fixed a bug where setting port $7ffd or port $1ffd would change the +3 ROM offset - even if next roms weren't enabled.
  • .NEX files are now started in 14Mhz mode - same as the real machine
  • Added IFF 1/2 to the debug display
  • Fixed -fullscreen, just wasn't doing anything....
  • Fixed -r when you exit in "fullscreen" mode (ALT+ENTER). Now exits fullscreen before quiting

Friday, June 14, 2019

#CSpect 2.8.2

Minor update to fix some issues to 2.8.1

#CSpect V2.8.1 changes
  • Right shift now works the same as left shift in BASIC key mode
  • Left ALT now releases the mouse, Left and Right Control are now both SymbShift
  • In BASIC key mode if you also disable escape (-esc), escape will bring up the menu allowing you to quit BASIC/re-number etc.
  • Fixed a SD card write, now flushes each sector as it writes so that card is always in a complete state

Reminder that you can now download pre-created SD cards, along with blank ones (which you can now attach to the second card port via

Thursday, June 13, 2019

#CSpect 2.8.1

This version has a special ZXBASIC keyboard mode, mapping your PC keyboard to the Next. This should make writing programs in BASIC much simpler - and more enjoyable. You can either enable this via the command line "-basickeys" or by pressing F10 to toggle that mode. This mode will press multiple keys so it's important to remember when playing a game that the control keys won't just map 5,6,7 and 8 but also SHIFT, so you may need to toggle back and forth.

#CSpect V2.8.1 changes
  • Fixed a crash in SD Card writing.
  • Added -sd2= for attaching a second SD card
  • Added a special ZXBASIC keyboard mode, meaning it'll auto map keys to the spectrum version. (" will map to SYM+P for example)
  • Added PageUp, PageDown, Home & End to ZXBASIC keyboard mode.
  • F10 will toggle between game and ZXBASIC keyboard mode
  • Fixed a bug when setting the sprite index via NextReg and top bit was set, the shap wasn't being offset by $80
  • Added OpenAL install check for windows, if not found sound is disabled. use -sound to bypass check/error dialog

Reminder that you can now download pre-created SD cards, along with blank ones (which you can now attach to the second card port via

Monday, May 27, 2019

#CSpect V2.8.0

EDIT: You can now download pre-created SD Card images

This version has the new ZX Spectrum ROM support, along with the SD Card image emulator. This allows you run the full ZX Spectrum Next ROM and all it's OS features. This allows you to write BASIC programs, DOT commands or just browse the SD card using the built in menus.
There are also a couple of bug fixes, and a couple of new SNasm commands added.

SNasm V2.0.17
  • Fixed “PUSH $1234” opcode (push order wrong)
  • Added “Bank” and “BankOffset” commands to get the physical address of a label.

#CSpect V2.8.0 changes
  • Fixed -esc command line, hadn't been ported from 1.x version
  • Swapped Right Shift for SYMSHIFT to Right Control. Both shifts map to CAPS SHIFT. "," still works as SYMSHIFT
  • Fixed PUSH XXXX opcode in debugger. Was displaying low/high. Now fixed to display high/low.
  • Added "-log_cpu" for tracing the CPU instruction stream
  • Added back in Label "switch" to debugger
  • Missing "LDWS" opcode added to disassembler
  • Fixed bug in ULA off mode where the border was still being drawn
  • Fixed bug in 512 tile mode, where it was always above the ULA screen
  • Added +3 ROM emulation (without RAM only mode)
  • Added divMMC ROM/RAM hardware support via port $E3
  • Added divMMC SD card support via ports $E7 and $EB
  • SD Card SPI commands supported:CMD0,CMD1,CMD8,CMD9,CMD12,CMD13,CMD16,CMD17,CMD24,CMD55,CMD58,ACMD41

SDCARD setup

  • Download the latest SD card from
  • Copy onto an SD card (preferably between 2GB and 16GB as it's your Next HD for all your work - I use a 16GB image)
  • Copy the files "enNextZX.rom" and "enNxtmmc.rom" from this SD Card into the root of the CSpect folder
  • Download Win32DiskImager ( )
  • make an image of the SD card
  • start CSpect with the command line...

    "CSpect.exe -w3 -zxnext -nextrom -mmc=[sd_card_path]\sdcard.img"

I'd also recommend downloading HDFMonkey, which lets you copy files to/from the SD image.
This tool can be used while CSpect is running, meaning you can just reset and remount the image
if you put new files on it - just like the real machine.
This tool also lets you rescue files saved onto the image by CSpect - like a BASIC program
you may have written, or a hiscore file from a game etc.
I found a copy of this tool here:

At some point, I'll allow mapping of the cursor keys to what BASIC would like to save using SHIFT all the time...

Sunday, April 28, 2019

#CSpect V2.7.0

This version has a fix to Timex High res colours - and border, and also has the first test of the built in UART/Wifi adaptor emulator. It's still missing lots of stuff, but for now WILL let you play with NXtel without any hardware for your next or pc. It has been included in the archive along with a batch file to get you going. Be warned, it's very much an initial test!
Hardware UART is still supported via the -com command-line (see readme)

#CSpect V2.7.0 changes

  • Fixed Timex Hires mode when using ULANext
  • Fixed Timex Hires border colour
  • Removed debug text output
  • Initial WiFi/UART support added.
  • NXtel.nex added to archive - see weblink above for the latest versions.

Saturday, April 27, 2019

#CSpect V2.6.3

This version has a rewrite of the rendering to finally fix the transparency issues and allow the 8bit compare with the GlobalTransparency value.

#CSpect V2.6.3 changes

  • Fixed sprite crash when using default sprite transparency value - my bad
  • Fixed fallback colour in screen area

Friday, April 26, 2019

#CSpect V2.6.2

This version has a rewrite of the rendering to finally fix the transparency issues and allow the 8bit compare with the GlobalTransparency value.

#CSpect V2.6.2 changes

  • Rendering rewrite to properly fix transparency.
  • Fixed new sprite rendering
  • Fixed Lighten and Darkening modes
  • Fixed darkening mode - removed debug code
  • Fixed sprites being offset by a 1/2 pixel to the left

Monday, April 15, 2019

#CSpect 2.5.0

Some more dev requested changes, and a fix to ULA transparency.

CSpect V2.5.0 changes

  • Fixed PUSH $1234 to have the right order.
  • Fixed LDWS so that flags are set based on the INC D
  • Fixed BSLA so that it takes bits 4..0 not just bits 3..0
  • Fixed a global colour transparancy issue

SNasm 2.0.16 uppdate
  • Fixed “PUSH $1234” opcode (push order wrong)