Sinclair
USR0 mode and the lack of +3 BASIC support with ESXDOS explained

I often get the question if people can still use the floppy drive on a ZX Spectrum +3 in case they order a DivMMC EnJOY! interface.
So let’s find out.

Accessing the floppy drive on a ZX Spectrum +3

To access the floppy drive in a ZX Spectrum +3, you need the commands that are available in +3 BASIC.
When you enter 48 BASIC, these commands are unavailable, so you really need +3 BASIC.

ESXDOS and USR0 mode

ESXDOS, the firmware for any DivMMC interface, currently only supports 48K BASIC in USR0 mode.
USR0 mode means you will have all the 128KB memory and the 3-channel sound available, but +3 BASIC is not enabled.

ZX Spectrum toast rack, +2 and +2A

The black ZX Spectrum +2A uses the same ROMs as in the +3 so also has +3 BASIC, and the toast rack and grey +2 use 128 BASIC.
All of these enhanced BASICs are disabled once booting wth ESXDOS into USR0 mode from a DivMMC interface.

Will ESXDOS support 128 BASIC or +3 BASIC in the future?

It doesn’t seem so.
The focus is on new features like RTC support and Long FileName support, but since there are not many people involved, speed of development is well, let’s say, not as high as many wish for.

So can the floppy drive be used with a DivMMC interface or not at all?

Yes, it is possible, but.. not easy and very limited.
Currenly the only way of using +3 BASIC with the DivMMC, is by using the +3e ROMs.
The +3e ROM modifications introduce its own way of formatting and using the SD card.
It’s far more complicated to use compared to ESXDOS, and will not support .TAP or snapshot files.

But.

If someone would just write some DOT-command that mimics the +3 floppy drive commands, that would be great.
A DOT-command is the flexible way of adding BASIC commands to ESXDOS, and since the floppy hardware is simply still present and available on a +3 when a DivMMC interface is connected, why not use it?

Hey, maybe if I find the time for that myself some day..

X