Sinclair
Using an AT28C256 instead of a 27256

The 27256 EPROMs are not produced anymore and are getting harder to obtain.
However the AT28C256 is still available a lot.

Also more programmers support the AT28C256 but often not the 27256 (for example the TOP2005+ universal programmer).
And the AT28C256 EEPROM is electrically erasable, not needing a UV eraser anymore, so another argument for using the AT28C256.

But the 2 chips are not 100% pin compatible.
Here’s a simple manual of how to use an AT28C256 instead of a 27256:

http://benophetinternet.nl/hobby/vanmezelf/Using%20a%20AT28C256%20instead%20of%20a%2027256.pdf

 

Sinclair
ESXDOS firmware upgrade instructions

Updated 23 March 2022: added Eprotect utility for DivIDE 57c or clones

Introduction

This document describes how to update the firmware on your DivMMC EnJOY! or DivIDE interface.
This firmware update is not mandatory, but presented here if someone wants to perform it, as the description is not included in the DivMMC EnJOY! or DivIDE manuals, and there are some steps involved that are not obvious.

Follow these steps carefully – if not done correctly, the EEPROM on your DivMMC EnJOY! can be corrupted (which can be solved by loading the utilities by tape input, from either smarthphone or real tape).

Default SD card contents

For the default files that are included with our DivMMC EnJOY! interfaces, get to: https://www.bytedelight.com/?page_id=6741

ESXDOS/firmware update jumper or DIP switch

First, the jumper or DIP switch settings for the DivIDE and DivMMC EnJOY! interfaces, needed for the ESXDOS firmware update.

DivIDE 57C interface

Jumper JP2:
– ESXDOS enabled (default): jumper connected.
– ESXDOS disabled / Firmware update mode: disconnect jumper.

 

All DivMMC EnJOY! versions so far (find yours):

 

DivMMC EnJOY! 2013

‘FLASH’ jumper:
– ESXDOS enabled (default): jumper connected.
– ESXDOS disabled / Firmware update mode: disconnect jumper.

 

DivMMC EnJOY! 2014/2015 versions

DIP switch 1:
– ESXDOS enabled (default): DIP switch 1 in the ‘ON’ position.
– ESXDOS disabled / Firmware update mode: : DIP switch 1 in the ‘OFF’ position.

 

 

DivMMC EnJOY! 2017 versions

DIP switch 1:
– ESXDOS enabled (default): DIP switch 1 in the ‘ON’ position.
– ESXDOS disabled / Firmware update mode: : DIP switch 1 in the ‘OFF’ position.

 

DivMMC EnJOY! *mini* (NOT the ‘PRO MINI’ – see underneath)

DIP switch 3:
– ESXDOS enabled (default): DIP switch 3 in the ‘ON’ position.
– ESXDOS disabled / Firmware update mode: : DIP switch 3 in the ‘OFF’ position.

 

DivMMC EnJOY! PRO ONE

DIP switch 1:
– ESXDOS enabled (default): DIP switch 1 in the ‘ON’ position.
– ESXDOS disabled / Firmware update mode: : DIP switch 1 in the ‘OFF’ position.

 

DivMMC EnJOY! PRO MINI lite

DIP switch:
– ESXDOS enabled (default): DIP switch 1 in the ‘ON’ position.
– ESXDOS disabled / Firmware update mode: : DIP switch 1 in the ‘OFF’ position.

!! NB: note that this single DIP switch has the ‘ON’ position at the top.

 

DivMMC EnJOY! PRO MINI

DIP switch 1:
– ESXDOS enabled (default): DIP switch 1 in the ‘ON’ position.
– ESXDOS disabled / Firmware update mode: : DIP switch 1 in the ‘OFF’ position.

 

Download EPROTECT utility

Download Velesoft’s EPROTECT utility:

Copy the file to the SD card of your DivMMC EnJOY! or DivIDE interface.

Download the new firmware

Download the new ESXDOS firmware for the DivMMC EnJOY! and DivIDE at esxdos.org
Extract the ZIP file.

For the DivMMC EnJOY!: copy ONLY the ‘esxmmc.tap’ from this archive to the SD card at this time.
For the DivIDE: copy ONLY the ‘esxide.tap’ from this archive to the CF card at this time.

Put the memory card into your DivMMC EnJOY! or DivIDE interface and power up the ZX Spectrum.

 

Unprotecting the EEPROM

Before upgrading the firmware, the EEPROM on the DivMMC EnJOY! needs to be unprotected:

  1. Load the EPROTECT TAP file from the NMI menu (short filename is: ‘DIVMMC~1’) 
  2. Set the interfaces to ‘Firmware update mode’ (see photos above)
  3. Press ‘E’ to write enable the EEPROM
  4. Set the interface to ‘ESXDOS enabled’ (see photos above)

 

Upgrading the firmware

  1. Load the ‘esxmmc.tap’ or ‘esxide.tap’ file using the NMI menu (NMI Browser or NMI Navigator).
  2. Wait for the program to load and tell you to set the interface to firmware upgrade mode.
  3. Set the interfaces to ‘Firmware update mode’ (see photos above)
  4. Press any key to start programming the EEPROM; the border will flash for about a minute – wait till this finishes.
  5. Set the interface to ‘ESXDOS enabled’ (see photos above)
  6. Power off the ZX Spectrum.

 

Upgrading the system files on the memory card

