I've completed a "proof of concept" VGM player, so we now have our first piece of "useful" OPL3 software for the Mac. It's a very quick and dirty port of snippets of code from my DOS player with minor changes to graft it onto a 68k Mac environment.
I've attached a SIT with executable, source...
Hah! That's actually an interesting idea...
As promised, here is my example program with source. Project file is for CodeWarrior Pro 4 (last 68k version) and uses the Metrowerks Standard Libraries and the Universal Headers, which are both part of the default install.
The compiled application...
That old OSS code was extremely helpful. I sat down with it and annotated it to get an idea of what was going on then re-implemented the bare minimum.
And guess what? For the first time in over 30 years, an audible note came out of the card. It's done - we have access to the chip. The...
Sadly these aren't as helpful as they could be. All the example code is meant to be used against the MVSOUND.SYS driver - the actual low level communication is hidden in that precompiled driver. This is even called out in the Developer's Toolkit Reference (Ch. 20 - Mixer Programming...
I hope your card makes it to someone that either wants to check out this OPL3 mystery, or someone who eventually wants to enjoy the fruits of our labors!
I have an update that seems promising. I spent a lot of time just calling csCodes and stepping instruction by instruction through MacsBug to...
Hey folks! I hadn't looked at this in a while, but I'm jumping back in as a project for this month.
I haven't really picked up 68k ASM like I hoped so reading a straight disassembly overall didn't do me much good. I decided to pivot a bit and try running the DRVR resources through Ghidra to...
Thanks, I was able to get these images working.
The copy of Out of this World is, in fact, a specific OEM version! It's marked as version "1.0mv" (presumably mv for Media Vision). Whether that means anything for this project remains to be seen. I messed with it a bit and the sound seems...
Hey folks, bumping this cause I've been poking at it again and would like to share my findings.
I started looking at this from a different perspective, namely, disassembling the PAS16 extension. I know basically no ASM so kind of stumbling through it while reading up on it, but I figured I...
7.6.1 here, though iirc I used it on 8.1 a few years ago. The software is definitely quite buggy, when first installed I see it having the sampling rate set to nothing at all (blank menu selection) but then once selected it shows the correct values. I've also had times when the system alerts...
Definitely worried about the endianness... but first gotta get the card to respond to anything at all :) Then I can see what sort of bits I get back and that should answer the question.
Good news though, the PC's SDK is available...
OPL3 pins 4 and 5 go to pin 125 and 126 on the MVD101-D "Spectrum" IC respectively. The chip is definitely hooked up and running, it's connected to 5V from the slot, and the data lines are connected to the MVD101-D as well.
The MVD101-D is the exact same chip used on the PC PAS16. In fact...
Thanks indeed! Good to have it. It looks like the core extension is still 1.0.4, but has a slightly newer Mixer panel at the very least.
Anyway, I'm not sure I can get further with my brute force attempts. I've attached my program if anyone wants to play with it or make improvements. I'm...
I'm definitely in 32-bit mode, I run 7.6.1. Regardless, I still find that $E0000000 isn't readable. If I do it in a C program, I actually get dumped into MacsBug with a Bus Error. Weird. I am also 100% confident that the card works, it is detected in TattleTech and the drivers work. I can...