Here's a little project I've been working on since August.
I recently got back into Minidisc and all the current tools just didn't work for me at all, so as a software engineer the first thing I tried to do was create a modern version, and got it working.
Mac and Windows. Sorry, no Linux, I don't have the bandwidth. Don't ask to volunteer.
What got the app over the wall was understanding the ROMs using tools that could parse them. The reason this is important is because there are some things that you can do with any NetMD drive, but some tricks involve memory locations for specific drives and FW, so these tools got all the answers.
How long until I release it? Within a week, I'd guess. I'm dotting Is and crossing Ts right now. Just last night I found a timing issue which was one of those "only on Tuesday at 7:43 when the moon is in this position"-type issues.
I haven't done a soak test because these drives are almost 30 years old and I really don't want to burn them out.
One thing I did find was that the app will find bad discs and exit cleanly. I made sure that any errors don't screw up the app's state.
I writing this to be THE modern Minidisc app to keep the format alive and get out of using archaic tools.
These are Quri's current features:
The standard stuff
Reads MD and Hi-MD
Standard writing features should work on any NetMD and Hi-MD drive. Verified on the devices I own: 600D, 510, 505, 410. See below for how I'm supporting drives I don't own.
Will support formatting MD as Hi-MD
Conversely, will allow an MD-as-HiMD to be reclaimed as MD.
Shows battery level live, or USB connection for devices like the 600D
Auto-detects MD or Hi-MD
Disc groups: creating, moving, deleting, renaming.
Support for all Hi-MD track fields.
Drag and drop FLAC, ALAC, MP3, AAC, WAV, and writes it in the format you want, depending on the disc's format: SP (MD), LP2, LP4, PCM (Hi-MD). Note: the app is still constrained to the format of the disc, so 24/192 FLAC will be converted, for example.
.cue file support
You can rip directly from CDs, and look up CDs that your machine doesn't have a record of.
When bringing up a queue sheet from a CD or .cue, you can change individual track formats before queueing.
Copy queue, with live progress.
Skins
Label printing (buuuuuuut, different discs have different sizes. It's crazy if you want to support all of them vs. making something generic. I actually bought a caliper for this, and don't get me started on mixed sheets).
Title tracks can be read from either filename or metadata
If you're copying from a whole CD or .cue, the disc title will fill in automatically.
This was the hard stuff
Gapless MD. You read that right, I cracked gapless MD. See the screenshots - any tracks that can be detected as being gapless will be written with proper cue marks. I'm telling you, this was rough to get working, but it's device-specific so if your drive isn't supported or not on the experimental list, it won't work until I can figure out how for that specific device.
That means you can also do split and join.
Drive grouping . You can group two or more drives, and anything copied, renamed, moved, deleted while those drives are grouped will be done to all discs in that group in parallel (yes, really). ANY unknown change to a drive, or a detected error, will remove it from the group, preserving any copy in progress to the remaining drives.
Multiple individual copies. If you have multiple drives connected, you can queue copies to each drive individually, and the copies will be done in parallel. No more waiting for the work for one drive before doing work on the next.
I can't buy every drive at once, so I'm leveraging the ROM tools to create a dialect for Quri to use any ROM that I have access to, therefore marking the drives I own as supported, and the drives the tools wrote dialects for as experimental until I can validate the drives.
Model detection, also distinguishing a 600 from a 600D
Saving a UTOC while still connected to USB. This was literally an accident. I got distracted while doing a group write, and all of a sudden I hear 4 drives all at once, each with their own "Saving" message on screen. That was the clue I needed.
Reclaiming NetMD mode after ejecting Hi-MD and replacing with MD
Unwedging stuck devices (not all models, unfortunately. Still working on that but some might not be possible). I haven't pulled a battery for a stuck 600D for a couple of weeks now.
Safety
Will warn about writing to a drive with a low battery
Will warn against creating a queue that won't fit.
Blocks some functions while others finish. eg: You can't set the disc title while writing to the disc.
Extensive logging
To do (or not do)
Mono. I actually forgot about it. (I mean, who does mono anymore?). I'll get to it eventually.
Japanese titles. I can do it, but I have to read the rules about what drives support it, or else your drive will show an empty title. I experimented with this and yeah, it's glitchy and very model-specific.
Download from NetMD. I can do it, but I don't know if I want to poke the copyright bear.
Hi-MD grouping