Now copy the ‘bin’ and ‘sys’ folders from the extracted ESXDOS ZIP file, to the memory card of your DivMMC EnJOY! or DivIDE interface.
Overwrite the files when asked.

 

Protect the EEPROM

MAKE SURE TO FOLLOW THIS STEP!
If not performed, the EEPROM on your DivMMC EnJOY! might become corrupt, making the DivMMC EnJOY! unusable.

  1. Load the EPROTECT TAP file from the NMI menu (short filename is: ‘DIVMMC~1’)
  2. Set the interfaces to ‘Firmware update mode’ (see photos above)
  3. Press ‘D’ to disable writing on the EEPROM
  4. Set the interface to ‘ESXDOS enabled’ (see photos above)

 

Copy RTC.SYS if it’s missing

With the distribution of ESXDOS 0.8.7, it seems the RTC.SYS file wasn’t a part of the ZIP archive.
Without it, you will most probably get a RTC.SYS error when booting up the system.
If so, download RTC.SYS here, extract the file and copy it to the SYS folder on the SD card.

 

Something went wrong and you’re stuck

If for any reason the upgrade process failes, and your DivMMC or DivIDE interface won’t boot again, you can always load the fimware upgrade from tape or in many cases from smartphone.

Directly from smartphone

You need some device to play a TAP file with, like a smartphone, but not all have high enough output signal level to work on an original ZX Spectrum 48K.
If you’re using a smartphone, you can use an app like PlayTZX / PlayZX (renamed) to be able to play the TAP file.

Officially you need a stereo to mono adapter lead, since the smartphone output is stereo, but a tape cable for the ZX Spectrum, and the input connector, are mono.
Many smartphones work just fine with a mono cable, but it’s at own risk to try.

Copy the ESXMMC.TAP (for DivMMC) ESXIDE.TAP (for DivIDE) file from the ZIP-archive found in the link above, to the device.
Set the jumper/DIP switch to flashing mode as shown above, and load the file.

From real tape

In case your ZX Spectrum can’t load from smartphone directly, you can of course save the file to real tape first.
This will help with creating the correct signal level for the ZX Spectrum.
Then load the file from real tape into your ZX Spectrum.

Again, mind the stereo output of the smartphone: a stereo to mono adapter lead is normally required, since the smartphone output is stereo, but a tape cable for the ZX Spectrum, and the input connector, are mono.
Many smartphones work just fine with a mono cable, but it’s at own risk to try.

 

Get ready player One!

If you followed these steps carefully, your update should now be completed.

Contact me if you are having any problems.

If the ROM is bricked, you can always load the flash utility from tape by disabling ESXDOS first with the corresponding jumper or DIP switch.
A corrupt EEPROM in a DIL socket can be replaced, costing €5 including shipment.

Sinclair
ZX Spectrum 48K ULA differences

Updated: 5 August 2021

NEW! ULA Gallery – click here!

I’ve often wondered what the differences between the ULA models for the ZX Spectrum are.
Fortunately Chris Smith did a brilliant job of writing a comprehensive technical masterpiece about the ZX Spectrum’s ULA and its history.

Underneath a short summery of the different ULA models and in which ZX Spectrum issues they were used:

  • 5C102E: ZX Spectrum Issue 1 boards
  • 5C112E: ZX Spectrum Issue 2 boards
  • 6C001E-5: the first 6000 series ULA, probably for ZX Spectrum Issue 3 boards (not documented in Chris Smith’s book)
  • 6C001E-6: ZX Spectrum Issue 3 boards
  • 6C001E-7: ZX Spectrum Issue 4A boards (and higher board issues)

For the exact differences I recommend to buy “The ZX Spectrum ULA – How To Design A Microcomputer” (ISBN 978-0-9565071-0-5) by Chris Smith yourself.
But for ZX Spectrum enthousiast like myself who need to know about compatibility:

  • The 6C001E-7 ULA version can be used on all ZX Spectrum 48K board issues.
  • The ZX Spectrum Issue 4A and above will ONLY work reliable with the 6C001E-7 ULA version; don’t use another ULA in an Issue 4A board or later Issue.

Of course it’s best to use the exact ULA model that corresponds to the ZX Spectrum Issue as listed above; ULA’s are getting more rare each day.

 

Update 5 August
Mark K sent me this info, about the ‘dead cockroach’ mod for 5C102E ULAs, and ‘spider’ mod on issue 2 boards:

Basically, whatever board (issue one or issue two) the 5C102E ULAs are used in, the ‘dead cockroach’ daughter board is required.
All ULA versions from the 5C112E onwards incorporated the correction for the ‘dead cockroach’ internally in the ULA, hence the ‘dead cockroach’ daughter board is no longer required.

The transistor ‘spider’ should also have been fitted, but at the time these ULAs were being used, the problem that this fixes had not been discovered.
All issue two boards regardless of which ULA is used, should have the transistor ‘spider’ fitted.
All boards from the issue three onwards have the ‘spider’ transistor included on the PCB (TR6) so no separate ‘spider’ transistor is needed.

More info can be found in this topic: https://spectrumcomputing.co.uk/forums/viewtopic.php?p=71331#p71331

 

Sinclair
Welcome!

Welcome everybody to this brand new website!

This website is all about the Sinclair ZX Spectrum, add-ons, spare parts, etc.

 

This new website will replace the benophetinternet.nl website eventually.

 

 

Yours truly,

 

Ben Versteeg

X