DIVMMC, a new compact interface for ZX Spectrum

edited June 2013 in Hardware
After a long gestation period and a short period of testing, Mario Prato, member of the Italian Apulia Retrocomputing Group, officially presented on his website the DIVMMC, a new interface for SD cards for the Sinclair ZX Spectrum.
The features are similar to the well known interface DIVIDE, then automatic pagination of the EPROM, nmi button to load or save snapshots, two sd slots, 128K ram and operating EsxDos system. The use of sd card interface makes this much more 'easy to use' (no adapter ide-cf) and certainly more compact than original divide.

DSCN2139_zps37572b9c.jpg

Demonstration video: http://www.youtube.com/watch?v=YZXzFOJLGpo
Post edited by Saltor on
Cultural association in south Italy
www.apuliaretrocomputing.it
Personal site
www.sinclairitaly.wordpress.com

Comments

  • edited May 2013
    It looks good, but there aren't much info on his website.

    What's the price, and can you save to it as well as load from it?
    Website: Tardis Remakes / Mostly remakes of Arcade and ZX Spectrum games.
    My games for the Spectrum: Dingo, The Speccies, The Speccies 2, Vallation, SQIJ.
    Twitter: Sokurah
  • ZupZup
    edited May 2013
    What does it do?

    Is 100% compatible with original divide (i.e: using +3e ROMs for divide, divide OS, etc)?

    How does the snapshot feature works? Is an extension to esxdos, a modification to FATware?

    I can't see any jumper... is it "flasheable" (for using any divide OS)? Does it work in any Spectrum?
    I was there, too
    An' you know what they said?
    Well, some of it was true!
  • edited May 2013
    This is fantastic. I hope they update their website soon with more info and pricing :-D
    I'll be keeping an eye on this..
  • edited May 2013
    Does the cpld perform emulation of an IDE interface or does the spectrum talk SD commands directly?

    If the former then it's trivial to port existing IDE firmwares if it's not already on the same IO ports. If the latter it's much more of a headache and easier to just rewrite the driver layer from scratch.
    My rubbish website including the redrawn Amstrad schematics and the new home of the Sinclair FAQ wiki.
  • edited May 2013
    guesser wrote: »
    Does the cpld perform emulation of an IDE interface or does the spectrum talk SD commands directly?

    If the former then it's trivial to port existing IDE firmwares if it's not already on the same IO ports. If the latter it's much more of a headache and easier to just rewrite the driver layer from scratch.

    This small device can't emulate IDE access. Software driver access direct to SD cards/commands as similar ZXMMC interface (or ZXMMC+ interface). I see only 8kB flash eeprom (same as on original divide interface) with system. Now exist only system ESXDOS for this DIVMMC interface, but PCB contain big ram 128kB (with possibility place 512kB ram) then theoreticaly can be CPLD firmware modified for compatibility with ZXMMC+ and use also old system RESIDOS. But practically is ESXDOS better and enable similar functionality as old RESIDOS + next new features as TR-DOS support. Original old DIVIDE use small memory ram 32kB and new versions of system ESXDOS must use swap on IDE disc because is no free memory for backup zx screen after press NMI (jump to browser). DIVMMC use compatible memory paging as original divide + contain next ram pages for system. ESXDOS use new extra ram for fast screen backup (not need swap) and in future can be new ram used for system expansion. All other DIVIDE systems not work on DIVMMC, but is possible rewrite IDE drivers to new SD driver. I have old unfinisher project of new DIVIDE interface with SD cards, but no time for finish (may be later).

    I see bug on PCB of DIVMMC:
    - signal ROMOE1 from ZX bus is unused (must be connect via jumper or resistor 0 Ohm) with signal ROMCS1 (from transistor Q5). With disconnect(unused) ROMOE1 signal is DIVMMC incompatible with ZX128+2A/+3 rom. If author connect ROMOE1 pin from ZX bus direct with signal ROMCS1 from Q5 then DIVMMC will usable also on ZX128+2A/+3 but unusable on brasilian ZX clones TK90X and other clones. This computers use pin ROMOE1 on ZX bus for different function and must be disconnect = here is ideal add jumper for possibility disconnect ROMOE1 pin.

    Hardware difference between DIVIDE and DIVMMC:
    - orig. DIVIDE use chaotic connection of eeprom chip, DIVMMC use correct connection with standard pinout. But here is one small incompatibility - my EPROTECTOR utility work only on DIVIDE, but need small modification for DIVMMC. Flash utilities for install DIVIDE systems use small universal routine for slow flashing (write single byte). Thanks to correct connection of EEPROM we can write new fast flash utility (use sector writing) for install systems to EEPROM in DIVMMC. :-)
  • edited June 2013
    velesoft wrote: »
    This small device can't emulate IDE access.

    Well it has no more chips than an IDE-SD adapter does, so it just depends on the logic resources :p
    I don't know anything about cpld part numbers so have no idea what you can fit in a given device.
    My rubbish website including the redrawn Amstrad schematics and the new home of the Sinclair FAQ wiki.
  • edited June 2013
    Thats very cool, I wonder what we are all going to store on 128G of storage :-)
  • edited June 2013
    For all existing ZX software you need more than 2GB (4GB SDHC card is minimum, 8GB SDHC is better)
  • edited June 2013
    That video is also a sneak peek at the next ESXDOS version. It reports version 0.8.4 and loads BETADISK.SYS... Nice...
  • edited June 2013
    Rorschak wrote: »
    That video is also a sneak peek at the next ESXDOS version. It reports version 0.8.4 and loads BETADISK.SYS... Nice...

    On DIVMMC webpage is possible download ESXDOS 0.8.5 with full TR-DOS support.
  • edited June 2013
    Sokurah wrote: »
    It looks good, but there aren't much info on his website.

    I know some details (but in final version can be all different):
    - memory paging compatible with DIVIDE interface (+ next extra ram pages)
    - use two SD card slots instead IDE connector
    - two new I/O ports for SD card access (may be #E3 for divide memory paging, SD ports #E7 (write only) and #EB (read/write).

    If DIVMMC are connect to ZX bus, then can't be parallel connect this interfaces:
    ZX PRINTER - (Who uses it today ?)
    C-DOS modem - (unknown device... unusable)
    digitizer (VMG) - (there are very few pieces ... unusable)
    ZX LPRINT-III PIO & SIO Interface
    KEMPSTON PIO Interface
    8 bit IDE by Pera Putnik - (As I know, all users on +3e use CF card. Problem with incompatibility will fixed if eject CF card from +3e ide interface)
  • edited June 2013
    velesoft wrote: »
    On DIVMMC webpage is possible download ESXDOS 0.8.5 with full TR-DOS support.

    im guessing this version is not compatible with the standard divide?
  • edited June 2013
    0.8.5 - interesting. The official 0.8.0 is out for a long time, so I was already afraid the project got cancelled.
  • edited June 2013
    djgarf wrote: »
    im guessing this version is not compatible with the standard divide?

    Yes, author of ESXDOS have also version 0.8.5 for standard divide, but not released. DIVMMC version of ESXDOS use only SD CARD driver instead IDE driver and next 8kB ram page of extra DIVMMC ram for screen backup instead swap to IDE on original DIVIDE.
  • edited June 2013
    Wow thats look very good!!
    Wil long file names also work in the future?
  • edited June 2013
    Reinier wrote: »
    Wow thats look very good!!
    Wil long file names also work in the future?

    You must contact author of ESXDOS. May be in future. On original divide can be problem with small memory, but on DIVMMC is all possible and easy :-)
  • edited June 2013
    DIVMMC + DIVIDE:

    New DIVMMC not use all 8 ide ports as DIVIDE. SD cards are connect on ports #E7 and #EB. Theoretically can be old DIVIDE interface connect parallel with DIVMMC interface, only must be on divide open both jumpers and removed sram and eeprom chips from sockets (DIVIDE is usable only as IDE ports). This way enable use software for SD cards and for IDE ports. User can install (in mapram mode) any old divide system/utility with IDE support.
  • edited June 2013
    velesoft wrote: »
    SD cards are connect on ports #E7 and #EB.

    velesoft, where can I find a description of the ports?
  • edited June 2013
    Black_Cat wrote: »
    velesoft, where can I find a description of the ports?

    You must contact author. I mean it's same as ZXMMC ports, only different adresses of ports.
  • edited June 2013
    velesoft wrote: »
    Hardware difference between DIVIDE and DIVMMC:
    - orig. DIVIDE use chaotic connection of eeprom chip, DIVMMC use correct connection with standard pinout. But here is one small incompatibility - my EPROTECTOR utility work only on DIVIDE, but need small modification for DIVMMC.

    Here is new version for EPROTECTOR utility for DIVMMC interface:
    http://velesoft.speccy.cz/zx/divide/software/divmmc_eprotector.zip
    If anyone have DIVMMC interface, please test it.
    EPROTECTOR utility work only wirh eeprom chip 28C64B (must be "B" at end). Other eeprom chips not contain write protect feature.

    After press key "D" will eeprom protected and all system flasher utilities will ignored. Before rewriting eeprom you must load EPROTECTOR and press key "E" for enable writing + load any system flasher(intalator). After flash system to eeprom you can load EPROTECTOR and press key "D" for write protection.
  • Hello, I am wondering if it is possible to use this device or something similar to save assembly language source code and/or binaries, so that I could more quickly develop in a standard assembler (like Zeus?) on the actual ZX.

    Also, if that is a dumb question, do people still do development on the actual ZX, and if so, is there another alternative to a relatively slow tape drive that people generally use. Maybe there is an external disk for 48k that is not too slow for saving?

    Thanks a lot.
  • runvnc wrote: »
    Hello, I am wondering if it is possible to use this device or something similar to save assembly language source code and/or binaries, so that I could more quickly develop in a standard assembler (like Zeus?) on the actual ZX.

    Also, if that is a dumb question, do people still do development on the actual ZX, and if so, is there another alternative to a relatively slow tape drive that people generally use. Maybe there is an external disk for 48k that is not too slow for saving?

    Thanks a lot.

    There are a few assemblers and compilers that work with the Sinclair Interface 1. They can run just as well on the 'Interface 1bis'. I used Hisoft GENS4 quite a lot with early prototypes of the 'Interface 1bis'. Please contact me directly if you are interested in details.
    'Interface 1bis' for the Sinclair ZX Spectrum
  • Wow thanks very much for those recommendations! I see the details on my google search. Looks like an amazing device, and very powerful assembler/debugger! Actually I managed to make it a little awkward asking about general solutions in the thread for this specific device.
  • runvnc wrote: »
    Also, if that is a dumb question, do people still do development on the actual ZX

    Some people still insist on doing that, but they're generally considered crazy by everyone else ;)
    My rubbish website including the redrawn Amstrad schematics and the new home of the Sinclair FAQ wiki.
Sign In or Register to comment.