Microdrive Emulator

Discussion and advice about emulating the QL on other machines.
Martin_Head
Aurora
Posts: 847
Joined: Tue Dec 17, 2013 1:17 pm

Microdrive Emulator

Post by Martin_Head »

I have written a directory device driver to emulate Microdrive cartridges, as files in QPC2 (although it should work in other emulators, or even a real QL?)

The driver may be downloaded from here http://www16.zippyshare.com/v/68973691/file.html

It has been Zipped with Archivers Control Panel, and it contains the Driver, Image files of the four Psion programs as supplied originally with the QL, And software for creating your own Image files from your Microdrive cartridges.


RWAP
RWAP Master
Posts: 2834
Joined: Sun Nov 28, 2010 4:51 pm
Location: Stone, United Kingdom
Contact:

Re: Microdrive Emulator

Post by RWAP »

That is excellent work and it will help with the hardware microdrive emulator (or at least moving microdrive images between that on the QL and on the PC).

I wonder if you should contact gertk to see if you can help adapt this for the faster driver required (without the 255 sector limit) for the hardware emulator :D


Martin_Head
Aurora
Posts: 847
Joined: Tue Dec 17, 2013 1:17 pm

Re: Microdrive Emulator

Post by Martin_Head »

At the moment I am tinkering with the idea of doing the same sort of thing for floppy disks. For new PC's without floppy disk drives.

But has it already been done?

Would anyone want it?


RWAP
RWAP Master
Posts: 2834
Joined: Sun Nov 28, 2010 4:51 pm
Location: Stone, United Kingdom
Contact:

Re: Microdrive Emulator

Post by RWAP »

I have just tried this on q-emulator - it works like a charm.

I did wonder how it would cope, as on q-emulator, you allocate a slot as drive 1, or drive 2, and then
DIR flp1_
DIR mdv1_
DIR win1_

all access whatever is attached to the drive 1 slot.

However, with this new driver, whilst DIR flp1_ and DIR win1_ both work as normal, DIR mdv1_ successfully points to the microdrive image.

It even works under Minerva and the Tyche ROM on q-emulator.

Only one minor point (as there is no boot file) - the demo programs assume that Toolkit II is enabled - ie they use LRESPR to link in the driver, instead of
a=RESPR(4104): LBYTES flp1_MDIDriver_cde,a: CALL a

(and at just over 5K, that driver is a great achievement).


RWAP
RWAP Master
Posts: 2834
Joined: Sun Nov 28, 2010 4:51 pm
Location: Stone, United Kingdom
Contact:

Re: Microdrive Emulator

Post by RWAP »

Martin_Head wrote:At the moment I am tinkering with the idea of doing the same sort of thing for floppy disks. For new PC's without floppy disk drives.

But has it already been done?

Would anyone want it?
Anything like this is useful - especially if it could read/write direct to the HFE format used for floppy disk images by the HxC Floppy Disk Drive Emulator.

Q-emulator can already read/write to microdrive and floppy disk images already. However, the format of microdrive image you have used is different to that used by q-emulator - so you may want to speak to Daniele Terdina and gertk about this before progressing much further - it may well be easier to adopt your driver, than for you to adapt it to the microdrive 'images' they are using.


Martin_Head
Aurora
Posts: 847
Joined: Tue Dec 17, 2013 1:17 pm

Re: Microdrive Emulator

Post by Martin_Head »

Only one minor point (as there is no boot file) - the demo programs assume that Toolkit II is enabled - ie they use LRESPR to link in the driver, instead of
a=RESPR(4104): LBYTES flp1_MDIDriver_cde,a: CALL a

(and at just over 5K, that driver is a great achievement).
I can't take all the credit, Most of the driver comes from the Minerva source code. I just altered it to write to file instead of slave blocks.


RWAP
RWAP Master
Posts: 2834
Joined: Sun Nov 28, 2010 4:51 pm
Location: Stone, United Kingdom
Contact:

Re: Microdrive Emulator

Post by RWAP »

Just a thought, but would this work with copy protected microdrives - where there may be a secret number allocated when the microdrive was formatted, or a bad sector in a specific place on the cartridge, or even just a deleted file?

I guess that is where the image used by q-emulator may be preferable....


User avatar
dilwyn
Mr QL
Posts: 2753
Joined: Wed Dec 01, 2010 10:39 pm

Re: Microdrive Emulator

Post by dilwyn »

Martin_Head wrote:I have written a directory device driver to emulate Microdrive cartridges, as files in QPC2 (although it should work in other emulators, or even a real QL?)

The driver may be downloaded from here http://www16.zippyshare.com/v/68973691/file.html

It has been Zipped with Archivers Control Panel, and it contains the Driver, Image files of the four Psion programs as supplied originally with the QL, And software for creating your own Image files from your Microdrive cartridges.
This looks really good, Martin. Is it ready for me to make available via my website (I take it you got my reply to your email a while back, I never got a reply back from you after that).

Would be useful (not sure how practical) if there was common ground between MDV emulations on other systems, e.g. QLay, QL2K, QemuLator, the SD card project mentioned on here last year (by Gertk?).


User avatar
dilwyn
Mr QL
Posts: 2753
Joined: Wed Dec 01, 2010 10:39 pm

Re: Microdrive Emulator

Post by dilwyn »

Martin_Head wrote:At the moment I am tinkering with the idea of doing the same sort of thing for floppy disks. For new PC's without floppy disk drives.

But has it already been done?

Would anyone want it?
AFAIK, no it hasn't been done. And would be a great idea for PCs (like mine) with no floppy drive, although I have a USB floppy drive I can use when I have to.


Martin_Head
Aurora
Posts: 847
Joined: Tue Dec 17, 2013 1:17 pm

Re: Microdrive Emulator

Post by Martin_Head »

RWAP wrote:Just a thought, but would this work with copy protected microdrives - where there may be a secret number allocated when the microdrive was formatted, or a bad sector in a specific place on the cartridge, or even just a deleted file?
Yes. My image files are pretty much exact copies of a microdrive cartridge. Including the random numbers in the sector headers, and checksums at ends of the blocks. And any sectors which are physically readable, even if the map says they are not, are copied.


Post Reply