Hi!
Very good questions, let's think about it together and expose son implications.
stephen_usher wrote: Thu Aug 07, 2025 10:53 am
Could this be reduced to a single board with a single Pico acting as two (or more) Microdrives?
Yes. It may be done. But the big problem is the inner memory. Not enough space for many MDVs images. Actually it would be modified to works like vMap does but by software and set it by the CONFIG file.
The main problem is my lack of acknolowdge about how Pico works internally. Managing DMAs, the Cores and timings. It was something I wanted to study but lack of time I didn't. Moreover
when Agustin B. was available he was the genius in that matter. My part was to transform the MDP in something more accessible for everyone and improve it with new features.
stephen_usher wrote: Thu Aug 07, 2025 10:53 am
You'd need at least one more GPIO pin for the select line from the second MDV socket and enough memory inside the Pico to hold a second image. The firmware would need to be tweaked to be able to select which "drive" the image on the SD card would be loaded into as well.
About the GPIO I don't think you need more. But... if you need it, you have it (two free if I remember right). One set it for sound emulation (but not implemented yet) so you could use it, or the activity led that in my design I keep it for compatibility reasons but actually is redundant since you have the same led activity in the QL (onboard/case LEDs). And another one that you can check in my schema.
stephen_usher wrote: Thu Aug 07, 2025 10:53 am
The reason for the question is that it would simplify and cheapen a twin internal drive replacement board, with only one Pico, set of level shifters etc. and one voltage regulator required. Potentially it would be just another header connection on the board.
It would simplify the emulation of many MDVs, but ... I would recommend to do it with Pico2 not with Pico1.
Now... let's explain my personal opinion.
Why didn't I implement it?
Firstly because lack of inner memory. That is the main reason.
Secondly there were some bugs in the Pico2 when released that make me doubt about if it is worthy or not to use it in this project.
In any case, the Pico to act like MDVn by the CONFIG file. It implies that some people who wants to place an original MDV in for example MDV2 could find some problems. That would be resolves by CONFIG file yes... but only partially. Daisy Chain... you place the MDP in first place... so it can emulate from MDVn to MDVm. In other places it could not catch the activity/MDSELDN (COMMS IN) signal to previous positions.
All those positions would have the same MDV image. Could be store different images in the other kind of memory? yes. Would it be enough fast to answer in time the system... I don't know.
About power saving...
IMO the total power consumption is too low to considering a factor. Cost of some components? the same. If we were a company to produce 100K units, that is another matter. But for a very very little group of users that we are, it means less than few € in materials? really not worthy.
But your idea is nice, to offer the option by CONFIG file to emulate (even if it is with the same MDV image) from MDVn to MDVm, is possible and not hard to implement.
Also could be possible to create a table in the CONFIG file to assign a MDV image to each MDV emulated position. But it takes flexibility on manipulation that not everyone wants.
Instead, sound emulation (but with quality) is more interesting, and the most... Bluetooth MDVs image transfer (something very easy to do too that I didn't do yet, shame on me).
If you see the code, you could modify it easily with your actual skills to implement your idea. But think... it could take out features like copying files from one MDV/MDP to another one and increase the complexity of managing (by the users) the device and also the capability of loading virtual MDV images and real MDV cartridges into your QL.
What do you think? maybe I am missing something relevant.