QL-SD ROM – the early days

By | 2020-03-28

This weekend the German ZX meeting was supposed to happen, but for some pandemic reason it didn’t. Which is very unfortunate because not only did I produce a batch of QL-VGAs for it, I also had a secret product in development that I wanted to reveal there: QL-SD ROM. Please note that everything I write about here is in early development (maybe including the name), as a matter of fact after weeks of problems and lack of time it only started working yesterday!

So what is it? QL-SD ROM is an external QL-SD variant for the ROM port. That by itself is already pretty cool I think, but has basically been done before using a carrier board and the internal QL-SD variant. No, what I’m really excited about is that this board combines the functionality of QL-SD and the ROM switcher, i.e. it also has 512kb of flash on board that can contain up to 8 different operating systems.

“But the ROM switcher already exists, too” I hear you say, “what’s the innovation here?” Well, for starters, there are no DIP switches, this is true bank switching that is controlled by software, so a few more interesting usage scenarios become possible.

And that is not all, the main difference is that the QL can reprogram the flash itself, no external hardware necessary whatsoever! I think this is a first. Where supplying fixes for the QL-SD is a pain because it involves bending pins and reprogramming an EEPROM using specialized hardware, this QL-SD variant can update the OS or its driver using a simple BASIC command.

By default the QL always boots into slot 0 as slot 1-6 can only be selected using software. “But what if I want to boot into a different OS by default, what do I do then?”. Well, you simply flash that OS into slot 0 of course! It only takes a few seconds after all.

“But what happens if something goes wrong during the update?” you might ask. Well, there is a jumper on board that makes QL-SD use OS slot 7, which is some sort of “recovery slot” that should only be used to make slot 0 work again.

All this of course only works when the internal ROMs have been removed as otherwise the two devices would be fighting over the data bus. For people not wanting to open the QL at all there is also a “no OS” jumper that makes QL-SD leave the OS area alone so the ROM is only used for the extension slot. In this case the flash is not as useful but at least the driver can still be updated.

Well, that’s it for now. Remember, this is far from a finished product, it’s not even sure it will ever be one. But I’m currently very elated that everything finally works so I wanted you to share the joy 😉 Here are a few pictures, enjoy.

12 thoughts on “QL-SD ROM – the early days

  1. Martyn Hill

    Another truly innovative design, dear Marcel!

    Thank you 🙂

  2. Simon N Goodwin

    Looks like an interesting alternative to vDrive, and potentially a lot faster on reads – I guess you have to write bytes to SD using reads from 256 reserved ‘ROM’ addresses like the Miracle HD as there’s no write line on the cartridge port, which will slow them down a bit.

    With Qdos coming to ZX Spectrum Next it’s a good time to have SD access on real QLs; currently I have to port via QL floppies, an Amiga to read those and write to CF via PCMCIA, then a CF adapter for my Mac so I can write to an SD the Mac will read. I could alternatively go via UQLX on Debian I suppose. But either way this could save a lot of time and desk space.

    As long as you support exFAT from the QL side. It’s horrible but disc images are much worse. Creation timestamps seem to me the best place for dataspace, in the absence of Apple-style forks or the Amiga comment field which handles QL and ZX headers seamlessly.

    1. Marcel Post author

      Hi Simon,

      functionality wise this is the same interface as QL-SD https://www.kilgus.net/ql/ql-sd/, I just don’t built those anymore as they are pretty labor intensive to make.

      In terms of file system the SD must be formatted using FAT32 and the QL files must reside in a .WIN container (QLWA format), the same format used by any recent emulator and all FPGA cores I’m involved in, so file exchange with the QL has never been easier.

      Cheers, Marcel

  3. Dilwyn

    Great work Marcel. If this becomes reality, I look forward to getting one to help me test software I write on different systems.

  4. Paolo

    This is a new great piece of hardware that I want for our beloved machine! Thanks Marcel, bravissimo!

  5. Kenn van Hauen

    Yes, this is fabulous! Please put me down for one as well if you end up progressing through to production 🙏 With all my best. Kenn

  6. Urs

    What a cool gadget!

    Looks a bit like a boxer engine of a motorcycle. 🙂

    Seriously, the functionality is really very interesting, especially for a QLer like me who likes to test software on different platforms/operating systems.

    I have a modified Sinclair EPROM dongle that holds 2x 27256 ($0000 and $8000). But it is really painful and time-consuming to burn two EPROMs (plus erasing them first) each time when one wants to test something specific; or to have a whole armada of prepared EPROMs at hand.

    As with the QL-VGA I would also like to have such a cool QL-SD ROM.

    Carry on with the great QL stuff, Marcel!

  7. Duncan

    It should work with an Aurora motherboard, shouldn’t it? The Aurora according to its documentation has a QL compatible ROM slot although it needs an adapter.

    I too would like one.

    1. Marcel Post author

      I guess it should work, but I don’t have any hardware to test it.

      In any case QL-SD ROM is stll some way from being ready for sale

  8. peter maeers

    Hallo Marcel,
    Ich wurde gerne eins kaufen. Wissen Sie, wann es verfuegbar sein wird und wie viel es kosten wuerde?


    1. Marcel Post author

      Es läuft soweit ganz gut, aber es fehlen noch ein paar Kleinigkeiten bevor ich es mit gutem Gewissen vertreiben kann. Weiß noch nicht genau wann es soweit sein wird. Kosten werden sich im Rahmen der alten QL-SDs bewegen.
      Gruß Marcel


Leave a Reply

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.